juggler-ai/juggler
The Juggler Code Agent
Juggler – AI 编码代理的视觉工作台
它是什么
- 一个桌面(和 Web)应用程序,让你可以在AI 编码代理正在处理的代码旁边运行它。UI 将完整对话显示为树状结构,让你检查每个模型请求/响应,并管理工具调用(例如:
read、write、bash)。 - 后端是一个 Go 服务器(
juggler),可以在本地、开发机或远程服务器上运行。同一会话可以从原生应用、浏览器或多个客户端同时打开。
为什么重要
- 透明性 – 你可以打开任何 LLM 事务,查看确切的系统提示、消息、工具模式、令牌使用量和时间。没有隐藏的“聊天窗口”。
- 上下文手术 – 对话是一个可导航的树;你可以从子线程分支,移动或复制项目,并撤销更改,保持主上下文干净。
- 供应商中立 – 可与 Anthropic/Claude、OpenAI/Codex、GitHub Copilot、Gemini、Ollama、OpenRouter、Mistral、DeepSeek 等配合使用。你自带 API 密钥;Juggler 从不代理流量。
- 可扩展 – 扩展使用 Apache-2.0 SDK 以 JavaScript 编写。你可以在不重建整个应用的情况下添加新工具、策略、斜杠命令、UI 卡片或 MCP(Model-Control-Protocol)集成。
如何使用
- 下载 macOS、Windows 或 Linux 的预构建二进制文件(或从源码构建 – Go 1.26+,子模块)。包包含:
juggler– 托管会话并提供 Web UI 的无头服务器。Juggler.app/juggler-app– 原生桌面客户端。
- 运行服务器(
juggler)。它会打印 localhost URL 和二维码。按b打开浏览器,按w启动桌面客户端,或按p/--public允许局域网访问。 - 连接 – 从桌面应用或任何浏览器连接。UI 显示用于树、工具调用和文件查看器的 Miller 列窗格。
- 交互 – 与你的编码代理交互:发送提示,让代理调用工具,检查每一轮,分支到子线程,批准或拒绝工具执行,稍后恢复 – 整个会话持久化在磁盘上。
关键技术点
- 后端:Go + Wails(原生窗口)。不用 Electron;UI 是 Go 进程提供的纯 HTML/JS。
- 协作:会话文档使用 Yjs 存储,允许多个客户端查看/编辑同一个实时树。
- 扩展:JavaScript SDK;捆绑的扩展提供常见工具(
read、write、bash)。你可以通过 CLI 搭建新扩展并进行热重载。 - MCP 支持:Juggler 可以作为外部 Model-Control-Protocol 服务器的客户端,显示发送给模型的确切模式以及工具结果。
- 许可:核心应用使用 AGPL-v3(托管服务需开源)。扩展 SDK 和示例为 Apache-2.0,允许闭源插件。
适用对象
- 希望将 AI 代理保持在代码库附近并确切看到模型所见内容的开发者。
- 需要共享、持久化工作台进行 AI 辅助编码、调试或研究的团队。
- 任何构建自定义工具或 MCP 服务器并需要视觉调试器的人。
获取帮助
- 发布:https://github.com/juggler-ai/juggler/releases
- 文档:
docs/文件夹(安装、headless Linux、扩展、MCP、上下文窗口等) - 社区:README 中的 Discord 链接。
以上信息均直接来自仓库的 README。
相关
- Dispatch
- 项目
- 项目
- 项目
- 项目