Crush
Crush is Charm's terminal AI assistant — slick TUI.
Get an API key first — see Common setup.
Install
bash
brew install charmbracelet/tap/crushbash
go install github.com/charmbracelet/crush/cmd/crush@latest
# Ensure $GOPATH/bin is in PATHpowershell
scoop bucket add charm https://github.com/charmbracelet/scoop-bucket.git
scoop install crushVerify:
bash
crush --versionConfig file location
| OS | Path |
|---|---|
| macOS | ~/.config/crush/crush.json |
| Linux | ~/.config/crush/crush.json |
| Windows | %APPDATA%\crush\crush.json |
Edit config
bash
mkdir -p ~/.config/crush
vim ~/.config/crush/crush.jsonpowershell
New-Item -ItemType Directory -Force -Path "$env:APPDATA\crush" | Out-Null
notepad "$env:APPDATA\crush\crush.json"Write:
json
{
"$schema": "https://charm.land/crush.json",
"providers": {
"primerouter": {
"type": "openai",
"base_url": "https://primerouter.ai/v1",
"api_key": "sk-your-primerouter-key",
"models": [
{
"id": "claude-sonnet-4-6",
"name": "Claude Sonnet 4.6",
"context_window": 200000,
"default_max_tokens": 8192
},
{
"id": "claude-opus-4-6",
"name": "Claude Opus 4.6",
"context_window": 200000,
"default_max_tokens": 8192
},
{
"id": "claude-opus-4-7",
"name": "Claude Opus 4.7",
"context_window": 200000,
"default_max_tokens": 8192
}
]
}
}
}Launch
bash
crush
# In TUI: Ctrl+P → pick primerouter/claude-sonnet-4-6Tips
- Crush supports multiple providers simultaneously — wire DeepSeek / Qwen via PrimeRouter and switch per task
- Don't set
default_max_tokenstoo low or long replies get truncated - Terminal window ≥ 100×30 gives the TUI room to breathe
