iOS 开发者自改进技能 - 依赖 developer-self-improve-core 安全闭环
本 Skill 必须与 developer-self-improve-core 配合使用:
bash
# 先安装核心技能
clawhub install developer-self-improve-core
# 再安装 iOS 扩展技能
clawhub install ios-self-improve
依赖关系:
领域覆盖内容语言Swift 5.x, Objective-CUI 框架UIKit, SwiftUI工具Xcode, Instruments, TestFlight生态App Store, 审核,推送,Widget
每轮回答后自动检查:
#检查项违规示例1导航栏过渡闪烁、scrollEdgeAppearance 未处理导航栏样式不一致2苹果审核规范、隐私权限缺失Info.plist 缺少 NSPhotoLibraryUsageDescription3潜在崩溃风险array[0] 未检查 count4内存泄漏、循环引用[weak self] 缺失5过时/不兼容 API使用已废弃的 UIWebView6AutoLayout 约束冲突约束缺失或矛盾7SwiftUI 生命周期错误@State 使用不当8异步代码死锁、数据竞争主线程阻塞9沙盒违规读写访问非授权目录10Info.plist 配置错误缺少必要配置11暗黑模式适配缺失硬编码颜色
时机执行内容频率pre_answer检索长期记忆中 iOS 专属规则,自动规避历史错误每轮回答前post_answer执行 iOS 专属自检逻辑,生成领域规则草案每轮回答后periodic联动 developer-self-improve-core,扫描 iOS 领域规则累计 10 轮对话或每周
text
用户指令 > 长期记忆(iOS 专属规则) > AI 临时草案
禁止生成的内容:
允许生成的草案(需满足):
markdown
### 【规则 ID】auto_ios_xxxx
### 【场景】iOS 开发场景(≤20 字)
### 【问题/模式】明确描述的问题或可复现模式
### 【建议规则】极简一句话,可直接执行
### 【依据】用户明确指出/重复模式/可验证错误
### 【可信度】高/中/低
### 【建议层级】长期/中期
### 【领域】iOS/具体子领域
用户提问:
text
导航栏在滚动时样式不一致,如何处理?
AI 回答前:
text
pre_answer: 检索长期记忆...
命中规则:【auto_ios_nav_001】导航栏必须配置 scrollEdgeAppearance
行动:自动应用该规则
AI 回答后:
text
post_answer: 执行 iOS 自检...
检查项:导航栏过渡闪烁、scrollEdgeAppearance 未处理
结果:✓ 已处理
用户代码:
swift
// ❌ 错误示例
self.completionHandler = {
self.updateUI() // 循环引用
}
AI 自检:
text
post_answer: 执行 iOS 自检...
检查项:内存泄漏、循环引用
问题:[weak self] 缺失
生成草案:
【规则 ID】auto_ios_memory_001
【场景】闭包内存管理
【问题/模式】闭包内使用 self 未加 [weak self]
【建议规则】闭包内使用 self 必须添加 [weak self] 或 [unowned self]
【依据】可验证硬错误
【可信度】低
【建议层级】长期
【领域】iOS/内存管理
用户提问:
text
App 被拒了,原因是隐私权限描述不清晰
AI 自检:
text
post_answer: 执行 iOS 自检...
检查项:苹果审核规范、隐私权限缺失
问题:Info.plist 隐私描述不规范
生成草案:
【规则 ID】auto_ios_review_001
【场景】App Store 审核
【问题/模式】隐私权限描述不清晰导致被拒
【建议规则】所有隐私权限必须在 Info.plist 中提供清晰的使用场景描述
【依据】用户明确指出的错误
【可信度】高
【建议层级】长期
【领域】iOS/审核规范
bash
./scripts/ios-self-improve.sh init
bash
./scripts/ios-self-improve.sh self-check "代码内容"
bash
./scripts/ios-self-improve.sh load-rules "当前场景"
bash
./scripts/ios-self-improve.sh propose "内容" "场景" "领域"
欢迎提交 Issue 和 Pull Request!
作者: lijiujiu
许可证: MIT
MIT License