All skills
Skillintermediate
Rough Idea: Add roo-cli as a Provider to Ralph Orchestrator
Rough Idea: Add roo-cli as a Provider to Ralph Orchestrator — reference document from Claude Code knowledge pack.
Claude Code Knowledge Pack7/10/2026
Overview
Rough Idea: Add roo-cli as a Provider to Ralph Orchestrator
What
Add roo (Roo Code CLI) as a new backend provider in ralph-orchestrator, enabling ralph run -b roo and ralph plan -b roo.
Context
- Roo Code CLI (
roo, v0.1.15+) is an AI coding assistant that supports multiple LLM providers (Anthropic, OpenAI, AWS Bedrock, OpenRouter) - Roo CLI source is at
/Users/skven/workplace/Roo-Code/apps/cli/ - Install:
cd /Users/skven/workplace/Roo-Code/src && pnpm run bundle && cd /Users/skven/workplace/Roo-Code && pnpm --filter @roo-code/cli build && npm install -g ./apps/cli - Binary:
roo(installed globally via npm)
Key Decisions (already researched and validated)
- Text mode only — Use
roo --print --ephemeral "prompt"(plain text output, like kiro). Stream-JSON deferred to later. - Always use
--prompt-file— Roo natively supports--prompt-file <path>. All prompts use this (one code path, no size threshold). --ephemeralincluded — Fixed in roo v0.1.15+ to work with Bedrock. Clean disk state per iteration.- Tool auto-approval is default — No
--trust-all-toolsflag needed (unlike kiro). - Interactive mode:
roo "prompt"forralph plan. - Auto-detect last in priority:
["claude", "kiro", ..., "pi", "roo"]. - Roo always exits code 0 — Even on API errors. Ralph relies on LOOP_COMPLETE/event presence.
- Event tags work — Roo emits
<event topic="build.done">andLOOP_COMPLETEwhen Ralph-style system instructions are provided.
Working Test Commands
# Headless (text mode)
roo --provider bedrock --aws-profile roo-bedrock --aws-region us-east-1 --model anthropic.claude-sonnet-4-6 --max-tokens 64000 --print "Say hello"
# With prompt file
echo "Your prompt" > /tmp/prompt.txt
roo --provider bedrock --aws-profile roo-bedrock --aws-region us-east-1 --model anthropic.claude-sonnet-4-6 --max-tokens 64000 --print --prompt-file /tmp/prompt.txt
# Stream JSON (for future reference)
roo --provider bedrock --aws-profile roo-bedrock --aws-region us-east-1 --model anthropic.claude-sonnet-4-6 --max-tokens 64000 --print --output-format stream-json "Say hello"
Files to Modify
crates/ralph-adapters/src/cli_backend.rs— Addroo(),roo_interactive(), registration infrom_config,from_name,for_interactive_promptcrates/ralph-adapters/src/auto_detect.rs— Add "roo" toDEFAULT_PRIORITY, updateNoBackendErrorcrates/ralph-adapters/src/lib.rs— Update doc commentpresets/minimal/roo.yml— New preset (mirror kiro.yml, change backend to "roo")
Design & Research (already completed)
Full PDD artifacts at .agents/planning/2026-03-03-roo-cli-provider/:
design/detailed-design.md— Complete design documentimplementation/plan.md— 7-step implementation plan with checklistresearch/assumption-validation.md— All 9 assumptions verified with live testsresearch/roo-cli-interface.md— Complete CLI flag documentation