The tracker is the project’s own issue tracker — GitHub Issues, Jira, or Linear — and the harness treats it as the single source of truth for ticket state instead of inventing its own.
The harness doesn’t ship a tracker; it ships adapters that describe how to drive the one a project already has. harness/.agents/skills/github-issue-tracker/SKILL.md, jira-issue-tracker/SKILL.md, and linear-issue-tracker/SKILL.md each carry the operating mechanics for one backend: how status is represented, how the claim is written, how a blocking-edge is expressed. What every adapter has to provide is fixed by .agents/tracker-contract.md — the “five things the pipeline needs of any tracker” — so Thomas can read docs/agents/issue-tracker.md, find out which adapter a project uses, and drive it the same way regardless of backend. GitHub Issues, for instance, has no native status field, so status lives in a label — backlog, todo, or in-progress — with the label as truth and a Project board column as a mirror somebody has to keep in sync.
Because the tracker is the coordination substrate rather than a passive record, it’s also the thing that can drift from reality — a ticket can say in-progress with a live assignee long after its branch already merged. That’s what reconcile-tracker exists to catch: it measures the tracker against git, never against itself, because a wrong tracker state is perfectly self-consistent and only an independent oracle can catch it.
Why it matters here
Adopting the project’s existing tracker instead of a purpose-built one means the harness inherits every one of that tracker’s limitations — no tracker’s assignee field was designed to hold builder/<ticket-id> as a claim marker, and GitHub Issues genuinely has no status field at all. The cost is that every adapter carries its own workarounds and its own measured traps (github-issue-tracker/SKILL.md opens by naming a project that moved Linear to GitHub and hit every one of them). The upside is that nobody has to migrate their existing backlog into a new system to use the harness.
Seen in:
harness/.agents/skills/github-issue-tracker/SKILL.md,jira-issue-tracker/SKILL.md,linear-issue-tracker/SKILL.mdharness/.agents/skills/reconcile-tracker/SKILL.mddocs/adr/0001-rebuild-the-method-around-matt-pocock-skills.md— “the tracker is the coordination substrate”RELEASE-NOTES.md(2.8.0) — the tracker write-back andtracker-state.shplug
Usage:
“Which adapter is this repo on?” — “Check docs/agents/issue-tracker.md first, don’t guess — GitHub, Jira and Linear each carry the claim differently.”
Related: frontier, claim, blocking-edge, ledger