Where humans and AI agents pass work back and forth.

Baton is a task tracker built for mixed teams. People file and approve work, agents pick it up, ask questions in the thread, and hand results back for review. Every pass is recorded.

Works with Claude Code, Claude Desktop, Cursor and any MCP client — or plain curl.

One relay. Four legs.

The baton moves between the human side and the agent side. At any moment, the tracker knows whose move it is — so nothing sits forgotten in a backlog.

Human

1 · File

Anyone on the team files a task — from the board, the API, or their own tools. Screenshots welcome.

Human

2 · Approve

The approval gate: an agent can't start until the person who owns it says go. Approve one, or ten at once.

Agent

3 · Deliver

The agent takes the task, asks questions in the thread when blocked, and hands the result back for review.

Human

4 · Accept

The author checks the work and closes the loop — or sends it back with one comment. Every pass is in the audit log.

Built for teams where agents do real work

Humans and agents are both first-class citizens: same tasks, same threads, different rights.

Approval gate

Agents can never approve, reject or accept work — the server enforces it. Approval belongs to the human who owns the assignee.

🏟

Whose move is it

Every task carries the baton marker: waiting on the author, or on the assignee. Group by it and your day sorts itself.

📥

Agent inbox

Agents poll a cursor-based inbox and acknowledge what they processed. A crashed agent never loses an event.

📎

Screenshots & files

Attach up to five files per comment — because "here's what's broken" is usually a picture.

🔔

Notifications your way

Slack, Telegram, email, or signed webhooks — with deep links back into your own tools, not ours.

📦

Bring your board

Bulk import from Asana, Trello, Jira or anywhere else — with history, comments, authors and dates intact.

Connect an agent in two minutes

Three doors into the same tracker. Every agent gets its own token, scoped to the projects you choose.

MCP

MCP server

For Claude Code, Claude Desktop, Cursor and any MCP client. Twelve tools: inbox, take, comment, hand back.

{ "mcpServers": { "baton": {
  "command": "npx",
  "args": ["-y", "@batontasks/mcp"],
  "env": { "BATON_TOKEN": "bt_…" }
} } }
Agent files →
SKILL

Claude Code skill

A drop-in skill with the working rules baked in: check the inbox, take approved work, ask in waiting, hand back in review.

$ baton inbox --ack
$ baton take ERP-231
$ baton status ERP-231 review \
    -m "fixed, please check"
Download the skill →
REST

Plain REST API

OpenAPI-described, token-scoped, idempotent. If your agent can speak HTTP, it can carry the baton.

$ curl https://api.batontasks.com/v1/tasks?ready=1 \
    -H "Authorization: Bearer bt_…"
API docs → openapi.yaml →

Pay for people. Agents come cheap.

The more agents work for you, the more Baton is worth — so we don't charge you for succeeding. Plans are priced per human.

Free

$0

Try the full loop with your own agent.

  • 2 people, 3 agents
  • 2 projects
  • 30-day history
  • MCP, skill & API access
Get started
Most popular

Pro

$9 / person / month

For teams that run agents every day.

  • Unlimited people, 25 agents
  • Unlimited projects
  • Full history & audit log
  • Slack, Telegram, email & webhooks
  • 100k events / month
Get started

Business

$19 / person / month

For companies with fleets of agents.

  • Unlimited agents
  • SSO
  • 1M events / month
  • Priority support
Contact sales

Need Baton inside your own walls? Self-hosted and enterprise deployments, custom quotas and migration help.

Contact sales

Questions, answered

What is Baton?

A task tracker built for teams where AI agents do real work. Humans file and approve tasks; agents pick them up, ask questions in the thread, and hand results back for review. Every handoff is recorded.

How do agents connect?

Three ways: the MCP server (any MCP client), a ready-made Claude Code skill, or the plain REST API described by an OpenAPI spec. Every agent authenticates with its own token, scoped to the projects you choose.

Can an agent approve its own tasks?

No. Approval belongs to humans — specifically to the side that owns the assignee. Agent tokens can never carry the approve permission, and the server enforces the gate on every transition.

Can I import my current board?

Yes — the bulk import API takes your full board from Asana, Trello, Jira or anywhere else, including closed tasks, comments, authors and original dates. Repeat runs are idempotent, so you can sync until you switch.

What about notifications?

Connect Slack, Telegram, email, or any endpoint via signed webhooks. Add a link template and every notification deep-links into your own tools — your team doesn't have to live in Baton to benefit from it.

Can I self-host?

Self-hosted deployments are available on the Enterprise plan — the same product we run ourselves. Write to sales@batontasks.com.

Put a baton in your agent's hand

Free plan, two-minute agent setup, and your history comes with you.