一键导入
ship
全流程实施:探索→计划→worktree→TDD→实施→PR→review→/fix Cx1/Cx2→人工确认。L1(跳过探索,1 reviewer)/L2(单agent探索,1 reviewer)/L3(默认,三agent探索,按diff行数1/2/3/6 reviewer自动)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
全流程实施:探索→计划→worktree→TDD→实施→PR→review→/fix Cx1/Cx2→人工确认。L1(跳过探索,1 reviewer)/L2(单agent探索,1 reviewer)/L3(默认,三agent探索,按diff行数1/2/3/6 reviewer自动)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
prmonitor Tauri App 本地启动与打包:启动开发版桌面 app,编译 Apple/macOS app/dmg,交叉编译 Windows x64 exe;正式发版 Windows 为 portable zip(见 release.yml --no-bundle),本地交叉编仍可能涉及 cargo-xwin/makensis。
prmonitor Tauri App 本地启动与打包:启动开发版桌面 app,编译 Apple/macOS app/dmg,交叉编译 Windows x64 exe;正式发版 Windows 为 portable zip(见 release.yml --no-bundle),本地交叉编仍可能涉及 cargo-xwin/makensis。
问题诊断与修复: 验证+根因+复杂度分级+修复方案+backlog登记。当用户说'这个问题存在吗''帮我分析这个bug''诊断一下这个模块''修复这个问题'时触发。输入优先 PR 号(自动读 PR 评论),也支持 文件:行号 / 自然语言;多 findings 自动批量。issue 号不再受理——issue triage 走 `issues` 技能(建议 /ship 或 close)。
激活 forge 的 issue/work-item tracker + 看板项目管理单源技能(GitHub Issues+Project v2 / Azure Boards / GitLab issues,经 forge.sh 适配)。Part A:epic 拆解 + wave 实施顺序评论(找子任务 → blocked-by DAG → wave 1-4 容量装箱排序:每 wave ≤4、pri 优先、wave 内切并行组/串行链、OPEN 重排、已完成不动、装箱溢出顺延下一 wave、仅超窗(Wave 4 后仍未分配)单列 → 只追加 epic 评论;不写 Project 字段、不改 epic body)。Part B:issue/PR 原子操作(建/改 backlog issue、area/type/pri label、PR 双轴状态 label 流转、统一 PR 评论格式 + 冲突预检/CI watch 跟进,ship/fix 共用)。非 epic issue 号 → 查代码判状态(只判不修,建议 /ship 或 close)。当用户要整理 epic 排 wave、建/改 backlog issue、贴 label、切 PR 状态、给 PR 留评论、核一个 issue 是否还成立时使用。
PR 状态自动接力检查器:ship/fix 收尾约 15min 后必须启动;读取外部 app/review 已产生的 label + 最新机器块,过 handoff 机器门(fresh canonical block + verdict + same-head + next 一致)才接力 /fix——Cx/scope 判定下放 /fix。pr-monitor 自身不贴评论、不切 label。
对指定 PR 跑自动分级六维度 review(默认);或 --check 模式验证上一轮 findings 是否修复 + 抓回归。按 diff 净增删行数自动分配 2/3/6 reviewer agent 并行(< 200 行不派发,主 agent 自审);主 agent 做根因聚类 + Cx 分级 + 修复分流建议,不自动 fix。
| name | ship |
| description | 全流程实施:探索→计划→worktree→TDD→实施→PR→review→/fix Cx1/Cx2→人工确认。L1(跳过探索,1 reviewer)/L2(单agent探索,1 reviewer)/L3(默认,三agent探索,按diff行数1/2/3/6 reviewer自动) |
| argument-hint | [--level=L1|L2|L3] <#issue-number 或任务描述> |
| allowed-tools | ["Read","Write","Edit","Glob","Grep","Bash","Agent","AskUserQuestion"] |
多沟通原则(默认多问、有歧义即停):L2/L3 在创建 worktree(阶段 3)之前必须完整呈现「方案方向 (阶段 1)+ 改动计划(阶段 2)」并经 AskUserQuestion 确认——不在未对齐时就开工。实施中(阶段 5)surface 阶段性进度与 blocker;阶段 7→8 呈现内置 review findings 表,Cx1/Cx2 IN_SCOPE 直接修;每条 IN_SCOPE Cx3(及 Cx4)经处置门 AskUserQuestion 判「当前 PR 修」or「defer」——判 defer 后自动建 issue 跟踪(不二次确认),判修则纳入本轮。 归属 / 取舍不清也停下问。任何方案歧义 / 范围不清 / 取舍没把握 → 停下问,不默默假设。
剥离 --level= flag 后,剩余参数匹配 ^#?[0-9]+$ 时视为 issue 号,先 bash hack/automation/forge.sh issue-view <N> 拉取作为任务上下文;后续阶段以 issue title/body 替代自由文本任务描述,阶段 6 PR body 追加 $(bash hack/automation/forge.sh pr-close-ref <N>)。state != "open"(closed / merged 等)或 issue-view 失败均用 AskUserQuestion 让用户裁定是否继续。
| 等级 | 探索 | 计划确认 | 实施 agent | review |
|---|---|---|---|---|
| L1 | 不探索 | 不需要 | 1-2 并行 | 1 reviewer |
| L2 | 1 explorer | 展示给用户 | 1-2 并行 | 1 reviewer |
| L3(默认) | 3 并行 explorer | AskUserQuestion 确认 | ≤ 4 并行 | 1/2/3/6 reviewer(按 diff 行数自动,见阶段 7) |
L2:启动 1 个 explorer agent,研究本仓既有实现模式与必要的对标做法(Tauri command / serde 契约 / 切片 trait seam),提取接口签名、生命周期、错误处理关键设计,输出采纳建议和偏离理由。
L3(默认):并行启动 3 个 explorer agent:
全部完成后按「方案与计划原则(含自检)」汇总并逐条自查,再用 AskUserQuestion 与用户确认方案方向后继续。
阶段 1 汇总 / 阶段 2 计划必须满足下列原则;L3 在 AskUserQuestion 前逐条自查,任一不通过 → 在确认问题中显式列出取舍及理由,不默认放行:
ref: {framework} {path}@{ref}(真实拉源码 + prmonitor 侧对应)。自查「是否真有 ref: 产出?」→ 无则二选一:① 回阶段 1 重跑 explorer 补对标;② 确属无对标场景(纯内部重构 / 治理文档 / 无同类框架)时在 PR body 写明一行 本 PR 无需对标:<理由>(理由合理性由阶段 7 reviewer 核查)。二者必居其一,禁止静默省略(由阶段 6 机器门校验)。按「方案与计划原则(含自检)」生成改动文件清单(按依赖顺序)、任务分组(串行/并行批次)、TDD 测试先写清单、对标参考(ref: framework file)。生成后逐条自查,L3 用 AskUserQuestion 与用户确认计划后继续。
并行批次分析(改动文件 ≥ 4 时必须在计划中明确):
基于激活 forge remote 的 develop 分支创建(依照 git-worktree skill 约定):
REMOTE=$(bash hack/automation/forge.sh remote)
git fetch "$REMOTE"
git worktree add worktrees/<type>/<issue#-short-name> -b <type>/<issue#-short-name> "$REMOTE/develop"
命名依 git-worktree skill:编号 = 关联 issue#(无 issue 不编号),path 与分支首段含 type(feature/fix/refactor/docs/experiment,一律小写)。下文 worktrees/<wt> 简写指该 worktree 目录。
在 worktree 中,对有可测逻辑的改动先写测试(Rust #[cfg(test)] / 前端 vitest),覆盖正常/边界/错误路径。运行对应测试确认先 FAIL,再进入实施:
cargo test --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --locked <test-name>
pnpm -C worktrees/<wt> test <test-name>
纯配置/纯文档/纯 UI 展示改动无可测逻辑时可跳过本阶段并注明。
主 agent 根据阶段 2 的改动文件清单和批次依赖关系,自主决定:
硬约束:
每个 developer sub-agent prompt 必须包含:
worktrees/<wt>)cargo build/test --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --locked、pnpm -C worktrees/<wt> build/testmodel.rs、trait seam PrSource/ReviewEngine、组装根 lib.rs、前后端类型对齐 types.ts↔model.rs)<type>(<scope>): <描述>每个 sub-agent 在自己负责的任务上串行执行 Edit-Test Loop,完成后跑 lint(0 warnings 才 commit):
pnpm -C worktrees/<wt> build
cargo fmt --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --all -- --check
cargo clippy --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --all-targets --locked -- -D warnings
pnpm -C worktrees/<wt> build
pnpm -C worktrees/<wt> test
cargo build --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --locked
cargo test --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --locked
cargo fmt --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --all -- --check
cargo clippy --manifest-path worktrees/<wt>/src-tauri/Cargo.toml --all-targets --locked -- -D warnings # 0 warnings 才进阶段 6
# 对标产出门(Soft→Medium,守卫单源 + selftest 见 hack/automation/pr-benchmark-gate.sh):
# PR body 必含有效 `ref: {framework} {path}` 或非空 `本 PR 无需对标:<理由>`,缺则回阶段 1(不问人)
bash hack/automation/pr-benchmark-gate.sh <填好的 pull_request_template.md> || exit 1
git -C worktrees/<wt> push -u "$(bash hack/automation/forge.sh remote)" <branch>
bash hack/automation/forge.sh pr-create "..." <填好的 pull_request_template.md> develop <branch>
bash hack/automation/forge.sh pr-add-label <PR#> pr-status/in-progress # 进入 ship→review→fix→check 流程(见 .github/project-template/PROJECT.md §5)
PR body 结构单源 = .github/project-template/pull_request_template.md;读模版填占位(Refs: Closes #<ID> + ref: framework file),不在技能内重述结构。本仓 PR 全程 CLI 创建,必须 --body-file 读填好的模版。
ship 的 review 是 ship→review→fix→check 流程里的内置首审(6 维 reviewer);外部再审(codex /
/pr-review)由你在外部跑, 续修走/fix <PR#>(见.github/project-template/PROJECT.md§5)。ship 单独使用只做内置审。
L1/L2:1 个 reviewer agent(prmonitor 六维度)。
L3:按 PR diff 净增删行数确定 reviewer agent 数量:
git -C worktrees/<wt> diff --shortstat "$(bash hack/automation/forge.sh remote)/develop" # N files changed, X insertions(+), Y deletions(-)
diff 行数 = X + Y(缺项按 0 计)。阶段 7 被单独调用(无 worktree)时回退仓库根 git diff --shortstat "$(bash hack/automation/forge.sh remote)/develop"。
prmonitor 六维度 = 架构合规 / 安全 / 测试 / 运维可观测 / DX / 产品。reviewer 数 + 维度切分单源 = .claude/agents/reviewer.md §派发分档(按上面算出的 diff 行数定档,区间左闭右开,边界归更高档)。
多 agent 时并行启动,每个 agent prompt 自包含其负责维度 + 必读 .github/project-template/PROJECT.md §3(P/Cx 评级单源);全部完成后由主 agent 汇总去重 findings 表(含 Cx 分级)。
pm: 评论统一*:填
pr-comment.md模板(无损file:line+ 详表入<details>)+pr-meta.sh emit-block --kind=<k> --pr=<PR#>追加机器块到 body 末尾 +issuesB4 贴(回显 URL)。
file:line,输出纪律见 PROJECT.md §5)。pm:ship 留痕在步骤 5 唯一贴(不在此重复贴)。✅ 已修);判 defer → 自动按 issues B1 建 issue 跟踪(pm:ship 记 ⏸ defer,不再二次确认);Cx4 默认 defer。处置完再 Cx1/Cx2 IN_SCOPE 直接修(派 developer agent Edit-Test 修,不逐条问)。归属/取舍没把握仍 AskUserQuestion。git -C worktrees/<wt> push,按 issues B5 ① 验冲突(冲突则 git merge "$(bash hack/automation/forge.sh remote)/develop" --no-edit 再 push),过则立即进 4(不等 CI)。issues B1 建 backlog issue(无损填 backlog.md + 四轴标签 cx/area/type/pri,issue-labels.sh validate 过门,派生注 Discovered via /ship);pri-p0→停 AskUserQuestion、validate 失败→deferred=labels-underivable 回退草稿;贴 pm:oos(--kind=oos,每 item 必带 issue 或 deferred,否则 emit-block 拒绝)。--kind=ship,OOS artifact 已存在、指针有效):IN_SCOPE findings 无损写入(reviewer 数 / 已修 Cx1-Cx2 / Cx3 处置);OOS 仅一行指针 🚦 OUT_OF_SCOPE(见 pm:oos)。bash hack/automation/forge.sh pr-set-labels <PR#> --add pr-status/needs-review-again --remove pr-status/in-progress。bash hack/automation/forge.sh ci-watch <PR#>(azure 无 CI 返回 no-ci → 降级本地 pnpm build && pnpm test + cargo build/test/fmt/clippy,不贴 pm:ci);有 CI 按 issues B5 ② 熔断、失败回 fix 再推,贴 pm:ci(--kind=ci,全绿 ci-green / 熔断仍红 ci-failed + 失败摘要)。/pr-monitor <PR#> --mode=auto(review-side);外部 app 监听 needs-review-again 跑 review,pr-monitor 检测 needs-fix 即接力 /fix(判定由 fix 自理)。收尾不变式(artifact-before-summary/trigger):OOS issue + pm:oos(步骤 4)+ 处置门判 defer 的 IN_SCOPE Cx3/Cx4 issue(步骤 2)必须先于 pm:ship(步骤 5)落地——pm:ship 的 OOS 指针指向已存在的 pm:oos,不悬空;再切
needs-review-again(步骤 6);CI(步骤 7)异步在后。 ship 到此结束。再审(codex //pr-review)后续修走/fix <PR#>。
PR: #<编号> <URL>
评论: <pm:ship 评论 URL,含 #issuecomment-<id>(来自 issues B4 回显)>
已完成:TDD / 实施 / PR / review(实跑 reviewer 数:按 diff 1/2/3/6 自动) / Cx1-Cx2 fix / CI 绿
已处置问题——处置门已判修/defer,**defer 项已自动建 issue 跟踪**;本表仅摘要 + 指针;完整无损详表(证据/三维根因/三级方案种子)见 pm:ship
评论的 `<details>`;OOS + 判 defer 的 Cx3+/RELATED 的 issue #N / 原因见本 PR 的 pm:oos / pm:ship 评论:
| # | Finding (file:line) | Cx | 归属 | 建议方案 | 原因 |
|---|---------------------|----|------|---------|----|
--no-verify;不 amend 已 push commitgit worktree remove,不自动删除