Quick Start

Run all small commands from your repository root. If executed inside .small/, SMALL will still resolve the workspace automatically.

Initialize a SMALL Workspace

bash
small init --intent "My project description"

This creates a .small/ directory with the five canonical artifacts:

text
.small/
├── intent.small.yml
├── constraints.small.yml
├── plan.small.yml
├── progress.small.yml
└── handoff.small.yml

Validate Artifacts

bash
small validate

Check Project Status

bash
small status

What a SMALL Project Looks Like

A SMALL project consists of five canonical artifacts plus workspace metadata. The set is fixed; growth happens inside the artifacts.

text
.small/
├── intent.small.yml        # Stable: what the work is
├── constraints.small.yml   # Stable: what must not change
├── plan.small.yml          # Grows: tasks added and updated
├── progress.small.yml      # Append-only execution log
├── handoff.small.yml       # Regenerated resume checkpoint
└── workspace.small.yml     # Workspace metadata (kind, version)

Artifact Evolution

ArtifactBehavior
intentSet once, rarely edited
constraintsSet once, rarely edited
planGrows over time
progressAppend-only
handoffRegenerated on handoff
workspaceGenerated by init