outerlayer init installs two classes of skill. This page lists them and shows how to change what a build and a spec do in your repository.
The first line after a skill’s frontmatter says which class the skill is.
init also writes a policy file and one starter check. See Set up agent instructions and skills.
Templates
init copies each template once. If a template’s folder already exists, init leaves it as it is.
buildholds your repository’s changes to the build process. See The build skill.specholds your repository’s settings and changes to the spec procedure. See The spec skill.writing-specsholds the discipline a spec follows.writing-testsholds the standard a test meets. Add your own test commands and rules to it.
outerlayer init --update. See Update the files init wrote.
.agents/skills/writing-specs/references/agents-snippet.md holds optional writing rules for agents. init adds them nowhere. To hold every agent to them, paste the file’s text into your root AGENTS.md.
The build skill
Yourbuild skill starts outerlayer-build, the maintained skill that holds the build process. It takes a work item through five phases: Intake, Criteria, Implement, Pull request and Evidence. At the start of each phase it reports the step on the item’s Overview tab.
In the Criteria phase, the build records the item’s criteria. A list that the item already has stands, even when the issue’s criteria differ. See Record the criteria.
A build does not review its own change. On a runner build, the built-in code review does that after the push. A build also does not wait for CI. See When a GitHub check fails.
When a build changes a repository that has no .outerlayer/setup.sh, the build writes one and commits it in its pull request. See Repositories with no script.
Change the build for your repository
Write each change in yourbuild under ## Changes for this repository. Put it under a ### heading with the name of the phase it applies to. The starter build holds no change.
This example adds a step to one phase and sets one value:
- Add a step to a phase.
- Turn off a step that
outerlayer-buildmarks optional. - Set one of these values:
A change cannot loosen the build’s fixed rules, such as reporting only observed status and filing no issues. When a change conflicts with
outerlayer-build, outerlayer-build wins.
The build has no Review phase, so it does not apply a change listed under Review. The build’s final report lists the changes it applied, each conflict, and each change it did not apply.
The spec skill
Yourspec skill starts outerlayer-spec, the maintained skill that holds the spec procedure. Write a spec with /spec describes each step.
Your spec holds two sections. ## Settings sets the values below. ## Changes for this repository lists your changes, each under a ### heading with the name of the step it applies to.
The steps are Scope, Draft, Verdict, Size, Reader pass, Checkpoint, File and Build.
A change can add work to a step, set a setting, or turn off the Size step. A change cannot loosen a rule of
outerlayer-spec. When the two conflict, outerlayer-spec wins, and /spec names the conflict before you approve.
A spec skill that holds the whole procedure
Aspec that does not name outerlayer-spec holds its own copy of the procedure. It keeps working, but it gets no changes to the procedure. outerlayer doctor warns, and prints the short spec to start from.
Before you commit the short
spec, upgrade the CLI on every machine. Each person then runs outerlayer init --local once, which installs outerlayer-spec.
Maintained skills
The CLI keeps the maintained skills once per machine, in~/.agents/skills/, with a link to each in ~/.claude/skills/. A repository carries none of them. Two teammates on different CLI versions each get the skills that match their own CLI.
outerlayer-buildholds the build process, whichbuildtells the agent to follow.outerlayer-specholds the spec procedure, whichspectells the agent to follow.outerlayer-evidencesays when and how to attach proof to a change.outerlayer-amendanswers the review threads waiting on an agent, resolves merge conflicts and fixes failed GitHub checks on a pull request.outerlayer-findingssays when and how to record a problem an agent hit in the factory.outerlayer-clisays what a work item is, and how an issue becomes a pull request.outerlayer-rundoes one run of a schedule automation. It reads the repository and reports what it finds. It never changes code.outerlayer-reviserevises the text of a draft spec that a member sent to an agent. It never changes code.outerlayer-reviewreviews one commit of a work item’s pull request and reports each problem that must be fixed. It never changes code.
outerlayer init, outerlayer init --local and outerlayer claude write any maintained skill that is missing. Every other outerlayer command updates the ones already there to its own version.
Do not edit a maintained skill. The next outerlayer command overwrites your edit. You cannot turn one off: outerlayer claude restores a folder you delete.
A cloud session on a machine with no CLI gets no maintained skills.
Check the skills
Runouterlayer doctor. It checks your build and spec skills, the maintained skills on the machine, and .gitignore rules that match a skill folder. It prints the fix for each problem. Setup and doctor commands lists every check.