Ouroboros
06

6. Seed

The answers from chapter 5's Interview are organized into a work-spec file called the Seed. Before running, confirm this file matches your answers.

Ouroboros 0.50.4upstream 456a134verified 2026-07-16 against docs and code

6.1 What it is

The Seed is a YAML file holding the goal, constraints, completion criteria, and data structure. The runtime writes code against this file, and evaluation compares against it too. Once a run starts, the Seed does not change within that run.

Diagram of a Seed document with Goal, Constraints, Acceptance Criteria, Ontology, and Exit Conditions fields, and its storage folder
The Seed's main fields and where it is stored.

6.2 Generate

Inside the Claude Code session, run this with the session_id from chapter 5.

ooo seed <session_id>

Expected result: a Seed is generated and saved as a YAML file under ~/.ouroboros/seeds/.

Below is a guide example that arranges the sample dialogue into the official Seed field structure. Check the actual result in the saved file.

goal: Build a web app that adds today's to-dos and marks them done
constraints:
  - Single user on a single device
  - Store in browser localStorage
acceptance_criteria:
  - An empty title is not added
  - An added to-do survives a page refresh
  - Checking a to-do shows and stores the done state immediately
ontology_schema:
  name: TodoList
  fields:
    - name: title
      type: string
    - name: completed
      type: boolean
evaluation_principles:
  - name: completeness
    description: every acceptance criterion actually works
exit_conditions:
  - name: all_criteria_met
    description: all acceptance criteria pass
metadata:
  ambiguity_score: 0.15

6.3 Field-by-field review

FieldContentHow to review
GoalWhat this run should produceCheck it states what a user must be able to do. Fix unjudgeable wording like "a pretty app".
ConstraintsLimits that must holdCheck the technical, environmental, and scope limits match your answers. In the example: one user, localStorage.
Acceptance CriteriaCriteria for judging completionCheck each item can be verified directly on screen or by a test. Chapter 8's evaluation compares against these.
Ontology
(YAML key ontology_schema)
Structure of the data handledCheck field names and types match the feature. In the example: title (string) and completed (boolean).
Evaluation PrinciplesPrinciples weighted in evaluationCheck the emphasis, such as completeness, matches your intent.
Exit ConditionsWhen the work endsCheck it states which state counts as finished.

Non-goals (what you agreed not to build) and the assumptions made while questioning are recorded in the Ledger, not in the Seed body. Look there when you want to confirm whether "single user" was your answer or an assumption. Per the official docs, ouroboros auto --show-ledger in a standalone terminal prints this record.

6.4 Grade A

Seeds carry a grade that decides whether they may run. ooo auto starts execution only for grade-A Seeds.

GradeMeaning
ANo blockers and no open findings, and the coverage, ambiguity, testability, feasibility, and risk scores all pass their thresholds. May run
BNo blockers, but findings remain to fix. Repair and regrade
CBlockers present. May not run

6.5 Edit

If the Seed differs from your answers, fix it before running. For example, if you answered "keep completed items" but the Seed says they are deleted, that is a fix. Describe the change in the Claude Code session; a proposal appears, and it is applied once you approve. You can also edit the saved YAML file directly.

6.6 Pre-run checklist

Once everything checks out, run it in chapter 7.