2026-08-28 · Updated 2026-08-28 · Evidence 2026-08-28 · 9 min read

Coding-agent CLI alternatives

The terminal-first field map of coding-agent CLIs — Cursor CLI, Kiro CLI, Claude Code, Codex CLI, Gemini CLI, OpenCode, Qwen Code, Crush, Amazon Q CLI, the community Grok CLI, Factory's Droid, and YYLO — scored across install surface, orchestration, task truth, evidence, and portability, with every cell dated 2026-08-28.

By Juno AI INC · comparison · cli · terminal

Evidence-dated comparison matrix

Verdicts reflect the matrix evidence reviewed 2026-08-28. They are direct picks per shared job, not an overall ranking.

DimensionYYLOCursor CLIKiro CLIClaude CodeCodex CLIGemini CLIOpenCodeQwen CodeCrushAmazon Q CLIGrok CLIDroid CLIEvidence verdict
The job it runs in your terminalThe committed README states it in one line — "YYLO orchestrates AI coding agents and structured development workflows" — and the repository self-describes as an "AI coding-agent orchestration CLI with equivalent yylo and yy launchers"Docs: "Cursor CLI lets you interact with AI agents directly from your terminal to write, review, and modify code"Docs: "an AI coding agent that lives in your terminal — it reads your codebase, writes code, runs commands, and asks before doing anything destructive"npm: "Use Claude, Anthropic's AI assistant, right from your terminal"npm: "a coding agent from OpenAI that runs locally on your computer"GitHub: "An open-source AI agent that brings the power of Gemini directly into your terminal"Homepage: "an open source agent that helps you write code in your terminal, IDE, or desktop"GitHub: "An open-source AI coding agent that lives in your terminal"README: "Your new coding bestie, now available in your favourite terminal"GitHub: "Agentic chat experience in your terminal. Build applications using natural language" — under a repo notice that it now receives critical security fixes onlyREADME of superagent-ai/grok-cli: "an open-source coding agent for the Grok API", community-built and "not affiliated with, endorsed by, or sponsored by xAI Corp."Factory docs: "Run one command, then start droid in any repository" — delegate a task, review the diff, merge from the app or the terminalSplit
How you install itnpm package @yylo/cli, versioned 0.2.0 in generated package facts; the site docs install with npm install -g @yylo/cliA curl installer on macOS, Linux, and WSL, a PowerShell one-liner on Windows; the command you then run is agentA platform installer downloaded from kiro.dev; the docs note the .kiro configuration is shared across all of Kiro's surfacesnpm install -g @anthropic-ai/claude-code (2.1.251 at the 2026-08-28 registry check)npm install -g @openai/codex (0.150.1 at the 2026-08-28 registry check)npm install -g @google/gemini-cli, or npx @google/gemini-cli without a global install (0.57.0)curl -fsSL https://opencode.ai/install | bash, npm install -g opencode-ai, or brew — three documented paths (1.18.25)npm package @qwen-code/qwen-code (0.22.3) plus a standalone curl installer for Linux and macOSbrew install charmbracelet/tap/crush or npm install -g @charmland/crush; winget and scoop on Windows (0.91.2)A Homebrew cask or DMG on macOS; platform packages on Linux per the repository install sectionA curl install script, or bun add -g grok-dev where Bun is on PATHOne command per the docs home — Homebrew on macOS and Linux, the npm package droid on Windows (0.206.0)Split
Whose models and APIs it runs onNo model layer of its own: the --subagent flag forwards to the README's documented services — `claude`, `codex`, `gemini`, `pi`, `cursor`Models chosen per run with --model (the docs example names gpt-5), sharing the editor's model shelfAnthropic Claude, open-weight models, or an Auto picker weighing quality, latency, and costClaude models by default; the CLI and IDE surfaces accept third-party providersOpenAI models behind a ChatGPT sign-inBrings "the power of Gemini directly into your terminal"; the README documents two authentication paths — Google sign-in or a Gemini API key75+ LLM providers through Models.dev, local models included"OpenAI, Anthropic, Gemini, and Qwen APIs" plus local models through Ollama or vLLM, switchable at runtimeDescribes itself as "wired into your LLM of choice" — OpenAI- or Anthropic-compatible APIs, with mid-session switching that preserves contextThe repository describes chat_cli as the q command that "allows users to interface with Amazon Q Developer from the command line"An xAI Grok API key is the documented prerequisite; the README names "the full Grok model lineup"Split
Orchestration — running agents, not just being oneDispatches installed CLIs across five documented services, cuts one worktree per task from a recorded exact base, runs bounded parallel fan-out, and lands results through a serialized merge queuePrepend & to a message to hand the task to a Cloud Agent that keeps running while you are away; local sessions resumeUp to 10 cloud sessions at once under the documented preview limits, plus concurrent tasks inside each specSubagents hold their own context windows; background agents span sessionsDelegates focused work to specialized agents inside one terminal sessionStarts several agents over one shared checkout through its multi-session surfaceLists "Auto-Memory, Auto-Skills, SubAgents, Agent Teams, and MCP" among its out-of-the-box agentic featuresSession-based: multiple work sessions and contexts per project, switchable mid-conversationThe README turns "sub-agents on by default", including a built-in computer sub-agent for desktop automationCloud sessions and Droid Computers keep sessions available from any browser; headless exec and cloud computers run alongside the CLIYYLO
Where task truth livesEach task's intent, status, response, and landing commit are ledger entries in Git history — readable with a clone and no installed productConversations resume through agent ls and agent --continue; rules and skills files are what the repository keepsSpecs and steering persist as files, and the .kiro configuration follows the account across IDE, CLI, web, and mobileCLAUDE.md files concatenated up the tree plus per-project session and memory filesAGENTS.md written by /init carries conventions; Git checkpoints bracket a task for revertHierarchical GEMINI.md files "to tailor behavior for your projects", layered from home directory to folderAGENTS.md and skills travel with the repository; sessions can be listed and exportedAuto-Memory and Auto-Skills build durable context as the agent worksWork sessions and contexts persist per project in the terminal appYYLO
What one finished run leaves behindTyped receipts binding commands, digests, session ids, and evidence hashes; a finish gate whose validation a risk policy selects; the landing commit itselfResumable conversation records through agent ls, plus the repository-resident rules and skillsCheckpoints and rewind are a documented feature; specs persist as reviewable filesSession transcripts and memory files per projectHeadless runs serve pipelines, and checkpoints bracket a task before and after for revert"Conversation checkpointing to save and resume complex sessions" in the README feature listA session export command with a matching import, so runs move between machines as JSONReviewable sessions — delegate a task, review the diff, then mergeYYLO
Source and licensePublic repositories; the CLI repository still carried no license file at the 2026-08-28 checkThe fetched docs surfaces for the CLI link no public source repositoryThe Amazon Q CLI repository's own notice calls Kiro CLI "a closed-source product"; Kiro's public GitHub repository reports no licensenpm license defers to the README; the public repository reports noneApache-2.0 on npm and in the openai/codex repositoryApache-2.0 on npm and GitHubMIT on npm and on the anomalyco/opencode repositoryApache-2.0 on the QwenLM/qwen-code repositorySource-available under FSL-1.1-MIT — the Functional Source License with an MIT future grantDual MIT/Apache-2.0 on GitHub, with the repo notice that it now receives critical security fixes onlyMIT on the superagent-ai/grok-cli repositoryThe npm package droid carries an UNLICENSED field; the linked factory-ai/factory repository reports no licenseSplit

A dash (—) marks combinations the dated evidence matrix does not cover; no value is inferred for them.

Claim sources

public_source
dated public sources cited at authoring time
package_facts
frontend/generated/package-facts.json (generated product truth; never hand-edited)
seo_corpus_2026_08_26
frontend/docs/seo/evidence/seo-input-inventory.json (DataForSEO estimates from the 2026-08-26 competitor exports; competition is paid advertiser competition, never organic difficulty)

Search demand for coding-agent CLIs is brand-shaped: people type "cursor cli", "kiro cli", or "grok cli" because a product name reached them first, and only then discover that the terminal field holds a dozen tools with genuinely different jobs. This page is the field map for that moment. It scores twelve terminal CLIs across seven capabilities — what the command does, how it arrives on your machine, whose models it needs, whether it orchestrates other agents, where task truth lives, what a finished run leaves behind, and what you would actually own — with every cell dated 2026-08-28 and a dash wherever the public evidence behind this page ran dry. Two boundaries keep it honest. Product-versus-product verdicts are not made here: when two finalists remain, the pairwise comparisons carry the decision, one product at a time. And the question "which harness, across all its surfaces" — IDE, cloud, mobile — belongs to the harness field matrix; this page scores the terminal artifact itself, the thing you install and invoke.

One vocabulary note before the matrix, because the field's own marketing blurs it: most columns below are agent CLIs — a model, a loop, and tools wrapped in one terminal program — while YYLO is an orchestration CLI, the layer that starts, bounds, records, and lands other agents' work without being an agent itself. The layer definitions and the harness boundary own that vocabulary in depth; the matrix applies it one row at a time.

Twelve CLIs in their own words

The identity row quotes each project's live self-description, fetched 2026-08-28, because in this field the marketing line is often the most accurate capability summary available. Read the pattern in the verbs. Six products say "agent" about themselves — Kiro's terminal agent "reads your codebase, writes code, runs commands", OpenCode is "an open source agent that helps you write code", Qwen Code and Gemini's CLI both lead with open-source agent framing, Codex "runs locally on your computer", and the community grok-cli exists to drive "the Grok API". Two wrap a vendor's assistant around the terminal — Claude Code's npm entry invites you to "Use Claude, Anthropic's AI assistant, right from your terminal", and Crush styles itself "your new coding bestie". Amazon's q was a "chat experience" that builds applications from natural language. Cursor's CLI "lets you interact with AI agents directly from your terminal" — the terminal surface of an agent product whose center of gravity is elsewhere. YYLO's committed README uses neither noun: it "orchestrates AI coding agents and structured development workflows", which is why its row-one verdict joins a split rather than winning it — the jobs genuinely differ.

Two dated succession facts sharpen the picture. The Amazon Q CLI repository now carries a notice that the open-source project "is no longer being actively maintained and will only receive critical security fixes", and that Q Developer's CLI successor "is now available as Kiro CLI, a closed-source product" — so the corpus's q-family demand is being pointed, by AWS's own repository, at a Kiro CLI whose source is closed. And grok-cli's 1,600-estimated-volume name is not xAI's: among open-source builds answering it, this page verified superagent-ai's MIT-licensed grok-cli, whose README states plainly it is "not affiliated with, endorsed by, or sponsored by xAI Corp." Both facts are stated as of 2026-08-28; both moved once already and can move again.

The install map

Eight of the twelve arrive through npm — @anthropic-ai/claude-code, @openai/codex, @google/gemini-cli, opencode-ai, @qwen-code/qwen-code, @charmland/crush, YYLO's @yylo/cli, and Factory's droid — which is why "npm install" is the field's default muscle memory. The curl-script route is the second dialect: Cursor's installer, OpenCode's secondary path, Qwen's standalone script, and grok-cli all ship the pipe-to-shell form. Kiro CLI installs from a downloaded platform installer, Amazon's q from a cask or DMG. The row's verdict is a split because no surface wins on merit — but the exit question differs by choice: a registry-published CLI can be pinned, audited, and removed by version, and a curl pipe executes whatever the endpoint serves that day.

The one number in this section deserves its label: package versions quoted above are registry states on 2026-08-28, not promises about tomorrow's. YYLO's own install surface is deliberately boring — npm install -g @yylo/cli, one package, equivalent yy and yylo launchers — because an orchestration layer earns trust by being the most predictable thing in the pipeline.

The line between agent CLIs and the orchestration CLI

The orchestration row is where the twelve stop being interchangeable. Self-orchestration is the field's normal — Cursor hands a task to a Cloud Agent with an & prefix, Kiro runs up to ten cloud sessions, Claude Code and Codex delegate to in-session subagents, OpenCode fans sessions across a shared checkout, Qwen ships Agent Teams, grok-cli turns sub-agents on by default, Crush keeps multiple work sessions and contexts per project, and Droid moves sessions onto cloud computers. What none of them documents is dispatching a *different vendor's* CLI — each orchestrates its own agent, from its own center of gravity.

YYLO's row reads differently because its committed flag table does: --subagent forwards to five documented services — claude, codex, gemini, pi, cursor — and each task runs in its own worktree opened from an exact recorded base commit, with parallel fan-out held under an explicit cap and results landed through a serialized merge queue. That is why the row scores for YYLO: it is the only column whose documented job is running agents it did not bring. The dispatch surface, its current service list, and the released-support status of each integration are owned by the harness switching guide; this page does not restate support state, and no cell here should be read as one.

Where the task lives, and what the run leaves

Two rows score durability, and the dash gaps multiply honestly. Task truth: Kiro persists specs and a .kiro configuration that follows the account across surfaces; Claude Code concatenates CLAUDE.md up the tree; Codex writes AGENTS.md and brackets tasks with checkpoints; Gemini CLI layers GEMINI.md files "to tailor behavior for your projects"; OpenCode and Crush keep per-project sessions; Qwen builds Auto-Memory as it works. All real, all readable mainly by reopening the same tool. YYLO's ledger entries bind intent, status, response, and landing commit inside Git history itself, which is the row's pick — a clone reads the task record without any product installed.

Evidence is the youngest row. Checkpoints (Kiro, Codex, Gemini), resumable conversations (Cursor), session exports (OpenCode), reviewable sessions (Droid) each preserve something real about a run. YYLO's receipts bind commands, digests, session ids, and evidence hashes behind a finish gate that runs validation chosen by risk policy — evidence designed to outlive the loop that produced it, which is what earns the row. Each dash records a limit of this page's evidence, not a judgment about the tool behind it.

Exit terms: models and licenses

Portability splits into what you plug in and what you keep. Model-side, the open field is wide: OpenCode documents 75+ providers, Crush is "wired into your LLM of choice", Qwen Code names "OpenAI, Anthropic, Gemini, and Qwen APIs" plus local serving; the vendor-tied half of the field — Codex behind a ChatGPT sign-in, Gemini's own API key, Claude by default, Grok through xAI's key — trades that freedom for a bundled shelf. YYLO holds the odd position of needing no model at all: its model flag is a dispatch decision, not a dependency, because the dispatched service owns the model. License-side the field divides three ways: recognizable open licenses (Codex, Gemini, OpenCode, Qwen, the grok-cli build, Amazon's dual-licensed q), source-available terms (Crush's FSL-1.1-MIT grants MIT only after a future date), and closed products with public issue trackers. YYLO keeps the site's standing honesty note: public repositories, no license file on the CLI repo at the 2026-08-28 check. Readers weighting exit terms heavily have their shortlist, and the layer-by-layer open-source map lives in the open-source stack guide, with the dated open-source shortlist owned by the best-of comparison.

The wider field

Six more terminal CLIs the corpus names sit outside the scored matrix, each verified on its public surface — 2026-08-28 — and none scored below because the rows above would have been mostly dashes. Goose (Apache-2.0, now under the Agentic AI Foundation) is a general-purpose agent "beyond code suggestions". OpenClaw is a personal assistant first — "Your own personal AI assistant. Any OS. Any Platform." — with terminal commands people search for directly. CodeRabbit's CLI is a review gate, not a coder: "Smart CLI Reviews act as quality gates for Codex, Claude, Gemini, and you." Qoder's homepage lists a CLI beside its IDE and mobile apps as one surface of an "agentic coding platform". JetBrains titles Junie "the AI coding agent by JetBrains". And Kilo bills itself as an "Open Source AI Coding Agent in IDE, CLI and Cloud" under an acquisition banner naming Anaconda. Their omission from the matrix is a coverage statement about verifiable cells, not a verdict.

The demand this field actually carries

Seventy-six keyword rows feed this route, drawn from the export set dated 2026-08-26, estimated at 26,720 combined, and every figure is a DataForSEO estimate — never a measurement, never a promise, with the paid competition field never doing ranking duty on this site. The split inside that total is the story. The cursor family leads at an estimated 9,180 across four phrasings, kiro follows at 4,690 across sixteen (settings, hooks, subagents, steering, pricing — people spelunking one product's manual), then grok at 2,020, droid at 1,520, q at 1,420, and opencode at 1,410. Below them: openclaw at 850, gemini at 630, coderabbit at 590, claude code at 570, crush at 520, kilo at 490, codex at 480 across its five manual phrasings, goose at 480, qoder at 390, junie at 320, qwen at 320, plus generic terminal-agent phrasings at 540 and two orphaned alternative searches — "openai codex alternative" and "vscode copilot alternative" — at 20 each. The cluster also carries one honest oddity: "terminal blinking cursor" (estimated 260) shares the words but not the job — that searcher wants their terminal's blinking block fixed, and this page is not for them.

The ranking footprints recomputed from the committed dispositions tell the field's competitive shape: kiro.dev holds positions on 26 of the 76 keywords, opencode.ai on 17, z.ai on 17 — z.ai's including grok cli itself and the droid phrasings, a model vendor's domain ranking on other products' CLI discovery — then openclaw.ai 11, cursor.com 6, pi.dev 4, openrouter.ai 3, coderabbit.ai 3, every.to and conductor.build one each. And the quietest fact of all, checked row by row across the fifteen export files during this page's own evidence pass: the name "yylo" appears nowhere among them. The field's shoppers have not heard it; that is what this route is for.

If the map above leaves two finalists, the harness field matrix and the pairwise pages — Cursor, Kiro, OpenCode, Pi, Conductor — carry the deeper verdicts, one decision per page. If it leaves you holding several CLIs you already use, the orchestration question — running them under one boundary with task truth and receipts — starts at the dispatch guide, and one bounded, evidence-producing task is the honest first step.