Hacker News 中文摘要

RSS订阅

Emacs代理终端(由ACP驱动) -- Emacs agent-shell (powered by ACP)

文章摘要

作者介绍了基于ACP协议的Emacs插件agent-shell,这是一个原生集成在Emacs中的AI代理交互环境,通过acp.el客户端库实现,让用户能在文本编辑器中便捷地使用AI代理功能。

文章总结

Emacs agent-shell 简介(基于ACP协议)

2025年9月25日,开发者推出了全新的Emacs插件agent-shell,这是一个基于ACP(Agent Client Protocol)协议的原生Emacs shell环境。

核心功能

  1. 技术基础

    • 基于acp.el客户端库(ACP协议的Emacs Lisp实现)
    • 采用comint-mode构建,提供标准Emacs缓冲区体验
    • 支持多AI代理的无缝切换
  2. 代理无关性

    • 通过统一协议支持不同AI代理(如Gemini CLI和Claude Code)
    • 提供可定制的shell提示符和认证流程
    • 示例配置展示了如何设置不同代理的参数和环境变量
  3. 开发辅助工具

    • 流量监控功能(M-x agent-shell-view-traffic)
    • 支持流量录制与回放
    • 开发了模拟代理功能以降低测试成本

当前进展

  • 已实现协议核心功能
  • 正在开发差异对比缓冲区功能
  • 协议支持仍在完善中

获取方式

开发者呼吁使用者通过GitHub赞助支持项目持续发展。

(注:原文中的图片引用、隐私条款等次要内容已酌情删减)

评论总结

评论总结:

  1. 对Agent Shell的积极评价:
  • 用户认为它比终端模拟器更集成自然("feels so much more integrated and natural")
  • 新用户体验流畅("It's a really smooth experience for quite a new package")
  • 支持多种AI代理("can interact with Claude Code, Gemini CLI, Codex, and Goose")
  1. 功能建议:
  • 希望增加截图展示("I wish that agent-shell-sidebar had some screenshots")
  • 期待环境变量文件读取功能("excited for these improvements, especially reading the env from a file")
  1. 与其他工具的比较:
  • 与ECA项目的区别:ECA是编码代理使用LSP类协议,而Agent Protocol支持多种前端使用不同代理("ECA is a coding agent with a LSP-like protocol...where as agent protocol lets you use many agents")
  • 用户询问与直接使用Claude Code的优势("why would one want to use this verses using Claude Code directly?")
  1. 社区期待:
  • Neovim用户期待类似功能("I am waiting for someone to build this for Neovim")
  • 需要更多赞助支持发展("agent-shell needs more sponsors to become sustainable")