---
id: 01-state-builder-and-cli
epic: work-system-v1
title: State builder + pnpm work CLI
type: technical-story
status: done
feature: scripts
depends-on: []
blocks: []
---

## Goal
`pnpm work status` shows the current epic/story state across `docs/work/`.
`pnpm work next` prints the next unblocked story. `pnpm work rebuild-state`
regenerates `_state.json` from markdown.

## In scope
- `scripts/work/state-builder.mjs` — pure function, fully tested
- `scripts/work/cli.mjs` — argument dispatch + I/O wrapping the builder
- `docs/work/_state.json` — initial committed snapshot
- pnpm work script entry

## Out of scope
- Per-task state (tasks are markdown checkboxes, not separate entries)
- Orchestrator dispatch logic
- Dependency-graph analysis

## Tasks
- [x] Epic + story scaffold
- [x] state-builder.mjs + tests
- [x] cli.mjs + tests
- [x] _state.json initial commit + pnpm work script entry
- [x] Final verification + closeout
