Tickets and workstreams
Put the checkout tickets in To Do, and make the payment bug urgent.
list_itemschange_status ×4update_item
Moved 4 tickets to To Do. TOM-31 is Urgent now.
TOMRADE
喵喵,喵喵 MEOW MEOW
For solo makers and small teams who build with coding agents
Your agents write the code. Tomrade remembers what to build, how far it got and what changed, so every session picks up where the last one stopped, and any run can be undone in one click.
Preview Tomrade is still in development and testing. Expect rough edges, and back up the projects that matter.
On Windows? The installer isn't signed yet. Read this before installing
All downloads:macOS (Apple silicon) 138 MBmacOS (Intel) 143 MBWindows 114 MBLinux x64 (AppImage) 133 MBLinux Arm64 (AppImage) 131 MB
Your agents work at 3 a.m. They read your tickets, edit your notes, and now and then rewrite everything you own. Tomrade is the workspace built for them, with an undo button built for you.
Why Tomrade
Every session starts from zero.
Ideas, tickets, decisions and what's already done stay in one place across sessions and agents, so the next run starts where the last one stopped.
Another tool, another window to babysit.
Claude Code, Codex or Cursor stay in the terminal you already use. Tomrade connects over MCP and git, and the board keeps up on its own.
Something changed. Who did it?
Every agent write is attributed and grouped by run. One click takes a whole run back: tickets, notes and settings alike.
How it works
One loop from an idea to a merged pull request. Each step below is filmed in the app as it is.
Say what you want in plain words, at your desk or from your phone. It becomes a ticket on the board, ready to start.
Say “tidy up” and the assistant merges duplicates and splits the big ones into tickets sized for one pull request. You pick; one click takes it back.
Name a ticket to Claude Code, Codex or another agent in your own terminal. It claims it, works on its own branch and reports back.
Leave the rest to an auto run: it works down the dependency graph overnight, merges what passes and writes you a report by morning.
Watch it
An idea in the afternoon, agents with questions, a run through the night and a report by morning, filmed in the app as it is, nothing staged.
A day with Tomrade · 1:27
Answer every agent from one sidebar.
Linked notes, and an architecture diagram drawn from your code.
Issues come in, get triaged, and ship.
Point it at a repo; it finds the branches you forgot.
A pet, a timer, models, themes, and the plugin it writes for you.
Every film is the real app on a demo repository, with agents running on Claude Code. Captions are in English and Chinese.
Your agents and terminal
Tomrade doesn't replace your agent or your terminal. It hands them work, keeps track of it, and puts the status back on the board.
Tom + comrade
Comrade, not foreman.
Other tools want the work done inside them, or only ever hand it out. Tomrade goes both ways. Set it up once, keep working in the Claude Code or Codex you've already tuned, in your own terminal, and the status finds its way back to the board.
/tomrade:sync in Claude Code, $tomrade-sync in Codex.Both directions work: press Start to hand a ticket out, or work on your own and sync it back. Connect a repository once, and Tomrade opens a pull request with the MCP config and agent notes, so every agent that works in it finds Tomrade.
Agents
Tomrade runs an MCP server on your machine. Point Claude Code, Codex, Cursor or Gemini CLI at it and they can list, read, create and update tickets, read and write your files, and adjust Tomrade's settings, under the same rules as everyone else.
{
"mcpServers": {
"tomrade": {
"type": "http",
"url": "http://127.0.0.1:19090/mcp"
}
}
}It listens on 127.0.0.1 only. Nothing is exposed to the network.
Tools they get
tomrade.list_itemstomrade.get_itemtomrade.create_itemtomrade.update_itemtomrade.change_statustomrade.plan_and_applytomrade.search_filestomrade.write_filetomrade.update_settings
Terminal
Alt-Tab cardio: cancelled.
Run Claude Code, Codex or a plain shell in Tomrade's own Terminal window, one click from the backlog. Split it however you like, let each pane connect to its ticket, and see at a glance which agent is working and which one is waiting on you.
⌘D to the right, ⇧⌘D down. Save a layout you like and open every new window with it.The Terminal window is built on herdr, the open-source (Apache 2.0) agent multiplexer. Tomrade's window is one client of it: install herdr once and the window finds it, and the same panes open in herdr's own client in any terminal.
WindowsOn Windows, the Terminal window runs on Tomrade's own terminal backend instead of herdr, built on ConPTY and opening PowerShell. It works much as it does on macOS: split panes, sessions that connect on their own, each pane's status, and terminals that keep running after you quit Tomrade. There's nothing else to install.
See it, undo it
Sessions show who is working and who is waiting on you; every write lands in History, grouped by run, one click from undone.
Sessions
Six agents, one place to ask you things.
A single agent conversation can carry a whole afternoon: three tickets, a question, a fix. Tomrade marks where each ticket begins, shows the same session in the assistant panel and in its Terminal window cell, and keeps the ones waiting on you at the top.
Drawn in Matcha, one of the built-in themes.
Ran 18 commands · 79 tests passed.Undo, not approve
Approval queues? In this economy?
Agents write straight to the backlog, so nothing waits on you. Every run is grouped and attributed, and when one gets creative, a single click puts all of it back.
History shows who changed what, run by run.
Context that follows the work
Notes, files, conversations and incoming feedback sit next to the tickets they belong to, where you and your agents can both reach them.
Files & notes
Each project carries a folder of files: Markdown, HTML, images, anything. Write in an editor that previews as you type, link notes to each other, and attach them to tickets as deliverables.
The assistant
It isn't only a backlog planner. The assistant works on everything Tomrade holds: tickets and workstreams, files and notes, diagrams, even Tomrade's own settings. And when there's nothing to do, it's happy to just talk.
Put the checkout tickets in To Do, and make the payment bug urgent.
list_itemschange_status ×4update_item
Moved 4 tickets to To Do. TOM-31 is Urgent now.
Turn this week's journal into a weekly review.
search_filesread_file ×5write_file
Read five entries and saved Weekly review.md, with a link back to each day.
Switch to dark mode, and put the cat on my desktop.
update_settings
Done: dark theme, and the cat's on your desktop now.
Should I name my corgi Biscuit or Mochi?
No tools. No changes. Just vibes.
Shout both across a park. Whichever you're less embarrassed to yell, that's the one.
Every change it makes is attributed and lands in History, where ⌘Z takes it back: tickets, files and settings alike. API keys, MCP servers and command lines stay yours to change.
Inbox
The backlog has a bouncer now.
Issues and reports land in the project's inbox first. The assistant proposes what each one is (a new ticket, a bug you already have, or a duplicate) and drafts the reply. One click confirms it.
GitHub issues come built in. Sources are plugins too: bring in your support mail or a feedback form.
One workspace
Every project is a board plus a folder of files. Connect it to a repository, or fill it with nothing but your week.
Talk a feature into tickets sized for one pull request, then let Claude Code or Codex build each one on its own branch.
TOM-42Autosave draftsIn reviewTOM-43Offer a restore on reopenIn progressErrands, chores and plans on a board or a table. Brain-dump to the assistant and it sorts the mess into tasks.
Today's note opens a dated page in your Journal folder. Tag the days and link them with [[wiki links]].
Journal/2026-10-10.md
2026-10-10
Long walk by the river. Finally fixed the #bike.
Markdown with a live preview, backlinks and full-text search. Every save is versioned and can sync to a GitHub repo.
Ways to play
The extras that make a long day with agents a little lighter. Each one is a plugin you can switch off.
Toilet-break productivity unlocked.
Connect a bot in Discord, Slack, Telegram, Feishu, DingTalk or WeCom, and the assistant answers in DMs and @mentions with the same project and tools.
ANSWER ME!
The pet mirrors what your agent is doing: thinking, working, waiting on you, done. Or bring your own pet, one picture per mood.
Your dark mode says a lot about you.
Sunrise is the default and Daybreak its night; Dawn, Matcha and more come built in too. Make your own, from any picture if you like, and let it switch with the time of day.
Your pelvic floor is calling.
25 minutes of focus, 5 off, and a desktop clock that floats over every window. What you do with the break is up to you.
Built-in plugins
Archify comes built in. Ask the assistant, Claude Code or Codex for an architecture, workflow, sequence, data-flow or lifecycle diagram, and it lands in the conversation as a live page you can pan, zoom, trace and present. Save it to Files with its source, and ask for changes later.
YouDraw how a ticket gets from one sentence to a merged PR.
Open it live
YouWhere does Tomrade keep my work, and what leaves my machine?
Open it live
YouWhat happens when Claude Code edits a ticket I locked?
Open it live
YouShow how a ticket's status follows git.
Open it live
Rendered by the Archify that ships with Tomrade. Each one is about Tomrade itself.
Archify is an open-source project (MIT) by tt-a1i. Tomrade fetches a pinned copy from GitHub the first time you ask for a diagram.
Each one is a plugin. Switch any of them off in Settings › Manage plugins.
See what blocks what: the backlog drawn as a graph, and a badge on every ticket still waiting on unfinished work.
Each ticket knows its branches, worktrees and pull requests. Its status follows git, and Start hands it to a coding agent.
Connect any MCP server over stdio or HTTP. Its tools join the built-in ones, for the assistant and every agent.
Every save is a version. Share a project's files through a GitHub repository, found or created for you.
A menu of workflows that runs with no model at all: offline, keyless, repeatable. Off until you switch it on.
Describe the plugin you want. An agent writes and tests it, and it loads only after you confirm the build.
Plugins
The database, the tool registry, the MCP server and the assistant are each a plugin you can swap out. Write your own against the Apache-2.0 SDK and ship it under any license, or ask the agent to write one for you in Plugin Studio.
import { definePlugin, defineTool } from "@tomradex/plugin-sdk";
import { z } from "zod";
export default definePlugin({
inject: ["items", "tools"],
async apply(ctx) {
await ctx.tools.register(defineTool({
name: "stale_list_items",
title: "List stale items",
description: "Open issues untouched for two weeks.",
input: z.object({ projectId: z.string() }),
execute: async ({ projectId }) =>
(await ctx.items.list({ projectId }))
.filter((i) => Date.now() - i.updatedAt > 14 * 86_400_000)
}));
}
});Register a tool once. It appears in the assistant and on the MCP server.

Principles
Each project is a folder of plain text you can read, diff and back up. The database is only a cache.
~/Tomrade/projects/my-app/.tomrade/
├── project.json
├── state/
│ └── items.jsonl
├── log/
│ └── macbook.jsonl
└── README.mdDelete the cache. It comes back. We'll wait.Every AI write is attributed and versioned. Fields you lock stay locked, and a write based on a stale read is refused, whoever sends it.
PriorityHighlocked by you
update_item refused: field is locked
stale read: v12, now v13
A shell command waits for your Allow once, Allow for this turn or Deny. A coding agent runs with the permissions you pick when you press Start. API keys, MCP servers and command lines are never an agent's to change.
The in-app assistant and the agents in your editor call the same tools. Add one once and it shows up everywhere.
tomrade.*Your editorDeepSeek, Anthropic, Gemini, any OpenAI-compatible endpoint or a local model. Or let your own Claude Code or Codex CLI conduct.
Workstreams, custom fields and saved views. Keyboard-first, with a palette for everything.
⌘KSwitch view…
License
Tomrade is open source under the Apache License 2.0: the app, every package and the plugin SDK alike. The code is on GitHub. It is still in development and testing, so expect it to change from week to week.
FAQ
No. The board, the assistant and Files work for any project: a household, a trip, a thesis, a journal. Coding agents join in when a project has a repository and stay out of the way when it doesn't.
They do different jobs, and they work together. Tools like those run your agents and help you review their code; Tomrade keeps what the agents should work on, how far each piece got and what changed. Keep running agents where you like: they connect to Tomrade over MCP and git, claim tickets, and the board follows their branches and pull requests.
Every write Tomrade makes or lets an agent make, grouped by run: tickets, files and notes in Files, and settings. History lists each run, and undoing one puts all of it back. It doesn't reach outside Tomrade: commits, branches and pull requests in your repository stay with git, where you revert them the usual way.
No. A local git repository is enough: name a ticket in a branch or a commit and the ticket follows it. Opening and merging pull requests from Tomrade uses GitHub today, and Files can sync to a GitHub repository if you want; neither is required.
It's a preview. Until 1.0, Tomrade is in development and testing: features change between versions, and you will hit rough edges. Your projects are plain folders on your own machine, so back up the ones that matter.
Yes. Tomrade is licensed under the Apache License 2.0, an OSI-approved open-source license, for the app, every package and the plugin SDK alike. You can use, change and redistribute it, commercially too. The source is on GitHub.
Your projects live on your machine, one plain folder each. If you sign in, your account keeps only your preferences and the list of your projects. Project content leaves your machine only if you connect a model provider or a git remote.
No. Choose “Use without an account” and everything stays on this machine. Signing in only keeps your preferences and the list of your projects in sync across computers. An account never holds project content: issues, files and code stay in your project folders.
The built-in assistant works with DeepSeek, Anthropic, Gemini, any OpenAI-compatible endpoint and local models. Claude Code and Codex can also drive Tomrade directly, using your own CLI login.
Yes, in Settings. You can also swap it for a pet of your own, or unload the pet plugin entirely. The cat will not take it personally. Probably.
It's on the way, in the next release. Can't wait? Message the assistant from Discord, Slack, Telegram, Feishu, DingTalk or WeCom today. It answers as long as Tomrade runs on your computer, which it can keep doing in the background with every window closed. Pulling an all-nighter is the computer's job, not yours.
Officially, it only reminds you to take a break. Unofficially, the alert can be any audio file you like. You know what to do.
macOS (Apple silicon and Intel), Windows and Linux (AppImage).
English, Simplified and Traditional Chinese, Japanese, Spanish, German, French and Russian.
Free to use and open source under Apache 2.0. Your projects stay in your own folders.
Preview Tomrade is still in development and testing. Expect rough edges, and back up the projects that matter.
On Windows? The installer isn't signed yet. Read this before installing
All downloads:macOS (Apple silicon) 138 MBmacOS (Intel) 143 MBWindows 114 MBLinux x64 (AppImage) 133 MBLinux Arm64 (AppImage) 131 MB