
Crush:Glamorous AI 编码助手,为你的终端而生
Crush 是由 Charm Bracelet 团队打造的终端原生 AI 编码助手,支持多模型切换、LSP 增强上下文、MCP 扩展和跨平台运行,让开发者在不离开终端的情况下完成代码编写、重构与调试。
原文来源:charmbracelet/crush — 一款 glamorous 风格的终端原生 AI 编码助手,支持多模型、LSP 增强、MCP 扩展和跨平台运行。
终端里的编程新搭档
终端是开发者最熟悉的工作环境,但传统的 AI 编码工具往往以 IDE 插件或 Web 应用的形式存在,迫使开发者在不同界面之间来回切换。Crush 的出现改变了这一局面。它由著名的 Charm Bracelet 团队打造,是一款直接在终端中运行的 AI 编码助手,将大语言模型的能力无缝嵌入到命令行工作流中。
Crush 的核心理念是"你的工具、你的代码、你的工作流"。它不试图取代现有的开发环境,而是作为一个智能伙伴,在你熟悉的终端中提供代码生成、重构建议、错误排查和项目分析等功能。无论是 macOS、Linux、Windows 还是 FreeBSD,Crush 都能提供一致的体验。
多模型自由切换
Crush 对 LLM 的支持极为广泛。开箱即用地兼容 Anthropic、OpenAI、Groq、OpenRouter、Google Gemini、Azure OpenAI 等主流提供商。更难得的是,它允许用户在同一个会话中随时切换模型,且上下文完全保留。
这种灵活性意味着你可以根据任务类型选择最合适的模型。需要深度推理时切到 Claude,需要快速响应时换到 Groq,预算敏感时切到本地模型。Crush 的模型列表由社区驱动的 Catwalk 项目维护,新模型上线后会自动同步。
对于有特殊需求的团队,Crush 也支持通过 OpenAI 兼容或 Anthropic 兼容的 API 接入自定义提供商。无论是本地部署的 Ollama 还是 LM Studio,抑或是企业内部的私有模型,都可以通过简单的 JSON 配置接入。
LSP 与 MCP 双引擎增强
Crush 区别于一般 AI 聊天工具的关键在于它对开发工具链的深度集成。它原生支持语言服务器协议(LSP),能够像人类开发者一样利用 gopls、typescript-language-server 等工具获取代码的语义信息,从而做出更准确的判断。
此外,Crush 实现了 Model Context Protocol (MCP) 支持,可通过 stdio、http 和 sse 三种传输方式连接外部服务。这意味着 Crush 的能力边界不再局限于内置工具,而是可以扩展到文件系统操作、GitHub 集成、数据库查询等任意 MCP 服务器提供的功能。
会话管理与项目上下文
Crush 采用基于会话的工作模式。每个项目可以维护多个独立会话,各自保留上下文历史。当你重新打开一个项目时,Crush 会自动加载之前的会话状态,无需重复交代背景信息。
项目初始化时,Crush 会分析代码库结构、构建系统和代码风格,生成一份上下文文件(默认名为 AGENTS.md)。这份文件记录了项目的构建命令、代码约定和架构模式,帮助 Crush 在后续会话中做出更符合项目实际的决策。文件名和位置均可自定义,方便与团队现有文档体系对齐。
安装与配置
Crush 的安装方式覆盖了几乎所有主流平台。macOS 和 Linux 用户可以通过 Homebrew 一键安装:brew install charmbracelet/tap/crush。Windows 用户可使用 Winget 或 Scoop。Arch Linux 有 AUR 包,Nix 用户可以直接运行,FreeBSD 也有官方 pkg 包。
配置方面,Crush 遵循"零配置即可运行"的原则。首次启动时,它会提示你输入 API 密钥。当然,你也可以通过环境变量预设密钥,例如 ANTHROPIC_API_KEY、OPENAI_API_KEY 等。更复杂的配置可以写入 .crush.json、crush.json 或 ~/.config/crush/crush.json,遵循优先级递减的规则。
Crush 甚至内置了一个 crush-config 技能,允许你直接用自然语言要求 Crush 调整自身配置,无需手动编辑 JSON 文件。
安全与隐私
Crush 在安全性上做了周到设计。默认情况下,所有工具调用都需要用户确认,防止 AI 在未经同意的情况下执行危险操作。如果你信任某些只读工具(如查看文件、搜索代码),可以在配置中将其加入白名单。还有一个 --yolo 标志可以跳过所有权限确认,但官方明确警告"务必极其谨慎地使用"。
隐私方面,Crush 会收集匿名的使用指标(绑定到设备哈希),用于指导开发优先级。但提示内容和模型回复永远不会被收集。用户可以通过 CRUSH_DISABLE_METRICS=1 环境变量或 DO_NOT_TRACK=1 完全退出指标收集。
可扩展的技能系统
Crush 支持 Agent Skills 开放标准,允许通过可复用的技能包扩展能力。技能是包含 SKILL.md 文件的文件夹, Crush 会从多个标准路径自动发现加载,包括 ~/.config/crush/skills/ 和项目内的 .agents/skills 目录。
这意味着团队可以沉淀自己的最佳实践:一套代码审查技能、一个特定框架的脚手架生成技能、或者一套内部 API 的调用规范。技能系统让 Crush 从通用助手进化为贴合团队实际工作流的定制化工具。
日志与调试
Crush 提供了完善的日志系统,所有运行记录保存在项目目录的 .crush/logs/crush.log 中。通过 crush logs 命令可以查看最近 1000 行日志,crush logs --follow 可以实时追踪。遇到问题时,加上 --debug 标志运行可以获得更详细的诊断信息,包括 LSP 通信细节。
社区与生态
Crush 建立在 Charm Bracelet 生态之上,这个生态已经支撑了超过 25000 个应用,从开源项目到关键业务基础设施。Charm Bracelet 以打造精美的终端界面著称,Crush 也继承了这一基因,提供了流畅的交互体验和优雅的视觉设计。
项目采用 FSL-1.1-MIT 许可证,这是一种兼顾开源精神与商业可持续性的许可模式。社区活跃于 Slack、Discord、Twitter 和 Bluesky,遇到问题可以快速获得帮助。
总结
Crush 不是又一款试图重新定义工作流的 AI 工具,而是选择融入开发者已经熟悉的环境。它在终端中提供强大的 AI 能力,同时保持对现有工具链的尊重。多模型支持让你不被单一供应商锁定,LSP 和 MCP 集成确保它能理解真实代码的复杂性,会话管理和技能系统则让它越用越顺手。如果你每天大部分时间都在终端中度过,Crush 值得成为你工作流的一部分。
© 2026 四月 · CC BY-NC-SA 4.0
原文链接:https://aprilzz.com/tools/crush-ai-terminal-coding
相关文章
鼠标侠使用指南:把手机变成电脑的无线鼠标和遥控器
鼠标侠(MouseHero)是一款用手机遥控电脑的小工具,每月两块钱,重点是能省下电视盒子会员费。从安装到日常使用,一篇讲清楚。
Tabby:自托管 AI 编码助手,保护你的代码隐私
Tabby 是一款开源、自托管的 AI 编码助手,作为 GitHub Copilot 的替代方案,它让团队能够在本地或私有服务器上部署代码补全和聊天服务,完全掌控代码数据安全。
LLM 评估体系存在系统性弱点,牛津大学研究揭示
牛津大学互联网研究所联合全球42位研究者对445个AI基准测试进行系统性审查,发现绝大多数测试缺乏统计严谨性和清晰的定义,可能误导对AI能力与安全的判断。