xenodium/agent-shell
A native Emacs buffer to interact with LLM agents powered by ACP
解决的问题
agent-shell 为与各种 LLM 驱动的编程智能体交互提供原生的 Emacs 界面。通过将这些智能体作为 Shell 直接集成到编辑器中,消除了在独立终端和 Emacs 之间切换的需要,允许用户利用 Agent Client Protocol (ACP) 与广泛的 AI 智能体进行通信。
工作原理
该项目构建在 Emacs 的 comint-shell 之上,并使用 shell-maker 包。它依赖 acp.el 通过 Agent Client Protocol (ACP) 处理与智能体的通信。通过将 Claude Agent、Codex、Gemini CLI、Goose、Grok Build、Cursor、Kimi Code 等智能体作为进程启动,并管理其环境变量和身份验证(通过 API 密钥、OAuth 或登录流程),它支持极其广泛的智能体。
适用对象
希望在不离开编辑器的情况下将 AI 编程智能体集成到开发工作流中的 Emacs 用户。
亮点
- 广泛的智能体支持:与来自 Anthropic、OpenAI、Google、xAI 和 Mistral 等提供商的众多 ACP 驱动型智能体兼容。
- 原生 Emacs 集成:使用
comint-shell在 Emacs 中提供无缝的类 Shell 体验。 - 多模态能力:如果安装了必要的平台特定实用程序,支持从剪贴板粘贴图像和捕获屏幕截图并发送给智能体。
- 可扩展的生态系统:社区开发了大量插件,用于侧边栏集成、Docker 沙箱和 Org-mode 转录等功能。