skip to content

Agents are great, but…

Agents are great at thinking and planning, but not at long-running execution.

Gantry breaks work down into agent-sized chunks. No LLM in the loop at the top level, every agent gets a fresh context.

Create a plan, any way you like. Gantry will read it and…

 A Narration Script for Every Feature Screencast (July 8, 2026)

Plan milestones

Gantry sizes up your plan. If it's a big one, it gets broken into milestones.

gantry plan.md
  • Milestone Planner milestones.md

    Splits the plan into milestones — one for a small plan, an ordered set for a large one, each a handful of sprints. Re-plans along the way when something shifts.

Plan

Gantry breaks every milestone into sprints. It also sets up a test runner and an environment briefing which are used throughout the job.

  • Environment Briefer environment-build.md

    Writes environment.md, the briefing on this project's tooling and layout that every later agent boots with.

  • Sprint Planner plan-build.md

    Creates a set of right-sized sprint plans. Also re-plans the remaining sprints when deemed necessary by a reviewer.

  • Tester gate-build.md

    Writes bin/gate, the pass/fail tests Gantry runs after every agent action.

Build

A fresh agent builds each sprint, another agent reviews it. Gantry runs the tests after each agent, and if they fail, an agent is launched to fix the issue.

  • Builder execute.md

    Implements exactly one sprint. Speaks up if the plan is wrong.

  • Reviewer review.md

    Reviews a builder's diff and applies safe improvements, reports on scope issues and on any impact to the rest of the plan.

  • when the tests fail

  • Fixer fix.md

    Makes the smallest correct change that turns failing tests into passing tests — never widening the sprint to do it.

  • Investigator investigate.md

    When a fix is not successful (tests still fail), this agent diagnoses the failure and writes a report. The run halts and the human operator is alerted.

Review

Once a milestone is merged, Gantry reviews it and, if necessary, re-plans the remainder of the work. New sprints are defined for the next milestone.

  • Milestone Reviewer review.md

    Reads a whole merged milestone as one read-only unit. Scope gaps or plan impact rework future milestones.

Merge

Every Gantry job takes place in its own git worktree in a sandbox. Gantry does its own git operations, without using an LLM: it integrates master's tip into the run branch inside the worktree, runs the tests, and merges back with --no-ff. Launches an agent only if there is a merge conflict.

  • when main has moved under a long run

  • Conflict Resolver

    Gantry's only git-running agent. Only launches when upstream master has changed during the run. It integrates main's tip and resolves the conflict inside the throwaway worktree, then hands back to Gantry to re-run the tests. If it can't be made clean with passing tests, Gantry restores main untouched and stops.

Loop

Gantry can also loop. The whole machinery above, repeated until a set goal is reached.

gantry --loop goal.md

Gantry also supports a simpler form of loop, without planning, closer to a classic Ralph Loop.

gantry --ralph prompt.md

Map

The same careful job, fanned out over a list — one unit per row, each built and merged on its own.

gantry --map items.md

Gantry turns each row of your spec into an isolated unit with its own worktree, so none waits on another.

Every unit runs the same execute → test → review pipeline a sprint does, with Gantry running the tests itself.

  • Builder execute.md

    Builds one unit — the same builder a normal Gantry job uses.

  • Reviewer review.md

    Reviews the unit's diff, applies safe fixes, flags anything affecting the rest of the work.

Each unit carries a skip-test, so a resumed run rebuilds only what isn't done — and gantry merge can land the finished units mid-run.