mit einem Klick
sillyspec-commit
智能提交 — 自动收集变更信息,生成 commit message
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Menü
智能提交 — 自动收集变更信息,生成 commit message
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Basierend auf der SOC-Berufsklassifikation
规范驱动开发工具包。绿地用 /sillyspec:init,棕地用 /sillyspec:scan,全自动用 /sillyspec:auto。完整流程:scan → brainstorm → plan → execute → verify → archive。支持 TDD、子代理并行、worktree 隔离、E2E 验证。兼容 Claude Code / Cursor / Codex / OpenCode / OpenClaw。
用于正式开始开发前的需求澄清和技术方案设计。适合用户提出新功能、新模块、架构调整、复杂改造,或说"先做需求分析、输出技术方案、创建变更前先梳理、帮我设计下"。产出结构化方案(design/proposal/requirements/tasks 四件套),但不直接写代码。
用于把 design 拆解为可执行的实现计划。适合用户说"拆任务、做计划、排 wave、规划实现步骤"。产出 plan.md(Wave 分组 + Task 列表 + 依赖关系)。
生成结构化规范 — proposal + design + tasks。适合用户说"生成规范、补全四件套、propose"。产出 proposal.md + design.md + tasks.md(+ 可能的 requirements.md)。
用于明确、低风险、范围很小的直接任务。适合用户说"直接改、快速修、顺手调整、改个文案、修个小 bug、更新一个文件、不要完整流程"。跳过 brainstorm/plan,但仍按 sillyspec quick 流程执行。
用于 SillySpec 自检和状态修复。适合用户说"检查下状态、修复 progress、doctor、状态不对"。全量扫描进度一致性,修复进度数据与实际产出不匹配的问题。
| name | sillyspec:commit |
| description | 智能提交 — 自动收集变更信息,生成 commit message |
| argument-hint | [可选:自定义 commit message] |
| version | 3.7.32 |
当需要用户从多个选项中做出选择时,必须使用 Claude Code 内置的 AskUserQuestion 工具,将选项以参数传入。
$ARGUMENTS
git diff --quiet 2>/dev/null; UNSTAGED=$? git diff --cached --quiet 2>/dev/null; STAGED=$?
两者都为 0(无修改)→ 提示"没有需要提交的修改",结束。
git add -A
LAST_COMMIT_TIME=$(git log -1 --format=%ci 2>/dev/null)
git diff --cached --stat
从以下来源收集语义信息(筛选时间戳 > LAST_COMMIT_TIME 的条目):
来源 A — QUICKLOG(quick 产生的修改): USER=$(git config user.name 2>/dev/null || echo "default") cat .sillyspec/quicklog/QUICKLOG-${USER}.md 2>/dev/null
for dir in .sillyspec/changes//quicklog/.md; do [ -f "$dir" ] && cat "$dir"; done 2>/dev/null
来源 B — tasks.md(execute 产生的修改): LATEST=$(ls -d .sillyspec/changes/*/ 2>/dev/null | grep -v archive | tail -1) cat "$LATEST/tasks.md" 2>/dev/null 筛选时间戳 > LAST_COMMIT_TIME 的已勾选 task。
来源 C — 阶段产出(scan/brainstorm/plan/archive 等): 检查 .sillyspec/ 下新增或修改的文件,根据路径识别来源阶段:
按 conventional commits 格式,根据来源生成 message:
| 来源 | type | 示例 |
|---|---|---|
| 只有 quick 条目 | fix/refactor | fix: 手机号校验修复(含正则修正) |
| 只有 execute 条目 | feat | feat(user): 用户模块 task 1~3 |
| 只有阶段产出 | docs | docs: sillyspec scan 完成 |
| 混合来源 | 取最主要的 type | body 里列出所有条目 |
| 无匹配来源 | — | 展示 diff stat,让用户自己写 |
如果 $ARGUMENTS 非空,直接使用用户指定的 message,跳过自动生成,但仍展示 diff stat。
多条 quick 合并规则:
用 AskUserQuestion 展示: 📝 建议的 commit message: fix: 手机号校验修复(含正则修正)
📁 修改文件(N 个): src/UserService.java (+15 -3) src/PhoneValidator.java (+28 -0)
选择:确认提交 / 编辑 message / 取消
用户选择编辑 → 让用户输入新 message → 再次确认。
git commit -m "{确认后的 message}"
提交成功后展示 commit hash + 文件数 + 行数统计。
检查修改的文件分别属于哪个子项目: