[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$ffu460ohgaumz":3},{"code":4,"message":5,"data":6,"timestamp":38},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":22,"summary_md":23,"topic":24,"github_topics":27,"license":32,"homepage":33,"updated_at":34,"history":35},"charmbracelet\u002Fcrush",3,"Glamourous agentic coding for all 💘","Go",28808,2326,26,522,[16],{"id":17,"title":18,"points":19,"comments":20,"posted_at":21},44736176,"Crush: Glamourous AI coding agent for your favourite terminal",367,235,"2025-07-30","把现有工具、LSP 和 MCP 服务接到你已在付费的任意大模型上的终端编程 Agent。","如果你本来就常驻终端，希望 Agent 留在现有编辑器和工具链里而不是把它替换掉，Crush 值得认真试一次。决定是否采用的关键不在功能清单，而在于你更看重终端界面的精致程度，还是更像传统 CLI 的行为。\n\n## 解决什么问题\n\n以前的做法是打开侧边聊天窗口，把文件内容、报错和项目约定一段段复制过去；助手看不到你的 LSP 诊断、MCP 工具，也看不到昨天的会话，每次对话都要先重建上下文。Crush 把这个循环搬进终端：在项目目录里开启会话，Agent 读取代码和 LSP 上下文、调用工具，并按项目保留可以继续的会话。你得到的是一个能接着做下去的工作会话，而不是每次都要重开的聊天。\n\n## 有什么不同\n\n模型层是它最主要的设计选择。Crush 支持从多个提供商中选择，也可以添加兼容 OpenAI 或 Anthropic 的端点 [项目说明](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fblob\u002Fmain\u002FREADME.md)，并能在会话中途切换模型而保留上下文。提供商和模型元数据默认从开源的 Catwalk 数据库自动更新 [项目说明](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fblob\u002Fmain\u002FREADME.md)，新端点不必手工改配置就能用，但这也意味着默认会向外部发起更新检查，除非你关掉它。\n\n会话、LSP 增强和 MCP 服务（http、stdio、sse）把 Agent 接到真实项目工作上，而不只是接一个提示词。终端方向是有意为之：项目出自做 Go CLI 工具的 Charm，发布讨论里有人正是以这条脉络来为它的视觉风格辩护 [评论](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=44737441:)。这种风格也引来了批评。有评论者认为这类终端 Agent 堆了太多空白、线条和动画，却缺少应有的快捷键、补全和不闪烁的渲染，交互模型和 REPL\u002FCLI 相同，行为却不像 [评论](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=44737008:)。另一条评论则希望得到跨程序的完整滚动日志，而不是两边的缺点叠加 [评论](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=44738299:)。界面是否符合你的习惯，是应当权衡的真实取舍，而不是可以忽略的细节。\n\n## 谁值得试\n\n适合：常驻终端、想保留现有编辑器和 shell，并且需要同一个 Agent 能访问多个模型提供商和自有 MCP 工具的人。多提供商和会话中切换，对按任务挑模型、或把便宜任务交给便宜模型的人最有价值。\n\n不适合：想要一个能像 `grep` 一样组合的、可脚本化的普通 CLI，或已经深度绑定某一厂商编辑器集成的人。全屏 TUI 和上面提到的界面抱怨是主要原因。如果你想要终端 Agent 但不接受 Charm 的视觉路线，发布讨论说明分歧在界面理念，而不在功能缺失。\n\n## 使用条件与边界\n\n安装渠道很广，Homebrew、npm、Arch、Nix 和 BSD 包，以及 Windows 的 winget、Scoop 都有 [项目说明](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fblob\u002Fmain\u002FREADME.md)。运行需要模型提供商：要么是 Charm 订阅制的 Hyper 服务 [项目说明](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fblob\u002Fmain\u002FREADME.md)，要么用你自己的 API key 或兼容端点。选提供商是第一个真正的配置决定，自定义端点应参考文档里的配置命令。\n\n最需要留意的是配置的信任边界。README 明确指出 `crushrc` 和 `crush.json` 都是受信任代码：`crushrc` 在完整 shell 里执行，`crush.json` 里的 `$(...)` 在加载时运行，所以不要在没审过配置的目录里启动，也不要把网上不明来源的配置直接读取进来 [项目说明](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fblob\u002Fmain\u002FREADME.md)。请把配置当作 shell 启动文件，而不是被动的 JSON 设置。自动更新提供商还会带来持续的网络依赖，受限网络或隔离环境可以关闭 [项目说明](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fblob\u002Fmain\u002FREADME.md)，但之后模型元数据要自己维护。\n\n许可证是 FSL-1.1-MIT [许可证](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush\u002Fraw\u002Fmain\u002FLICENSE.md)，并不是常见的 OSI 式宽松许可；组织采用前需要确认这一点是否影响你。\n\n## HotRepo 点评\n\nHotRepo 自 2026-10-24 起跟踪 Crush，只有一条日榜记录：2026-10-25 为 28,804 星，当天 +26 [项目](https:\u002F\u002Fgithub.com\u002Fcharmbracelet\u002Fcrush)。这是 2025 年 5 月创建的仓库上的单次快照，不足以判断势头或持续性，星数只能当作一个带日期的观察，不能视为趋势。真正值得先确认的是默认的提供商自动更新和配置即代码的信任模型是否适合你的环境；在指向工作仓库之前，先审一份真实的 `crushrc`。",{"slug":25,"name":26},"developer-tools","开发工具",[28,29,30,31],"agentic-ai","ai","llms","ravishing","NOASSERTION",null,"2026-10-25T11:04:19Z",[36],{"date":37,"stars":11,"stars_gained":13},"2026-10-25",1792968710]