Repolode
charmbracelet

charmbracelet/crush

A terminal-based AI coding agent that connects to your choice of LLM, with LSP and MCP support and per-project sessions.

Open-source alternative to:Claude CodeCursor

Stars
28,711
Forks
2,343
Open issues
856
Last commit
6 hours ago

What is it?

Crush is an agentic coding assistant that runs in the terminal. You pick a language model, point it at a project, and it reads and edits code, runs tools, and works through tasks from the command line. It works with OpenAI- and Anthropic-compatible APIs, along with many named providers and local servers such as Ollama, llama.cpp and LM Studio.

Crush can switch models mid-session while keeping context, and it keeps separate sessions per project. It uses Language Server Protocol servers to gain code context, and extends its abilities through Model Context Protocol servers over stdio, HTTP or SSE. Configuration is written as a Bash-like crushrc file or JSON, and permissions control which tools run without prompting.

The tool runs on macOS, Linux, Windows (PowerShell and WSL), Android, and several BSD systems. It is built on the Charm terminal UI ecosystem and can be installed through Homebrew, npm, Winget, Nix, apt, dnf or Go.

Key features

  • 01Works with many LLM providers through OpenAI- and Anthropic-compatible APIs, including local models
  • 02Switch models mid-session while keeping context
  • 03Separate work sessions per project
  • 04Uses LSP servers for code context
  • 05Extends via MCP servers over stdio, HTTP and SSE
  • 06Runs on macOS, Linux, Windows, Android and BSD systems

Use cases

  • Making code changes and running tasks from the terminal inside an existing project
  • Using a local Ollama or llama.cpp model for coding without sending code to a hosted provider
  • Connecting an agent to internal tools or services through MCP servers

Quick start

  1. 1

    Install with Homebrew

    brew install charmbracelet/tap/crush
  2. 2

    Or install with NPM

    npm install -g @charmland/crush
  3. 3

    Or install with Go

    go install github.com/charmbracelet/crush@latest
  4. 4

    Run Crush and choose a model from the model picker (ctrl+l) to add an API key

Things to know

  • Most features need an LLM provider API key or a paid Hyper subscription.

Topics

FAQ

What is crush?
A terminal-based AI coding agent that connects to your choice of LLM, with LSP and MCP support and per-project sessions. Crush is an agentic coding assistant that runs in the terminal. You pick a language model, point it at a project, and it reads and edits code, runs tools, and works through tasks from the command line. It works with OpenAI- and Anthropic-compatible APIs, along with many named providers and local servers such as Ollama, llama.cpp and LM Studio.
Is crush free to use? What license does it have?
crush is open source under the Other license. Check the license terms before using it in commercial products.
Is crush still maintained?
Actively maintained. The last commit to crush was on Oct 20, 2026.
What can I use crush for?
Making code changes and running tasks from the terminal inside an existing project Using a local Ollama or llama.cpp model for coding without sending code to a hosted provider Connecting an agent to internal tools or services through MCP servers
How do I install crush?
Install with Homebrew: brew install charmbracelet/tap/crush Or install with NPM: npm install -g @charmland/crush Or install with Go: go install github.com/charmbracelet/crush@latest Run Crush and choose a model from the model picker (ctrl+l) to add an API key
Where can I get crush?
The source code and installation instructions are on GitHub: https://github.com/charmbracelet/crush

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects