# Mosaic Stack — Agent Guidelines > **Any AI model, coding assistant, or framework working in this codebase MUST read and follow `CLAUDE.md` in the project root.** `CLAUDE.md` is the authoritative source for: - Technology stack and versions - TypeScript strict mode requirements - ESLint Quality Rails (error-level enforcement) - Prettier formatting rules - Testing requirements (85% coverage, TDD) - API conventions and database patterns - Commit format and branch strategy - PDA-friendly design principles ## Quick Rules (Read CLAUDE.md for Details) - **No `any` types** — use `unknown`, generics, or proper types - **Explicit return types** on all functions - **Type-only imports** — `import type { Foo }` for types - **Double quotes**, semicolons, 2-space indent, 100 char width - **`??` not `||`** for defaults, **`?.`** not `&&` chains - **All promises** must be awaited or returned - **85% test coverage** minimum, tests before implementation ## Updating Conventions If you discover new patterns, gotchas, or conventions while working in this codebase, **update `CLAUDE.md`** — not this file. This file exists solely to redirect agents that look for `AGENTS.md` to the canonical source. ## Per-App Context Each app directory has its own `AGENTS.md` for app-specific patterns: - `apps/api/AGENTS.md` - `apps/web/AGENTS.md` - `apps/coordinator/AGENTS.md` - `apps/orchestrator/AGENTS.md`