SMALL (Schema, Manifest, Artifact, Lineage, Lifecycle) is a formal state protocol that makes AI-assisted work legible, auditable, and resumable by separating durable state from ephemeral execution.
It defines a minimal, fixed set of machine-readable artifacts that replace ephemeral chat history with durable project state.
- An agent framework
- A prompt format
- A workflow engine
- A multi-agent system
SMALL is a governance and continuity layer.
| Artifact | Owner | Purpose |
|---|---|---|
intent.small.yml |
Human | Declares what the work is |
constraints.small.yml |
Human | Declares what must not change |
plan.small.yml |
Agent | Proposed execution steps |
progress.small.yml |
Agent | Verified execution evidence |
handoff.small.yml |
System | Serialized resume checkpoint |
All artifacts must declare small_version: "1.0.0" and validate against the authoritative schemas.
This repository implements SMALL Protocol v1.0.0.
- v1.0.0 is stable
- Invariants are locked
- Schemas are authoritative
The authoritative specification is located at:
spec/small/v1.0.0/
├── SPEC.md
├── schemas/
└── examples/
New to SMALL? Start here:
- Getting Started Guide - Answers "Do I manually type these files?" and walks through the workflow
- Agent Operating Contract - Required reading for AI agents using SMALL
Human workflow: Edit intent.small.yml and constraints.small.yml. The agent handles the rest.
Agent workflow: Read .small/ first, respect ownership rules, validate before claiming success, handoff when stopping.
| Document | Description |
|---|---|
| Getting Started | First-time user guide with examples |
| Agent Operating Contract | Behavioral rules for AI agents |
| CLI Guide | Detailed command reference with error handling |
| Installation | Install via npm global package or curl installer |
| Quick Start | Initialize and validate a SMALL workspace |
| CLI Reference | Command summary table |
| Invariants | Non-negotiable protocol rules |
| Enterprise Integration | Git, CI/CD, and audit patterns |
| Philosophy | Design rationale and non-goals |
| FAQ | Frequently asked questions |
| Execution Model | Single-writer design and concurrency |
| Development | Building, testing, and schema updates during development |
| Releasing | Maintainer release process and npm publish policy |
| Docs Sync | Canonical docs sync model, mapping, and verification gates |
Run all commands from your repository root.
# Install
npm i -g @small-protocol/small
small version
# Initialize
small init --intent "My project description"
# Validate
small validateInstall alternatives (including curl installer) are documented in Installation.
The SMALL protocol contract is v1.0.0 and remains compatible across all v1.x releases.
See the v1.0.0 release notes for the original launch details.
Pre-built binaries are available on the GitHub Releases page. See Installation for checksum verification and PATH setup.
Apache License 2.0. See LICENSE.