# Claude Context — Astrolabe See @AGENTS.md for project overview, architecture rules, and the AI developer protocol. ## Documentation Index - **[SOUL.md](SOUL.md)** — project philosophy and identity. _Read first._ - **[docs/spec/](docs/spec/)** — authoritative behavioral specification (sections 00–10): the **what**. This is the contract; implement to it. - **[docs/architecture/](docs/architecture/00-overview.md)** — architecture playbook (00–08): the **how** (state, persistence, modals, routing, rendering, inference, relationships, vega-editor techniques). Self-contained — no external repo needed. - **[docs/IMPLEMENTATION-PLAN.md](docs/IMPLEMENTATION-PLAN.md)** — incremental milestone plan (M0–M6), MVP boundary, per-milestone tests + manual checks, and an architecture reference index. - **[AGENTS.md](AGENTS.md)** — onboarding, stack, directory map, scripts, conventions. ## Quick Orientation - Astrolabe is a **spec-driven rebuild** — the behavior is fixed in `docs/spec/`; the architecture is adapted from Syto. Implement to the spec; don't port legacy code. - **`src/core/` is portable and tested hardest.** Browser specifics live in `src/app/infrastructure/`. UI is React + Zustand. - **Editor is Monaco**, charts render via **vega-embed**, storage is **IndexedDB**. - Work milestone by milestone (see the plan): core-first, then UI, then tests, then a manual smoke check against the spec's acceptance points. ## Conventions - No git actions unless explicitly invited. - Run `npm run typecheck` and `npm test` after changes. - Single-line commit subjects; no Co-Authored-By trailers.