Hardcore Reviews
Hardcore Reviews

Five Terminal Coding Agents: Which One Survives Your CI?

This review compares the terminal coding agent as a form factor rather than whose model is smarter: MiniMax Code CLI, Claude Code, Codex CLI, Qwen Code and Gemini CLI across seven dimensions (install, headless and CI, model freedom via BYOK, permissions and sandboxing, extension surface, open license, pricing model), with every repository number taken from a 2026-09-20 GitHub API snapshot. Key findings: model freedom is the widest gap, since only MiniMax and Qwen Code support BYOK to other vendors; the most substantial sandbox belongs to Codex CLI full-auto with the network disabled and a directory jail; Claude Code has the most mature extension surface but is closed and eats only its own model. It closes with a scenario ledger for personal daily use, unattended CI, enterprise compliance and model-swapping savings, plus three shared weaknesses: context readability, permission misjudgment and model lock-in.

Published September 20, 20268 min read
<!-- terminal-coding-agent-comparison-review | review | Five Terminal Coding Agents: Which One Survives Your CI? -->

This review draws a clear line against comparisons already on the site. claude-code-vs-cursor-vs-codex measures raw model capability and workflow of three IDE and terminal agents. ai-coding-tool-free-credits-comparison-review adds up only free-tier allowances. mcp-clients-comparison-review picks which client drives your MCP servers. This piece owns a different frontier: the terminal agent as a form factor, comparing terminal shape and engineering usability only.

1. Scope and Selection Criteria

We compare seven dimensions of terminal form factor plus engineering usability: install method, headless and CI support, model freedom (BYOK), permissions and sandboxing, extension surface (MCP, skills, subagents), open source and license, and pricing model.

First, we run no coding benchmark and draw no "whose model is smarter" conclusion; reasoning quality is out of scope. For capability, read claude-code-vs-cursor-vs-codex.

Second, every repository number such as stars, forks, language, and license is a GitHub API snapshot from 2026-09-20. Claude Code is closed source with no public repo, so it carries no star.

Third, pricing and free allowances are modes only; exact figures follow the official pricing page. For a line-by-line free-tier breakdown, read ai-coding-tool-free-credits-comparison-review. Anything unverified is marked "per official docs"; we invent nothing.

Two selection rules. A tool must be terminal-native: it runs in a shell and completes the read, edit, run loop without a graphical IDE. A pure IDE plugin such as Cursor is out. A tool must be open and checkable, or at least ship a downloadable CLI with official docs.

2. Overview: Stars and Licenses

The repository numbers below come from the GitHub API on 2026-09-20; Claude Code is closed source and not counted.

ProjectRepoStars (2026-09-20)ForksLanguageLicenseCreatedLast push
MiniMax Code CLIMiniMax-AI/minimax-code1,443159TypeScriptMIT2026-06-012026-09-20
Claude Codeclosed, no public repon/an/an/aProprietaryn/an/a
Codex CLIopenai/codex125,43919,478RustApache-2.02025-04-132026-09-20
Qwen CodeQwenLM/qwen-code28,0053,075TypeScriptApache-2.02025-06-262026-09-20
Gemini CLIgoogle-gemini/gemini-cli107,09314,605TypeScriptApache-2.02025-04-172026-09-20

Three readings. The three open agents sit between 28,000 and 125,000 stars; Gemini CLI and Codex share the six-figure tier. MiniMax Code CLI is the newcomer, created 2026-06-01, with just over 1,400 stars. Licenses split: MiniMax chose MIT; the other three open tools use Apache-2.0; Claude Code is proprietary.

Qwen Code states in its repo description that it is a fork of Gemini CLI, adapted for Qwen models.

We omit chat-frontend or older CLI tools such as LobeChat or Aider.

3. Per Tool: Install, Entry, Model Freedom, Permissions, Extensions, License

MiniMax Code CLI (mcode)

Install: one-line script for macOS, Linux, WSL (curl -fsSL https://filecdn.minimax.chat/public/install.sh | bash) and Windows (irm .../install.ps1 | iex), source ai-bot.cn listing 2026-09-20. Log in with mcode login or mcode login --region global.

Entry: three modes. Interactive TUI; headless mcode exec for scripts, CI, batch; ACP mcode acp for an IDE such as Zed. mcode init . generates AGENTS.md.

Model freedom: strong. Runs on a MiniMax account or Token Plan, and supports BYOK into OpenAI or Anthropic compatible APIs.

Permissions and sandbox: permission control plus a sandbox, with Plan Mode, --continue, and --session. Internals follow official docs.

Extensions: MCP, hosted connectors, parallel subagents, plugins from official, local, GitHub sources, built-in skills, plus mcode-tools for web search and media.

License and eval: MIT, open source (GitHub API 2026-09-20). Official FrontierHarness Eval reports 76.7% task pass rate and 4 minutes 33 seconds median success (ai-bot.cn). For install detail see minimax-code-cli-resource.

Claude Code

Install: npm install -g @anthropic-ai/claude-code (Node 18 plus), native installer curl -fsSL https://claude.ai/install.sh | bash, or brew and winget (Anthropic docs, 2026 guide). Avoid sudo.

Entry: interactive REPL plus solid headless. claude -p runs and exits; with --allowedTools, --disallowedTools, --permission-mode plan it drops into GitHub Actions.

Model freedom: weak. Only Claude models (Sonnet 5 on Pro, Team, Enterprise; Opus 4.8 on Max, API). BYOK is your own ANTHROPIC_API_KEY for pay-as-you-go, model stays Claude. CLAUDE_CODE_USE_BEDROCK and CLAUDE_CODE_USE_VERTEX run Claude on AWS or GCP, model unchanged.

Permissions and sandbox: Manual by default, asks before first tool or file. settings.json draws the line, hooks fire on events. No bundled OS-level off-net sandbox; in restricted env pair with a container plus --dangerously-skip-permissions.

Extensions: most mature. MCP in settings.json mcpServers; subagents in .claude/agents; hooks in .claude/hooks; skills are slash commands; plugins in .claude/plugins; memory in CLAUDE.md.

License and pricing: proprietary, closed source CLI. Subscription Pro 20 dollars per month, Max 100 to 200, Team, or API pay-per-token (Anthropic pricing 2026-09-20). Free tier covers chat only, no CLI.

Codex CLI

Install: npm install -g @openai/codex (Node 22 plus), brew install codex, or standalone installer curl -fsSL https://chatgpt.com/codex/install.sh | sh (openai/codex docs). Avoid sudo.

Entry: interactive plus non-interactive one-liner; docs list a Non-interactive and CI mode. Connects to ChatGPT sign-in, so plan allowances count in.

Model freedom: weak. Only OpenAI models (gpt-5, codex family). BYOK is your OPENAI_API_KEY, not another vendor.

Permissions and sandbox: the signature. Three approval tiers: suggest (default, reads any file, asks on writes and commands), auto-edit (auto file patches, commands ask), full-auto (auto read, write, execute). In full-auto every command runs network-disabled and jailed to the working directory: macOS Apple Seatbelt limits writable roots to $PWD, $TMPDIR, ~/.codex; Linux Docker adds an iptables rule blocking egress except the OpenAI API. This off-net plus directory jail is the one tier that builds the sandbox into the tool.

Extensions: MCP in ~/.codex/config.toml mcp_servers; docs list connectors and tracing. Tighter than Claude Code but the MCP road is open.

License and pricing: Apache-2.0, open source, rewritten in Rust (GitHub API 2026-09-20). Free CLI plus ChatGPT plan allowances, or OpenAI API pay-as-you-go.

Qwen Code

Install: npm install -g @qwen-code/qwen-code@latest (Node 22 plus), brew install qwen-code, or standalone installer (QwenLM docs). As a Gemini CLI fork, install feels identical.

Entry: interactive plus headless qwen -p for scripts, CI, batch; daemon qwen serve over HTTP plus SSE (ACP) so clients share one agent; IM Bot mode connects Telegram, DingTalk, WeChat, Feishu.

Model freedom: strong, the most open. Multi-protocol across OpenAI, Anthropic, Gemini, Qwen APIs, plus any local model (Ollama, vLLM), switchable at runtime. DashScope via OPENAI_BASE_URL with OPENAI_API_KEY; ModelScope adds 2,000 free inference calls per day.

Permissions and sandbox: asks before acting by default, inherits Gemini CLI approval and sandbox (-s), plus Plan Mode. Internals follow docs.

Extensions: richest, on Gemini CLI's shoulders. Auto-Memory, Auto-Skills, SubAgents, Agent Teams, MCP, plus IDE plugins, desktop, web UI, IM bots. Docs say if you know Claude Code, you know Qwen Code.

License and pricing: Apache-2.0, open source (GitHub API 2026-09-20). Qwen OAuth free tier 2,000 requests per day at 60 per minute; paid via DashScope, ModelStudio, or BYOK any provider.

Gemini CLI

Install: npm install -g @google/gemini-cli (Node 20 plus), brew install gemini-cli, or npx @google/gemini-cli (docs and repo README).

Entry: interactive plus gemini -p non-interactive reading stdin and piping like a Unix tool; -o json for structured output; --headless for scripts and CI. Ships native Google Search grounding, a built-in ability no other CLI here has.

Model freedom: weak. Only Gemini models (Pro, Flash, 1M context). BYOK is your GEMINI_API_KEY on AI Studio, or Vertex AI for enterprise. No Claude or GPT.

Permissions and sandbox: tiers default, auto_edit, plan, yolo (-y). -s or --sandbox runs tools isolated, recommended with looser modes.

Extensions: MCP in ~/.gemini/settings.json; subagents are Markdown under .gemini/agents with isolated contexts; extensions gallery; skills; memory in GEMINI.md.

License and pricing: Apache-2.0, open source (GitHub API 2026-09-20). Free tier via personal Google account, official README states up to 60 requests per minute and 1,000 per day. GEMINI_API_KEY free tier lower; Vertex AI no free tier. Figures per official docs.

4. Dimension Comparison Table

DimensionMiniMax Code CLIClaude CodeCodex CLIQwen CodeGemini CLI
Installcurl/irm plus npmnpm plus native/brew/wingetnpm plus brew plus standalonenpm plus brew plus standalonenpm plus brew plus npx
Headless/CImcode execclaude -p (json)codex and codex execqwen -p plus daemon (ACP)gemini -p (pipe plus json)
Model freedom BYOKStrong: MiniMax or OpenAI/AnthropicWeak: Claude onlyWeak: OpenAI onlyStrong: four protocols plus localWeak: Gemini only
Permissions/sandboxcontrol plus sandboxask by default, sandbox via containerthree tiers, full-auto off-netask by default, inherits sandboxtiers plus -s sandbox
ExtensionsMCP/subagents/plugins/skillsMCP/subagents/hooks/skills/pluginsMCP/connectorsMCP/SubAgents/Teams/skillsMCP/subagents/extensions/skills
LicenseMITProprietaryApache-2.0Apache-2.0Apache-2.0
Pricingfree OSS plus token/APIsub 20 to 200 or APIplan allowance or APIOAuth 2000/day or APIGoogle free tier or API/Vertex

Model freedom is the widest gap. Of the three open tools, MiniMax and Qwen support BYOK to other vendors; Claude Code, Codex, Gemini CLI each lock to their own model. That split is the core of the "will the terminal agent vendor-lock me" question.

5. Scenario Ledger

ScenarioFirst pickOne-line reason
Personal daily editsClaude Code or Gemini CLIformer steadiest whole-repo context, latter zero-cost free tier with 1M context
Unattended CICodex CLI or Claude CodeCodex full-auto off-net sandbox built for unattended; Claude -p plus json fits pipelines
Enterprise compliance auditClaude Code (Bedrock/Vertex) or Codexformer runs Claude in your cloud account, latter keeps clear off-net trail
Model-swapping saverMiniMax Code CLI or Qwen Codeboth BYOK across protocols, switch to cheaper model, no single vendor

Personal daily: the Gemini CLI free tier costs nothing to try. For paid steady context, Claude Code plus whole-repo understanding is smoothest.

CI: Codex full-auto runs inside an off-net sandbox and returns results, closest to drop in and walk away. Claude Code with -p and --allowedTools pre-approves tools into GitHub Actions.

Enterprise: the red line is data stays in the designated cloud and actions are auditable. Claude Code Bedrock and Vertex place inference in the enterprise cloud; Codex off-net sandbox plus egress whitelist makes each call path explainable.

Model-swapping saver: MiniMax and Qwen treat model switching as first-class; use Token Plan today, self-hosted vLLM tomorrow with one config change. The other three mean switching tools.

6. Cold Think: Shared Weaknesses

First, context and log readability. Headless emits a long text blob or one JSON line; reviewing which files changed and why is not easy. None solve this fully; you wire git diff and structured output yourself.

Second, permission misjudgment risk. Whether Manual ask or yolo, the agent's read of dangerous commands comes from the model, not the sandbox. Codex compresses the blast radius with off-net plus jail; Claude Code relies on your allowedTools. Approval mode is a safety net, not a safe; flipping --dangerously-skip-permissions loose hands the terminal over.

Third, hidden cost of model lock-in. The free tiers of Claude Code, Codex, Gemini CLI bind to their own model. Once used to it, migration cost is habit and context, not code. The day you want a cheaper model and the agent cannot use it, that is the real lock. MiniMax and Qwen BYOK freedom costs one extra provider config.

Closing: the conclusion is not who is strongest but who resembles what you need. For the Step series terminal fit in this batch hotspot, see step-5-preview-hotspot. To land MiniMax Code CLI locally, see minimax-code-cli-resource. To wire Qoder site capability into a workflow, see qoder-sites-sop. For capability read claude-code-vs-cursor-vs-codex; for free tiers read ai-coding-tool-free-credits-comparison-review; for MCP clients read mcp-clients-comparison-review.

FAQ

question1: What does this review compare, and what does it leave out?

A1: Only seven dimensions of terminal form factor and engineering usability: install, headless/CI, model freedom BYOK, permissions and sandbox, extensions, open license, pricing. No benchmark, no smarter-model conclusion; for capability read claude-code-vs-cursor-vs-codex.

question2: Why do the star counts differ from what I see?

A2: Every repository number is a GitHub API snapshot from 2026-09-20; stars move daily. Claude Code is closed with no public repo, so no star. Treat as same-day and check the live count.

question3: Which tool truly avoids vendor model lock-in?

A3: Of the five, only MiniMax Code CLI and Qwen Code support BYOK to other vendors (OpenAI, Anthropic, Gemini, local). Claude Code, Codex CLI, Gemini CLI each eat only their own model; a self-owned key only switches to pay-as-you-go.

question4: For unattended CI, which is the least fuss?

A4: Codex CLI full-auto executes inside an off-net directory sandbox, closest to drop in and ignore. Claude Code with claude -p and --allowedTools pre-approves tools into GitHub Actions. Codex builds safety into the tool; Claude Code into config.

question5: Which has the sweetest free tier?

A5: Gemini CLI free tier via personal Google account, official README up to 60 per minute and 1,000 per day (per official docs); Qwen Code OAuth 2,000 per day. Claude Code has no free tier; Codex and MiniMax ship free CLIs but bill the model per use. For breakdown read ai-coding-tool-free-credits-comparison-review.

This article is AI-assisted and human-edited. Last updated: 2026-09-20

FAQ

What does this review compare, and what does it leave out?
Only seven dimensions of terminal form factor and engineering usability: install, headless/CI, model freedom BYOK, permissions and sandbox, extensions, open license, pricing. No benchmark, no smarter-model conclusion; for capability read [claude-code-vs-cursor-vs-codex](/en/posts/claude-code-vs-cursor-vs-codex).
Why do the star counts differ from what I see?
Every repository number is a GitHub API snapshot from 2026-09-20; stars move daily. Claude Code is closed with no public repo, so no star. Treat as same-day and check the live count.
Which tool truly avoids vendor model lock-in?
Of the five, only MiniMax Code CLI and Qwen Code support BYOK to other vendors (OpenAI, Anthropic, Gemini, local). Claude Code, Codex CLI, Gemini CLI each eat only their own model; a self-owned key only switches to pay-as-you-go.
For unattended CI, which is the least fuss?
Codex CLI full-auto executes inside an off-net directory sandbox, closest to drop in and ignore. Claude Code with claude -p and --allowedTools pre-approves tools into GitHub Actions. Codex builds safety into the tool; Claude Code into config.
Which has the sweetest free tier?
Gemini CLI free tier via personal Google account, official README up to 60 per minute and 1,000 per day (per official docs); Qwen Code OAuth 2,000 per day. Claude Code has no free tier; Codex and MiniMax ship free CLIs but bill the model per use. For breakdown read [ai-coding-tool-free-credits-comparison-review](/en/posts/ai-coding-tool-free-credits-comparison-review).

Related