# Juggler vs Zot

> Source: https://theagentsindex.com/compare/juggler-vs-zot (structured, researched, re-verified)

Juggler and Zot both rethink the same problem (a single-user coding-agent harness you run against your own LLM) from opposite ends. Juggler, built by JUCE and Tracktion creator Julian Storer, is resolutely a GUI app: it runs as a native desktop client or a headless server reachable from a browser, syncing one live session across any number of clients via Yjs. Every conversation is an editable document rather than a log: any point can fork into a recursive sub-thread, and the whole tree is navigable and inspectable in a Miller-column view, alongside every tool call, approval and raw context message. It drives roughly six providers (Claude, OpenAI, Gemini, Ollama, OpenRouter, DeepSeek) through a swappable JavaScript plugin system. Zot, built by independent developer Patrice Eckhart, is the opposite bet: a single static Go binary with no Node runtime, Docker or account required, running as a terminal TUI, a scriptable print/JSON-streaming mode, or a headless daemon. It supports over 30 model providers (including local Ollama models) and adds a Telegram bridge that mirrors a session to your phone bidirectionally, plus "Swarm" background subagents that run in parallel on the same repository.

The branching feature both tools advertise is not quite the same thing. Zot's `/session fork` and `/session tree` genuinely branch a new session from any past message and render every session in a directory as a parent/child tree (confirmed live against zot.sh 2026-07-24), but that tree is a textual, terminal-rendered structure, not a navigable visual document. Juggler's entire product is that visual layer: branches are edited, dragged and inspected directly in a GUI, which is the exact gap an HN reviewer flagged when praising "the session tree in particular" as a genuinely differentiated take. So the honest framing is visual, editable tree navigation (Juggler) versus text-mode fork/tree plus remote and parallel-automation features a GUI app doesn't attempt (Zot).

Licensing and risk cut in opposite directions too. Juggler's core app ships AGPLv3 (a strong copyleft license, a real constraint versus the permissive MIT/Apache terms most rival open-source coding agents use), while its extension SDK is Apache-2.0 and the whole thing is free with no signup. Zot is MIT-licensed throughout, the more permissive choice, also free with no account required. But Zot carries a disclosed risk Juggler does not: its own README and HN thread confirm it reuses Anthropic's and OpenAI's first-party CLI OAuth client IDs so a Claude Pro/Max or ChatGPT Plus/Pro subscription can authenticate from a third-party tool. The README itself warns this "may be against their terms of service and may be revoked at any time" (the API-key path avoids the risk entirely). Juggler carries the more ordinary early-stage risks instead: the creator calls it alpha software, it has no ACP (Agent Client Protocol) support yet, and headless/server mode on Linux needs the `libwebkitgtk-6.0` system library as an extra deployment step.

| Fact | Juggler | zot |
| --- | --- | --- |
| What it is | Visual workbench for AI coding agents: branching conversation trees, inspectable model transactions, local or remote. | Single-binary terminal coding agent harness in Go, with 30+ model providers and any-language extensions. |
| Pricing | free | free |
| API | No — No programmatic API. Juggler runs as a local server that its own desktop app and browser clients connect to; extensions are JavaScript plugins. | Yes — Yes. zot rpc exposes the agent loop as a long-lived NDJSON subprocess over stdin/stdout, so any language can drive a session, and the agent loop is also published as an importable Go package under packages/agent. |
| Tags | Autonomous · Claude · Free tier · GPT · Multi-agent · Open models · Open source · Self-hosted | API · Autonomous · Claude · Free tier · GPT · Multi-agent · Open models · Open source · Self-hosted |
| Best for | Developers who want hands-on visibility into what an AI coding agent is doing to their codebase and accept early-stage, self-hosted, open-source software. | Developers who want a fast, free, Go-native coding-agent harness with real session-branching control and are comfortable running fast-moving, self-described "beta forever" software from an independent maintainer. |
| Full facts | https://theagentsindex.com/juggler.md | https://theagentsindex.com/zot.md |

## Verdict: Juggler or zot?

Want to see and steer a coding-agent session visually: drag, inspect and branch a conversation as a document, across a synced desktop-and-browser client → Juggler. Want a disposable, scriptable binary for terminal use, CI, or remote/parallel automation across 30+ providers, with a Telegram bridge to drive it from your phone → Zot. Care about license terms for redistribution → Zot's MIT is more permissive than Juggler's AGPLv3 core. Signed into Claude Pro/Max or ChatGPT Plus/Pro and want to avoid any ToS gray area → use Zot's API-key auth path, not its CLI-OAuth-reuse path, or use Juggler instead (no such reuse). Either way, both are free, open-source, and genuinely early-stage. Test before trusting either with sensitive or production work.

## FAQ

**Are Juggler and Zot free?**

Yes, both are free and open-source with no signup required. Juggler's core app is AGPLv3-licensed (its extension SDK is Apache-2.0); the creator has floated a possible future paid "pro" tier but none exists yet. Zot is MIT-licensed throughout with no pricing mentioned anywhere.

**Which one has a visual interface?**

Only Juggler. It is a native desktop app (or a headless server reachable from a browser), and its core feature is a visually navigable, editable branching-session tree in a Miller-column view. Zot is terminal-only (a TUI, a scriptable print/JSON mode, or a headless daemon) and while its `/session tree` command does render sessions as a parent/child tree, it is a text representation, not a GUI.

**Which supports more LLM providers?**

Zot, by a wide margin: 30+ providers including Anthropic, OpenAI/Codex, Gemini, Kimi, DeepSeek, GitHub Copilot, Bedrock, Azure OpenAI, OpenRouter and local Ollama models. Juggler drives roughly six (Claude Code via CLI/SDK, OpenAI, Gemini, Ollama, OpenRouter, DeepSeek) through a swappable JavaScript plugin system, with the list built to expand.

**Is there any legal or ToS risk to using either tool?**

Zot carries a disclosed one: its own README and its Show HN thread confirm it reuses the OAuth client IDs published in Anthropic's Claude Code CLI and OpenAI's Codex CLI so a Claude Pro/Max or ChatGPT Plus/Pro subscription can authenticate from a third-party tool. The README itself warns this "may be against their terms of service and may be revoked at any time." Using Zot's API-key flow instead avoids the risk. Juggler has no equivalent disclosed risk.

**Which is more mature or production-ready?**

Neither is production-hardened yet. Juggler's own creator calls it alpha software, it lacks ACP (Agent Client Protocol) support, and Linux headless deployments need the `libwebkitgtk-6.0` system library installed separately. Zot describes itself as "lightweight and in beta forever," and its author has said on Hacker News the terminal UI is "literally 98% vibe coded", an honest disclosure, but a real signal to test carefully before trusting either tool with sensitive or production work.
