This project uses the [Aperant Framework](https://github.com/Mikalsen-AI/aperant-cloud-desktop/tree/main/packages/framework) for AI-assisted development.

### Fast Path Guarantee

QUICK track is **hard-exempt** from PRD-shaped spec.md, HITL/AFK metadata,
vertical-slice subtask schema, TDD iron law (`apt:execute --tdd`), triage
prompts, and any new heavy interaction discipline. `apt:quick` and any
task router-classified as QUICK run the existing one-shot pattern
unchanged. This is a **constraint on every implementing change**, not a
configuration toggle. Dedicated `*-quick-exempt.test.ts` regression tests
in `packages/framework/src/__tests__/` enforce the exemption.

### Discoverability — `apt-tools modes list`

Power-user surface that enumerates every skill's `modes`, `flags`,
`content_formats` (from optional `produces:` frontmatter), and
`config_keys`. Adding a new skill auto-appears via filesystem scan
without code changes. Mental-model builder for "what can the framework
do?" without reading 30 SKILL.md files.

### Feature Registry
The feature registry (`.aperant/features/`) is a living inventory of every interactive
feature in the app. It's the source of truth for what to verify and review.

- **Created by:** `/apt:scan` (initial scan or full refresh)
- **Updated by:** `/apt:execute` post-step (`apt-tools features-audit --apply-stubs` auto-registers new UI/core/hook/IPC files per the docs-coherence policy)
- **Consumed by:** `/apt:verify-proof` (generates test cases from registry)
- **Checked by:** `/apt:review` Pass 6 (flags unregistered new components, applies stubs for auto-update policies)

Run `/apt:scan` after setting up Aperant on a brownfield project, or after major changes.

### Config
- Settings: `.aperant/config.json` (run `/apt:setup` to change)
- Features: `.aperant/features/` (feature registry -- run `/apt:scan` to create)
- State: `.aperant/state.json` (execution state)
- Evidence: `.aperant/proof/` (proof reports and screenshots)
- Prompts: `.aperant/prompts/` (agent prompt templates)
