forge
Forge 工作流总入口。只读检测项目状态,推荐下一步该用哪个 skill,自己不干活。触发方式:用户说"forge"、"下一步"、"接下来做什么"。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Forge 工作流总入口。只读检测项目状态,推荐下一步该用哪个 skill,自己不干活。触发方式:用户说"forge"、"下一步"、"接下来做什么"。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
复盘 v3(Workbench 门禁型):启动本地 Workbench,用户在独立会话页确认想学的知识点和深度,按选择调研产出复盘文档; 同时落 2-3 条账本条目(记录/复盘/learnings.jsonl)供 bugfix/eng 开工回放与复发检测。 触发方式:用户说"总结知识"、"学习总结"、"复盘"、"可视化复盘"、"/forge-fupan"。
通用头脑风暴:4 种模式(产品/内容/构建/探索)× 6 阶段,强制前提挑战和 2-3 方案,产出可跨会话续聊的思考文档;支持 Mermaid/图辅助判断。 触发方式:用户说"头脑风暴"、"brainstorm"、"讨论一下"、"我有个想法"、"帮我想想"、"画图梳理想法"。
设计实现:把 DESIGN.md 转成代码,只改样式不改逻辑;CSS 优先、Token 驱动、反 AI 模板、原子提交,以真实截图和 CSS 断言验证。 触发方式:用户说"实现设计"、"forge-design-impl"、设计文档确认后需要写代码时。
全栈设计规划:分级门控管理 DESIGN.md 与 DESIGN-CHANGELOG,内置可检索设计规则库(UX 规则/配色/字体),三层 Token、Image 2 视觉稿门禁、反 AI 模板检测。 触发方式:用户说"设计"、"forge-design"、"先看效果图",或 forge-dev 调度、需要创建/更新设计文档时。
文档落地治理规范。统一管理 docs/ 目录下文档的写时约束、读时索引、生命周期标记。提供当前真相源白名单(doc-paths.md)+ frontmatter schema + 新项目一键脚手架(init-project.sh,已就绪)。所有 forge-* skill 的文档落地路径以本 skill 的 doc-paths.md 为准。触发方式:用户说"文档治理"、"文档放哪"、"docs 目录乱了"、"forge-doc-policy"、AI 准备创建任意 .md 或新目录前的自查。
发布后文档更新。读取所有项目文档,与 diff 交叉对照, 更新 README/ARCHITECTURE/CONTRIBUTING/CLAUDE.md 使之匹配已发布内容, 润色 CHANGELOG 语气,清理 TODOS,可选地更新 VERSION。 触发方式:用户说"更新文档"、"文档同步"、"forge-doc-release",或 forge-ship 之后、PR 合并之前由 forge-dev --full 调度。
Based on SOC occupation classification
| name | forge |
| description | Forge 工作流总入口。只读检测项目状态,推荐下一步该用哪个 skill,自己不干活。触发方式:用户说"forge"、"下一步"、"接下来做什么"。 |
不知道下一步该干什么?打 /forge。
全程中文。
_ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd)
echo "项目根目录: $_ROOT"
# 检测文档状态
echo "--- 文档状态 ---"
[ -f "$_ROOT/docs/README.md" ] && echo "[DOCS] 发现 docs/README.md"
[ -f "$_ROOT/docs/INDEX.md" ] && echo "[DOCS] 发现 docs/INDEX.md"
[ -f "$_ROOT/docs/CHANGELOG.md" ] && echo "[DOCS] 发现历史总账"
[ -f "$_ROOT/docs/modules/doc-system.md" ] && echo "[DOCS] 发现项目文档系统说明"
[ -f "$_ROOT/.features/_registry.md" ] && echo "[FEATURES] 发现 Feature 注册表" && sed -n '1,80p' "$_ROOT/.features/_registry.md"
ls "$_ROOT"/brainstorm-*.md 2>/dev/null && echo "[BRAINSTORM] 发现思考文档(根目录)"
ls "$_ROOT"/docs/brainstorm-*.md 2>/dev/null && echo "[BRAINSTORM] 发现思考文档(docs/)"
[ -f "$_ROOT/docs/PRD.md" ] && echo "[PRD] 发现产品当前真相源"
[ -f "$_ROOT/docs/DESIGN.md" ] && echo "[DESIGN] 发现 DESIGN.md"
[ -f "$_ROOT/docs/ENGINEERING.md" ] && echo "[ENGINEERING] 发现 ENGINEERING.md"
[ -f "$_ROOT/docs/QA.md" ] && echo "[QA] 发现 QA.md"
# 检测代码状态
echo "--- 代码状态 ---"
git status --short 2>/dev/null | head -10
git log --oneline -3 2>/dev/null
# 检测 Worktree
echo "--- Worktree ---"
git worktree list 2>/dev/null
# 只读检测 Dev Server(如项目提供统一入口)
echo "--- Dev Server ---"
if [ -f "$_ROOT/package.json" ] && (cd "$_ROOT" && npm run 2>/dev/null | grep -q "dev:status"); then
(cd "$_ROOT" && npm run dev:status 2>/dev/null) || true
elif [ -x "$_ROOT/scripts/dev-stack.sh" ]; then
(cd "$_ROOT" && bash scripts/dev-stack.sh status 2>/dev/null) || true
else
echo "未发现统一 dev server 状态入口"
fi
# 检测分支
echo "--- 分支 ---"
git branch --show-current 2>/dev/null
根据检测结果,按以下决策树判断。轻量车道优先于其他规则:
⚡ 轻量车道:用户描述的是小改动(预估 < 半小时,且不碰类型定义/API 格式/枚举/数据结构)
→ "小改动建议走轻量车道,跳过 PRD/设计仪式:
A) /forge-eng 轻量模式 — 直接实现(自验 + 提交前检查仍然要做)
B) /forge-bugfix — 如果本质是修问题
C) 走完整流程 — 如果实际影响面比看起来大(拿不准就选这个)"
完全空项目(无 docs/、无 .features/)
→ "建议先跑一次脚手架铺好状态文件:
~/.claude/skills/forge-doc-policy/scripts/init-project.sh
然后 /forge-brainstorm 或 /forge-prd 开始。"
无任何文档 + 用户没有明确任务
→ "看起来是一个新开始。建议先跑 /forge-brainstorm 理清思路。"
有思考文档,无 PRD 或无 .features Feature Spec
→ "发现思考文档 [{文件名}]。建议下一步:
A) /forge-prd — 将思考转化为 PRD 当前事实 + .features Feature Spec
B) /forge-dev — 跳过 PRD,直接进轻量开发模式
C) /forge-brainstorm — 继续讨论,还没想清楚"
有 PRD + Feature Spec,无 DESIGN.md(且项目含前端)
→ "产品当前事实和 Feature Spec 就绪,但还没有设计文档。建议:
A) /forge-dev — 启动开发调度(会自动触发设计)
B) /forge-design — 单独做设计规划"
有 PRD + DESIGN.md,无 ENGINEERING.md
→ "设计已就绪。建议:
A) /forge-dev — 启动开发调度
B) /forge-eng — 单独做工程实现"
有 ENGINEERING.md,代码有改动未测试
→ "代码已改动。建议:
A) /forge-qa — 验收测试
B) /forge-eng — 继续工程实现"
代码改动已测试,在 feature 分支上
→ "看起来可以收尾了。建议:
A) /forge-review — PR 审查
B) /forge-ship — 发布
C) /forge-fupan — 先复盘再发布"
在 Worktree 中
→ "当前在 Worktree [{分支名}] 中。建议:
A) 继续当前工作(列出未完成任务)
B) /forge-eng — 继续工程实现
C) 收尾 Worktree — merge/PR/keep/discard"
主分支,一切就绪
→ "项目状态良好。你想做什么?
A) /forge-brainstorm — 讨论新想法
B) /forge-prd — 迭代现有需求
C) /forge-bugfix — 修个 bug
D) /forge-fupan — 复盘最近的工作"
基于判断,通过 AskUserQuestion 展示推荐:
当前项目状态:
{项目名} | {分支} | {文档状态摘要}
推荐下一步:【{推荐的 skill}】— {理由}
选项:
A) {推荐选项}(推荐)
B) {备选1}
C) {备选2}
D) 其他 — 告诉我你想做什么
用户选择后:
供参考,当用户问"有哪些工具"时展示:
| Skill | 用途 | 何时使用 |
|---|---|---|
/forge-brainstorm | 头脑风暴 | 有想法要讨论时 |
/forge-prd | PRD 管理 | 需要正式需求文档时 |
/forge-dev | 开发调度 | 从需求到交付;--full 一路到发布(原 forge-deliver 已并入) |
/forge-design | 设计规划 | 需要 UI/UX 设计时 |
/forge-design-impl | 设计实现 | 将设计文档转为代码 |
/forge-eng | 工程实现 | 写代码(含 TDD + Worktree) |
/forge-qa | QA 验收 | 测试+报告(不修代码) |
/forge-bugfix | Bug 修复 | 系统性调试和修复 |
/forge-review | PR 审查 | 上线前代码审查 |
/forge-ship | 发布 | 合并+推送+创建 PR |
/forge-fupan | 复盘 | 教训进账本 + 一页纸 + 复发检测(Workbench 是阅览器) |
/forge-doc-release | 发布后文档同步 | ship 之后让文档对齐现实 |
/forge-status | 并行会话巡检 | 扫 .forge/active.md,按硬信号清理僵尸 |
/forge-doc-policy | 文档治理规范 | 文档放哪的规则源头 + 新项目脚手架 |
~/.claude/skills/_shared/visual-decision-layer.md,但 /forge 本身不生成图片