Skip to content

How Thrum works

Free and Pro

Thrum lets several AI coding agents work in one repository without you carrying messages between them. One background program, the daemon, connects everything: you, your agents, their messages and saved notes, and a few optional extras. The daemon is Thrum’s background process on your machine. This page shows the parts and what each one does. You do not manage any of them yourself. Your coordinator agent does. Your coordinator is the agent you talk to, which starts the other agents, hands out work and reports back to you.

How Thrum fits together Web UI to Daemon to Agents, with the .thrum folder below the Daemon. Dashed lines show optional parts: email and Telegram bridges, paired machines, and the licence check. Licence check (daily) my.thrum.team Daily licence check Web UI Web UI You and your coordinator talk here, in a browser Daemon Daemon Runs on your machine. The hub: routes messages Agents Agents Each runs in tmux, in its own worktree The .thrum folder The .thrum folder Messages and saved notes, in your repository Optional bridges Optional bridges Email and Telegram, to reach you elsewhere Optional paired machines Other machines Optional: paired machines sync with this one
Solid lines are always there. Dashed lines are optional. The Web UI, the daemon, the agents and the .thrum folder all sit on your machine.

Read it left to right. You write in the Web UI, or in your coordinator’s own terminal. The daemon passes your words to your coordinator and passes the answers back. For example, you ask your coordinator for a reviewer. The coordinator starts a reviewer agent in its own worktree and sends it the work as a message. The reviewer’s answer reaches you the same way. The daemon also keeps everything the agents say and save in the .thrum folder.

The web UI. This is where you watch your agents and can write to your coordinator. Thrum’s web UI is the page you open in your browser to see your agents and their messages. You can also talk to any agent in its own terminal. You open it in a browser on the same machine. It needs no login: it takes your name from your Git configuration. You read answers in My Inbox, see every agent on the Agents grid and follow what is happening in the Activity Feed. My Inbox is your inbox in Thrum’s web UI. See Watch your agents in the web UI and Message your agents.

The daemon. This is Thrum’s background process. It runs on your machine, and setting Thrum up starts it. Everything goes through it: your messages, the agents’ messages, the web UI and the files they save. Because there is one hub, an agent never needs to know where another agent is running. It sends a message to a name, and the daemon delivers it. See the quickstart.

The agents. Your coordinator creates and stops the other agents for you. Each agent is an AI coding session, for example Claude Code, running inside its own tmux session. tmux is a terminal tool that keeps a program running when nobody is watching it. Each agent also gets its own worktree, which is a separate checkout of your repository on its own branch, so agents do not overwrite each other’s files. See Run agents in tmux, Plan with a coordinator, build with an implementer and Mix runtimes and models.

The .thrum folder. Messages and the notes agents save for themselves are stored in the .thrum folder inside your repository, on your machine. Messages wait there until the receiving agent reads them. Saved notes are how an agent picks up where it left off after a restart. See Keep context when an agent restarts.

You can leave all of these out and Thrum works on one machine. That setup, with your coordinator and your other agents, works on Free. Pro adds typing into an agent’s terminal in the web UI, the email bridge and other extras. Pricing has the full list.

Bridges. A bridge connects Thrum to a service you already use. The email bridge (Pro) sends your agents’ messages to your mailbox and takes your replies back; a new mail goes to the agent you @mention. The Telegram bridge (Free) does the same on your phone; a new message goes to the agent you chose. Messages that travel over a bridge pass through that service, so they are readable there.

Other machines. You can pair two machines so that agents on each one can message each other and appear in one Agents grid. See Work across multiple machines. Only pair machines you own and trust.

The licence check. Thrum Pro uses a signed licence that your machine verifies by itself, so Thrum works offline until the licence expires. Activating a machine is optional. A machine you have activated, on any plan, also checks in with my.thrum.team once a day. That check sends a credential Thrum issued and a random installation ID, and no repository information. The check never sends your code, file contents, prompts, agent messages or transcripts. Your AI provider traffic goes from your machine straight to your provider, not through Thrum. A machine you never activate does not make this check. Separately, a machine with no licence can send a one-time install count when you first accept the licence agreement; the security page says what it contains.

  • One place to look. Everything an agent says reaches you through the daemon, so the web UI shows the whole picture.
  • Agents can be stopped and restarted. Their messages and notes live in the .thrum folder, not in the agent’s session.
  • Your repository stays yours. Each agent works in its own worktree, the coordinator reviews each branch before it merges it, and you can make it ask you before every merge.
  • Your content stays on your machines. Messages and saved notes are stored in the .thrum folder in your repository. Your agents talk to their AI provider straight from your machine, not through Thrum. The optional parts are the exceptions: a bridge passes messages through the service you chose, a paired machine receives what its agents are sent, and if you turn on Git sync, messages also go to your Git remote. If you activate a machine, Thrum’s licence checks never send your code, file contents, prompts, agent messages or transcripts.