Files
portal/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22

Tomter Vel: the intake read into a plan by Claude Opus

portal-trainer plan --intake intakes/tomtervel.yaml --llm "MODEL=opus EFFORT=medium engines/claude.sh": Claude Opus 5 on a Max subscription through Claude Code's print mode, one round, 57 s. The YAML passed every check build makes first try. No personas attached; plans/tomtervel.yaml is the hand-written plan for the same intake, with personas, and is what was built.

Side by side with the hand-written plan:

hand-written Opus
doors 3 (medlem, melde-fra, bidra) + sharing on the front door 4 (medlemskap, meld-fra, bidra, utstyr) + hearing input on the front door
needs 9 10
internal need for expenses yes, enters_as: komiteer, 3 fields yes, enters_as: komite, 6 fields
member leaves by own link no yes, moves_by: { utmeldt: [submitter] }
poster takes down own notice yes yes
sharing one need, one form, kept small on purpose a door of its own, offer and borrow as two needs

What Opus read right that the small model missed on the contractor: every internal role became an enters_as need, every "they can take it down themselves" became a submitter move, and stages were read one verb at a time (open -> tatt_opp -> ordnet -> avvist). Nothing in the intake was dropped.

What a reader would change:

  • The expense claim asks six required fields of a volunteer with a receipt; three is enough (who, how much, what for).
  • The equipment board was meant to stay small. Two needs and a door give it the weight of membership; one notice with "I have" or "I need" does the job.
  • naeromraadet in a door's who: the ASCII rule is for identifiers, and the model applied it to prose a visitor reads. The words model never sees who, so it costs nothing here, but a plan meant to be read should say nærområdet.