用途:为 AI 执行过程提供 token 高效的 Git 操作(提交/PR 流程),并用 worktree 隔离工作流改动。
主要能力:
- 提交工作流:尽量控制在 2-4 次工具调用;先暂存文件、查看 diff 统计,并扫描 api_key|token|password|secret|credential 等密钥,发现即停止、展示匹配并阻止提交。
- 拆分判断:类型混合(feat+fix)、文件数 >10 且不相关、多作用域(前端+后端)时拆分;同类型同作用域、文件 ≤3 且行数 ≤50、逻辑相关时单次提交。
- 提交信息格式:type(scope): description(<72 字符,现在时、祈使句),类型含 feat、fix、docs、chore、refactor、test、perf。
- 确认流程:绝不自动 commit 或 push;先展示 git diff --stat 与拟用提交信息,等待用户明确确认后才 git commit,push 需再单独询问。
- PR 流程:git fetch origin main、查看自 main 以来的提交与 diff 统计,再用 gh pr create --title "type(scope): description" --body "## Summary\n- bullets\n\n## Test Plan\n- steps"。
- 输出示例:staged: 3 files (+45/-12 lines) | security: passed | commit: a3f8d92 feat(auth): add token refresh。
- Worktree 隔离:启动工作流时自动创建 git worktree,所有改动位于独立分支,失败时丢弃,主分支零损伤。
使用方式:通过 /run 且 AF_WORKTREE=true 时自动启用,或用户明说使用 worktree;快速修复、配置修改、单文件编辑可跳过。生命周期:run:start 执行 git worktree add .worktrees/[id] -b af/[id];阶段 1 通过后全部编辑在 worktree 目录;阶段 5 完成后提供 merge / create PR / keep branch / discard;取消时 git worktree remove .worktrees/[id];失败时丢弃 worktree。配置:export AF_WORKTREE=true、export AF_WORKTREE_DIR=".worktrees"(默认),并把 .worktrees/ 加入 .gitignore。
安全规则:有未提交更改时绝不强制删除;始终提供 merge/PR/keep/discard 由用户决定;仅在明确取消或失败时自动丢弃;丢弃前先做检查点提交。可与 phase-checkpoint.cjs 配合,检查点为 worktree 分支上的提交,主分支在显式合并前不受影响。
限制:资料未提供收费、价格、平台支持范围等细节;实际行为依赖 rules/workflow/git-workflow.md 等文档,需按项目规则执行。