What problem does it solve? Frontend and backend teams in a T3 Turbo monorepo (Next.js, tRPC, Drizzle) often drift apart on API expectations: frontend assumes relations are populated, types are redeclared manually, and pagination behavior is ambiguous. This Skill produces a concrete, written procedure contract covering input schema, output shape, auth, and Drizzle query notes before implementation begins. ## Core Features & Use Cases - Type-safe contract rules: Enforces inferring types via RouterOutputs/RouterInputs instead of redeclaring shapes that silently drift. - Drizzle query shape guidance: Documents exactly what with: clauses, findFirst vs findMany, and nullable columns produce at runtime, including N+1 risks. - Calibrated design thresholds: Provides defaults for when to extend vs split procedures and when to use cursor vs offset pagination, with the reasoning behind each number. - Use Case: Before building an event attendee list, spec the event.attendees.list procedure with cursor pagination, nested user.profile eager loading, and invalidation rules using the included template and worked example. ## Quick Start Ask the agent to spec the tRPC API contract for a new feature, for example: design the procedure contract for an event attendee list with pagination in my T3 Turbo app.