Crush 是由 Charm 团队开发的终端(Terminal)AI 编程助手。Charm 团队以其精美的命令行工具著称,曾开发了如 Glow、Charm 等知名开源项目。Crush 作为其 AI 产品线的最新成员,专注于为开发者提供一个无缝集成于终端的 AI 编程伙伴。
Crush 的核心定位可以概括为以下几点:
| 定位维度 | 说明 |
|---|---|
| **终端优先** | 专为终端用户设计,无需离开命令行即可获得 AI 辅助 |
| **编程辅助** | 深度集成文件系统、LSP、MCP,提供专业编程能力 |
| **多模型支持** | 支持 OpenAI、Anthropic、Google 等多种 LLM 提供商 |
| **会话管理** | 持久化会话管理,保持工作上下文 |
| 特性 | 传统 Web AI | Crush |
|---|---|---|
| 交互方式 | 浏览器/APP | 终端 |
| 上下文保持 | 服务端存储 | 本地 SQLite |
| 文件操作 | 上传/下载 | 直接读写 |
| LSP 集成 | 无 | 深度集成 |
| MCP 扩展 | 有限 | 完全支持 |
| 离线能力 | 无 | 部分支持 |
| 隐私性 | 数据上传云端 | 数据本地存储 |
# 使用 Homebrew(推荐)
brew install charmbracelet/tap/crush
# 或者使用 npm
npm install -g @charmland/crush
# Debian/Ubuntu
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/charm.gpg
echo "deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ * *" | sudo tee /etc/sources.list.d/charm.list
sudo apt update && sudo apt install crush
# Fedora/RHEL
echo '[charm]
name=Charm
baseurl=https://repo.charm.sh/yum/
enabled=1
gpgcheck=1
gpgkey=https://repo.charm.sh/yum/gpg.key' | sudo tee /etc/yum.repos.d/charm.repo
sudo yum install crush
# Arch Linux
yay -S crush-bin
# Winget
winget install charmbracelet.crush
# Scoop
scoop bucket add charm https://github.com/charmbracelet/scoop-bucket.git
scoop## 快速开始 install crush
首次运行 Crush 时,系统会提示你配置 LLM 提供商:
# 设置环境变量
export OPENAI_API_KEY="sk-your-api-key"
export ANTHROPIC_API_KEY="sk-ant-your-api-key"
# 然后启动 Crush
crush
支持的环境变量:
| 环境变量 | 提供商 |
|---|---|
ANTHROPIC_API_KEY | Anthropic |
OPENAI_API_KEY | OpenAI |
VERCEL_API_KEY | Vercel AI Gateway |
GEMINI_API_KEY | Google Gemini |
OPENROUTER_API_KEY | OpenRouter |
GROQ_API_KEY | Groq |
Crush 提供了丰富的核心功能:
📝 智能编程
├── 代码编辑与生成
├── 文件操作 (读/写/搜索)
├── 命令执行与解释
└── 代码审查与优化
🔗 深度集成
├── LSP 语言服务器
├── MCP 扩展协议
├── Git 版本控制
└── 终端命令
💬 会话管理
├── 持久化会话
├── 多会话支持
├── 上下文保持
└── 使用统计
🛡️ 安全保障
├── 权限请求
├── 持久化权限
└── 操作审计
Crush 内置了 20+ 个工具:
| 类别 | 工具 | 功能描述 |
|---|---|---|
| 文件操作 | read, write, edit, glob | 文件读写、搜索 |
| 内容搜索 | grep, rg | 代码内容搜索 |
| 命令执行 | bash | Shell 命令执行 |
| 网络操作 | fetch, web_fetch, web_search | HTTP 请求、网络搜索 |
| 代码理解 | diagnostics, references | LSP 诊断、引用查找 |
| 任务管理 | todos | 待办事项管理 |
| 下载 | download | 文件下载 |
本文是《Crush 从入门到精通》系列文章的第一章
还没有人回复