mcpField
R
ralph-review

ralph-review

github.com/jimwellerAgent 工作流69 次安装
代码仓库

关于 ralph-review

ralph-review 是用于检查 Ralph 计划及 bd 任务图缺陷的 Agent 技能。它先验证图结构,再将审查任务交给子 Agent。

主要功能

  1. 01验证 Epic 与子任务结构
  2. 02检查循环和就绪任务
  3. 03比对父级与标签集合
  4. 04依据源文档审查计划
  5. 05报告高、中级问题

适用场景

  1. 01运行前检查 Ralph 计划
  2. 02查找缺失或孤立的任务
  3. 03核对任务依赖和描述

安装

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

$npx skills add https://github.com/jimweller/clanker-skills --skill ralph-review

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

详细介绍

STARTER_CHARACTER = 🔍

Ralph 审查

派遣子 Agent 审查 ralph 计划和 bd 图中的缺陷。

派遣

启动器会验证 bd 图、捕获图状态,然后调用子 Agent。

1. 验证 bd 图

推导 slug 并定位运行 epic:

PROJECT_ROOT=$(git rev-parse --show-toplevel)
SLUG=$(git branch --show-current | tr '/' '-')
EPIC=$(bd list -t epic -l "ralph:${SLUG}" --json | jq -r '[.[] | select(.status=="open")] | .[0].id // empty')

运行结构检查。每项失败都属于 HIGH 级问题:

  • 恰好有一个带有标签 ralph:${SLUG} 的未关闭 epic
  • bd dep cycles 未报告任何循环
  • Epic 至少有一个子项(bd list --parent "$EPIC")
  • 至少有一个就绪任务(bd ready --parent "$EPIC")
  • 每个子项都有描述
  • 父项集合(bd list --parent "$EPIC")等于标签集合(bd list --label "ralph:${SLUG}",不包括 epic)

检查是否存在孤立节点(MEDIUM 级)。

如有任何 HIGH 级问题,直接报告并停止。图必须结构正确,才能进行审查。

2. 捕获图状态
bd list --parent "$EPIC" --json
bd ready --parent "$EPIC" --json
bd list --label "ralph:${SLUG}" --json
3. 调用子 Agent

使用下方的审查提示词派遣子 Agent。替换 <PROJECT_ROOT>、<SLUG>、<EPIC>、图验证结果和捕获的图状态。

在图验证结果前加上前缀,逐字转发子 Agent 的回复。

审查提示词

你是计划审查员。阅读计划,根据图状态评估计划,并检查缺陷。

来源

阅读 <PROJECT_ROOT>/.llmtmp/ralph-plan.md。然后找到 ## Inputs 部分并解析 plan documents: 行。按逗号拆分、去除空白,然后阅读每个路径。这些是计划文档:规划者参考的前瞻性意图文档(PRD、设计说明)。计划必须忠实呈现这些文档。如果计划遗漏、违背计划文档中的要求,或引用了过时的要求,请标记该计划。

Ralph 循环的工作方式

Ralph 循环是一种自主的迭代执行机制。两种模式共用相同的产物:

  • 会话内(ralph-loop 插件):Stop 钩子会将提示词重新提供给同一个 Claude 会话。
  • 外部(scripts/ralph.sh):bash while 循环会在每次迭代中启动一个全新的 claude --print。

机制:

  • bd 图就是状态机。每次运行都组织在一个独立的运行 epic 下;并发工作树通过 --parent 过滤保持隔离。
  • 运行 epic 带有标签 ralph:<slug>。每个子任务同时带有 --parent <epic> 和相同的标签。这两种信号相互独立,用于检测孤立项。
  • 计划的“Run Identity”部分记录了字面 slug 和 epic ID。Agent 每次迭代都会从计划中读取它们。
  • 每次迭代处理一个任务。Agent 读取 bd ready --parent <epic> --json,选取第一个结果,执行其描述中的内容,关闭任务,然后停止。
  • 就绪队列为空时,Agent 会关闭 epic 并输出哨兵。
  • 每项操作都是一个 bd 任务(创建分支、BEGIN 标签、代码、文档、END 标签),并且都以运行 epic 为父项。
  • 每个 bead 都在其描述中包含完整指令:文件、验证命令、提交消息。
  • 运行范围内的约定写在 ralph-plan.md 中,而非每项描述中。
  • 环境是前置条件。凭据、工具链和运行时依赖由操作人员负责。

可接受的模式(不要标记):将多个任务合并为一组、部分完成、将 ralph:<slug> 标签用作运行标识(而非工作流派发)。

什么算作一项发现

发现是作者应在执行前修复的缺陷、缺口或风险。符合规范是基本要求,不属于发现。严重程度仅分为 HIGH 或 MEDIUM。严重程度更低的问题不予列出。

HIGH:ralph:<slug> 存在零个或多个未关闭的 epic;描述为空;图中存在环;epic 下没有子项;存在子项但没有就绪任务;父项/标签设置不匹配;每项任务的工作流在 bd close 后仍继续,而不是停止;每项任务的工作流未在 sentinel 之前关闭 epic;缺少 Run Identity 章节;缺少含 plan documents: 行的 Inputs 章节;计划与计划文档相矛盾;Approach 中的文字声明了依赖边并未强制执行的顺序。

MEDIUM:描述未提及验证命令或提交消息;多任务图中存在孤立任务;触及 README.md/CLAUDE.md/.llmdocs/ 的任务由作者直接编辑,而不是运行文档技能(/docs、$docs)。

评估领域

仅检查以下缺陷模式。只报告发现的缺陷,不报告其他内容。

  1. 目标清晰度 - 目标含糊;仅凭计划,使用全新上下文的迭代无法判断是否成功
  2. 任务拆分 - 粒度不当;任务无法独立完成;任务缺失或冗余;标题以技术命名;缺少足够的描述细节,导致冷启动的工作者无法执行
  3. 排序与依赖关系 - 边不正确;bd ready 的顺序会产生错误结果;隐式依赖缺少显式边;存在环;存在孤立节点
  4. 计划完整性 - 缺少约定/工具/命令;构建/测试/代码检查命令不准确;每项任务的工作流不明确;缺少 Run Identity;工作流缺少 epic 范围限定;缺少 epic 关闭步骤;缺少 STOP 指令;缺少 ralph/ 分支和 BEGIN/END 标记;内联编辑而非委派给文档技能
  5. 风险与缺口 - 自主执行可能失败;任务需要人工判断;任务会导致仓库处于损坏状态
  6. 可行性 - 单次迭代无法实际完成的任务;超出全新上下文自主执行能力的任务
输出格式
# Ralph Loop Review

## Goal Clarity
## Task Decomposition
## Sequencing and Dependencies
## Plan Completeness
## Risk and Gaps
## Feasibility
## Summary

发现格式:- **[high]** 标题。描述。 或 - **[medium]** 标题。描述。

必须包含所有章节标题。每个章节下只列缺陷。某章节没有缺陷时,写“无发现。”

总结:总体评估和最重要的 3 条建议。

引用任务 ID 和章节名称。仅输出评审内容。

评论

支持 Markdown