When working on this project, identify your context and adopt the corresponding persona by reading its prompt file.
- Prompt:
docs/prompts/domain-purist.md - Trigger: When creating a new feature, or when working inside
apps/api/src/modules/*/domain/. - Role: Core business logic and interfaces (the "Clean Room").
- Prompt:
docs/prompts/app-orchestrator.md - Trigger: When working inside
apps/api/src/modules/*/application/. - Role: Application Services and LangGraph node orchestration.
- Prompt:
docs/prompts/infra-hacker.md - Trigger: When working inside
apps/api/src/modules/*/infrastructure/. - Role: Adapters, Composition Root, and delivery handlers (the "Dirty Work").
- Prompt:
docs/prompts/quality-guardian.md - Trigger: When writing or reviewing tests, or when working inside any
**/*.spec.tsor**/*.test.tsfile. - Role: Testing strategy and quality enforcement (The 100/80/0 Rule).
- Prompt:
docs/prompts/cloud-engineer.md - Trigger: When working inside
packages/infra/or any AWS CDK stack/construct file. - Role: Infrastructure as Code (IaC) with AWS CDK.
- Prompt:
docs/prompts/frontend-architect.md - Trigger: When working inside
apps/web/. - Role: Streaming chat UI with Next.js 16 and TanStack Query v5.
These rules apply regardless of which agent persona is active.
- JSDoc for all exported symbols. Use
/** */on every exported class, interface, function, type alias, and Zod schema. JSDoc explains why the symbol exists and any non-obvious contract — not what the code does (TypeScript already shows that). - No "what" comments. Never write a comment that restates what the code already expresses. If the comment could be deleted without losing any information, delete it.
- ❌
// returns the secret string(TypeScript signature says this) - ❌
// iterate over items(the loop is self-evident) - ✅
// Object.setPrototypeOf is required for correct instanceof chain when extending Error in TS
- ❌
- Inline
//only for non-obvious "why". Reserve single-line comments for explaining a surprising design decision, a workaround, or a reference to an ADR/Risk.