这个仓库放了两个配套的 Claude Code skill:
- dev-flow —— 管开发任务(写代码、建工具、做网页/App、修 bug、重构、发布部署)。
- task-flow —— 管非开发任务(数据处理、生信分析、机器学习、统计分析、撰写、总结、文献综述、评估决策,以及跨技能混合任务)。
两个 skill 共享同一套核心哲学:出方案的 ≠ 挑毛病的 ≠ 判定完成的。 干活、审查、判定这三件事,交给互相看不到对方上下文的独立子代理来做,靠文件交接结论,避免"自己出题自己判卷"。dev-flow 用七阶段流水线把这套哲学落到软件开发上;task-flow 用轻分诊 + 主循环 + 客观质量闸把它落到其他所有实质任务上。两者边界清楚:开发走 dev-flow,非开发走 task-flow,task-flow 遇到开发任务会主动让位给 dev-flow。
License:MIT(见仓库根目录 LICENSE)。
一个给单人开发者用的 Claude Code skill:把任何开发任务(新项目、加功能、修 bug)纳入一条立项 → 方案 → 测试设计 → 开发 → 验收 → 发布 → 收尾的完整流水线。
出方案的 ≠ 挑毛病的 ≠ 判定完成的。
- 方案、审查、测试设计、开发、裁判由五类互相看不到对方上下文的独立子代理承担,靠文件交接
- 审查代理拿到的方案被伪装成"隔壁同事做的",避免护短
- 验收测试由独立代理只看需求和接口约定黑盒编写,动工前锁定(commit hash 落盘),开发代理只能跑不能改——防止"自己出题自己判卷"
- 五个人工卡点:方案定稿、测试清单锁定、验收结果、发布前、用户实测终审
- 任务分级:微任务不入流程,小任务走轻量档,标准任务走完整七阶段
git clone https://github.com/wsxwj123/dev-flow.git
cp -R dev-flow/dev-flow ~/.claude/skills/新开一个 Claude Code 会话,说一句开发需求(如"帮我做个批量重命名工具")即可自动触发。
dev-flow/
├── SKILL.md 调度器:任务分级 + 阶段路由 + 铁律
└── references/
├── 01-立项.md 问工作文件夹、拷问需求到极致、定测试策略
├── 02-方案.md 调研 → 方案 → 盲审 → 定稿
├── 03-测试设计.md 黑盒验收测试编写与锁定
├── 04-开发.md feature 分支开发 + 白盒单测
├── 04-并行worktree.md 多模块并行:worktree 隔离 + 模块测试循环 + PROJECT.md 状态账本
├── 05-验收.md 独立裁判判定 + 防作弊核查
├── 05.5-安全审计.md 独立安全审计:外部攻击面 + 内部数据安全
├── 06-发布.md GitHub 仓库 + README + PR + Actions
├── 07-收尾.md 用户实测 + 知识同步 + 清理
└── rules.md 开发通用规则
hooks/dev-flow-reminder.sh 是一个 UserPromptSubmit hook:检测到开发意图的消息时,自动往对话里注入一句"先走 dev-flow"提醒。只提醒不阻断,非开发消息(写邮件、做总结、解释代码)静默放过。它对抗的是"长会话里 AI 凭记忆跳过流程"。
安装:
mkdir -p ~/.claude/hooks
cp hooks/dev-flow-reminder.sh ~/.claude/hooks/ && chmod +x ~/.claude/hooks/dev-flow-reminder.sh然后在 ~/.claude/settings.json 的 hooks.UserPromptSubmit 数组里追加一条:
{ "hooks": [{ "type": "command", "command": "/Users/<你>/.claude/hooks/dev-flow-reminder.sh" }] }撤销:删掉 settings.json 里这条 + 删脚本即可。
宿主为 Claude Code。流程中引用的技能(grilling、neat-freak、frontend-design 等)缺失时对应步骤会降级为手动执行,不影响主干。
dev-flow 的姐妹 skill,管非开发的实质任务。
非开发任务(数据分析、写报告、跑统计、做综述、做评估)长期没有一条统一流程可走——每次都是临时发挥,质量全看当时状态。task-flow 补的正是这块,它盯着三个具体缺口:
- 非开发任务没有统一流程:科研分析、撰写、总结、评估各干各的,没有一个入口把它们统一成"拆解 → 计划 → 产出 → 迭代 → 交付"。
- 跨技能混合任务没人管接缝:比如"先做生信分析、再写成投稿论文""分析完出一份带图的报告"——每一段可能有专门技能,但把它们串起来、盯住交接处不掉链子,没有任何单一技能负责。task-flow 专门接这种全局协调。
- 专门技能的产出没有独立验收:像 review-writing、general-sci-writing 这类专门技能自己写自己交,没有一个用户签字的独立把关环节。task-flow 可以在用户需要时,单独挂一道验收。
不是照搬 dev-flow 的七阶段,而是一套更轻的骨架:
- 轻分诊入口:任务进来先分级 + 三问分诊(目标清不清、有没有客观对错、代价高低),据此裁剪流程,不是每个任务都走全套。
- 极简主循环:立项分诊 → 拟计划 + 起草验收合同 →(一个停下点让用户确认锁定)→ 拆一步做一步 →(交付前抽账终判)→ 交付。全程只有两个停下点,不啰嗦。
- 两道客观质量闸:契约闸门(锁定的验收清单,执行侧只读、不许偷偷放宽)+ 证据账本(每个核心结论、关键数字都拴到来源,拴不住的进孤儿清单)。这里是和很多"AI 质检"方案的关键区别——它不赌"多派几个评审代理去判好坏"(那种主观打分不可靠),而是用契约闸门 + 证据账本这种客观、可核对的机制兜底。计算型任务再加一道硬验证(重跑比对或确定性证据链)。
- 参与度旋钮:用户任意时刻能喊"这步我看看"切结对模式、喊"继续放手"切回自主模式,不用重新立项。
- 完全自包含:task-flow 目录单独下载即可用,不依赖 dev-flow 或仓库里其他文件。
从 GitHub 克隆下来的仓库目录名叫 dev-flow(因为 GitHub 仓库名是 dev-flow),task-flow 是它下面的子目录。所以正确的拷贝路径是:
git clone https://github.com/wsxwj123/dev-flow.git
cp -R dev-flow/task-flow ~/.claude/skills/装好后新开一个 Claude Code 会话,说一句非开发的实质任务需求即可自动触发。
示例一:「帮我把这批 RNA-seq 数据做差异表达分析」
这是一个有客观对错的计算型任务,task-flow 会这样走:
- 分诊:判定为计算型实质任务,进立项。
- 立项拷问:先问清楚——数据在哪、比较的是哪两组、用什么工具(DESeq2 / edgeR?)、显著性阈值怎么定、要不要出图。还会强制问一次数据敏感度(公开/一般/敏感)和这次怎么处理。
- 定验货合同:把"算完要满足什么才算合格"写成一张验收清单(比如:样本分组正确、跑通无报错、差异基因表按 padj 排序、有火山图),让你确认后锁定——锁定后执行过程中不许偷偷放宽这些标准。
- 执行:拆步骤一步步做,读数据、跑分析、出结果。
- 硬验证闸:因为是计算型,会额外做硬验证——比如换个方式核对差异基因数目、检查统计量对不对,不是"跑完就信"。
- 抽账交付:交付前抽查证据账本,确认关键数字都拴得住来源,再把结果交给你。
你会看到的是:开头几个确认问题 → 一张让你签字的验收清单 → 中途进度汇报 → 最后带核对结论的交付,而不是它闷头跑完直接甩给你一堆数字。
示例二:「帮我写篇综述」
纯写综述有专门技能 review-writing 整包覆盖,task-flow 不会去抢:
- 分诊:识别出这是被单一专门技能完全覆盖的任务。
- 让位:明确告诉你"这个走 review-writing 更合适",把活让给它。
- 问一句:顺带问一句"要不要我在它写完后,独立帮你把一道关(做一次用户签字的验收)"。你要,就挂一层独立验收;你不要,就纯让位、不叠自己的流程。
你会看到的是:一句"让位 review-writing"的说明 + 一个是否加独立把关的问句,而不是它硬套一套自己的流程盖在专门技能上面。
task-flow/
├── SKILL.md 调度器:任务分级 + 三问分诊 + 主循环 + 铁律 + 反模式
└── references/
├── 01-立项分诊.md 立项拷问、拟计划、起草验收合同、子代理 prompt 骨架
├── 02-质量闸.md 契约闸门 + 证据账本 + 硬验证 + 软评审 + 外包闸 + 抽账终判
├── 03-触发动作.md 按分诊结果触发:螺旋探索 / 红队对抗 / 样品先行
├── 04-异常与续跑.md 止损、变更单、park、返修、续跑留档、残局清理
├── PLATFORMS.md 跨平台适配:Claude 专有写法在 OpenCode/Codex 的对应做法
└── rules.md 全程横切的通用规则(数据隔离、说人话、报名字等)