一键导入
writing-plans
Use when Planning Gate triggers (affected files ≥3 or public API change) and an implementation plan is needed
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when Planning Gate triggers (affected files ≥3 or public API change) and an implementation plan is needed
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when receiving an ambiguous feature request, when scope is unclear, or before writing any plan
Use after verification-before-completion passes and code review is clean, to close out the development branch
Use after writing a plan document in docs/plans/, before requesting user confirmation
Use when receiving feedback from code-reviewer subagent or human reviewer
Use when a feature, bugfix, or refactoring step is completed and needs review, or before merging to main, or when user says "review", "审查", "帮我看看代码"
Use when executing an implementation plan with 3+ independent tasks in the current session
| name | writing-plans |
| description | Use when Planning Gate triggers (affected files ≥3 or public API change) and an implementation plan is needed |
Type: Technique | Discipline: Rigid
指导如何写好一份实施规划。Planning Gate(见 using-growingio-sdk-skills meta-skill)定义 plan 的格式(四节结构),本 skill 定义内容质量。
核心原则: 写 plan 时多想 10 分钟,实施时少返工 1 小时。
按改动类型对照清单列全受影响的文件/路径:
| 改动类型 | 必须同时覆盖 |
|---|---|
| 公开 API 新增/改/删 | 模块根 .h(如 GrowingAutotracker/GrowingAutotracker.h)+ GrowingTrackerCore/Public/ + GrowingAutotrackerCore/Public/ + 相关 Modules/*/Public/ + podspec public_header_files + Package.swift targets |
| 事件字段变更 | SaaS / CDP 两产品线在"影响产品线"列显式标注(SaaS 用 projectId;CDP 额外需要 dataSourceId) |
核心模块 (TrackerCore/Event/ TrackerCore/Database/ TrackerCore/Network/) | 实现文件 + 对应 *Tests 目录 |
| GrowingTrackConfiguration 变更 | SaaS / CDP 两种模式的默认值;若涉及 useProtobuf,需同时验证 JSON / Protobuf 两条序列化路径 |
| Autotrack 改动 | iOS / macOS / tvOS 三平台 + Hybrid / WebCircle 模块(如适用) |
| Session 改动 | 前台触发 + 后台 / 终止 + sessionInterval(默认 30s,定义于 GrowingTrackerCore/GrowingTrackConfiguration.m)超时逻辑 |
| 事件上报改动 | Protobuf 路径(Services/Protobuf/)+ JSON 路径(Services/JSON/),由 trackConfiguration.useProtobuf(默认 YES)切换;压缩/加密 adapter(Modules/DefaultServices/) |
| 模块 (Modules/) 改动 | podspec 对应 subspec + SPM target |
拆成多任务: 变更逻辑独立且可并行 / 单任务描述 > 200 字还说不清。 合并为单任务: 接口与其使用者(拆开编译不过) / 同模块内部重构。
拆分后按 subagent-driven-development skill 判定是否走 subagent 模式。
| Excuse | Reality |
|---|---|
| "先动手改两个文件再补 plan" | ≥3 文件动手那刻已经违规 |
| "影响文件只列改到的源码" | 头文件 / podspec / Package.swift / 测试都算影响 |
| "公开 API 改只动实现文件" | 必须同时更新公开头文件 + podspec |
| "这次规划口述就行" | 必须落地到 docs/plans/YYYY-MM-DD-*.md |
| "事件字段只影响当前产品线" | 两产品线字段要求不同,未标注 = 后端数据出错 |
plan-document-review → 用户确认 → subagent-driven-development 或直接实施