mcpField
R
ralph

ralph

github.com/civitaiAgent 工作流7.3k62 次安装今天更新
代码仓库

关于 ralph

Ralph 是一项自主 Agent 技能,可将项目工作拆分为带优先级和验收标准的用户故事,并在会话中执行。它支持暂停、注入指导、监控以及编排子会话。

主要功能

  1. 01按 PRD 用户故事规划工作
  2. 02运行并监控 Agent 会话
  3. 03暂停、恢复并注入指导
  4. 04启动和协调子会话
  5. 05支持代码、编排和测试 PRD

适用场景

  1. 01根据结构化功能计划自动执行开发
  2. 02等待 API 时暂停任务
  3. 03向运行中的会话补充信息
  4. 04将项目拆分给多个子会话

安装

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

$npx skills add https://github.com/civitai/civitai --skill ralph

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.gitignore
ralph.mjs
daemon/
server.mjs
session-manager.mjs
storage.mjs
turn-engine.mjs
ui.html
prompts/
base.md
code.md
orchestrator.md
original.md
testing.md

详细介绍

Ralph - 自主 Agent

Ralph 会将大型项目拆分为用户故事,并自主执行。工作流如下:

  1. 创建 PRD - 定义带有验收标准的用户故事
  2. 运行 - ralph.mjs create --prd path/to/prd.json --start
  3. 监控 - ralph.mjs logs <session-id> --follow

创建 PRD

创建项目文件夹和 prd.json:

.claude/skills/ralph/projects/<project-name>/prd.json
PRD 结构
{
  "description": "Brief description of the feature",
  "branchName": "feature/my-feature",
  "userStories": [
    {
      "id": "US001",
      "title": "Short descriptive title",
      "description": "As a [user], I want [feature] so that [benefit]",
      "acceptanceCriteria": [
        "Specific testable criterion",
        "Typecheck passes"
      ],
      "priority": 1,
      "passes": false
    }
  ]
}
故事指南
  • 优先级 1:基础工作 - 迁移、类型、基础组件
  • 优先级 2-3:核心功能
  • 优先级 4+:次要功能、完善
  • 每个故事应涉及 1-3 个文件,而非重构 10 个文件
  • 在验收标准中加入“类型检查通过”

CLI 命令

运行任何命令时,守护进程都会自动启动。

运行中的会话
# Create and start a session
ralph.mjs create --prd path/to/prd.json --start

# List all sessions
ralph.mjs list

# Check session status
ralph.mjs status <session-id>

# Follow logs in real-time
ralph.mjs logs <session-id> --follow
会话控制
# Pause a session
ralph.mjs pause <session-id> --reason "Waiting for API"

# Resume with guidance
ralph.mjs resume <session-id> --guidance "API is ready on port 3000"

# Inject guidance into running session
ralph.mjs inject <session-id> --message "Try using the helper in utils.ts"

# Abort a session
ralph.mjs abort <session-id>
编排(多级)

用于会生成子会话的编排器 PRD:

# Spawn a child session
ralph.mjs spawn <parent-id> --prd child/prd.json --start

# List children of a session
ralph.mjs children <session-id>

# Wait for all children to complete
ralph.mjs wait <session-id>

# View session tree
ralph.mjs tree <session-id>

# Abort parent and all children
ralph.mjs abort <session-id> --cascade

PRD 类型

类型用途
code(默认)实现功能、提交代码
orchestrator协调多个子 Ralph
testing浏览器自动化测试

在 prd.json 中通过 "type": "orchestrator" 设置。

完整 CLI 参考

运行 ralph.mjs --help 查看完整文档。

评论

支持 Markdown