5 PRD gaps fixed: 1. Zod validation on all API inputs (§5.2) — 26 files, 27 safeParse 2. Rate limiting on public endpoints (§5.6) — 6 scopes, 7 endpoints 3. Custom fields JSONB with schema (§5.5) — 2 models, 10 seed defs 4. CSP + security headers (§5.6) — 7 headers via next.config.ts 5. ESLint module boundary rule (§5.4) — no-restricted-imports 0 TS errors, ESLint clean.
30 lines
1.0 KiB
Markdown
Executable File
30 lines
1.0 KiB
Markdown
Executable File
# AOS Copilot Instructions
|
|
|
|
## Project
|
|
AOS (Agency Operating System) — self-hosted platform for German software agencies.
|
|
|
|
## Tech Stack
|
|
- Next.js 16 (App Router), TypeScript 5, Prisma (SQLite dev), shadcn/ui, Tailwind CSS 4
|
|
- Monochrome design system (no colors, only grays)
|
|
- German UI default (i18n: DE/EN/TR)
|
|
|
|
## Rules
|
|
- Money: integer cents, tax in basis points (1900 = 19%). No floats for money.
|
|
- GoBD: immutable after Festschreibung, corrections via Storno
|
|
- Audit: hash-chain on all business operations
|
|
- No mocks — real implementations only
|
|
- All API routes: try/catch error handling
|
|
- All icon-only buttons: aria-label (WCAG 2.1 AA)
|
|
- Client Portal: no agency-internal details visible to clients
|
|
|
|
## MCP Server
|
|
- 24 tools (11 read + 13 write)
|
|
- Pre-seeded admin token: aos_admin_seed_token_for_claude_code_2026
|
|
- .mcp.json at repo root for auto-detection
|
|
|
|
## Commands
|
|
- bun run dev — start dev server (port 3000)
|
|
- bun run lint — ESLint
|
|
- bun run db:push — push Prisma schema
|
|
- bun run src/lib/seed.ts — seed database
|