Charm
Also known as: Charm, Charmbracelet, Charm (charmbracelet), Charmbracelet, Inc., Crush, charm.land, Charm Hyper, Catwalk, Fantasy
Terminal native AI coding agent from Charm with a broad choice of model providers, mid session model switching that keeps context, language server code intelligence, MCP and Agent Skills extensibility, and permission prompts before tool calls, running locally including air gapped.
Charm, the company behind the charmbracelet open source ecosystem, makes the command line glamorous with a suite of Go based terminal libraries and tools. Its flagship agentic product is Crush, a terminal native AI coding agent that connects to large language models and gives them tools to read, write, and execute code directly in the terminal.
Crush offers broad model provider flexibility, letting developers choose among Anthropic, OpenAI, Gemini, Bedrock, Copilot, Vertex, Groq, and local models and switch mid session, with a Catwalk provider database that keeps model metadata current. It pulls in code intelligence through Language Server Protocols, reads project context files, persists sessions and history in SQLite, extends through Model Context Protocol servers and agent skills, and gives teams fine grained control over permissions and repo local configuration. Because it runs locally in the terminal it supports air gapped and local model workflows, and it works across macOS, Linux, Windows, and the BSDs.
Vendor details
Canonical URL
https://charm.land
Category
Coding agent
Subcategory
Terminal-native coding agent (BYOK, multi-provider)
Funding status
Seed stage, based in New York, founded by Christian Rocha; the round amount is not stated. Charm is the company behind a widely adopted open-source terminal tooling ecosystem including Bubble Tea, Lip Gloss, Glow and Gum, with the vendor stating the Charm ecosystem powers more than 25,000 applications. Crush itself has roughly 25,000 GitHub stars and 1,800 forks since the repository was created in May 2025, with daily commits as of mid-2026. Charm now also operates Hyper, a subscription model provider with a free tier, which is its first documented commercial product line.
Company status
independent
Use cases & customers
Primary use cases
Target customers
Deployment options
Integrations
Crush connects to LLM providers (Anthropic, OpenAI, Gemini, Bedrock, Copilot, Vertex, Groq, and local models), uses Language Server Protocols for code intelligence, extends via Model Context Protocol servers over stdio, http, and sse, and can call local tools like git, docker, and npm.
In practice
You want a coding agent in your terminal that keeps your code on your own machine. Crush runs locally, works with local models through Ollama or LM Studio, and can run air gapped once provider auto update is switched off.
You want an AI review on every pull request without anyone starting it. Crush's non interactive crush run mode fits into CI, and a published GitHub Actions workflow runs it on each pull request to review the diff.
You want to move between Anthropic, OpenAI and a local model without losing your place. Crush lets you pick from 17 providers or your own compatible endpoint, and switch models mid session while keeping the conversation.
Sources & related URLs
Related / legacy domains
Agentic Index coverage score
10.0 / 14 capabilities · 71%
| Integrations & Tool Calling | Full |
|---|---|
|
Crush connects to MCP servers over stdio, HTTP and SSE, uses language servers for diagnostics and references, fetches web pages, and runs the developer's own toolchain through its bash tool, alongside built in tools to view, grep, glob, edit and write files. SourceCrush docs (configuration/mcp, tools overview) and github.com/charmbracelet/crushread 2026-09-29 |
|
| Workflow Orchestration | Partial |
|
One agent works through a loop of file, search, language server and shell tools, with several sessions per project and models switchable mid session. There are no subagents, handoffs, branching or coordination across agents. SourceCrush docs (tools overview, sessions) and github.com/charmbracelet/crushread 2026-09-29 |
|
| Knowledge Grounding & RAG | Partial |
|
Context is assembled per run from the repository through view, grep and glob tools, language server diagnostics and references, and project context files such as AGENTS.md and CRUSH.md. There is no index, graph or embeddings layer that persists and can be queried. SourceCrush docs (context files, tools) and github.com/charmbracelet/crushread 2026-09-29 |
|
| Human Oversight & Guardrails | Full |
|
Crush asks the developer for permission before it runs tool calls, including in non interactive runs, with an allow list for trusted tools and a --yolo flag that skips the prompts only when the developer chooses it. Sourcegithub.com/charmbracelet/crush and Crush docs (permissions, crush run)read 2026-09-29 |
|
| Security, Identity & Governance | Partial |
|
Provider keys are supplied locally on the developer's own machine, where Crush runs. Usage metrics can be switched off, and prompts and responses are never collected. Ignore files limit what Crush reads, and Charm's optional Hyper inference service offers zero data retention. No certification, single sign on, role based access or audit logging is offered. Sourcegithub.com/charmbracelet/crush, Crush docs (metrics and privacy) and hyper.charm.landread 2026-09-29 |
|
| Observability & Auditability | Full |
|
Crush writes a per project JSON log with timestamps and session IDs that records each tool call, such as a bash command, and each prompt sent and response received. The log can be viewed with crush logs, tailed or followed live, and debug mode adds language server traffic. Sessions and their history are kept in a local SQLite database. SourceCrush docs (logging, sessions) and github.com/charmbracelet/crushread 2026-09-29 |
|
| Memory & State Persistence | Partial |
|
Sessions persist across restarts in a per project SQLite database and can be reopened, but the model remembers only the current session, and no context carries from one session to another. Project context files are instructions the developer writes. Sourcegithub.com/charmbracelet/crushread 2026-09-29 |
|
| Deployment & Data Residency | Full |
|
Code stays on the developer's machine because Crush runs locally in the terminal. It works air gapped once provider auto update is switched off and providers are updated manually, and can use local models through Ollama or LM Studio. Sourcegithub.com/charmbracelet/crush and Crush docs (air gapped, local models)read 2026-09-29 |
|
| Prebuilt Agents / Templates / Packs | Partial |
|
Skills follow the open Agent Skills standard, with SKILL.md packages discovered from a skills directory. Crush ships no built in skills or catalog and points to Anthropic's public skills repository for examples, so customers assemble the skills themselves. Sourcegithub.com/charmbracelet/crushread 2026-09-29 |
|
| Triggers & Channel Coverage | Full |
|
The crush run command is a non interactive mode for scripts and CI/CD pipelines. A published GitHub Actions workflow runs it on every pull request to review the diff, so work reaches the agent without a person starting it. The interactive terminal is the other surface. Sourcegithub.com/charmbracelet/crushread 2026-09-29 |
|
| Model Flexibility & Routing | Full |
|
The developer picks the provider and model from 17 providers, including Anthropic, OpenAI, Google Gemini, AWS Bedrock, Azure, Groq, OpenRouter and Hugging Face, or uses custom OpenAI compatible or Anthropic compatible endpoints and local models. Models can be switched mid session while keeping the conversation. SourceCrush docs (configuration/providers) and github.com/charmbracelet/crushread 2026-09-29 |
|
| APIs / SDKs / MCP Extensibility | Full |
|
Fantasy, the Go agent framework Charm built to power Crush, is a library with a multi provider API and custom tools. Crush can be driven from scripts through crush run with stdin and stdout, and extended with Agent Skills. MCP support lets Crush reach other systems. Sourcegithub.com/charmbracelet/fantasy and Crush docs (cli/run)read 2026-09-29 |
|
| Testing, Debugging & Optimization | Partial |
|
The agent runs project commands and tests through its bash tool and reads language server diagnostics, and debug logging exposes agent and language server behavior. These check the customer's code and help troubleshoot a run, but there is no harness to evaluate or regression test the agent's own behavior. Sourcegithub.com/charmbracelet/crushread 2026-09-29 |
|
| Browser / Computer-use | Not documented |
|
Everything runs through file tools, shell commands, language servers, MCP servers and a fetch tool that retrieves pages. Crush does not control a browser or operate software through a graphical interface. Sourcegithub.com/charmbracelet/crushread 2026-09-29 |
|
The Agentic Index coverage score grades every vendor Full, Partial or Not documented against the same 14 buyer facing capabilities, from public evidence only. Each capability links to how all vendors in the index score on it. How this evidence is graded
Recent platform changes
Charm released version 0.88.0 of the Crush terminal coding agent, introducing a scriptable configuration system via crush.sh and crushrc. The update adds explicit tool permissions, allowing users to apply "deny" rules to completely hide specific tools from the AI agent. The release also includes verb-first setup commands for managing MCP servers and LSPs, as well as auto-retry logic for AWS SSO logins.
Bears on: Security / enterprise
View sourceCharm released Crush v0.86.0, bringing a new interactive Question Tool to the terminal-based AI coding agent. This capability allows connected models to present developers with single-choice, multiple-choice, and free-form text prompts with mouse support. The release also implements new session-affinity headers to enable provider-side prompt caching.
Bears on: Human approval / guardrails
View sourcePricing
Free (source available); bring your own model keys
Crush itself is free; model usage is paid to the chosen provider, or in Hyper credits on Charm's own inference service.
Cost watchouts
The tool is free, but running Crush means paying for model usage, through the developer's own provider or Hyper credits, which scales with how much coding work you drive through it.
Variable cost rationale
Because developers bring their own model keys, the effective cost is LLM token usage paid to the chosen provider, which scales directly with coding activity.
Sales call required
No, self serve available
Key ambiguities
Charm publishes no commercial or enterprise price for Crush itself; the only paid Charm offer is Hyper inference credits.
Related vendors
- Cognition — Maker of Devin, an autonomous AI software engineer
- 10Web — Agentic website platform whose specialized AI agents build, host,…
- AgentUI — Managed AI app builder for operations teams that generates and hosts…
- Aider — Open source, model agnostic terminal coding agent that edits your…
- Anthropic Claude Code — Anthropic's agentic coding system across terminal, desktop, IDE, web…
- AppFactor — Agentic platform that runs persistent agents across an enterprise…
Alternatives to Charm
The closest documented capability profiles to Charm among coding agents tracked by Agentic Index, ordered by similarity on the same 14 point evidence the rankings use. No vendor pays for placement.
- OpenCode10.0 / 14Fuller documented coverage on Workflow OrchestrationCharm vs OpenCode →
- Poolside11.0 / 14Fuller documented coverage on Workflow Orchestration and Security, Identity & Governance
- Ellipsis10.5 / 14Fuller documented coverage on Workflow Orchestration and Security, Identity & Governance
- JetBrains AI10.5 / 14Fuller documented coverage on Workflow Orchestration and Prebuilt Agents, Templates & Packs
- Tabnine11.5 / 14Fuller documented coverage on Workflow Orchestration and Knowledge Grounding & RAG
- Augment Code12.0 / 14Fuller documented coverage on Workflow Orchestration and Knowledge Grounding & RAG
Similarity is computed from each vendor's Agentic Index coverage score evidence, axis by axis, not from the totals. How this evidence is graded