mcpField
S
sprint-status

sprint-status

github.com/rohitg00Agent 工作流2.9k146 次安装5 周前更新
代码仓库

关于 sprint-status

sprint-status 是用于协调多个并行 Claude Code 会话的 Skill。它通过会话标识和明确的阶段状态减少混淆,并可汇总各会话进度。

主要功能

  1. 01标明项目、分支和任务
  2. 02检测并行会话与工作树
  3. 03统一汇报阶段状态
  4. 04区分阻塞项与信息缺失
  5. 05汇总 Sprint 状态面板

适用场景

  1. 01协调并行编码会话
  2. 02跟踪不同分支间的依赖工作
  3. 03汇总活跃会话的进度

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/rohitg00/pro-workflow --skill sprint-status

安装后在 Claude Code 中输入/sprint-status确认已加载。

详细介绍

Sprint 状态

并行运行多个 Claude Code 会话时,混乱是最大的敌人。此技能可确保每个会话都能标明自己的身份,并在每个步骤报告状态。

会话识别

每条涉及决策、计划或重要操作的回复都以会话说明开头:

SESSION: my-app | branch: feat/auth | task: Add JWT refresh tokens

只需一行,几乎没有成本,却能避免用户把反馈应用到错误的会话。

检测并行会话

检查是否有同级 Claude Code 进程:

pgrep -af "claude" | grep -v "$$" | head -5

或者检查是否有活动的 worktree:

git worktree list 2>/dev/null

或者查找会话标记(由 session-start.js / session-end.js 写入):

ls $TMPDIR/pro-workflow/sessions/ 2>/dev/null | tail -5

如果检测到多个会话,务必包含会话识别标头。如果只运行一个会话,则在任务边界处以及提供选项前包含该标头。

状态行

每个主要步骤结束时都要添加一条状态行,且只能有一条。不要含糊其辞。

STATUS: COMPLETE

当前步骤的所有工作都已完成,可以提交、合并或开始下一项任务。

STATUS: COMPLETE
  Changed: src/auth/refresh.ts, src/auth/refresh.test.ts
  Tests: 14 pass, 0 fail
  Ready to commit.
STATUS: COMPLETE_WITH_NOTES

工作已完成,但有需要告知用户的事项。

STATUS: COMPLETE_WITH_NOTES
  Changed: src/api/upload.ts
  Tests: 8 pass, 0 fail
  Notes:
    - Upload size limit is hardcoded to 10MB, should be configurable
    - No rate limiting on this endpoint yet (separate task)

备注用于说明可正常使用但仍有改进空间的事项,不是阻碍,只是观察结果。

STATUS: BLOCKED

没有用户输入或外部依赖就无法继续。

STATUS: BLOCKED
  Blocker: Need database migration approved before writing the ORM layer
  Waiting on: DBA approval for schema change in migrations/0042_add_tokens.sql
  Can continue: Nothing else in this task until unblocked
STATUS: NEEDS_INFO

缺少足够的上下文,无法做出妥善决策。应先询问,不要猜测。

STATUS: NEEDS_INFO
  Question: Should refresh tokens expire after 7 days or 30 days?
  Impact: Changes token cleanup job schedule and storage requirements
  Default if no preference: 7 days (more secure, standard practice)

务必提供合理的默认选项,让用户无需切换上下文就能直接回复“按默认选项执行”。

并行会话模式

模式 1:功能 + 测试
Session 1: feat/auth       → implementing JWT refresh
Session 2: feat/auth-tests → writing test suite for auth module

两个会话共同处理同一项功能,但不修改相同文件。会话 1 完成实现前,会话 2 就可以开始针对接口编写测试。

模式 2:独立功能
Session 1: feat/upload     → file upload endpoint
Session 2: feat/billing    → billing webhook handler
Session 3: fix/login-bug   → login redirect fix

各项工作完全独立,合并顺序无关紧要。

模式 3:堆叠式变更
Session 1: feat/base-types → shared type definitions (must merge first)
Session 2: feat/api        → API layer (depends on Session 1)
Session 3: feat/ui         → UI layer (depends on Session 1)

会话 1 先合并。会话 2 和 3 随后进行变基。每次状态更新都要注明依赖关系。

何时报告状态

事件是否包含状态?
完成文件编辑否(过于细碎)
运行测试套件是,前提是通过/失败状态发生变化
完成阶段(研究、计划、实现)是
向用户提供选项是(带会话标头)
遇到阻碍是,立即报告
提问之前是(NEEDS_INFO)
提交之后是(COMPLETE)
会话结束时是(最终状态)

Sprint 仪表板

用户询问各会话的状态时,汇总并展示 Sprint 概览:

SPRINT STATUS
  Session 1: feat/auth       STATUS: COMPLETE         (ready to merge)
  Session 2: feat/upload     STATUS: BLOCKED          (waiting on S3 creds)
  Session 3: fix/login-bug   STATUS: COMPLETE_WITH_NOTES (works, needs perf review)

反模式

  • 有多个活动会话时省略会话标头
  • 明知存在问题仍使用 STATUS: COMPLETE(应使用 COMPLETE_WITH_NOTES)
  • 把状态行埋在段落中(应单独成行,并放在末尾)
  • 每次编辑后都报告状态(只在有意义的节点报告)
  • 使用 NEEDS_INFO 时不提供默认选项(迫使用户完全切换上下文)
  • 用“快完成了”或“基本能用了”代替明确的状态

添加到 CLAUDE.md

## Sprint Status

Every decision and plan starts with: SESSION: project | branch | task
End major steps with STATUS: COMPLETE | COMPLETE_WITH_NOTES | BLOCKED | NEEDS_INFO
NEEDS_INFO always includes a sensible default.
When parallel sessions are detected, always include session headers.

评论

支持 Markdown