TOMRADE

喵喵,喵喵 MEOW MEOW

For solo makers and small teams who build with coding agents

From idea to merged PR, with the agents you already use.

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.

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

What your agents don't keep for you.

  1. Every session starts from zero.

    A backlog that lasts

    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.

  2. Another tool, another window to babysit.

    Keep the tools you have

    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.

  3. Something changed. Who did it?

    See it, undo 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

Talk, split, build, merge.

One loop from an idea to a merged pull request. Each step below is filmed in the app as it is.

  1. 01Talk

    Say what you want in plain words, at your desk or from your phone. It becomes a ticket on the board, ready to start.

  2. 02Split

    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.

  3. 03Build

    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.

  4. 04Merge

    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

One day, start to finish.

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

  • Who's waiting on you

    Answer every agent from one sidebar.

  • Files, notes and diagrams

    Linked notes, and an architecture diagram drawn from your code.

  • An inbox that sorts itself

    Issues come in, get triaged, and ship.

  • Take over half-done work

    Point it at a repo; it finds the branches you forgot.

  • Everything is a plugin

    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

Use the agents and terminal you already have.

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.

Work where you like. Tomrade keeps track.

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.

  • Any agent that speaks MCP: Claude Code, Codex, Cursor, Gemini CLI, OpenCode and the rest.
  • Git keeps score. Name TOM-42 in a branch or a commit, and the ticket follows it to Doing, Verifying and Done.
  • One command brings a session back: /tomrade:sync in Claude Code, $tomrade-sync in Codex.
  • Never required. Work with no ticket stays yours, and nothing asks you to file one first.

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

Plug in the agents you already use

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.

.mcp.json
{
  "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_items
  • tomrade.get_item
  • tomrade.create_item
  • tomrade.update_item
  • tomrade.change_status
  • tomrade.plan_and_apply
  • tomrade.search_files
  • tomrade.write_file
  • tomrade.update_settings
An issue's detail pane: a Start button, a Lock button, status, priority, the issues it blocks, and who changed it last.
Every ticket says who changed it last, a person or an agent. Start hands it to your coding agent.

Terminal

Alt-Tab cardio: cancelled.

The terminal, right next to the board.

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.

  • Split it your way: ⌘D to the right, ⇧⌘D down. Save a layout you like and open every new window with it.
  • Sessions connect on their own. Start a ticket and it opens in a pane; when an agent in a plain terminal claims a ticket, that pane becomes its session.
  • See who needs you. Each pane's bar and the sidebar say Running, Needs you or Idle, and Continue nudges a session on without leaving the window.
  • Nothing gets lost. Quit Tomrade and your agents keep working; restart herdr and the layout comes back, every agent resuming its conversation.

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

See what every agent did. Take back any run.

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.

One conversation, every ticket in its place.

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.

  • Chapters, not a scroll. When an agent claims a ticket, a line marks where that ticket's work starts, and its commands and test runs fold into one: Ran 18 commands · 79 tests passed.
  • One pane, two windows. A session in a Terminal window cell also opens in the assistant panel. Type, allow or answer on either side; the other side shows it, and says where it came from.
  • Who needs you comes first. The session bar filters by waiting, running and ended, and says what a session waits for in plain words: “wants to run git push”. Allow it right there, or from the menu bar.
  • Look back by ticket. An ended session leads with its outcome, its conversation filters by ticket, and each pane keeps a timeline, including what you did by hand between sessions.

Undo, not approve

Approval queues? In this economy?

No approval queue. Just undo.

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

The context travels with the ticket.

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

A notebook that lives next to your board.

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.

  • [[Wiki links]] and backlinks. Rename a note and the links follow.
  • #tags and full-text search across every file.
  • Today's note: one click to a dated page in your journal.
  • Read, Edit or Split, with the preview scrolling in step.
  • Every save is versioned. Sync to a GitHub repo of your choice.
  • Attach files to tickets, and let agents search your notes.

The assistant

Ask it about anything in Tomrade.

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.

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.

Files and notes

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.

Tomrade itself

Switch to dark mode, and put the cat on my desktop.

update_settings

Done: dark theme, and the cat's on your desktop now.

Or just chat

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.

Feedback waits at the door, not in your backlog.

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.

  • Accept it as a ticket, merge it into one, or close it as won't do or a duplicate. The assistant proposes; you decide.
  • A repeat is counted on its ticket, so you can see what people keep running into.
  • Whoever wrote hears back where they wrote: a reply on the issue, and the issue closed once its ticket ships.

GitHub issues come built in. Sources are plugins too: bring in your support mail or a feedback form.

One workspace

Not just for code.

Every project is a board plus a folder of files. Connect it to a repository, or fill it with nothing but your week.

Ship software

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 review
  • TOM-43Offer a restore on reopenIn progress

Run your week

Errands, chores and plans on a board or a table. Brain-dump to the assistant and it sorts the mess into tasks.

  • Renew the passport
  • Book the dentist
  • Plan Saturday's hike

Keep a journal

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.

Write docs

Markdown with a live preview, backlinks and full-text search. Every save is versioned and can sync to a GitHub repo.

  • Onboarding.md3 backlinks
  • Pricing.md
  • Roadmap.md

Ways to play

Work is serious. Tomrade doesn't have to be.

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.

    Message it from your phone

    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!

    A cat that watches your agents

    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.

    Built-in themes, and yours

    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.

    A pomodoro in the status bar

    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

Draw it in one sentence.

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.

Rendered by the Archify that ships with Tomrade. Each one is about Tomrade itself.

  • Five kinds: architecture, workflow, sequence, data flow and lifecycle.
  • One self-contained HTML page: pan, zoom, trace a path, present it full screen.
  • Checked on every render: no overlapping boxes, crossed wires or clipped labels.
  • It keeps its JSON source, so a follow-up edits the diagram instead of starting over.

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.

Also in the box

Each one is a plugin. Switch any of them off in Settings › Manage plugins.

  • Dependency graph

    See what blocks what: the backlog drawn as a graph, and a badge on every ticket still waiting on unfinished work.

  • Code link

    Each ticket knows its branches, worktrees and pull requests. Its status follows git, and Start hands it to a coding agent.

  • MCP client

    Connect any MCP server over stdio or HTTP. Its tools join the built-in ones, for the assistant and every agent.

  • Files on GitHub

    Every save is a version. Share a project's files through a GitHub repository, found or created for you.

  • Scripted engine

    A menu of workflows that runs with no model at all: offline, keyless, repeatable. Off until you switch it on.

  • Plugin Studio

    Describe the plugin you want. An agent writes and tests it, and it loads only after you confirm the build.

Plugins

Everything is a plugin, including yours

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.

src/index.ts
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.

The Settings dialog listing Tomrade's modules and the plugin that provides each one.

Principles

Built so agents can move fast without stepping on you.

Your folder is the truth

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.md
Delete the cache. It comes back. We'll wait.

Human work comes first

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

It asks before it acts

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.

One set of tools, every surface

The in-app assistant and the agents in your editor call the same tools. Add one once and it shows up everywhere.

Assistanttomrade.*Your editor

Bring your own model

DeepSeek, Anthropic, Gemini, any OpenAI-compatible endpoint or a local model. Or let your own Claude Code or Codex CLI conduct.

  • DeepSeek
  • Anthropic
  • OpenAI-compatible
  • Local models
  • Claude Code
  • Codex

Boards, tables and graphs

Workstreams, custom fields and saved views. Keyboard-first, with a palette for everything.

⌘KSwitch view…

  • Board
  • Table
  • Dependency graph

License

Free to use. Apache 2.0.

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.

  • Use it, change it and redistribute it, at home or at work, commercially too.
  • One license for everything: the app, every package and the SDK.
  • Plugins are yours. Ship them under any license, commercial ones included.
  • The one thing it doesn't grant: the Tomrade name and logo.

FAQ

Questions

Is Tomrade only for programmers?

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.

I already use Orca, Cursor or another agent tool. Do I still need Tomrade?

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.

How far back can undo go?

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.

Do I need GitHub?

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.

Is Tomrade ready for everyday use?

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.

Is Tomrade open source?

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.

Where is my data stored?

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.

Do I need an account?

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.

Which AI models does it work with?

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.

Can I turn the cat off?

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.

Is there a phone app?

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.

Will the pomodoro remind me to do my Kegels?

Officially, it only reminds you to take a break. Unofficially, the alert can be any audio file you like. You know what to do.

Which platforms does it run on?

macOS (Apple silicon and Intel), Windows and Linux (AppImage).

Which languages does the interface support?

English, Simplified and Traditional Chinese, Japanese, Spanish, German, French and Russian.

How Tomrade fits with Orca, Cursor and other agent tools →

Ship more. Approve less.

Free to use and open source under Apache 2.0. Your projects stay in your own folders.