Appearance
棕地项目流程
棕地项目(Brownfield)= 已有代码的项目。本教程用"给现有项目加登录功能"贯穿全部流程。
总览
scan → brainstorm → propose → plan → execute → verify → archive与绿地流程的区别在第一步:用 scan 替代 init,先了解现有代码再行动。
第 1 步:scan — 代码扫描
命令:
/sillyspec:scan输入后 AI 会交互式引导你完成配置:
1️⃣ 检查已有文档
如果之前扫过,会告诉你"上次扫描距今 X 天,Y 个新 commit"
2️⃣ 选择扫描模式
1. 快速扫描 ⚡ — ~30 秒,3 份概览文档
2. 深度扫描 🔍 — ~2-3 分钟,7 份完整文档
3️⃣ 选择扫描范围
留空扫全项目,或输入 "api auth frontend"
4️⃣ 确认排除目录
默认排除 node_modules/dist/.git 等,可追加
5️⃣ 确认扫描计划 → 开始执行快速扫描结果(3 份)
.sillyspec/codebase/
├── STACK.md # 技术栈:语言、框架、数据库
├── STRUCTURE.md # 目录结构
└── PROJECT.md # 项目概览扫描完成后 AI 会给出建议,比如"项目较大,建议深度扫描"。
深度扫描结果(7 份)
在快速扫描基础上补充 4 份:
.sillyspec/codebase/
├── STACK.md # 技术栈
├── ARCHITECTURE.md # 架构 + 数据模型摘要
├── STRUCTURE.md # 目录结构
├── CONVENTIONS.md # 编码规范
├── INTEGRATIONS.md # 外部集成
├── TESTING.md # 测试现状
└── CONCERNS.md # 技术债务也可以直接传参跳过交互:/sillyspec:scan --deep
第 2 步:brainstorm — 基于现有代码探索
命令:
/sillyspec:brainstormAI 做什么:
- 结合 scan 报告和你的需求描述,提出方案
- 考虑现有架构的约束和惯例
- 标注哪些现有代码需要修改、哪些可以复用
示例对话:
AI: 基于 INTEGRATIONS.md,当前项目没有认证系统。建议引入 JWT 方案:
- 新增
/auth/login和/auth/register端点- 密码用 bcrypt 哈希(解决 CONCERNS 中的明文问题)
- 现有的
/api/todos需要加 auth 中间件 你: 同意。JWT 过期时间设多久?
第 3 步:propose — 生成提案
命令:
/sillyspec:propose生成文件:
docs/specs/
├── PROPOSAL.md # 包含对现有系统的影响评估
├── DESIGN.md # 包含与现有架构的集成设计
└── TASKS.md # 包含"修改文件 X 的 Y 函数"级别的任务第 4 步:plan → 第 5-7 步:execute → verify → archive
与绿地流程一致。棕地特别提示:verify 阶段会额外对照 scan 报告,确保新增代码遵循现有 CONVENTIONS,且没有恶化 CONCERNS 中的风险项。
棕地 vs 绿地对照
| 阶段 | 绿地 | 棕地 |
|---|---|---|
| 第一步 | init — 从零提问 | scan — 先读懂代码 |
| brainstorm | 自由探索 | 基于现有架构约束 |
| execute | 纯新增代码 | 新增 + 修改现有代码 |
| verify | 检查需求覆盖 | 额外检查不破坏现有功能 |