agent-shell  by xenodium

Emacs native shell for LLM agent interaction

Created 1 month ago
288 stars

Top 91.1% on SourcePulse

GitHubView on GitHub
Project Summary

Provides a native Emacs shell for interacting with Large Language Model (LLM) agents via the Agent Client Protocol (ACP). It targets Emacs users seeking to integrate LLM capabilities directly into their development workflow, offering a unified interface for various ACP-compliant agents.

How It Works

This project leverages Emacs's comint-shell infrastructure, managed by the shell-maker package, to create interactive agent sessions. It acts as a client for the Agent Client Protocol (ACP), enabling communication with backend LLM services that expose an ACP interface. This allows users to chat with and control agents like Gemini CLI, Claude Code, OpenAI Codex, Goose, and Qwen Code from within Emacs.

Quick Start & Requirements

  • Installation: Install shell-maker from MELPA. acp.el and agent-shell require direct installation via use-package with :vc pointing to their GitHub repositories. For Doom Emacs users, use package! macros and doom sync.
  • Prerequisites: External ACP adapter CLIs are required for each LLM agent:
    • Claude Code: npm install -g @zed-industries/claude-code-acp
    • Gemini CLI: Requires a recent release with --experimental-acp.
    • Codex: zed/codex-acp executable in PATH.
    • Goose CLI: goose executable in PATH.
    • Qwen Code: npm install -g @qwen-code/qwen-code@latest
  • Configuration: Requires setting up authentication (API keys, login, or environment variables) for each desired agent provider.
  • Links:

Highlighted Details

  • Supports integration with multiple LLM agents including Anthropic Claude Code, Google Gemini CLI, OpenAI Codex, Goose CLI, and Qwen Code.
  • Offers experimental support for running agents within Devcontainers or Docker containers, with options to control file system access.
  • Provides essential keybindings for interrupting agent operations (C-c C-c) and navigating interactive elements.

Maintenance & Community

The project is explicitly stated to be in its "infancy" with "rough edges" and significant development planned. The author seeks funding via GitHub sponsors to support development and maintenance. No community channels like Discord or Slack are listed.

Licensing & Compatibility

The license type is not explicitly stated in the provided README content.

Limitations & Caveats

The project is in very early stages and may be incomplete or unstable. acp.el is not yet available on MELPA. Running agents in containers is experimental and requires careful configuration to manage security risks related to local file system access, as malicious agents could potentially circumvent restrictions.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
19
Issues (30d)
48
Star History
168 stars in the last 30 days

Explore Similar Projects

Starred by Andrew Ng Andrew Ng(Founder of DeepLearning.AI; Cofounder of Coursera; Professor at Stanford), Thomas Wolf Thomas Wolf(Cofounder of Hugging Face), and
4 more.

ag2 by ag2ai

1.1%
4k
AgentOS for building AI agents and facilitating multi-agent cooperation
Created 11 months ago
Updated 16 hours ago
Feedback? Help us improve.