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 逐字稿等功能。