Juggler is an open-source GUI coding agent designed for developers who demand hands-on control over their LLM interactions [1]. It offers a visual workbench where conversations are structured as editable trees rather than linear transcripts [2]. The agent is built with a Go backend and uses Wails for windowing, with a UI served as HTML/JS [3]. Sessions are stored and synchronized using Yjs, allowing for branching, editing, undo/redo, and inspection [4].
Almost everything in Juggler is a JavaScript plugin, including context items, LLM loop strategies, and slash commands [5]. The agent also features a native desktop app with multi-client architecture, allowing seamless collaboration across browsers and devices [6]. Juggler supports connections to various LLM models, including Claude Code, OpenAI, Gemini, Ollama, OpenRouter, Z.AI, and Deepseek [7]. The project is licensed under the GNU Affero General Public License v3.0 or later, with the extension SDK and bundled extensions licensed under Apache-2.0 [8].
Overall, Juggler provides a unique approach to LLM interactions, offering a high degree of control and customization for developers.
Sources
- https://github.com/juggler-ai/juggler
- https://news.ycombinator.com/item?id=48883305
- https://beyond-desk.com/signal/g-0563
- https://github.com/juggler-ai/juggler/blob/develop/docs/context-window.md
- https://github.com/juggler-ai/juggler/blob/develop/web/sdk/LICENSE
- https://juggler.studio
- https://github.com/juggler-ai/juggler/blob/develop/README.md
- https://github.com/juggler-ai/juggler/blob/develop/LICENSING.md


