claude-relais is a Claude Code orchestration skill built on a simple split:
- Think (Claude): high-reasoning orchestration and task design (default: Opus
opus-4.6) - Build (Cursor): fast implementation with Cursor headless agents
- Judge (Guardrails): strict
PLAN -> BUILD -> JUDGEcontracts with stop/block safety checks
Heavy reasoning models are excellent for planning, but slower and more limit-intensive for direct implementation. claude-relais keeps Claude focused on thinking and uses Cursor for execution throughput.
For many users, this split delivers high sustained output at roughly the cost of two standard plans (around ~$40/month combined), depending on provider pricing, plan limits, and usage patterns.
- ROUTER: Claude routes input:
- explicit
envoi ...commands are executed directly; otherwise it checksrelais/state.
- ONBOARD OR CONTINUE:
- fresh repo or missing roadmap -> guided onboarding (mode + PRD + roadmap); existing state -> next-step options.
- PLAN: orchestrator defines one bounded task and scope.
- BUILD: task is dispatched to Cursor headless agent (mandatory).
- VERIFY/UPDATE: Claude verifies against git truth, updates roadmap/state, and loops.
Mode stop conditions:
task: stop after one successful taskmilestone: stop when active milestone is doneautonomous: continue until blocked/limit/signal
- Claude Code CLI installed and authenticated (
claude whoami) - Git
- Bash
- Cursor CLI installed and authenticated (
cursor agent whoami)
git clone https://github.com/clementrog/claude-relais.git && cd claude-relais && ./scripts/install.shWhat this does:
- installs skill files into your Claude skills directory
- writes
config.local.jsonwith default model/builder - runs preflight checks (Claude + Cursor required)
- does not require installing legacy
envoinpm packages
./scripts/smoke.shYou should see:
CLAUDE_RELAIS_PRECHECK:PASS:summary:Preflight passed.CLAUDE_RELAIS_SMOKE:PASS:summary:Skill install and preflight checks passed.
- Restart Claude Code if it was already open.
- Open your target repo.
- Ask Claude to run with
claude-relaisorchestration for your task. - Keep task scope explicit and bounded per tick.
Defaults:
- orchestrator model:
opus-4.6 - builder mode:
cursor(enforced; non-cursor builder tasks are blocked) - destructive command gates on by default:
deny_prefixesincludesrm,sudo,git reset --hard,git checkout --,git clean -fd,git clean -fdx,mkfs,dd require_explicit_for_destructive: true- preflight blocks tracked symlinks that resolve outside repo root
Permission note:
- do not auto-enable global
--dangerously-skip-permissionsat skill load - use
envoi autonomy --set fastfor low-friction mode with guardrails
Override at install time:
./scripts/install.sh --model opus-4.6 --builder cursorCustom install location:
./scripts/install.sh --dest ~/.claude/skills- Missing Claude CLI/auth: run login flow, then
./scripts/preflight.sh - Cursor auth warning: run
cursor agent loginthen retry preflight - Skill not picked up: ensure
<skills-dir>/claude-relais/SKILL.mdexists, then restart Claude Code - Duplicate
/claude-relaisentries or odd behavior:
rm ~/.claude/commands/claude-relais.md- Reinstall cleanly:
./scripts/uninstall.sh --yes
./scripts/install.sh --forceSKILL.mdreferences/how-it-works.mdreferences/configuration.mdreferences/troubleshooting.md