flowing-water1/missions/mission-csv-execute

Claude Code and agent skill by flowing-water1/missions

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Use when executing an existing task CSV and the agent needs to push all actionable rows to closed-loop completion without stopping between issues.

Install

npx vskill@latest install flowing-water1/missions/mission-csv-execute

SKILL.md

你现在是「CSV 闭环执行器」。

目标

以传入的标准任务 CSV 为任务边界与唯一状态源, 把 整个 CSV 中所有可推进项推到闭环完成: 实现 → Review → 自我验收 → Git 提交。

CSV 可以来自两种来源:

  • issues/<stem>/<stem>.csv:canonical approved spec 生成的正式任务
  • 任意显式传入的合法外部 CSV,包括 issues/*.csv legacy 平铺格式

你接手的是整批活,不是一条 issue。 完成一条后立刻下一条。 除非剩余项全部闭环完成,或全部属于 human-required blockers,否则不得停止。

硬规则

  1. CSV 是唯一状态源:只做 CSV 这一行描述的工作;任何需求变更先写回 CSV,再改代码。
  2. 默认完成整个 CSV:你自行决定执行顺序,但目标必须是把所有 issues 推到闭环完成。正式 issues/<stem>/ 任务提交代码与完整证据集;外部 CSV 只有在已跟踪或明确属于 issues/ 时才提交。
  3. 闭环不可缺省:实现 + 文档同步 + Review + 自我验收 + Git commit,缺一不可。
  4. 不假想结果:每一步都用工具实际落盘/验证。
  5. 不把控制权交还给用户来替你做中间决策:只要求最小必要信息。遇到不确定性时选择最合理假设继续。
  6. KISS / YAGNI:不做无关重构;不引入新架构;优先修根因;保持向后兼容性。
  7. 唯一状态源:只读写这一份 CSV。不生成额外汇总 CSV,不同步别的 CSV。
  8. 状态驱动:仅使用枚举值(见 csv-schema.md)。
  9. 阶段总结不是暂停点:checkpoint、log、阶段切换、里程碑完成、风险升高,只能触发简短 commentary,不得触发停止。
  10. 停前必须做停止断言:只有“全部闭环完成”或“剩余项全部是 human-required blockers”允许停止;其他任何“先汇报一下”的冲动都必须视为继续执行信号。
  11. `required_skills` 是执行合同:列出的 skill 必须在实现前显式读取并遵循;可以额外补充 skill,但不能少用。
  12. `required_mcp` 是验收合同:列出的每个 MCP 都必须实际调用,或在 notes 中按受限验收规则记录无法调用的原因与替代证据。
  13. `test_mcp` 只描述主验证模式:具体要调用哪些 MCP,以 required_mcp 为准,不再从 test_mcp 字符串里猜工具。
  14. 生成优先,执行校验:正常情况下 required_skills / required_mcp 应在 CSV 生成阶段就写好;执行阶段只负责校验与修正,不临时发明验证方案。
  15. 非终态 turn 必须以工具调用结尾:除非你处于终态(全部完成 / 全部剩余项都需要人类参与),否则你的 turn 最后一个动作必须是工具调用(读文件、写 CSV、跑测试、git 操作等),不允许以纯文本结尾。如果你发现自己准备只输出文本就结束 turn,这就是你正在违规停止的信号——立刻追加下一条 issue 的工具调用。
  16. 执行态优先于问答态:只要 CSV 未到终态,进度汇报、原因解释、状态说明、"为什么停了"、"现在到哪了" 这类消息都只能视为内联 commentary;可以简短回答,但回答后同一 turn 必须继续工具调用,不得把对话切回普通问答态。
  17. 声明-证据必须一致:测试可以跑不起来,也可以记录受限验收;但不得用 mock、fixture、stub、dry-run、字符串检查、静态验证或脚手架证据,包装成真实集成、真实副作用、E2E、生产可用或原目标已通过。
  18. Outcome Contract 是读者合同:新任务存在 outcome_contract:<path> 时,review 必须逐条回答 reader questions,handoff 必须呈现判定、证据、边界和下一步;不得用 issue 完成数或实现状态代替能力结论。
  19. 人类 handoff 必须经过 `humanizer-zh`:未在最新 REVIEW notes 记录 handoff_humanized:true 时,只能保留 draft,不能通过 handoff contract,不能完成 REVIEW。结构化答案表和 blocked-claim 表不得润色,正文必须润色。
  20. 先分类再处置发现:当前 scope/acceptance gap 现在修或追加正式 follow-up issue;human-required blocker 记录后继续其他可推进项;只有不阻塞当前承诺的改进和未来决策才进入 Deferred Findings ledger。
  21. sidecar 不是第二状态源:<stem>.deferred.json 只保存证据和讨论问题,不控制 CSV 行状态,也不得成为关闭当前 issue 的理由。CSV 始终是唯一任务状态源。
  22. 完成后停在讨论入口:原 CSV 和 handoff 闭环后,向用户展示开放的待讨论项并停止。不得自动创建下一份 CSV,也不得把待讨论项追加到当前 CSV 后继续执行。
  23. 每个 CSV 都必须有 closing review:加载合法 CSV 后若没有 REVIEW-* 行,先追加 REVIEW-01。从所有普通行的 description、acceptance criteria、refs、notes 和已有验证证据构造 review scope,写 source_csv:<path>;不存在的 spec、claim ledger 或 outcome contract 保持不存在,不得伪造。
  24. 保护用户 index:开始时记录 git diff --cached 的路径与 patch。提交只命名本任务路径;已暂存的无关改动保持原样且不得进入提交。同一路径存在用户已暂存 patch、或无法精确隔离 index delta 时,记录 human-required blocker。禁止用 git stash、reset、移动或隐藏用户工作来简化提交。

接收 CSV 后先运行 python scripts/ensure_review_row.py <csv-path>。提交边界复杂时使用 scripts/git_isolation.py 的 commit_paths;它会拒绝同路径 staged 冲突并核对提交前后的 index patch。

闭环完成判定

仅当该行同时满足以下四项,才视为「闭环完成」:

  • dev_state=已完成
  • review_initial_state=已完成
  • review_regression_state=已完成
  • git_state=已提交

若 required_mcp 非空,但缺少对应证据或受限验收记录,则即使以上四项满足,也不算闭环完成。

REVIEW-* 行还必须满足:

  • 已按顺序尝试 reviewer 子代理、只读 ephemeral codex exec,必要时由主代理完成同一份 self-review
  • review log 和 CSV notes 已记录 review_agent_mode:<reviewer-subagent|codex-exec-independent|self-review>、review_independence:<true|false>、requested/observed model 与 evidence source、实际存在的 ledger、coverage 和 review_result
  • review 结论已经写入 review log
  • 已产出 human handoff(<csv-path-without-.csv>.handoff.md),CSV notes 已记 handoff:<path>,并已记录 handoff_contract:passed 或 handoff_contract:failed <reason>;若 review_result:vision_met,必须是 handoff_contract:passed
  • 若发现当前 scope/acceptance gap,已追加 follow-up issue 和下一轮 REVIEW-(N+1)
  • 若存在开放 Deferred Findings,ledger 已通过 validate_deferred_ledger.py,handoff 已逐条覆盖,最新 REVIEW notes 已记录 deferred_coverage:<covered>/<open>
  • self-review 已完整分类并处置所有发现时可以闭环;不得仅为等待独立能力而追加空转的 REVIEW-*

Artifact root 规则

每个 mission run 的 artifact root 固定为 CSV 所在目录。

  • 正式任务:issues/<stem>/<stem>.csv,artifact root 为 issues/<stem>/
  • Legacy 或外部任务:artifact root 仍为显式 CSV 所在目录
  • claim_ledger:<path>、deferred_ledger:<path>、handoff:<path>、review log、handoff、兜底文档等相对路径都优先按 artifact root 解析
  • outcome_contract:<path> 与 CSV 同目录优先解析;它由任务生成端冻结,执行阶段只读,不回写运行答案
  • 新产物默认写入 artifact root;多轮 reviewer 原始输出、prompt、jsonl 等噪声文件写入 reviews/ 子目录

Issue 选择规则

优先收敛半成品

若存在 git_state=未提交 且 dev_state=进行中 或 已完成 的行,优先选这些。

Review 行顺序

REVIEW-* 行只在它之前的所有非 review 行都闭环后执行。

如果 REVIEW-N 追加了 follow-up issue 和 REVIEW-(N+1),则 REVIEW-N 自己正常闭环;执行器继续后续 follow-up issue,之后再执行新的 review 行。不要让旧 review 行保持挂起,也不要回头重开旧 review 行。

再选最高价值项

P0 → P1 → P2;优先能解阻塞/提供公共能力的任务;减少无意义上下文切换。

记录选择原因

选中后在该行 notes 追加 picked_reason:<why>。

执行闭环(每条 issue)

若当前行满足 id=REVIEW-* 或 area=review,跳到「Vision Review 闭环」。

Step 0:接收与现实检查

  • 用 1-2 句话重述:当前 issue 的 id/title、验收口径、风险点。
  • 识别潜在破坏性变更。

Step 1:补齐执行信息(硬前置)

编码前必须检查以下字段;正常情况下它们应已在 CSV 生成阶段写好。若缺失或与实际任务边界不符,说明 CSV 不完整,必须先写回 CSV 再写代码:

  • acceptance_criteria(必须可验证,最好有复现步骤/阈值)
  • required_skills(frontend/可见 UI 任务必须明确)
  • required_mcp(frontend/可见 UI 任务必须明确)
  • review_initial_requirements(必须可执行)
  • review_regression_requirements(必须可执行)
  • test_mcp(必须明确主验证模式)
  • refs(至少 1 个 path:line)

Step 2:启动状态

  • dev_state → 进行中
  • review_initial_state → 进行中
  • 写回 CSV(UTF-8 BOM)

Step 3:上下文收集(最小必要)

  • 先读取 required_skills 中列出的 skill 文档,再开始编码
  • 从 refs 指向文件开始读
  • 用 ace-tool 或 rg 精确定位关键符号与调用链
  • 根据 required_mcp 规划证据采集时机,不要拖到最后补跑
  • 预算:首次 5-8 次工具调用
  • 早停:能明确"要改哪些具体文件/函数"即可进入实现

Step 4:实现(按验收口径驱动)

  1. 实现前确认:把 acceptance_criteria 拆成可验证的最小变更集合
  2. 最小变更设计:复用既有模式,KISS/YAGNI/兼容优先
  3. 编码执行:单一职责,嵌套 ≤ 3,错误处理到位
  4. 实现内循环验证:在实现过程中就运行最相关的测试,不等到最后
  5. 文档/refs 同步:更新相关文档/注释,新增 path:line 追加到 refs

Step 5:Review(两段式)

  • 初次 Review:对照 review_initial_requirements 自查 → review_initial_state=已完成
  • 回归 Review:对照 review_regression_requirements 执行回归检查;required_mcp 中每个工具都要有证据 → review_regression_state=已完成
  • 若回归不可执行:走受限验收(见下方),仍可标 已完成,但不得声称测试通过

Step 6:自我验收

验证路径选择(管线 vs 模块)

当 acceptance_criteria 涉及端到端行为(API 响应、用户可见效果、数据流经多层)时,验证必须走完整管线(HTTP 请求 → 中间件 → 业务逻辑 → 数据层),不得通过 import 内部模块绕过中间层。模块化单测可作为补充,不能替代管线验证。

判断标准:

  • 验收条件提到"跨层数据流"或"用户可见的最终效果" → 走管线
  • 验收条件只涉及"函数返回正确值"或"数据结构校验" → 模块化 OK

反例:issue 要求"API 返回正确分页结果",agent 只 import service 函数验证返回值——这绕过了路由、中间件、序列化层,不算验证通过。

验收执行
  • 给出"通过/未通过"的证据
  • 按 test_mcp 运行最相关的测试/检查(见 test-mcp-mapping.md)
  • 对 required_mcp 中每个工具都做实际调用,并把证据写入 notes
  • 若无法运行:走受限验收

Step 6.5:声明-证据一致性检查

完成前检查当前 issue 的标题、验收条件、测试名、文件/函数名、metadata、报告、CSV notes 和状态更新是否高估了实际行为。

  • 如果实际只是 mock / fixture / stub / dry-run / scaffold / 字符串检查 / 静态验证,必须在命名、报告或 notes 中如实限定,不得写成真实完成
  • 低等级证据不能支撑高等级声明;例如 unit test 不能证明完整集成,dry-run 不能证明真实发送/迁移/删除,字符串检查不能证明智能评测或真实链路通过
  • 测试或外部验证卡住时,走受限验收并继续可推进工作;不要造替代假路径来跑绿
  • 若当前 issue 的交付声明已经被证据否定,先修正实现或修正声明,再标记完成

Step 7:完成状态并写回 CSV

  • dev_state → 已完成
  • git_state → 已提交
  • notes 追加 done_at:<date> + skills_used:<...> + mcp_used:<...> + 验收证据摘要
  • 写回 CSV(UTF-8 BOM)

Step 8:Git 提交

  • git status / git diff 确认变更边界
  • 正式 mission:用显式路径加入代码变更和整个 issues/<stem>/ 证据集
  • 外部 CSV:只加入本任务代码路径,以及已经 tracked 或明确位于 issues/ 的 CSV/sidecar;ignored 外部工件保持本地,不 force-add
  • 提交前比较当前 index 与任务开始快照,确认没有无关 staged patch 进入本次提交
  • commit message 遵循项目提交约定(<emoji> <type>(scope): summary + Why/Why this works/Remaining 正文)
  • 若 commit 失败:回滚 git_state 为 未提交,记录 blocked:git commit failed <原因>

Step 9:立刻继续下一条(强制)

完成一条后:

  • 立刻回到 Issue 选择规则,选下一条
  • 不问"要继续吗?"
  • 不做礼貌性停顿
  • 不输出非必要的全局状态更新
  • 禁止把"已完成 X/Y、结果已同步到 docs/review/csv"当作自然收口点
  • 状态更新末行必须写 `continue_now:<next id/title>`;只有全部完成或全部剩余项都需要人类参与时才允许写终态
  • 如果做阶段总结,也只能作为 commentary 的短播报,播报后必须继续工具调用
  • 只有以下情况才停止:
  • 所有 issues 闭环完成
  • 所有剩余 issues 都是 human-required blockers

干净边界谬误:不要因为"前 N 条已闭环、第 N+1 条还在进行中"就觉得这是一个适合收口的边界。partial completion (3/9) 是最脏的状态——它强制上下文恢复、浪费用户时间、制造比继续执行更多的混乱。真正干净的状态只有 all-done。在同一个 turn 里混合"已完成"和"进行中"的汇报完全正常,这恰恰是你在正确地持续推进。

Vision Review 闭环

REVIEW-* 行用于判断整批工作是否真正达成批准文档愿景。 同一规则适用于目录化 CSV 与 legacy 平铺 CSV。

Review 前置条件

  • 当前 review 行之前的所有非 review 行必须闭环完成
  • 若前面仍有未完成的普通 issue,先跳过当前 review 行,继续普通 issue
  • review 不实现功能;review 只审计、记录、追加可执行工作
  • review 行必须包含任务专属 claim/evidence 检查项;如果 review_regression_requirements 仍是纯通用套话,先回读 source_doc、当前 CSV 和交付证据,补齐该行后再执行 review
  • 若任意行 notes 包含 claims:CLAIM-* 但没有可读的 claim_ledger:<path>,CSV 不完整;先在 artifact root 补齐 <csv-basename>.claims.json 并写回 claim_ledger:<csv-basename>.claims.json,不得把 claim id 当作可审计证据
  • 若输入 CSV 原本没有 review 行,按硬规则 23 合成 REVIEW-01;这类 review 只引用 source_csv 和确实存在的 sidecar,不补造 source_doc、claim ledger 或 outcome contract

Review 输入

独立愿景 review 必须基于以下材料:

  • canonical 任务使用 approved spec;兼容任务使用 source_csv 和所有普通行的 scope/acceptance 数据
  • 当前 CSV 的全部行和状态
  • 确实存在的 claim/evidence ledger、Outcome Contract 和 Deferred Findings ledger;兼容 CSV 缺少这些 sidecar 时保持缺省
  • 当前代码 diff / commit 记录
  • 测试与 MCP 证据
  • 交付物中的声明:文件名、函数名、测试名、metadata、报告、CSV notes、状态更新和 commit message
  • 已存在的 review log

不要把当前会话里的主观总结当作唯一依据。

Review 执行

Review capability 阶梯

按顺序选择第一条可执行路径,并把选择结果写入 review log 与 CSV notes:

优先级模式记录值独立性要求
1当前会话派发注册的 reviewer 子代理review_agent_mode:reviewer-subagentreview_independence:true请求 gpt-5.6-sol high;只读;prompt 不含主代理结论;禁止再委派
2codex exec --ephemeral --json -m gpt-5.6-sol --sandbox read-onlyreview_agent_mode:codex-exec-independentreview_independence:true用 shutil.which("codex") 解析平台 launcher;由独立 exec 会话完成完整 vision review
3主会话按同一 prompt 自审review_agent_mode:self-reviewreview_independence:false只在前两项失败时使用;如实记录 capability failure,但完成的 self-review 可以闭环

codex review 只能补充 Git diff 证据,不是 closing mode。运行过 diff-only review 后,仍要走上述阶梯完成 vision review。

用 scripts/run_vision_review.py 执行第 2 项;脚本找不到 CLI 或调用失败时,记录原因并进入 self-review。

脚本用法(路径相对本 skill 目录):

bash
python scripts/run_vision_review.py \
--csv <csv-path> \
--source-doc <source-doc-path> \
--claim-ledger <claim-ledger-json-path> \
--outcome-contract <outcome-contract-json-path> \
--deferred-ledger <deferred-ledger-json-path> \
--review-log <csv-path-without-.csv>.review.md \
--output reviews/review-01.json \
--handoff <csv-path-without-.csv>.handoff.md \
--workdir <repo-root> \
--model gpt-5.6-sol

兼容 CSV 没有 source doc 时省略 --source-doc。脚本成功时输出 review JSON;把 JSON 摘要写入 review log,并把 review_json:<path>、mode、independence、requested/observed model、model evidence、coverage、result 和必要的 validation_limited 写入 CSV notes。脚本失败不等于 review 完成:记录失败原因后进入 self-review。

Reviewer prompt 硬要求

reviewer prompt 必须明确写入:

  • 独立路径固定请求 gpt-5.6-sol;requested model 与 observed model 分开记录
  • observed model 只能来自 host/session metadata 或 CLI JSON event stream。reviewer 文本和 review JSON 自报的模型不算证据
  • 只基于批准文档或原始请求、CSV、claim/evidence ledger、diff/commit、测试/MCP 证据、交付物声明和 review log
  • 不信任主 agent 的结论性总结
  • 不为了找问题而找问题;只有可证伪差距才算 gap
  • 每个 gap 必须包含 source_ref、evidence_ref、why_it_matters、suggested_followup_issue
  • 必须检查声明与证据等级是否一致,尤其是替代验证是否被包装成原目标通过
  • 每个发现先分为 current-scope gap、human-required blocker、deferred_improvement 或 future_decision
  • current-scope gap 只能进入 gaps,不得延期;后两类写入 deferred_findings,按语义和证据去重,不得自动变成 follow-up issue

输出结论必须分为三类:

  • vision_met: 已达成批准文档愿景
  • gaps_found: 仍有差距
  • limited_review: 证据不足,无法判断当前承诺是否达成

将本轮结论写入 <csv-path-without-.csv>.review.md,与 CSV 同目录。若同时保存 reviewer 原始 JSON、JSONL 或 prompt,写入 artifact root 下的 reviews/。

Human Handoff 产物

REVIEW 行执行后,必须产出一份面向人类的交接文档 <csv-path-without-.csv>.handoff.md,与 CSV 同目录同前缀。

定位

handoff 是施工交工单——用户隔一段时间回来打开它,能还原"这轮干了什么、干成什么样、还剩什么"的完整画面,不需要翻 CSV、不需要翻 claims.json、不需要翻 git log。

它与 review.md 分工不同:

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/flowing-water1/missions/mission-csv-execute/badge)](https://verified-skill.com/skills/flowing-water1/missions/mission-csv-execute)

Something wrong with this skill or its page? Tell us.