{"slug": "i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that", "title": "I stopped picking between Claude Code, Codex and Gemini, so I built a shell that picks for me", "summary": "A developer built Caspian, an open-source terminal copilot that runs Claude Code, OpenAI Codex, Gemini and Cursor in the background and automatically routes each request to the most suitable agent based on task triage. The tool pins tools manually via `/use codex` or hands control back with `/use auto`, shows cost and change estimates before large edits, and persists decisions and changes to `.caspian/context.md` so context carries across tools. It is free, requires Node 20.18+ and at least one signed-in AI coding CLI, and runs on Windows, macOS and Linux.", "body_md": "I pay for more than one AI coding tool. Most of you probably do too.\n\nAnd every day I hit the same friction:\n\nSo I built Caspian: one terminal copilot that sits on top of the agents you already have and picks the right one for each request.\n\nCaspian runs Claude Code, OpenAI Codex, Gemini and Cursor in the background and shows their answers in one session.\n\nFor every request it triages the task and routes it:\n\nThe rules are simple:\n\n`/use codex` pins a tool if you want control; `/use auto` hands it back.\nBefore a large change runs, Caspian shows an estimate: files touched, lines changed, turns, tokens and time, next to what the fast model would cost. You choose: run it, run it on the fast model, or cancel. Dollar amounts only appear when you're billed per token.\n\nType `add a forgot pasword link to it` and a cheap model rewrites it as:\n\nAdd a \"Forgot password?\" link to the login page in src/pages/login.tsx.\n\nYou pick whether to send the refined version, the original, or edit it.\n\nDecisions and changes are written to `.caspian/context.md`, so when work moves from Claude Code to Codex, the context moves with it.\n\nThe header shows how much of each tool's plan you've used, including the 5-hour and weekly windows and reset times. No more surprise rate limits mid-task.\n\nQuestions are read-only. Shell commands stay off until you press Shift+Tab. Big changes ask first.\n\nYou need at least one AI coding CLI installed and signed in, plus Node 20.18+.\n\n```\nnpm install -g @caspianmd/caspian\ncd my-project && caspian\n```\n\nIt's free and runs on Windows, macOS and Linux. Requests go to each tool's own provider, exactly as if you ran it yourself.\n\nI'd love feedback, especially on the routing. Which tasks do you think it should send where? Drop a comment!", "url": "https://wpnews.pro/news/i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that", "canonical_source": "https://dev.to/caspianmdtool/i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that-picks-for-me-2kmg", "published_at": "2026-10-06 09:11:50+00:00", "updated_at": "2026-10-06 09:18:15.809533+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "large-language-models"], "entities": ["Caspian", "Claude Code", "OpenAI Codex", "Gemini", "Cursor", "Node.js"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that", "markdown": "https://wpnews.pro/news/i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that.md", "text": "https://wpnews.pro/news/i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that.txt", "jsonld": "https://wpnews.pro/news/i-stopped-picking-between-claude-code-codex-and-gemini-so-i-built-a-shell-that.jsonld"}}