用途:把 Ralph RLM 安装进目标仓库,并让它在 OpenCode 中以 ralph-rlm/supervisor 模型使用。
主要能力与流程:先确认工作目录为项目根,依据 lockfile 和 package.json 识别包管理器与测试命令,检查是否已有 opencode.json、.opencode/ralph.json 与 .opencode/plugins/;已有配置时先读 references/config-files.md。安装包名 @doeixd/opencode-ralph-rlm;一次性安装可用 npx @doeixd/opencode-ralph-rlm setup。在项目根运行 npx @doeixd/opencode-ralph-rlm setup --worktree .;已有 OpenCode 配置时先用 --dry-run,仅在明确要求覆盖时用 --force。命令标志见 references/cli.md。
生成文件:.opencode/plugins/ralph-worker.ts、ralph-session-bridge.ts、ralph-autostart.ts(自动启动 provider,--no-autostart 时跳过,运行时可用 RALPH_AUTOSTART=0 关闭);.opencode/ralph.json 含 verify.command 与 plans 布局,协议文件位于 .ralph-rlm/plans/<name>/,plan-path 可打印活动计划 PLAN.md 位置;可含 fff.enabled 与 fff.scanTimeoutMs,除非无法加载原生依赖否则保持默认。opencode.json 保留已有 provider 并加入 provider["ralph-rlm"]。按项目调整 verify.command(npm 用 ["npm", "test"] 等)。是否把 Ralph 指引加入 AGENT.md/AGENTS.md 需先征得用户同意。
诊断与模型:运行 npx @doeixd/opencode-ralph-rlm doctor --worktree .;provider 未运行时警告属预期,失败查 references/troubleshooting.md。先发现已有凭据:opencode auth list、opencode models。Supervisor 需要可靠工具调用,已有带密钥 provider 通常自动检测;否则设 RALPH_SUPERVISOR_API_KEY(+ MODEL / BASE_URL)或 .opencode/ralph-provider.json。Worker 不设则用 OpenCode 默认模型,可选配置免费模型。无可用凭据时先 opencode auth login。
启动与验证:重开 OpenCode,provider 默认自动启动;curl http://127.0.0.1:8787/api/health 检查 supervisor.ready 应为 true,必要时手动运行 npx @doeixd/opencode-ralph-rlm serve --worktree .,随后选择 ralph-rlm/supervisor 模型。首次循环前建议先用 supervisor 规划 PLAN.md。
限制:setup 默认跳过已有受管文件;provider 幂等,端口冲突时先停旧实例;勿手工复制旧 v0.1 插件或调用 ralph_spawn_worker;worker 搜索可选用 @ff-labs/fff-node,不可用时 rlm_grep 自动回退;Node 会拒载 node_modules 下的 TypeScript 文件。