zot: A Minimal Go-Based Coding Agent with Swarm Support and 30+ AI Providers

zot is a minimal terminal coding agent shipped as a single static Go binary. No runtime, no Docker, no plugin system with a dedicated package manager. Just the agent loop done well. Drop it on your $PATH and go.

Key Features

  • Single binary: Everything in one executable. Install via curl -fsSL https://www.zot.sh/install.sh | bash.
  • 30+ AI providers: Supports Anthropic, OpenAI/Codex/Responses, Kimi, DeepSeek, Google Gemini/Vertex, GitHub Copilot, Bedrock, Azure OpenAI, OpenRouter, Groq, Cerebras, xAI, Together, Hugging Face, Mistral, Moonshot, Z.AI, Xiaomi, MiniMax, Fireworks, Vercel AI Gateway, OpenCode, Cloudflare AI, and local OpenAI-compatible models (like Ollama).
  • Four run modes: interactive (full TUI with streaming output, slash commands, queued messages, inline side-chat), print (zot -p one-shot to stdout), json (zot --json NDJSON events), and rpc (zot rpc long-lived child process for embedding in other apps).
  • Subscription and API key support: Use /login to store API keys or subscription credentials for Claude Pro/Max, OpenAI Codex, ChatGPT Plus/Pro, Kimi Code, and GitHub Copilot.

Tools and Extensions

zot ships four built-in tools: read (read text files or render PNG/JPG/GIF/WebP on modern terminals), write (create or overwrite files with parent directory creation), edit (exact-match replacements), and bash (run shell commands with timeout). Type /jail to confine tools to the current directory. Bash refuses sudo, rm -rf /, and other obvious escape patterns as a guardrail against accidents.

Extensions can be written in any language via a JSON-RPC subprocess protocol. Extensions can register slash commands, expose new tools, intercept tool calls for permission gates, and open interactive panels inside the TUI. Install with zot ext install ./my-extension or run per session with zot --ext ./path.

Skills and Sessions

Skills are per-folder SKILL.md files with YAML frontmatter. zot discovers them at startup, surfaces names in the system prompt, and provides a built-in skill tool for the model to load body on demand. Skills load from .zot/skills/, $ZOT_HOME/skills/, .claude/skills/, or .agents/skills/. Use --no-skill to disable.

Every turn is appended to a JSONL transcript under $ZOT_HOME. Resume last session with -c, pick one with -r, or browse from /sessions. Jump between past turns with /jump. Free up context with /compact which summarizes the transcript into a single message. Auto-compaction triggers at 85% of the model's context window.

Swarm Subagents

zot supports background subagents that run alongside your main session. Type /swarm to open the dashboard, then n to spawn one. Each agent is a separate zot subprocess with its own model loop, session file, and chat in the dashboard. They all run in the same working directory as the host, so they see and edit the same files you do. Common command-line shapes:

/swarm new "implement the login form"
/swarm new --model gpt-5 "write unit tests"
/swarm send  "fix the error handling"

Agents persist across restarts under $ZOT_HOME/swarm/agents//. Press R on a detached row to bring one back. The main agent can also auto-spawn subagents when /settings -> auto-swarm is on.

Settings and Tool Gate

Type /settings to open an interactive dialog with every persistent setting. Changes are written to $ZOT_HOME/config.json and take effect on the next turn. Settings include image rendering support, auto-swarm toggle, and thinking level (off, minimum, low, medium, high, maximum) for supported models.

Run with --no-yolo to confirm every tool call before it runs. A dialog shows tool name and args with options: yes, yes-always-this-tool-this-session, yes-always-this-session, no. Type /yolo inside the TUI to drop the gate for the rest of the session.

Why It Matters

zot offers a lightweight, extensible alternative to heavy IDEs or Docker-dependent coding agents. Its support for 30+ providers and local models gives developers flexibility to choose their AI backend. The swarm subagent feature enables parallel task execution, potentially speeding up complex workflows. For developers who prefer terminal-based tools, zot provides a minimal yet powerful agent that fits into existing Unix pipelines.

Next Steps

Install zot with the one-liner and try the interactive mode: zot. Explore the swarm dashboard with /swarm. If you use multiple AI providers, configure them via /login. For scripting, use zot -p or zot --json in your CI pipelines.