Use when creating or editing an admin list/table page in web/src, wiring any paged query, or implementing a paginated repository/endpoint in api/. Covers hook choice (usePagedQuery vs useClientPagination), PageQuery type conventions, the backend paging contract, and the DataTable min-h-0 scroll chain.
Use when running any Go command or tool — go test/build/vet, wire, sqlc, golang-migrate — in an environment where local Go may be unavailable. Decides the execution path (local vs container) and remembers the user's choice so it is asked only once.
Use when writing or placing frontend code — creating a util/hook/component, deciding its file location, extracting shared code across features, or writing TS/TSX doc comments (TSDoc format, what belongs in a header comment vs inline).
Use when adding a new backend module or frontend feature to a DDD-layered codebase — creating domain entities and repository interfaces, wiring a service through the DI container, registering HTTP handlers and routes, or scaffolding a feature directory with api/model/ui sublayers.
Use when designing, adding, removing, or wiring RBAC permission points — deciding action granularity (coarse manage vs fine-grained verbs), seeding a new permission, gating routes or admin UI, or retiring a feature's permissions.
Use whenever writing or editing Tailwind CSS classes in this project (web/). Enforces Tailwind CSS v4 canonical class forms. This includes both the project convention that 4px-multiple spacing values use bare numeric utilities and the canonical forms suggested by Tailwind CSS IntelliSense's suggestCanonicalClasses…