<- all tokdocs

Juggler: An AI Coding Agent Built as a Visual Workbench, Not a Chat Log

Watch on TikTok

View on TikTok ->

This 23-second video walks through the GitHub README for Juggler, an open source AI coding agent from the juggler-ai organization. The pitch is that most coding agents bury your session in a linear transcript where tool calls and context get lost in chat. Juggler replaces that with a visual workbench: the session is an editable tree rendered in Finder-style columns, where you can branch any point into a subthread, inspect every tool call, and edit the raw context by hand.

The video matters if you have hit the limits of scroll-based agent UIs. Juggler's README frames the project as being for people who want to be more hands-on with what the LLM is doing to their codebase, and the design decisions shown on screen (tree sessions, plugin architecture, model agnosticism) all follow from that goal.

The session is a tree, not a doom-scroll

The README opens with a self-aware line: "Yes, it's another AI coding agent. The industry definitely needed one more." Its stated angle is inspectable tool calls, branching threads, and editable context, with a demo screenshot showing tool calls, item properties, and nested sub-threads laid out in a Finder-style Miller column view.

Juggler README intro with a screenshot of tool calls and sub-threads in Miller columns

The "What makes it different" section spells out the core idea. Your conversation is an editable tree, not a chat history. Any point can branch into a sub-thread, sub-threads can branch again, and you can navigate, inspect, and edit the structure directly. Under the hood the session is a Yjs document rather than a transcript, so you can create sub-threads, drill down, backtrack, compare, and edit.

README section explaining the editable tree and Miller column navigation

Plugins all the way down

The README's TL;DR states that everything important is visible: tool calls, approvals, thread structure, item properties, and raw context are laid out in columns instead of buried in collapsible chat. It also claims the app is "plugins all the way down." Context items (tools like read-file, replace-text, bash), strategies (high-level LLM loops such as plan and research), and slash commands like /clear and /compact are all JavaScript extensions you can inspect, fork, or replace.

README TL;DR listing the GUI, tree session, visibility, and plugin architecture

The repo itself is public under an AGPL-3.0 license, with 308 stars and 10 forks at the time of recording.

GitHub repo page for juggler-ai/juggler showing 308 stars and the AGPL-3.0 license

Multi-client architecture and model support

Juggler looks like a native desktop app, but underneath it is a local webserver serving a live collaborative session. The desktop app is just one client. A browser tab can be another, and a different machine can be another. That means you can run the server where the code lives (local workstation, dev box, server farm) and attach views from wherever is convenient, with all clients staying in sync.

README architecture section with a screenshot of the same session in desktop and browser clients

On models, the video's claim that it is model agnostic matches the README. Juggler connects to Claude Code (via CLI or API), OpenAI (codex plan or API), Gemini, Ollama, OpenRouter, Z.AI, Deepseek, and others, and the README says it is easy to add more providers via a PR.

Model support section listing Claude Code, OpenAI, Gemini, Ollama, OpenRouter, Z.AI, and Deepseek

Key Takeaways

  • Juggler is an open source AI coding agent that renders sessions as an editable tree in Finder-style Miller columns instead of a linear chat transcript.
  • Any point in a session can branch into a sub-thread, and every tool call, approval, and piece of raw context is inspectable and editable by hand.
  • The architecture is plugin-based: tools, strategies, and slash commands are JavaScript extensions you can inspect, fork, or replace.
  • It is a desktop app backed by a local webserver serving a live collaborative Yjs session, so multiple clients (desktop, browser, another machine) can attach to the same session.
  • It is model agnostic, supporting Claude Code, OpenAI, Gemini, Ollama, OpenRouter, Z.AI, Deepseek, and more.

Resources

Published July 16, 2026. Writeup generated from a favorited TikTok.