Install Tatolab
Install the Tatolab runtime and CLI with Homebrew on a Mac or one command on Linux, then add the Python SDK to your projects.
Installing Tatolab puts two programs on your machine: the runtime (tatolabd), which runs your streams, and the CLI (tatolab), which you use to create, run and inspect them. They’re installed together, at matching versions, and the runtime is set up to start on its own and stay running.
On a Mac with Apple silicon, install the app with Homebrew, then open it once to finish setting up:
brew install --cask tatolab/tap/tatolabopen -a TatolabOn Linux:
curl -fsSL https://get.tatolab.com/install.sh | shThe SDK is separate. Each stream project adds the Python SDK, tatolab-stream, from PyPI into its own virtual environment, like any other dependency. Nothing from the runtime goes into your projects.
Pick your platform
Section titled “Pick your platform”| Platform | You need | Install with |
|---|---|---|
| macOS | A Mac with Apple silicon (M1 or later) and macOS 15 or later | Homebrew, or the app from a download |
| Linux | x86_64, glibc 2.28 or later, a GPU with a Vulkan driver, and systemd | One curl command |
| Windows | Not supported yet | |
| Anything else | A Rust toolchain and patience | Build from source |
After you install
Section titled “After you install”-
Check that the runtime answers:
Terminal window tatolab streamsA working install prints
No streams in this runtime.If you seeno runtime is running on this machine, the runtime isn’t started. The message suggests runningtatolabdin a terminal, which is right for a source build. With an installer, start it the installer’s way instead: switch on Run Tatolab in the menu bar on a Mac, or runsystemctl --user start tatolabdon Linux. -
Install uv, which the Python SDK uses, if you don’t have it yet.
-
Follow the quickstart.
What goes where
Section titled “What goes where”| macOS | Linux | |
|---|---|---|
| The runtime and CLI | Inside Tatolab.app, with tatolab linked into /usr/local/bin |
~/.local/share/tatolab/<version>/, linked into ~/.local/bin |
| How the runtime starts | A login item, registered by the app | A systemd user service, tatolabd.service |
| The runtime’s state: the streams it keeps, and its own log | ~/Library/Application Support/Tatolab/ |
~/.local/state/tatolab/ |
| Each stream’s logs | .streamlib/logs/ in the stream’s project |
The same |
Uninstalling removes the programs and the service, and leaves the state folder and your projects alone.