Model or dataset
batrachianai/toad avatar
batrachianai/toad

Toad: a terminal UI that runs coding agents alongside a real shell

A unified interface for AI in your terminal.

3,433 stars154 forksPythonAGPL-3.0

At a glance

What is it?
Toad by Will McGugan is a unified terminal interface for AI coding agents, built with Textual. It runs Claude, Gemini, Codex and others through the Agent Client Protocol, and its distinguishing feature is a fully working integrated shell, so prompts and terminal work interleave in one TUI. It is AGPL-licensed with a commercial option.
Who is it for?
Try Toad if you work in the terminal, use more than one coding agent, and want them in a single polished TUI that also runs a real shell. Install it with the one-line script, run toad, and add agents from its in-app list over the Agent Client Protocol.
Can I use it commercially?
Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
Is it still maintained?
Yes. The repository last received commits 113 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What Toad is

Toad calls itself a unified interface for AI in your terminal. In practice it is a terminal user interface, built on the Textual framework, that acts as a front end to coding agents such as Claude, Gemini, Codex, OpenHands and many more. The idea is to blend a traditional shell-based workflow with agentic AI in one intuitive TUI, rather than running each agent in its own separate tool.

It comes from Will McGugan, the author of Textual and Rich, which shows in the emphasis on presentation: streaming Markdown with syntax-highlighted code fences, elegant tables and lists, and side-by-side or unified diffs. The audience is developers who already live in the terminal and want a single, good-looking home for several agents, with the polish of a native app but without leaving the shell.

The integrated shell, its standout feature

The README is direct about what makes Toad different, and it is worth taking at face value. Most terminal agent interfaces can run commands with a ! syntax, but they are not running a shell: if you change directory or set an environment variable, it does not persist to the next command, output with anything more than simple text gets garbled, and interactive commands fail or break the TUI.

Toad integrates a fully working shell with full-color output, interactive commands and tab completion, so you can interleave prompts for the agent with real terminal workflows in the same place. The README claims that at the time of writing Toad is the only terminal UI that does this. Whether or not that stays literally true, it is the feature that justifies the tool: the friction of switching between an agent pane and a real terminal is exactly what a unified TUI should remove, and a working shell with persistent state is what removes it.

Agents, the app store and the Agent Client Protocol

Toad presents agents through what the README calls an AI app store: find, install and run dozens of agents directly from the Toad UI, spanning big-tech and open-source projects. The mechanism underneath is the Agent Client Protocol, and developers can add support for their own agents by implementing it. That is the important architectural choice: Toad is not tied to one vendor's agent, and its list can grow without Toad itself changing.

The Makefile shows how agents are wired in during development, each launched over ACP with a title and a project directory:

makefile
claude-acp:
	$(run) acp "claude-code-acp" --project-dir ~/sandbox --title "Claude"

gemini-acp:
	$(run) acp "gemini --experimental-acp" --project-dir ~/sandbox --title "Google Gemini"

codex-acp:
	$(run) acp "codex-acp" --project-dir ~/sandbox --title="OpenAI Codex"

Those targets illustrate the pattern: an ACP command, a project directory and a display title per agent. In normal use you add agents from the UI rather than the Makefile, but the commands make concrete what an agent connection is.

The rest of the interface

Around the agents and the shell, Toad offers the pieces you would want from a dedicated client. There is a Markdown prompt editor with syntax highlighting for code fences, full mouse support, cut and paste and many keybindings. A file picker triggered with @ gives a fuzzy search over filenames, or tab switches to an interactive tree to browse. Diffs are side-by-side or unified with syntax highlighting for most languages.

Two features help when you run more than one agent. Concurrent sessions let you launch multiple agents from potentially different providers, and ctrl+s shows the state of all of them on one screen. Session resume, on ctrl+r, lets you pick a previous session to continue. Settings are handled through an intuitive system with no manual JSON editing, and the README says almost everything can be tweaked, down to an ultra-minimal UI that is nothing more than a prompt if that is what you want.

Installing Toad and its requirements

Installation is a single command the README repeats in its quickstart and getting-started sections:

bash
curl -fsSL batrachian.ai/install | sh

After it runs you have a toad command, and you start it by running:

bash
toad

As with any script piped from a URL into a shell, it is reasonable to fetch and read it first before running. Compatibility is a real constraint: Toad runs on Linux and macOS, native Windows support is on the roadmap but currently lacking, and Windows users are pointed to WSL. Any terminal works, but the README warns that macOS's default Terminal gives a much reduced experience and recommends Ghostty. On Linux you may need xclip for clipboard support (sudo apt install xclip). pyproject.toml also sets a high bar on the runtime: Python 3.14 or newer.

Licence, releases and what to weigh

Toad's licensing is the thing to check before adopting it at work. It is AGPL-3.0, and the repository carries a COMMERCIAL_LICENSE.md and a commercial-license topic, which signals the usual dual-licence model: AGPL for open use, a commercial licence for those who cannot meet the AGPL's network-copyleft terms. The repository also includes an AI_POLICY.md.

On maturity, the version is 0.6.20, a pre-1.0 number, and the recent releases are close together: v0.6.20 adding Grok support on 2026-05-26, v0.6.18 on 2026-05-17 and v0.6.17 on 2026-05-14. The last push was on 2026-05-26, so at the material's snapshot the pace had recently been brisk. The things to weigh are therefore the platform limits (no native Windows, Python 3.14), the pre-1.0 status, and the licence. Against those sits a clear, well-executed idea: many agents and a real shell in one Textual-powered terminal UI from the author of Textual itself.

Editorial conclusion

Try Toad if you work in the terminal, use more than one coding agent, and want them in a single polished TUI that also runs a real shell. Install it with the one-line script, run toad, and add agents from its in-app list over the Agent Client Protocol. Note it needs Linux or macOS (Windows via WSL) and Python 3.14, and read the AGPL and commercial-licence terms before using it at work.

Frequently asked questions

What is Toad used for?

Toad is a terminal UI that runs AI coding agents such as Claude, Gemini and Codex through the Agent Client Protocol, alongside a fully working integrated shell, so you can interleave agent prompts with real terminal commands in one interface.

Which agents does Toad support?

Toad works with agents like Claude, Gemini, Codex, OpenHands and many more, discovered and installed from an in-app list. Any agent that implements the Agent Client Protocol can be added, including ones developers build themselves.

Does Toad run on Windows?

Not natively yet. The README says Toad runs on Linux and macOS, with native Windows support on the roadmap but currently lacking; Windows users can run it well under WSL. It also requires Python 3.14 or newer.

Official sources

  1. batrachianai/toad on GitHub
  2. License: AGPL-3.0
  3. Project website
  4. README
  5. Releases
Community notes

Community notes