Skip to content

Bench 0.1-alpha — the bench that built itself

Choose a tag to compare

@istos istos released this 30 Jul 06:30
· 382 commits to main since this release

Bench 0.1-alpha — the bench that built itself

This is the first release of bench: a task board for repositories
where humans and coding agents work side by side. Plain markdown files
moving through plain directories, a live board that watches them, and
headless agents that pick cards up, do the work, and answer to the same
review process you do.

No database, no install, no dependencies — the whole thing is Python
stdlib and one HTML file. tasks/ works as a folder kanban even if you
delete the rest.

The story this release tells

Bench 0.1 was built on bench. The distribution you are downloading
tracked its own development on its own board: seventeen task cards in
two days
, every one of them a real defect or feature found by using
the tool on itself — and every one worked through the full loop the
tool provides. The first ./start.sh crashed on boot (card 02). The
first agent launch couldn't commit its own work (card 05). The first
PR conflict had no path through the board (card 16). Each time, the
finding became a card, the card became a branch, the branch became a
PR, and the PR was reviewed — by agents, by Copilot, by CI, and by a
human who merged it. The tasks/archive/ directory in the bench repo
is the complete design history, agent reports and review verdicts
included.

What's in the box

The board. Five stages from backlog to done, rendered live over
SSE. Cards are markdown files; the directory a file sits in is its
status. Drag to move, and every move is attributed — you, an agent, or
a hand-move on disk noticed by the watcher. An activity ticker
narrates everything; sessions replay like a flight recorder; a Focus
view shows one agent's plan, diff stats and definition-of-done checks
while it works.

The agents. ▸ start work launches a headless agent in an isolated
git worktree. It judges whether the task is actionable before touching
anything (NOT READY sends underspecified cards back), works, tests,
commits, and reports for a human reader. Read-only agents review PRs
and check whether cards are still relevant. Each launch intent gets
exactly the permissions its job demands — work agents can commit but
not push, PR-fix agents can push but not force-push, reviewers can
post verdicts but not edit — and an agent that exits without
committing is called out loudly instead of advancing.

The pull requests. A card reaching review with a branch gets its
PR opened mechanically. The board polls reviews and CI into one honest
verdict, requests Copilot reviews on demand, launches agents to act on
feedback, and — new in this release — surfaces merge conflicts on the
card and gives agents the tools to resolve the mechanical ones while
refusing the ones that need a human decision. Merging is always yours.

The vendor line. Core knows tasks, worktrees, PRs and events — it
speaks no vendor's language. Adapters do: Claude Code and
opencode both ship, mapping the same three launch intents onto
their own permission mechanisms and translating their events into one
normalized schema. The workflow brief lives in AGENTS.md, the name
every coding agent reads.

The distribution. This release is the new distribution story:
a curated artifact built from a manifest, which never contained
bench's own cards, notes or state in the first place. update.sh
consumes published releases — no release, it says so plainly — and
the artifact stamps its own source, so updates work with zero
configuration.

Install

mkdir .task-manager && curl -L https://github.com/12vectors/bench/releases/latest/download/bench.tar.gz | tar -xz -C .task-manager
./.task-manager/start.sh

Two commands: a board on port 26071, wired to your repo. Commit
.task-manager/ and the whole team gets it.

Alpha means alpha

The flow is real — it shipped this release — but the edges are young:
one project per board, GitHub-only PR machinery, and the UI is tuned
for laptop screens and one pair of hands. File findings as cards; that
is, after all, how all of this got here.


Built with bench, on bench, by a human and a rotating cast of
short-named agents — Cleo and colleagues did the typing; the archive
remembers exactly who did what.