Oystro

Oystro OSS User Guide

This guide shows one full project journey. You install Oystro, start a project, and ship one small feature. The guide uses short sentences. It uses Simplified Technical English.

Oystro provides the protocol. The outcome depends on your input at init and define and on the model's capability; some models follow the protocol more strictly than others. Oystro is agent- and model-agnostic.

1. Before you start

Oystro is an Agentic Development Lifecycle (ADLC) protocol. It gives your AI agent guardrails to follow the lifecycle and generate the project artifacts.

The agent does the work. Oystro stops it at two human gates: you approve the spec before the build, and you approve the evidence before the release. The agent works alone between the two gates.

You need

What Oystro is not

Oystro OSS is free to use and open source, licensed under AGPL-3.0.

Words used in this guide

Write a command as oystro:<command> — for example, oystro:init. There is no leading slash, so your agent does not treat it as one of its own slash-commands.

2. Install Oystro

Do these steps.

  1. Open your agent in the project folder.
  2. Paste this text into the agent:
read https://github.com/oystro/oystro-oss/blob/main/commands/init.md and follow the instructions to initialize oystro-oss in this folder

The agent installs the protocol. The agent creates two items:

Oystro OSS is free. The install needs no account and no key.

3. Start the project

Command: oystro:init

The agent reads your folder. Then the agent writes the base documents. The result depends on the folder.

Oystro has two start modes:

Folder stateModeWhat the agent does
Empty folderGreenfieldThe agent asks questions. Then it writes the base documents.
Existing codeBrownfieldThe agent reads the code and writes the base documents from it.
PRD and ADR readyDocumentedThe agent derives the documents from your files.

In a brownfield project, the agent also:

A brownfield start needs extra review. The agent's reading of the existing code can be wrong. Read the base documents closely and correct them.

The base documents are:

Step: read the base documents. Correct any error. The agent does not overwrite these files later.

4. Define a slice

Command: oystro:define

A project has phases. A phase has slices.

oystro:define starts a slice and adds it to the active phase. Then the workflow runs for that slice. When every slice of the phase is verified, oystro:release releases the whole phase.

The agent writes the plan for the slice. The plan is the file spec.yaml.

The spec contains:

Step: read the spec. Correct any error. Do not approve a spec that is not clear.

5. Gate 1: approve the spec

Command: oystro:approve

This is Human Gate 1. The agent cannot write code before this gate.

  1. Read spec.yaml.
  2. Approve the spec, or send it back with a comment.

When you approve, the spec receives the mark Ref: APPROVED. The agent can then build.

After you approve

You approve once. Then the agent runs the rest of the sequence on its own: build, then verify, then the review (level L). It does not stop between the tasks. It stops only at Gate 2.

Some agents stop after each command and wait for you. If your agent stops, tell it to continue to the next stage. The protocol expects the agent to run the stages between the gates without a nudge.

Gate 1 applies at every level, including S. A level changes the design and task ceremony only. See section 11.

6. Build

Command: oystro:build

The agent implements the tasks. The agent does one task at a time. One task makes one commit.

You do not need to watch. The agent works alone between the gates.

Large projects (level L) can add a review before verify. Command: oystro:review-pre-verify. A second agent reviews the build against the spec.

7. Verify

Command: oystro:verify

The agent runs the tests and the acceptance checks. Then the agent writes two files:

The verdict is bound to the commit. If evidence is missing, verification fails. The agent cannot hide a failed test: the raw output stays in proof.md as it was.

You read verification.md and proof.md at Gate 2.

8. Gate 2: approve the release

Command: oystro:release

This is Human Gate 2.

  1. Read the evidence.
  2. Read the deferred items. A deferred item is work that the team moved to later.
  3. Approve the release.

Gate 2 releases the phase, not one slice. After your approval, the agent merges the phase, then archives it with its slices, specs, and proof, and updates the status.

9. Sample project

This sample shows one full journey. The sample is a small task list program.

Step 1: make the project

mkdir tasklist
cd tasklist
git init

Step 2: start your favorite agent

Start your favorite agent in the project folder, then paste the install text from section 2. Run oystro:init. Answer the questions; the agent writes the base documents.

Step 3: define the first slice

Run oystro:define. Ask for this slice:

Add a command that adds one task to the list.

The agent writes spec.yaml. The spec lists the tasks and the tests.

Step 4: approve the spec

Read the spec. Run oystro:approve.

Step 5: build

Run oystro:build. The agent makes one commit for each task.

Step 6: verify

Run oystro:verify. The agent runs the tests. Then it writes the report.

Step 7: release

Read the report. Run oystro:release.

Step 8: the next slice

Run oystro:define again. Ask for the next slice:

Add a command that marks one task complete.

Then repeat steps 4 to 7. This loop is the working method. One slice at a time.

10. Change a released feature

Command: oystro:change

Use this command for a bug fix or a change request. The agent does three steps:

  1. It reads the baseline. The baseline is the current released code.
  2. It makes the smallest change.
  3. It verifies the change.

Gate 2 applies to a change. You approve the release.

11. Project levels

Oystro sets a workflow size for the project: S (Small), M (Medium), or L (Large). You choose the size during oystro:init; the level lives in CONSTITUTION.md and every spec follows it. The size sets how much process a change gets.

The level is a trade between speed and rigor. A small change does not need the process of a large one. You opt into the extra process; Oystro does not force it.

LevelWhat it isProcessGate 1Review
S — SmallA quick change or a tweak.Requirements and evidence only; no design or task list.HumanNo
M — MediumThe default. Normal feature work.Full process with both human gates.HumanNo
L — LargeA large or high-risk change.Full process, plus an agent review before verify.HumanYes

Gate 1 (approve the spec) applies at every level. Gate 2 (release) is the phase release. The only step a level skips is the L-level agent review.

Examples:

When you are not sure, choose the larger level. Keep a change small by keeping its scope small.

Testing level

A project also has a testing level: Light, Standard, or Full. It lives in CONSTITUTION.md, next to the workflow size. It sets the depth of evidence that a change must show.

The workflow size (S/M/L) sets the design and the task ceremony. The testing level sets the proof. The two are independent. You choose both at oystro:init.

12. Branches

Oystro uses Git branches to isolate the work. The agent creates them. You do not manage them by hand.

BranchMade byWhat it holds
mainyouThe released code. Keep it protected.
phase/<phase-id>oystro:defineThe integration branch for one phase. Every slice of the phase merges here.
feature/<FID>oystro:defineOne slice. It starts from the phase branch.
change/CHG-NNNoystro:changeOne bug fix or change request.
hotfix/<id>youAn emergency fix against main.

The shape:

main
 └── phase/<phase-id>        the phase integration branch
      ├── feature/<FID>      slice 1
      └── feature/<FID>      slice 2

A slice merges into the phase branch when it verifies. The release merges the phase branch into the target branch (usually main) and archives the phase.

13. The domain model

During oystro:init, the agent records what your project is and the domain it serves, in CONSTITUTION.md. This is the domain model. Every spec must respect it.

The domain model records:

The agent does not hardcode a domain. It assesses your project and asks you. Read this part of CONSTITUTION.md and correct it. The agent uses it to judge every later change.

14. Agent profiles

Oystro runs the work through predefined agent profiles. Each profile has a bounded role. A profile does one part of the workflow, and cannot do more.

ProfileRole
CollaboratorWorks with you to explore the problem and define what to build. Runs init and define.
DeveloperBuilds the tasks, one commit each. Runs build and change.
Sr Tech LeadReviews the build against the plan, in a fresh context. Level L.
GatekeeperRuns the evidence and checks the acceptance criteria. Assembles the release.

No agent approves the work

A profile can propose, build, and verify. A profile cannot approve. Only a person approves, at Gate 1 and Gate 2. This keeps accountability with you.

The agent runtime runs the profiles. Oystro defines the roles and the bounds. Any agent that can read and write files can follow them.

15. Files and folders

ItemPurpose
AGENTS.mdThe workflow rules for your agent.
.oystro-oss/CONSTITUTION.mdPrinciples and rules. Never overwritten.
.oystro-oss/BRD.mdBusiness requirements. Never overwritten.
.oystro-oss/ARCHITECTURE.mdSystem design. Never overwritten.
.oystro-oss/technology.yamlTools and technology. Never overwritten.
.oystro-oss/SLICE_LOG.mdThe build narrative. It records why each change was made.
spec.yamlThe plan for one slice: requirements, design, tasks, acceptance.
.oystro-oss/phases/The phases and their slices. A release archives a phase here.
verification.md + proof.mdThe verdict and the raw evidence for a slice.
.oystro-oss/commands/The command contracts.
.oystro-oss/agents/The persona definitions.

16. Command reference

CommandActionGate
oystro:initRead the folder. Write the base documents.—
oystro:defineWrite spec.yaml for one slice.—
oystro:approveApprove the spec.Human
oystro:buildImplement the tasks. One commit for each task.—
oystro:review-pre-verifySecond-agent review of the build (level L only).Agent
oystro:verifyRun the evidence. Write the verification report.—
oystro:releaseApprove the release. Merge and archive.Human
oystro:changeFix a bug or make a change request.Human
oystro:statusShow the project state. Read only.—
oystro:upgradeRefresh the protocol; hand state to Oystro Standard.—

17. Troubleshooting

The agent does not know the command

Restart the agent. Then try again. If the command is still unknown, install Oystro again. See section 2.

The agent wrote code before my approval

Check spec.yaml. The file must contain Ref: APPROVED before the build. If the mark is absent, stop the agent and run oystro:approve.

Verification failed

Read the verification report. The report names the failed check. Correct the code. Then run oystro:verify again.

I want the extra tools

Oystro Standard adds enforced gates, evidence capture, and project memory. It launches in December 2026.

← Back to home · Oystro OSS on GitHub