On this pageOverview
Getting started

Tori documentation

A cockpit for the coding agents you already run.

Tori is a macOS app that puts every agent session you have going into one window: a tree of projects and branches, a real terminal and chat per session, an editor with language servers and debuggers, and a review panel that stages and commits what the agent wrote. It does not bundle an agent and it is not tied to one. Seven agent CLIs are supported out of the box, and any other is a TOML file away.

Getting started

Install the app and walk through setup.

Workspace

Spaces, projects and branches, the panes they open in, and how to jump around.

Agents and chat

The seven agent CLIs Tori drives, the chat view, and accounts.

Git and review

Worktrees, the Changes panel, and pull requests from the window.

Editor and tools

An editor with language servers, a real terminal, themes and fonts.

Automation

Autopilot, Tori's own MCP server, and the tori CLI.

Phone app

Pair a phone and follow your sessions from anywhere.

Reference

Every setting, and every file Tori writes to disk.

Where to start

Why

Running one agent in one terminal is fine. Running four, across three repositories and a couple of worktrees, is a tab-management problem, and the part you actually care about (which one is waiting on you) is the part a terminal cannot tell you.

Tori watches each agent’s own session transcripts and process state, so every row in the tree says working, needs you, or done, and a parent row rolls its children up. You look at one list and know where to go next.

What it does

Sessions. A tree of sessions grouped into spaces, with a git branch graph and worktree support. Clicking a session focuses its terminal or chat tab, or resumes it if it is not running. Turn level checkpoints snapshot the repo per prompt, so you can diff or revert a single turn.

Editor and review. A CodeMirror editor with language servers, diff gutters, and markdown, image and PDF preview. The Changes panel stages, unstages, commits, pushes, and opens a pull request, hunk by hunk if you want. You can send a review’s hunk comments as one message, or an editor selection, straight into a session, and search across the whole project.

Autopilot. Hand it a queue of issues and pull requests and it starts a worker session for each, watches them, and only stops for you when a decision needs to leave the machine: opening a pull request, submitting a review, or merging. Off by default.

Your phone. Pair a phone with a running Tori over Tailscale, from anywhere, and you get the session tree, chat, and autopilot’s decision cards there too.

Accounts and limits. Sign in to an agent more than once, see each account’s quota in the title bar, pin a client’s repository to that client’s login, and set spending ceilings per chat and per project.

Several repositories at once. A Topic is one branch across any set of repositories, opened as a single workspace with one chat that sees all of them.

Scriptable. A tori CLI in every shell Tori opens and an MCP server for the agents themselves, so a script or an agent can start sessions, ask you questions and open pull requests, behind approvals.

Interface. A command palette, quick open, a shortcut sheet, menu bar tray, OS notifications, and a dock badge for sessions that need you. 22 themes, dark and light.

Guard rails. A folder cannot run its own code until you trust it, a background session cannot push or post without an approval for that exact draft, and Tori never presses Enter in your terminal. See the security model.

Supported agents

Tori ships with adapters for five agent CLIs: Claude, Codex, Copilot, OpenCode, and Pi. It drives whichever of these you already have installed; it does not bundle any of them. Settings > Agents shows which ones it found, at what version, and what it can do with each, since the adapters do not all have the same capabilities: Claude is the most deeply integrated (live status from its own hooks, mid-turn steering, a fork-based rewind), and the others run over the Agent Client Protocol with a shared, smaller floor.

Adding another agent does not require a fork. Add one from the catalog, or drop a TOML file into ~/.config/tori/packs/agents/ describing how to launch it; the schema is documented and stable.

Privacy

Tori sends no telemetry. There is no analytics, no automatic crash reporting (a crash file stays on your Mac until you choose to report it), and no usage tracking of any kind. Its own network requests are listed one by one in Files on disk and privacy: an update check, two public lists it caches, installs you accept, and the GitHub, GitLab or Claude usage calls you sign in or opt in to. Your agent’s own traffic, and your git pushes and fetches, go straight from your machine to your agent’s vendor and your remote; Tori starts the process, reads its output, and adds no endpoint of its own.

Everything Tori itself writes is a plain file on your machine, under ~/.config/tori/.