欣淇
发布于 2026-05-12 / 0 阅读
0
0

💘 Crush:24k Stars 的终端编程搭档,Charm 出品,Go 写的 Claude Code 替代品

💘 Crush:24k Stars 的终端编程搭档,Charm 出品,Go 写的 Claude Code 替代品

项目地址:github.com/charmbracelet/crush | ⭐ 24,188 | 🛠 Go | 作者 Charmbracelet


老实说,Claude Code 是好用,但每次切项目就要重新配一遍,换模型还得重启会话。Charm 团队(就是写 Bubble Tea TUI 框架那帮人)搞了个叫 Crush 的玩意儿——一个 Go 写的终端 AI 编程助手,24k Stars,24 小时就冲上去了

最骚的是:它支持会话中随时切换 LLM,上下文不丢,还能用 LSP 给你代码做上下文。不是替代品,是另一种思路。

⚡ 安装:一行命令搞定

别整那些花里胡哨的,直接装:

# macOS
brew install charmbracelet/tap/crush

# 或者 npm
npm install -g @charmland/crush

# 或者 Go
go install github.com/charmbracelet/crush@latest

Windows 用户也有份:

winget install charmbracelet.crush

🔧 配置:完全不用配…但配了更强

Crush 开箱即用,设个 API key 就能跑:

export ANTHROPIC_API_KEY=sk-ant-***
crush

但真正好用的是自己配 providers。这是 DeepSeek 的配置:

{
  "$schema": "https://charm.land/crush.json",
  "providers": {
    "deepseek": {
      "type": "openai-compat",
      "base_url": "https://api.deepseek.com/v1",
      "api_key": "$DEEPSEEK_API_KEY",
      "models": [
        {
          "id": "deepseek-chat",
          "name": "Deepseek V3",
          "cost_per_1m_in": 0.27,
          "cost_per_1m_out": 1.1,
          "context_window": 64000
        }
      ]
    }
  }
}

🎯 LSP 加持:Crush 像你一样看代码

Crush 会用 LSP 分析你的代码,不仅仅是把文件塞进上下文。配起来也很简单:

{
  "$schema": "https://charm.land/crush.json",
  "lsp": {
    "go": { "command": "gopls" },
    "typescript": { "command": "typescript-language-server", "args": ["--stdio"] },
    "nix": { "command": "nil" }
  }
}

踩过的坑都是泪:别的工具硬塞全文,Crush 是按你当前光标位置智能取上下文,不浪费 token,也不丢信息

🔌 MCP 加持:工具箱随心扩展

支持三种 MCP 传输协议:stdio、HTTP、SSE。配个 GitHub MCP:

{
  "$schema": "https://charm.land/crush.json",
  "mcp": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer $GH_PAT"
      }
    },
    "filesystem": {
      "type": "stdio",
      "command": "node",
      "args": ["/path/to/mcp-server.js"]
    }
  }
}

Shell 变量展开完美支持 $VAR${VAR:-default}$(command),文件密钥开箱即用。

🧠 技能系统:兼容 Agent Skills 标准

Crush 支持 Agent Skills 标准,从几个路径自动发现 skill:

# 安装示例 skills
mkdir -p ~/.config/crush/skills
cd ~/.config/crush/skills
git clone https://github.com/anthropics/skills.git _temp
mv _temp/skills/* . && rm -rf _temp

也支持项目级 .crush/skills.claude/skills 目录,跟现有生态不冲突

🚀 与 Claude Code 的关键区别

  • 语言:Crush 是 Go 写的单二进制,Claude Code 是 TypeScript 跑 Node
  • 多模型:Crush 会话中随时切换模型不丢上下文,Claude Code 启动时固定
  • LSP:Crush 原生支持 LSP 做代码上下文,Claude Code 没有
  • MCP:Crush 全协议支持(stdio/http/sse),Claude Code 有限
  • 平台:Crush 覆盖 macOS/Linux/Windows/BSD/Android,Claude Code 只有 macOS/Linux
  • 简单说: Claude Code 是深度绑定 Anthropic 的体验,Crush 是模型无关的通用编程搭档。

    总结

  • 安装极简:brew/npm/go install,一行搞定
  • 多模型热切换:会话中换 LLM 不丢上下文,这功能目前独一份
  • LSP 智能上下文:按光标位置取代码上下文,省 token 不丢信息
  • MCP + Skills 双扩展:全协议 MCP 支持 + Agent Skills 标准兼容
  • 全平台覆盖:从 macOS 到 Android,从 Linux 到 Windows,都能跑
  • Charm 团队在 TUI 领域深耕多年(Bubble Tea、Glow、Lip Gloss 都是他们家的),Crush 的终端体验是顶级的。如果你在找一个不绑定某个模型、不强制某个生态的终端 AI 助手,Crush 值得一试。

    标签:#AI #Agent #Charm #Go #CLI #MCP #编程助手


    评论