项目脚手架 Skill 套件入口
本 skill 是一个路由型入口,本身不执行具体动作,仅负责告知 AI Agent:在当前项目状态下,应该调用以下哪一个子 skill。
最简上手路径(3 步)
- 空文件夹起步 → 丢入《项目初始化.skill》,按 4 个阶段问答生成
docs/、vault/、项目备忘录.skill。- 已有源码起步(遗留项目缺脚手架)→ 改丢《遗留项目接入.skill》,按 5 个阶段逆向扫描代码生成同样的脚手架文档。
- 开始写代码 → 清空上下文,把《项目开发.skill》+《项目备忘录.skill》一起丢给 AI,按 vault 任务逐个开发。
- 中途改需求 → 丢入《需求修改.skill》先同步文档,复核通过后回到第 2 步继续开发。
拿不准当前该用哪个?直接丢本入口 SKILL,按下方"路由规则"自动判断阶段。
子 skill 总览
本套件包含四个相互衔接的子 skill,覆盖项目从无到有、从开发到变更、以及遗留代码接入的完整生命周期:
| 子 skill | 适用阶段 | 核心职责 |
| --- | --- | --- |
| 项目初始化 | 空白文件夹 → 规划完成 | 主动追问需求,生成 docs/、vault/、项目备忘录.skill 等规划文档 |
| 遗留项目接入 | 已有源码但缺脚手架 → 接入完成 | 逆向扫描现有代码,补齐 docs/、vault/、项目备忘录.skill,使其可被《项目开发》驱动 |
| 项目开发 | 规划完成 → 编码实现 | 按多 Agent 调度流程(编写→审查→测试→修复)迭代开发各模块 |
| 需求修改 | 开发途中 → 需求变更 | 批量评估变更影响,同步修改需求/架构/接口/任务/进度等文档 |
路由规则(AI 必须按此判断调用哪个子 skill)
调用 项目初始化 的条件
- 工作目录为空,或仅含极少初始文件(如 README、.gitignore)。
- 用户表述为"我要做一个 XX 项目"、"帮我搭一个 XX"、"从零开始"等。
docs/、vault/、项目备忘录.skill均不存在。
调用 遗留项目接入 的条件
- 工作目录已有可观的源代码(非空白),且存在可识别的依赖/构建清单。
docs/、vault/、项目备忘录.skill至少有一项缺失或不完整(即项目并非由本套件初始化生成)。- 用户表述为"接入已有项目"、"给老项目补文档"、"让这个仓库能用项目开发 skill"、"逆向生成脚手架"等。
调用 项目开发 的条件
项目备忘录.skill已存在(行数应控制在 200 行左右,略超不阻塞触发,仅提示精简)。docs/开发进度.md存在并已标记"阶段四复核已完成"。vault/下存在可执行的模块任务文件。- 用户表述为"继续开发"、"实现 XX 模块"、"按规划往下做"等。
调用 需求修改 的条件
- 项目已进入开发阶段(部分模块已完成、部分在做或待做)。
- 用户提出新增功能、修改已有功能、调整技术栈、变更性能/数据要求等需求变更。
- 需要在动手改代码之前先同步更新规划文档。
主 Agent 行为约束
- 先判断阶段,再选 skill:根据上方"路由规则"中列出的目录/文件状态判断当前所处阶段。
- 不可跳级:未完成
项目初始化或遗留项目接入不得直接进入项目开发;遗留代码库缺脚手架时必须先走遗留项目接入,再进入项目开发;开发途中变更需求必须先走需求修改,再继续项目开发。 - 同一会话内可串联:例如初始化(或遗留项目接入)完成后用户立刻要求开发,可在征得用户确认后串接调用
项目开发。 - 冲突时以用户显式指令为准:若用户明确指定调用某个子 skill,则直接调用,无需再做阶段推断。
- 统一并行范式:四个子 skill 均采用「主 Agent 调度 + 子 Agent 并行 + 主 Agent 串行收尾中枢文件」范式——在无依赖、可拆分的环节并发派发只读/限定写入的子 Agent 提速(如初始化的架构调研与 vault 生成、开发的按维度并行审查、需求修改的并行影响评估与批量写入),而项目备忘录/开发进度/接口索引等全局一致性文件一律由主 Agent 串行收尾,禁止并发下发。
- 子 Agent 中断处理(不得由主 Agent 接管):调度环节里任何子 agent 因超时、断流、工具失败、异常退出等原因未交付交接单即中断时,主 Agent 不得自己顶替执行其任务(不得自己改业务代码、自己写交接单、自己代签回执),必须按原角色重新 spawn 一个全新的子 agent继续(沿用同一份任务上下文与交接协议;若是修复/测试循环中的子 agent 还在当前轮次内,主 Agent 应继续在原轮次派发新子 agent,不增加修复次数)。仅当出现本约束明确允许的"主 Agent 自身职责"(如收尾中枢文件、裁决升级、汇总报告)时,主 Agent 才亲自处理;除此之外一律 spawn 新子 agent。这条约束适用于本入口以及所有子 skill 的全部调度环节。
子 skill 目录
./
├── SKILL.md # 本文件:路由入口
├── 项目初始化/
│ └── SKILL.md # 阶段一~四:需求确认 → 架构设计 → 开发规划 → 规划复核
├── 遗留项目接入/
│ └── SKILL.md # 阶段一~五:勘探 → 代码扫描 → 逆向生成脚手架 → 交叉校验 → 复核交接
├── 项目开发/
│ └── SKILL.md # 多 Agent 调度:编写 → 审查 → 测试 → 修复(≤3 轮)→ 提交
└── 需求修改/
└── SKILL.md # 阶段一~四:变更澄清 → 影响评估 → 批量修改 → 复核交接
提示词示例(用户调用各子 skill 的典型话术)
下列示例用于帮助主 Agent 识别用户意图,并映射到对应的子 skill。识别时以关键词 + 当前目录状态双重判断为准。
触发 项目初始化 的典型话术
- "我想做一个待办清单的小程序,帮我从零搭起来。"
- "这个文件夹是空的,按你的规范初始化一个 FastAPI + Vue 的项目。"
- "先别写代码,把需求和架构梳理清楚,输出规划文档。"
- "帮我做项目初始化,技术栈我还没定,你来追问。"
触发 遗留项目接入 的典型话术
- "这是一个已经写了一半的老项目,帮我接入到你的开发流程里。"
- "仓库里有代码但没有 vault 和备忘录,逆向把脚手架文档补齐。"
- "扫描一下现有代码,生成 docs/ 和 vault/,让它能用《项目开发.skill》继续做。"
- "给这个遗留代码库补文档,别改我现有的业务代码。"
触发 项目开发 的典型话术
- "规划已经过了,按
vault/里的任务继续开发。" - "实现用户登录模块,按多 Agent 流程走:编写、审查、测试、修复。"
- "继续做下一个待办模块,完成后更新
docs/开发进度.md。" - "把当前 in_progress 的任务推进到 done。"
触发 需求修改 的典型话术
- "原来只支持单用户,现在改成多租户,先更新文档再动代码。"
- "把数据库从 SQLite 换成 PostgreSQL,相关规划同步改一下。"
- "新增一个导出 Excel 的功能,评估一下影响范围。"
- "性能指标从 100 QPS 提到 500 QPS,先走需求修改流程。"
常见误用与纠偏
| 现象 | 正确做法 |
| --- | --- |
| 工作目录为空,却直接被要求"实现登录模块" | 先调用 项目初始化 补齐规划文档,再进入 项目开发 |
| 仓库已有源码但无 vault/备忘录,却直接被要求"继续开发" | 先调用 遗留项目接入 逆向补齐脚手架文档,再进入 项目开发 |
| 开发到一半用户提出新功能,Agent 直接改代码 | 暂停编码,调用 需求修改 同步文档,复核通过后再回到 项目开发 |
| 用户只说"继续",无法判断阶段 | 检查 docs/、vault/、项目备忘录.skill 状态后回复用户当前所处阶段,并确认下一步动作 |
| 多个子 skill 看似都适用 | 以"是否需要变更已确认的需求/架构"为优先判据:需要 → 需求修改;否则按目录状态选 项目初始化 或 项目开发 |
| 子 agent 因超时/断流/异常退出未交付交接单,主 Agent 自己顶替改业务代码、代写交接单 | 严禁由主 Agent 接管,必须按原角色 spawn 一个全新的子 agent 继续;主 Agent 仅在收尾中枢文件、汇总报告、裁决升级等自身职责内亲自处理 |
与外部工具/规范的关系
- 本套件不绑定具体编程语言或框架,所有技术栈选择均在
项目初始化的需求确认阶段由用户与 Agent 协商决定。 - 所有规划文档统一沉淀到
docs/与vault/,项目备忘录.skill仅保留索引与关键约束(目标 < 200 行;略超不阻塞,仅提示后续精简)。 - 子 skill 之间通过文档(而非内存状态)传递上下文,确保跨会话、跨 Agent 可复现。
能力边界(明确不适用场景)
本套件假设项目由本套件从零初始化,并以 docs/、vault/、项目备忘录.skill 作为唯一上下文来源。其中接入已有遗留代码库的场景由《遗留项目接入.skill》专门覆盖。以下场景不在能力范围内,需用户额外介入或手动适配:
- 接入已有遗留代码库:使用《遗留项目接入.skill》逆向扫描并补齐 vault/备忘录等中枢文档;补齐后即可进入《项目开发.skill》。若不经过该接入流程而直接调用《项目开发.skill》,将因缺少脚手架文档而无法启动。
- CI/CD 流水线、发布部署、运维监控:本套件只覆盖到本地编码→测试→提交,不负责流水线编排与生产部署。
- 跨仓库/微服务多仓协同:仅面向单仓库线性开发,多仓协同需用户自行拆分管理。
- 非确定性/外部决策:涉及业务取舍、预算、第三方合同等无法从文档推断的决策,一律升级真人用户。
Scan to join WeChat group