On this pageOverview
Getting started

Install

Install Tori on macOS.

Tori is macOS only. It is signed with a Developer ID and notarized by Apple, so it opens like any other app.

Install from a terminal

Terminal window
curl -fsSL https://gettori.app/install | sh

The installer picks the build for your Mac, Apple Silicon or Intel, even from a terminal running under Rosetta. It checks the download is signed by Tori’s team and passes Gatekeeper, puts it at /Applications/Tori.app and opens it. Run it again to reinstall the latest release. From then on Tori updates itself.

Install with Homebrew

Terminal window
brew install --cask gettori/tap/tori

Homebrew picks the build for your Mac. Tori updates itself here too, so brew upgrade --cask tori is not needed.

Install from the DMG

  1. Download the DMG for your Mac with the Download button on gettori.app, or from the Releases page: Tori_<version>_aarch64.dmg on Apple Silicon (M1 and later), Tori_<version>_x64.dmg on Intel. The button picks one for you; its arrow lists the other.

  2. Open the DMG, drag Tori into Applications, and eject the DMG.

  3. Open Tori.

The phone app

Tori_<version>.apk on the Releases page is Tori on Android. It pairs with a Mac running Tori rather than standing alone, and it reaches that Mac over Tailscale only, so install Tailscale on both first. Then turn on Settings > Remote on the Mac, listen on its Tailscale address, and scan the QR the Remote pane shows.

The APK is signed with Tori’s own key rather than distributed through the Play Store, so Android asks once whether to allow the install. Later releases carry the same key and install over the top. It is built for 64-bit ARM, which is every Android phone sold since about 2016.

An iOS app is planned.

Requirements

  • macOS 13.4 or later. Tori is developed and tested on macOS 15. It will not open on anything older than 13.4.
  • Apple Silicon or Intel, each with its own DMG. Read aloud and dictation run on Apple Silicon only.
  • At least one agent CLI installed. Claude Code ships the deepest integration; Codex, Copilot, OpenCode and Pi are also supported out of the box. Tori drives the agents you already have; it does not bundle one. After first launch, Settings > Agents shows which ones it found.
  • Node.js, if you want the bundled TypeScript language server to run.

Updating

Tori checks for a newer release when it opens and every six hours, and offers Install in the title bar when one exists. It downloads and checks the new build and puts it in place of the running one; nothing installs without that click. See Updates.

To stop the check entirely, use the app offline; a failed check is silent.

Uninstalling

brew uninstall --cask tori for a Homebrew install; otherwise drag /Applications/Tori.app to the Trash. Everything else Tori writes lives under a single directory, ~/.config/tori/:

  • settings.json, appearance, typography and layout preferences
  • tori.toml, your spaces, projects and folders
  • agents/, adapter overrides, if you added any
  • checkpoint-index/, per-turn checkpoint snapshots
  • state.json, hooks-status/, the first-run flag and live session status

That is not the complete list; see the files on disk reference for the rest. One cache lives outside it: ~/Library/Caches/tori/, holding the published model list the context meter reads, plus a data directory under ~/Library/Application Support/tori/ for per-account agent logins and usage snapshots. Deleting all three removes every trace. Tori never touches your agent CLIs’ own session data, so your agent transcripts are unaffected.