# zot Documentation

How to configure, run, and extend zot.

zot is a lightweight terminal coding agent, shipped as one static Go binary. No runtime. No Docker. No plugin system with a dedicated package manager. Just the agent loop done well.

It talks to Anthropic, OpenAI/Codex, Gemini/Vertex, Kimi, DeepSeek, Bedrock, Azure OpenAI, GitHub Copilot, OpenRouter, and many more, edits your files, runs your shell, and can even answer your Telegram DMs.

## Run modes

- `interactive` — full TUI with streaming output, slash commands, queued messages, and an inline side-chat.
- `print` — `zot -p`, one-shot, final assistant text to stdout. Great for shell pipelines.
- `json` — `zot --json`, NDJSON events to stdout. Perfect for scripts and CI.
- `rpc` — `zot rpc`, a long-lived child process exchanging NDJSON over stdin/stdout. Drop zot into apps written in any language.

`zot continuous` adds experimental persistent execution: run a recoverable conversation locally, or keep a host running and attach CLI or TUI clients without tying work to a terminal. It uses a dedicated store rather than ordinary session files. See [Continuous execution](/docs/continuous) for setup, recovery, backups, and repository-scoped workers.

## Next steps

- Install and run your first session in the [Quickstart](/docs/quickstart).
- Learn the five default [Tools](/docs/tools) the agent uses.
- Orchestrate tools with JavaScript using optional [Codemode](/docs/codemode).
- Wire up a provider in [Providers](/docs/providers).
