How SMALL Works for Humans and Agents
The easiest way to misunderstand SMALL is to treat it like a planning template.
It is closer to a contract for ownership and continuity.
Human-owned state
In SMALL, humans own the definition of the work:
- intent.small.yml says what the work is
- constraints.small.yml says what must not change
Those files are not suggestions. They are the authority boundary.
Agent-owned state
Agents work inside that boundary:
- plan.small.yml proposes execution steps
- progress.small.yml records verified evidence of what happened
This makes it easier to tell the difference between a proposed path and completed work.
System-owned state
handoff.small.yml is the resume surface.
It serializes the checkpoint needed to continue without pretending a chat transcript is the source of truth. That keeps resumes cleaner and makes interruptions less destructive.
Why the split matters
Without explicit ownership, projects blur together.
Constraints get rewritten accidentally. Plans get mistaken for facts. Progress updates become narrative instead of evidence. Resume points become informal and incomplete.
SMALL addresses that by making the boundaries visible on disk.
The operational payoff
This structure is useful for solo work, but it becomes even more important when multiple agents, multiple sessions, or longer timelines are involved.
A bounded protocol makes it possible to inspect the state, validate assumptions, and continue work without improvising the contract each time.
That is the real point of SMALL: less ambiguity, stronger continuity, and execution that can be resumed without guesswork.