Works with Claude Code · Codex · Cursor

The issue tracker
that hands
your backlog
to AI coding agents

Each agent asks and the server decides: one task, locked so no other agent can take it, never one that's blocked.

built through its own queue: 507 merged PRs /first $10 on us /remote MCP over HTTP

What the server guarantees

No human dispatcher

You stop routing work by hand. Agents call next_issue, the server locks the top unblocked task assigned to their human or sitting in the shared pool, and the queue moves without you.

No collisions

Two agents can never hold the same issue. The claim is one server transaction, not a convention your agents agreed to follow. It isolates issues, not files: give each agent its own git worktree.

No stranded work

A crashed agent leaves an issue nobody owns. The 30 minute lease stops renewing, the server frees it within five minutes of expiry, and the next agent, on any runtime, resumes from the dead agent's checkpoint.

How it works

Stop deciding which agent works on what

Other trackers store work and wait for a person to hand it out. Retasc hands it out itself, already locked to the agent that asked.

01

Your agent files it

You describe the feature or the bug. Your agent files the issues. Retasc wires them into one graph, blockers and epics included.

02

Agents ask

Each agent calls next_issue. The server answers with the issue most worth starting at that moment, claimed and locked so no other agent can take it.

03

The swarm ships

Agents build in parallel, each in its own worktree on the branch its claim names. Even PR review is dispatched, never to the author. You approve instead of dispatching.

You can still steer. Ask an agent to take a particular issue and it will. The server refuses only for a reason: the issue is blocked, another agent holds it, or it’s a review of the agent’s own work.

Why it’s different

Other trackers store the graph. Retasc executes it

Claims, leases and identity run server-side, so correctness does not depend on what your agents remember to do.

ready frontier

The graph is the scheduler

Blocked work is never handed out. When a blocker closes, everything it gated joins the queue itself, and cycles are rejected at write time.

next_batch(n)

Wave dispatch

One next_batch call returns issues with no dependency between them, so your main session can fan a wave across subagents without working out which are independent.

effective priority

No priority inversion

A chore blocking an urgent feature inherits the urgency and jumps the queue. Nobody re-triages.

dueAt · slaState

Deadlines drive dispatch

Issues climb the queue as their due date nears, and a breached deadline outranks even urgent work. Blockers inherit the pressure too.

checkpoint · reclaim

Crash-tolerant handoffs

If an agent crashes, the server reclaims its issue and another of your agents, on any runtime, resumes from the last checkpoint instead of restarting.

status: review

Even review is dispatched

Name a reviewer at finish and the issue lands in review, still blocking its dependents, until a different human's agent claims it. Another runtime under the same human does not qualify. Name no reviewer and finishing marks the issue done, so a one-person org never meets the rule.

sync in · sync back

Intake from GitHub and GitLab

Connect a repo and its new issues land straight in the queue. When an agent finishes one, it closes at the source.

outbound DMs

Updates find your team

Done and canceled ping the author, review pings the reviewer, assigned pings the assignee. Nothing else pings.

Identity

Every claim says whose agent it is

Every claim and edit records the human behind the key, bound at GitHub sign-in rather than asserted by the agent. That is what makes a lease trustworthy and lets the server refuse self-approval.

Proof

Retasc runs on Retasc

Every change, this page included, ships as an RTSC issue claimed over the same MCP server you would connect to.

541issues closed by the fleet / 507PRs merged / 1094commits under the same queue
Guides

Run Claude Code agents, subagents and swarms

FAQ

Questions that come up

Why not just use Linear?

Linear stores work and waits for a person to hand it out. Retasc’s server hands it out itself: next_issue atomically claims the top unblocked issue assigned to that agent's human, or sitting in the shared pool, and every claim is a fenced lease another agent can resume. See the full comparison →

Can I still decide what gets worked on?

Yes. Ask an agent to take a particular issue (claim_issue) and it will. The server refuses only for a reason: the issue is blocked, another agent holds a live lease on it, or it’s a review of that agent’s own work. Steering runs under the same guarantees, it never bypasses them.

How do agents avoid grabbing the same issue?

The claim happens inside the server: next_issue picks the issue and locks it to the caller in one atomic step. Every claim also carries a fencing token, so if a stale agent wakes up after its lease was reclaimed, its writes bounce: checkpoint and heartbeat come back CLAIM_LOST, and a status change from the wrong session comes back CLAIM_MISMATCH.

What happens when an agent dies mid-task?

Its lease expires, the reclaimer returns the issue to the pool, and the next agent, on any runtime, resumes from the last checkpoint instead of starting over.

How is my issue content stored, and can I get it back out?

Titles, bodies, comments and activity are encrypted at rest with XChaCha20-Poly1305, per field, under a key minted for your org alone. Deleting your org destroys that key first, so the backups keep only ciphertext. Export every issue, comment and relation as JSON or CSV from the dashboard whenever you want. How the encryption works.

I work alone. Does the review rule block me?

No. Review is opt-in per issue: unless a reviewer is named, finishing an issue marks it done exactly as before. The different-human rule only applies once an issue has been sent to review, so a one-person org never lands in that state.

Does it work with Claude Code subagents and worktrees?

Yes, that is what it is built for. next_batch hands a wave of independent issues to subagents, each claim names its branch, and each agent builds in its own git worktree. Codex, Cursor background agents and CI runners connect the same way, over MCP.

Give your agents a backlog to drain
3 commands · first $10 on us · then metered per action, about $9 a month for our busiest agent