--- status: active owner: platform last_reviewed: 2026-10-12 supersedes: [docs-ops-system-inventory-partial] --- # Studio Products — Tech Stack (living) **Component inventory SSOT:** [`docs/tech-stack/inventory.yaml`](../tech-stack/inventory.yaml) → `/wiki/` (Layers · Technology). This file is **products narrative only** — do not duplicate inventory tables here. Product rows are Layer 3; ports/units stay in `products/registry.yaml`. **Track version:** see `VERSION` · **Audited:** 2026-10-12 **Primary source (ports/units):** `products/registry.yaml` (symlinked here as `registry.yaml`). **Secondary:** running systemd / listening ports. ## Registry products (machine truth) | id | API | UI | Notes | |----|-----|----|-------| | studio | 8000 | 3003 | `fastapi` + `studio-frontend` active | | astra | 8001 | 3101 | Docker backend + `astra-frontend` (prod tree WD) active | | nous | 8019 | 3017 | `nous-backend` + `nous-frontend` active | | studio-shell | 8019 (shared) | 3020 | `studio-shell-frontend` — unified chrome for Nous/Blueprint/Athena | | blueprint | 8000 | 3209 | `blueprint-frontend` active | | athena | 8017 | 3217 | `athena-backend` + `athena-frontend` active | | casevault | 8015 | 3015 | backend + frontend active; `casevault-worker` flapping (`activating`) | | prophunt | 8003 | 3103 | `prophunt-api` + `prophunt-frontend` active | Full YAML: [`registry.yaml`](./registry.yaml) → `products/registry.yaml`. ## Colocated product docs | Product | Docs path | |---------|-----------| | Astra | `products/saas/astra-ai-cos/docs/` | | CaseVault | `products/saas/casevault/docs/` | | PropHunt | `products/saas/prophunt/docs/` | | Blueprint | `utilities/blueprint/docs/` | | Athena | `utilities/athena/docs/` | | Nous | `utilities/nous/` (see utility README) | ## Contracts `docs/products/contracts/.md` — one contract per registry id (plus nous where present). astrabot