xenodium/agent-shell
A native Emacs buffer to interact with LLM agents powered by ACP
解決する課題
agent-shell は、さまざまな LLM 駆動型コーディングエージェントと対話するためのネイティブな Emacs インターフェースを提供します。これらのエージェントをシェルとしてエディタに直接統合することで、スタンドアロンのターミナルと Emacs の間を切り替える必要性を排除し、ユーザーが Agent Client Protocol (ACP) を活用して幅広い AI エージェントと通信できるようにします。
仕組み
このプロジェクトは Emacs の comint-shell の上に構築されており、shell-maker パッケージを使用しています。また、Agent Client Protocol (ACP) を介してエージェントとの通信を処理するために acp.el に依存しています。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 内でシームレスなシェル体験を提供します。 - マルチモーダル機能: 必要なプラットフォーム固有のユーティリティがインストールされている場合、クリップボードからの画像の貼り付けやスクリーンショットのキャプチャをエージェントに送信できます。
- 拡張可能なエコシステム: サイドバー統合、Docker サンドボックス、Org-mode トランスクリプトなどの機能のために、多数のコミュニティ開発アドオンが存在します。