About
Agent Codeyard, formerly Agentic Coding Template (ACT): why it exists, what it is built on, and how it got here.
Why Codeyard exists
Coding agents can plan a project, implement features, write tests and review changes. Using them across a whole development process raises questions they do not answer themselves.
How do you keep the requirements consistent? How do you know a change was reviewed and tested, and that the review and the tests saw the code that is merged? How do you let agents work on their own without giving up the decisions that matter? The answers are established engineering practices, applied to work with agents. Three shaped Codeyard most:
- Clear requirements reduce rework. Every plan starts with a round of questions and your approval, and every feature with the implementer's check that the Issue settles what it needs.
- Independent reviews catch what the author misses. Under the shipped risk policy, every feature is reviewed by a read-only agent of another provider before it can be committed, and every finding gets an explicit decision. A project can let low-risk features skip the review; their merge then needs the owner.
- Approval does not rest on an agent's judgement alone. Rules about what a change touches come first; the reviewer's assessment comes on top and can only make the outcome stricter.
- Not an assistant. Codeyard writes no code: Claude Code and Codex do. Codeyard is the workflow around them, in shell scripts and plain files in your repository, with no platform to host.
Engineering principles
From the history below and docs/workflow.md.
- Manual first. Deciding on findings, the planning loop and the unattended run were each a manual routine before they were a script.
- Evidence before automation. Recorded reviews and verification came before the command that runs a feature alone; without them an unattended run would have nothing to stop on.
- A script decides, not an agent. Whether a step succeeded, whether a review is current, what the risk level is: computed from the repository, never taken from an agent's report.
- Effort follows risk. A documentation fix and a change to the gate do not get the same treatment; high-risk work keeps every control under every profile.
- Controls only get stricter. Any source can raise a level or require approval; nothing an agent controls can lower it, and the rules are read from the base branch.
- Driven by real use. Once real work depended on the template, most changes answered something that had gone wrong, and since October the run records show what.
Design decisions
Each with the pull request that made it.
| decision | why | source |
|---|---|---|
| Read-only reviewers | A reviewer that can edit can fix what it should report. | PR #35 |
| A reviewer of another provider | An agent of the same family shares the implementer's blind spots; the shipped pair is Claude and Codex. | PR #211 |
| Evidence tied to content | A review or a verification counts only for the content it saw; any change makes it stale. | #42, #74, #200 |
| Scripts decide outcomes | An unattended run needs a judge that does not depend on how a session ended. | PR #101 |
| The completion gate | A session that ends is not a finished feature. | PR #126 |
| Your merge | No script merges; protected changes and major architecture impact wait for the owner. | PR #100 |
| A computed risk level | Read from the diff and the base branch's rules, so a feature cannot classify itself lower. | PR #194 |
| Local run records | Measurement without sending anything anywhere. | PR #136 |
| Issues when ready | A feature becomes an Issue when you are ready to build it; the roadmap is not turned into a backlog in advance. | PR #44 |
History
From the first pull request on 10 September 2026. Each period links to the pull requests that built it.
The ideas behind the workflow are not new: it combines established engineering practice with coding agents, inside a development process on GitHub. It started manual and automated the steps that proved useful and repeatable. Several lessons came from Physics by Construction, a project that uses this workflow and where parts of its design were tried first; a fix found there came back in PR #179.
- A manual workflowSeptember 2026
Instructions for agents, a few policies, a setup guide, and a rhythm of plan, act and evaluate. A feature was planned in an Issue, built in its own worktree, and read by a second agent. The first scripts took over what was the same every time; soon each review finding got an explicit decision, and the implementer fixed only what was decided.
- Structured planningSeptember 2026
A planning process before the first feature: from an idea to agreed requirements, an architecture and a roadmap.
- Records instead of reports2 October
Checks that relied on the agent's own word (the tests passed, the review covers the current code) became records a script can check: one command for the checks, structured review and triage data tied to the reviewed version, read-only reviewers, and a planning review with an approval tied to the approved documents.
- Reliability from real use6–7 October
A feature resumes from a handoff note, a passed verification is reused for unchanged content, an approved plan has a change process, a later review can read only what changed, and a project takes over template changes with a script.
- Unattended runs8–10 October
One command takes a feature from its Issue to an open pull request; it does not merge. A script, not an agent, decides whether a step succeeded and retries a temporary failure; “blocked” means only that a person has to decide; whether a change needs the owner's approval is no longer left to the agent that made it.
- Learning from runs13–21 October
The scripts commit and close an Issue only when the implementer's completion record says the work is complete. Every run records its durations and tokens; a report, the experience of each run and an analysis by a read-only agent follow. The owner can give triage decisions directly, with an audit trail, and a feature can wait for evidence that cannot exist yet.
- Effort by risk26–28 October
Every feature gets a computed risk level that selects the models and what the review rounds require; workflow profiles make low-risk work lighter in one line. The owner's comments reach every agent of a feature, and the implementer asks before it invents an answer. Budgets measure without failing, and approval requests are tied to the content tree.
- Corrections from the first analysis27–29 October
Agent attribution became configurable and is disabled by default; Codex may write the runtime files it needs. The five proposals of the run analysis of 28 October were built: earlier review decisions in every round, a recorded reason for every stop, timed checks, warnings about undeclared models. Test escalation was narrowed to removed or changed lines, and the owner can raise the level before the first session.
- This website30 October
An MIT licence, then the redesign of this site, tracked in #234.
- The first site finished30–31 October
Features, Examples and About written from the repository's own records; accessibility, performance and publication checked, with a guide for a rename and a custom domain; the browser check detects a missing browser instead of installing one on every run.
- The product-first redesign31 October
A product-first homepage, from the problem through the route of one feature, risk, review and the owner's gates to the records of one real feature. The workflow map became an explorer with the detail of each step, Features were organised around engineering problems and Examples by risk, and the workflow reference moved into the regrouped docs.
- Agent Codeyard31 October
The site took the name Agent Codeyard, with a social preview image for every page; the repository, its URLs and the scripts kept their names, so generated projects are unaffected.
Research
No code was copied from the projects named here.
For every framework we asked one question: would this improve the workflow we have, or add complexity it does not need?
| framework | what we took | what we left out | in Codeyard today |
|---|---|---|---|
| GitHub Spec Kit | Clear links between requirements, plans, tasks and implementation; consistency checks | A second specification system with its own commands and directories | Partly: requirements, roadmap, feature Issues, planning review |
| OpenSpec | Explicit change requests for an approved plan | A separate change-management tool with its own documents | Built: the planning change process, with a new approval |
| Superpowers | Verification before calling work done, independent reviews, short task contexts, systematic debugging | Every skill installed; test-first development for every change | Partly: reviews, verification, resuming; a debugging method is not built |
| BMAD Method | Separate responsibilities for planning, implementation and review | A large set of mandatory personas and documents | A principle: focused roles |
| GSD Core | Small tasks, progress notes that survive a session, resuming with a fresh context | A second orchestrator; parallel execution by default | Partly: handoff notes and resuming; no task scheduling |
Two talks shaped the approach: Matt Pocock, “Full Walkthrough: Workflow for AI Coding”, on clarifying requirements, vertical slices and dependencies between tasks; and Eric Zakariasson, “Building your own software factory”, on isolated environments, parallel agents and better verification evidence.
Among skill collections we looked at Cloudflare's security audit skill, Trail of Bits' skills, Addy Osmani's agent skills, Anthropic's skills and Impeccable. None is bundled: a project selects the skills its work needs.
Possible improvements
Not a committed roadmap. The open work is in the Issues.
A new feature has to add clear value without making the workflow harder to use for a single developer. What exists in part is said so.
| improvement | what it would add | status |
|---|---|---|
| Separate agent identity | A GitHub identity with limited rights for the agents, so an approval is one the agent cannot give itself | Not built (#99) |
| GitHub approval rules | A ruleset, required checks and code-owner review that GitHub enforces on the merge | Available once you configure them: Codeyard cannot set them for you, and doctor.sh warns when the ruleset is missing |
| Second reviewer | One review of the behaviour and one of the engineering quality | Not built. High risk already gets the stronger model and always the full triage (#66) |
| Periodic run analysis | The analysis of feature runs on a schedule | Not built. analyze-runs.sh runs when you start it (#131) |
| Selective CI | Running the tests a change affects | Partly: check groups and partial checks in repair rounds; affected-test selection is not built |
| Model selection by cost | Choosing a model by what a task needs and what it costs | Partly: a model per role and risk level; selection by cost is not built |
| Cost of runs | Duration, retries, models and cost per run | Partly: durations, retries and tokens per role and model; a cost in money is not calculated |
| Task queue and parallel features | Dependencies in a form automation can use, and agents working on several features at once | Not built. Separate worktrees allow concurrent work that you start; a supervising agent was tried and is not part of the template |
| Environment isolation | Per task its own database, services, ports and credentials, in a container or virtual machine | Not built: a worktree separates only the working files |
| Browser validation | Browser tests with screenshots or traces for interface changes | Not built: a project can configure its own |
| Remote runs, a dashboard, several repositories | Runs that continue on a server, a browser view of them, work across repositories | Not built |
Built since the earlier list of this site: feature clarification (PR #213), a model per risk level, check groups, partial checks and budgets. What the template deliberately does not do: require a central platform, turn the roadmap into a backlog in advance, or require test-first development for every change.
Source, licence and contributing
- maintainer
- Agent Codeyard is an open-source project by Ahmet Taspinar, founder of JIDAI.
- source
- github.com/taspinar/agent-codeyard
- licence
- MIT, in
LICENSE. A project created from the template chooses its own licence. - contributing
CONTRIBUTING.md: changes start from an Issue, on a feature branch, followingAGENTS.md- security
SECURITY.md: report security-sensitive findings privately- open work
- The Issues of the repository