Discuss one product area

Loft 2.3: Yard is available

Yard is where you and your coding agents meet while they work. It keeps a log on every branch of what they planned, asked, decided, and did, and a page on your machine shows all of it live. It ships with open-source Loft 2.3, in the plugin for Claude Code and Codex.

By Loft Published

What Yard does

Loft 2.3.0, released on November 5, 2026, is the first release with Yard Client, the part of Yard that keeps these records. Each branch gets a Yard Log. You write none of it: the yard skill tells your agent to open the log when work on a branch begins and to keep it as the work goes, and the plugin records what the agent does through its host's own tools.

Stages
One for each step of the work, with a goal that says what the step leaves done. Stages still to come are written as planned, so you see what's ahead.
Questions, approvals, and plans
What the agent needs from you, sent together for each decision point, each option with its reasoning.
Decisions
Each choice you make, with what follows from it.
Tasks
The bounded tasks of the plan, marked as they start and end, so the page can time them.
Notes
What each stage produced, with tables and diagrams where they help.
Loft's reports
The change to the specification, the findings of loft check, the trace, and the publish, kept as loft printed them.

The Yard page shows every Yard Log on your machine, whatever its repository. It runs on your own computer, at http://127.0.0.1:7411/, and listens on the loopback interface only.

The Yard page
Yard Logs
  • billingfeat/pause-limit1 waits on you
  • billingfeat/resume-early
  • webfix/invoice-totals
billing
feat/pause-limit
  • Timeline
  • Gantt chart
  • Tokens
  1. DoneSpecify the limit
  2. ActiveBuild the refusal
  3. PlannedLink the trace
Waits on you

Should a refused pause name the three-month limit?

  • Yes, name it Recommended
  • No, refuse plainly
  • In your own words
Drawn after the Yard page. A list of Yard Logs on the left, one branch's stages on the right, and what waits on you over a page that stays live.

When you'd reach for it

Say Ada is limiting how long a customer can pause a subscription, on feat/pause-limit, while other branches run beside it.

Answer while the agent works

Her agent reaches a decision: should a refused pause name the limit? The question appears under what waits on you, which comes first on the page, across every branch. In Claude Code she can answer on the page or in Claude Code's own dialog, and the first answer counts. In Codex, questions and plans go to the page.

Approve before anything is committed

Each change to the specification comes to her before it is committed, drawn as a map of panels in which every changed box says how it changed. Then comes a plan of the build, naming the criteria each step meets, before any code is written. A rejection with a reason goes straight back to the agent, and the correction shows on the page as a fix.

Review how a branch was built

The Yard Log is committed with the work, under .yard/<branch>/, so Ada's reviewer reads it beside the diff: what was asked, what she answered, what each decision led to, and what loft reported. Every earlier version of a block is kept, and Loft's merge driver joins two copies of a Yard Log record by record.

Pick the work up later

The page marks what changed since your last visit, so Ada can come back to a branch and read only what's new. After /clear or a resume, the new session continues the one that ended, with its stages, tasks, and open questions. Claude Code and Codex can share a branch.

Run several agents at once

A main agent can hand tasks to subagents, which work inside its stage, and the page shows who holds each one. When an agent stops, its active tasks return to open for the stage's owner to review, so a task reads as done only once someone marks it done. Work follows its stage into another worktree, even of another repository.

See where the time and tokens went

The Gantt chart shows when each stage and task ran, several agents at once included. The Tokens view shows what each stage took, by agent and by model, where the host reports it.

Yard: the record of how a change was built follows one branch through all of this from start to finish.

Add Yard to a project

Add the plugin to your agent, then say "Set up Loft in this repository" in your product's repository:

# Claude Code
/plugin marketplace add Ask-Loft/loft
/plugin install loft@ask-loft

# Codex, then trust its hooks in /hooks
codex plugin marketplace add Ask-Loft/loft
codex plugin add loft@ask-loft

Yard works in Claude Code sessions signed in with a Team or Enterprise account, and in local Codex sessions. A team that keeps its plans off git adds .yard/ to .gitignore: the agent commits nothing of it, and the page works the same.

Publish as a team

2.3 also connects a specification to a Loft server, so a team publishes it from any clone and any branch, and the server gives the labels. When someone else has published first, the server refuses the publish and loft pull merges their change under yours. Hosted Loft is in early access: talk to us about connecting your team, and the publishing guide (github.com, opens in a new tab) has the details.

Also in 2.3

  • loft review gathers the context each requirement and criterion should be read against and judges nothing, so you or your agent can review a change with everything it touches in view.
  • loft init and loft skill install end with a setup report: whether Loft's merge driver is registered, and whether the loft your agent's hooks find is the version running.
  • The plugin marketplace those commands write is pinned to the running release, so a fresh machine installs the plugin of the same version.
  • A Feature Group can hold Quality Attributes, for a quality its Features share. An older loft refuses a specification that uses them.

Upgrade

npm install --save-dev @ask-loft/loft@2.3.0
cargo install --locked loft-cli

Then run loft skill install, and its setup report says how to bring an installed plugin to the same version. The changelog (github.com, opens in a new tab) lists every change in 2.3.0. Pick a change you were about to start anyway, and run it on one branch with Yard.