Cursor stays the brain. Grok CLI + DeepSeek (claude-ds) + OpenRouter (easy) are the parallel army.
Lane-aware /route orchestration in tmux — not another multi-provider fleet, not a Codex clone.
cursor-route health
cursor-route start --lane hard "Refactor auth module; run tests; report verify evidence"
cursor-route jobs --json
cursor-route capture <jobId>| Product | Brain | Workers | Feel |
|---|---|---|---|
| codex-orchestrator | Claude Code | Codex | Viral tmux panes |
| CAO | Supervisor CLI | Many (incl. Cursor CLI) | Enterprise MCP + Web UI |
| cursor-route | Cursor Agent | Grok CLI + claude-ds + OpenRouter (easy) | Cost-aware lanes you already pay for |
If you already live in Cursor, X Premium (Grok CLI), and DeepSeek — stop paying a third coding agent just to parallelize.
| Role | Typical bill | cursor-route use |
|---|---|---|
| Cursor | Premium plan | Plan / synthesize / verify (orchestrator) |
| Grok CLI | X Premium | --lane hard implement |
| DeepSeek via claude-ds | DeepSeek API / plan | --lane mid implement |
| OpenRouter free models | OpenRouter API (free tier) | --lane easy wording/drafts — non-secret prompts only (see Security) |
| Codex / extra Claude | Optional | Not required for v0 |
Exact dollars vary — the point is reuse subscriptions you already have.
Prerequisites
| Dep | Why |
|---|---|
| tmux | Worker panes |
| Bun (or Node 20+) | Runs the CLI |
Grok CLI and/or Claude Code + DeepSeek (claude-ds) |
Workers |
OpenRouter API key (OPENROUTER_API_KEY) |
Easy lane (--lane easy / --worker openrouter) |
script(1) |
Job logs (macOS/Linux) |
# Prerequisites
brew install tmux # or build tmux into ~/.local
# Bun or Node 20+ — npm package ships compiled dist/ (Node runs it directly)
# Preferred install
npm i -g cursor-route
# Auth workers
grok login # if using Grok
# configure claude-ds — see DeepSeek setup below
export OPENROUTER_API_KEY=... # if using the easy lane (see OpenRouter setup below)
cursor-route health
# without tmux / workers (CI / headless infra smoke):
CURSOR_ROUTE_RELAXED=1 cursor-route healthFrom source (dev):
git clone https://github.com/cemini23/cursor-route.git
cd cursor-route && bun install
./bin/cursor-route healthCopy the skill into your project or user skills:
mkdir -p .cursor/skills
cp -R ~/.cursor-route-src/skills/route-orch .cursor/skills/Then say /route-orch or spawn workers in Cursor — the skill delegates to cursor-route (does not replace private Cemini /route).
| Command | Description |
|---|---|
health |
Gate #1 — tmux, runtime, workers |
start <prompt> |
Spawn worker job (--worker / --lane / --dir / --ask / --dry-run / --no-tmux) |
jobs [--json] |
List jobs |
status <id> |
Job + sessionAlive |
capture <id> [n] |
Last n pane/log lines |
send <id> <msg> |
Mid-task redirect (tmux send-keys) |
attach <id> |
Print tmux attach hint |
kill <id> |
Stop session |
sessions |
Managed tmux sessions |
clean [--days N] |
Drop old job files |
| Lane | Worker | Intent |
|---|---|---|
easy |
openrouter |
Wording / drafts on OpenRouter free models (non-secret prompts only — see Security) |
mid |
claude-ds |
Default implement on DeepSeek |
hard |
grok |
Hard implement on Grok CLI |
Always-approve is on by default. Opt out: --ask or CURSOR_ROUTE_ASK=1.
cursor-route mid lane runs DeepSeek, not Anthropic. Claude Code is only the terminal harness; bills go to DeepSeek when ANTHROPIC_BASE_URL points at them.
Recommended (official DeepSeek → Claude Code):
npm i -g @anthropic-ai/claude-code
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN=YOUR_DEEPSEEK_API_KEY # from platform.deepseek.com
export ANTHROPIC_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash
export CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash
cursor-route health # worker:claude-ds should be ✓
cursor-route start --lane mid "…"Persist the same vars under ~/.claude/settings.json → "env": { … } if you want them every shell.
Also accepted: claude-ds or deepseek-claude on PATH (Cemini shims).
Not the default: bare claude still talking to Anthropic. Health refuses that so a misconfigured install cannot silently burn frontier $ rates. Escape hatch only: CURSOR_ROUTE_ALLOW_ANTHROPIC=1.
No DeepSeek yet? Use --lane hard / --worker grok (X Premium).
--lane easy / --worker openrouter sends wording/draft prompts to OpenRouter's
free model route (openrouter/free). Get a key at openrouter.ai/keys.
export OPENROUTER_API_KEY=sk-or-v1-... # from openrouter.ai/keys
# optional:
export CURSOR_ROUTE_OPENROUTER_MODEL=openrouter/free # default
export OPENROUTER_BASE_URL=https://openrouter.ai/api/v1 # default
cursor-route health # worker:openrouter should be ✓
cursor-route start --lane easy "Rewrite this FAQ answer in 3 sentences"Non-secret prompts only: free OpenRouter models may log prompts, so the easy lane is for
wording/drafts without credentials. The same refuse gate as every lane blocks
key-shaped material in start / send, and the runner re-checks the prompt file.
Jobs default to ~/.local/share/cursor-route/jobs (override with CURSOR_ROUTE_JOBS_DIR).
This is not inside a git clone of this repo.
- No secrets in prompts (CLI soft-refuses common key patterns)
- See SECURITY.md
- Local orchestration only — no LIVE Discord / trading egress demos
What is cursor-route?
cursor-route is a public MIT CLI and Cursor skill that runs parallel coding workers in tmux while Cursor remains the planner. DeepSeek handles the mid lane, Grok CLI handles the hard lane, and OpenRouter free models handle the easy lane for wording/drafts.
How is this different from Codex orchestrator?
It uses the familiar strategist and worker-pane shape, but it is not a Codex clone. cursor-route uses Cursor as the planner and DeepSeek plus Grok CLI as workers. Codex is not required.
Does mid lane use Anthropic Claude?
No. The mid worker is DeepSeek. Claude Code is the harness, configured with ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic and a DeepSeek key in ANTHROPIC_AUTH_TOKEN.
How do I install?
Run npm i -g cursor-route, install tmux if needed, then run cursor-route health. The package is available at https://www.npmjs.com/package/cursor-route, and the source is at https://github.com/cemini23/cursor-route.
Is it free?
The cursor-route code is open source under MIT. It does not make the worker services free. Your costs depend on Cursor, DeepSeek API usage, and the Grok access or balance available to you. The easy lane can be free on OpenRouter's free-model route (openrouter/free).
- Newsletter: Outlier Weekly
- YouTube: @Cemini23
- Agent meta-wiki: cemini-claude-code-CCC
- Products: Atto · GuruWatcher
- Agent toolkit: vet · wikilint · phase0 · agent-toolkit-demo · ara-schema · cursor-audit · super-audit
- Public wikis: Gambling · Game Dev · SEO/GEO · Cybersecurity · 3D Printing · Image Gen
- Trading: world-cup-bot
- Donation wallets (canonical): SUPPORT.md
Thank you for your support — stars, issues, shares, and tips all help keep this CLI and the broader Cemini open-research stack alive.
If you’d like to tip, use the donation-only addresses below (not trading or production wallets). Prefer following the work? These are the best places to start:
| Project | Link |
|---|---|
| Outlier Weekly (methodology newsletter) | outlierweekly.substack.com |
| Atto — organize Italian family documents on your computer | youratto.com |
| GuruWatcher — Discord alerts for your newsletter’s price levels | guruwatcher.com |
| YouTube | @Cemini23 |
| Chain family | Address |
|---|---|
| EVM (Ethereum, Polygon, Base, Arbitrum, …) | 0x444C5C2eC439E0382aa5a17F70313c536BcC5D58 |
| Solana / SVM | J4zNn4hK9jTrKBFY8sbAGJHLoZvXvQf4B9pQSbSrocZE |
| Polymarket (referral) | polymarket.com/?r=Cemini23 |
Full wallet note: SUPPORT.md · canon also in CCC SUPPORT.md.
We’re grateful you’re here. Thank you for your support.
MIT © Cemini — see LICENSE.
- Homebrew tap
- Native DeepSeek harness adapter
- Codebase map injection (
--map) - Cursor CLI
agentas alternate supervisor - Web UI / CAO-style MCP supervisor