OPEN SOURCE · MIT · SEPTEMBER 2026

Which AI coding agent supports what? Every cell cited.

AgentMatrix compares 22 AI coding agent CLIs across 32 capabilities. Each of the 704 cells stores the sentence from the vendor's own documentation that justifies it, the URL of that page, and the date the sentence was last found there. A free GitHub Action re-checks every quote weekly.

Published 2026-09-11 · Data verified 2026-09-13 · 682 of 704 quotes found at their source, 22 cells marked unknown

The AgentMatrix table, 22 coding agent CLIs by 32 capabilities: typing mcp filters it to the MCP rows; clicking the Claude Code / MCP client cell opens the verdict, the vendor's verbatim sentence, the source URL and the date it was last found there; then the same for Cline
Click any cell on the live site to read the quote, the source URL, the verification date and the rubric that produced the value.

The problem

"Does Codex CLI have hooks? Can Gemini CLI run as an MCP server? Which of these agents run natively on Windows?" In 2026 these questions come up daily, and they are usually answered from memory. The comparison tables that exist are rarely dated, almost never sourced, and go stale within weeks because Claude Code, Codex CLI, Gemini CLI, Cursor, GitHub Copilot CLI, OpenCode, Cline, Goose, Aider and Amp ship features constantly.

AgentMatrix answers from the documentation and shows its work. It is deliberately narrower than some hand-maintained comparisons such as coding-agents-matrix, which cover more products. The difference is what backs each cell.

What is different

What the matrix covers

Agents (10): Claude Code (Anthropic), Codex CLI (OpenAI), Gemini CLI (Google), Cursor CLI, GitHub Copilot CLI, Cline, OpenCode, Goose (Block), Aider, Amp (Sourcegraph).

Capabilities (32), in six groups:

EXTENSIBILITYMCP client · acts as MCP server · lifecycle hooks · custom slash commands · Agent Skills (SKILL.md) · plugin system · subagents · project instruction file · AGENTS.md support
CONTROL AND SAFETYpermission modes · built-in sandbox · checkpoints and rewind · plan mode · full-auto mode
SESSIONS AND AUTOMATIONresume sessions · headless and CI mode · background tasks · parallel agents
MODELSmodel selection · custom providers and BYOK · local models · reasoning control · token and cost display
INPUT AND OUTPUTimage input · built-in web search · built-in URL fetch · official IDE integration · git and PR workflow · persistent memory
PLATFORMnative Windows · open source · free tier

What the data says (September 2026)

A few rows that stood out while building it. Every claim below links to the same evidence the matrix shows; open the live matrix and click the cell to read the quote.

CapabilityFinding
Acts as an MCP serverYes only for Claude Code (claude mcp serve). Codex CLI still documents a deprecated stdio MCP server and Goose can re-expose its built-in extensions; the other seven do not offer it, and the ones that do expose themselves to other tools use ACP or HTTP, which is not MCP.
Local modelsYes for six (Codex CLI, GitHub Copilot CLI, Cline, OpenCode, Goose, Aider). No for Claude Code, Cursor CLI, Amp, and for Gemini CLI, whose "local model" is an experimental Gemma classifier that only routes requests; every answer still comes from hosted Gemini.
Open sourceSix of ten are OSI-licensed (Codex CLI, Gemini CLI, Cline, OpenCode, Goose, Aider). Claude Code, Cursor CLI, GitHub Copilot CLI and Amp are proprietary.
Free tierYes for Codex CLI, Gemini CLI, Cursor CLI and GitHub Copilot CLI. Partial for Cline, OpenCode, Goose and Aider (rotating free models or free only through a third-party provider). No for Claude Code (requires a paid plan) and Amp (its free tier is closed to new sign-ups).
Built-in sandboxYes for Claude Code, Codex CLI, Gemini CLI and Cursor CLI. Partial for GitHub Copilot CLI (preview), Goose (containers you set up) and Amp (remote machines). No for Cline, OpenCode and Aider; a Docker image as an install method does not count.
Checkpoints and rewindSix agents rewind their own edits without git. Codex CLI advises the user to make git checkpoints instead, Goose has no rewind, Aider can undo its last commit, Amp exposes an undo tool.
Native WindowsNine of ten run natively; Amp supports Windows through WSL only.
AGENTS.mdSeven read it automatically. Claude Code reads CLAUDE.md and documents an import workaround, Gemini CLI needs the filename configured, Aider has no instruction-file convention.
Persistent memory written by the agentYes only for Claude Code's auto memory. Five are partial (preview, experimental, off by default, or a documented methodology), four have only a user-maintained file.
UniversalAll ten have a full-auto mode, a headless or CI mode, model selection, reasoning-effort control and image input.
Read the values with the rubric in mind. "Partial" is a precise category here: experimental or preview features, deprecated paths, one-platform-only support, or capabilities reachable only through an add-on such as an MCP server. When in doubt the matrix says partial or unknown rather than an optimistic yes.

How it works

Two loops, one free and one that costs API credits.

Every week, free

1. fetch every evidence URL in data/matrix.json (raw markdown or page text)
2. search each page for the cell's quote, tolerating formatting but not wording
3. quote found      -> verified_at = today
   quote missing    -> value = "unknown"; the old quote, URL and value stay in the notes
   page unreachable -> cell untouched, reported
4. no value changed -> the refreshed dates are committed
   values changed   -> a pull request and an issue list the affected cells for a human

When documentation changes, with an API key

1. fetch every source page listed for the agent in data/agents.json
2. Claude reads all of it in one request and returns one JSON entry per capability:
   value, verbatim quote, source URL, notes, constrained by a schema
3. every returned quote is searched for in the fetched text; a quote that is not found
   demotes the cell to "unknown" (a fabricated or paraphrased quote does not survive)
4. if the new answer is "unknown" but the previous verified quote is still on its page,
   the previous cell is kept, so one bad answer never erases good data
5. the result is diffed against the previous matrix and opened as a pull request

The mechanical check proves that a sentence exists on a page. Whether the sentence supports the value is a judgment made by the rubric, the model and the reviewers, in that order. Cells are open to challenge: report one with a link to the docs.

What it costs

Nothing to run. GitHub Actions and GitHub Pages are free for public repositories, and the weekly quote check needs no API key. Re-deriving cells with Claude is paid by whoever runs it, with their own key: at list prices roughly $0.50 to $3 per agent with claude-fable-5-1, on the order of $30 for a full pass over all 22 agents. The repository ships no key, and it does not need one to stay honest.

Contributing

More agents are welcome. Adding one means listing its documentation URLs in data/agents.json, filling the 32 cells (with your own key, by hand, or leaving them unknown for someone else), and running npm run check, which fails if any quote is not found at its URL. Capabilities are open for proposals too; a good proposal comes with a rubric two people would apply the same way.

Türkçe özet

AgentMatrix, 22 yapay zekâ kodlama ajanı komut satırı aracını (Claude Code, Codex CLI, Gemini CLI, Cursor CLI, GitHub Copilot CLI, Cline, OpenCode, Goose, Aider, Amp, Qwen Code, Crush ve 10 tane daha) 32 yetenek üzerinden karşılaştıran açık kaynak bir özellik matrisi. Her hücre, üreticinin kendi dokümanından birebir bir alıntı, o sayfanın adresi ve alıntının son doğrulandığı tarihle birlikte saklanıyor; ücretsiz bir GitHub Action her hafta bütün alıntıları kaynağında yeniden kontrol ediyor, kaybolan alıntının hücresi "bilinmiyor"a düşüyor ve bir issue açılıyor. Çalıştırması ücretsiz, lisansı MIT, verisi JSON olarak indirilebilir.