Next Intl Workflows And Tooling
Set up next-intl tooling and durable localization workflows for Next.js. Use when tasks mention createNextIntlPlugin, TypeScript augmentation, createMessagesDeclaration, useExtracted, getExtracted, precompile, message loading strategies, missing-message handling, Crowdin, or next-intl migration and upgrade decisions.
Better Auth Email Password And Sessions
Use when implementing email and password auth or tuning session behavior in Better Auth. Covers sign-up and sign-in flows, password reset boundaries, cookie-backed sessions, refresh policy, cache strategy, stateless mode, and session-sensitive security tradeoffs.
Security Client Server Boundary And Secret Exposure
Use when a web app risks exposing secrets or privileged behavior across the client-server boundary. Covers server-only logic, public env variables, scoped tokens, browser trust assumptions, and moving sensitive work out of the client.
Drizzle Orm Schema And Relations
Design and maintain Drizzle ORM schemas and relation definitions. Use when tasks mention `pgTable`, `mysqlTable`, `sqliteTable`, `pgSchema`, column types, indexes, constraints, sequences, views, RLS, custom types, `relations()`, `defineRelations()`, `db.query`, `db._query`, soft relations, or schema organization and naming.
Tdd
Use when building a feature or fixing a bug with test-driven development. Covers red-green-refactor, vertical slices, public-interface tests, and sequencing implementation around one behavior at a time.
Next Intl Routing And Navigation
Set up and maintain next-intl locale routing and navigation in Next.js App Router. Use when tasks mention defineRouting, createMiddleware or proxy.ts, createNavigation, locale prefixes, localized pathnames, domains, locale switchers, alternate links, locale cookies, or CMS-driven localized URLs.
Nodejs Best Practices
Use when building or debugging Node.js applications and libraries. Covers modules, async flows, streams, testing, shutdown, environment handling, logging, performance, and modern TypeScript execution choices in Node.js.
Next Intl Server Runtime
Configure next-intl request runtime and server-side integration in Next.js App Router. Use when tasks mention i18n/request.ts, getRequestConfig, requestLocale, setRequestLocale, getTranslations, NextIntlClientProvider inheritance, Server Components, Server Actions, metadata, route handlers, sitemap, manifest, OG images, error files, or testing translated components.
Drizzle Orm Migrations And Drizzle Kit
Manage Drizzle migrations and Drizzle Kit workflows. Use when tasks mention `drizzle.config.ts`, `defineConfig`, migration folders, introspection, `drizzle-kit generate`, `migrate`, `push`, `pull`, `export`, `check`, `up`, `studio`, multiple config files, schema filters, extension filters, or team migration conflict handling.
Write Intentional Commit Message
Use when writing or reviewing a commit message and the real challenge is choosing the correct Conventional Commit type, scope, and summary based on change intent. Covers commit splitting, amend vs new commit decisions, and avoiding vague or misleading commit titles.
Nextjs Server Actions And Route Handlers
Build safe mutation and API boundaries in Next.js App Router. Use when tasks mention `use server`, Server Functions, Server Actions, Route Handlers, `route.ts`, form `action`, `formAction`, cookies, redirects after mutations, request and response handling, or deciding between UI-driven mutation flow and explicit HTTP endpoints.
Drizzle Orm Queries And Sql
Build and debug Drizzle ORM query code. Use when tasks mention `select`, `insert`, `update`, `delete`, joins, filter operators, `db.query`, `db._query`, partial selects, aggregations, pagination, `sql`, `.$dynamic()`, transactions, batch, cache, read replicas, or dynamic query-building helpers.
Write Decision Complete Feature Spec
Use when a feature needs a real implementation spec before coding starts. Covers goal and success criteria, user-facing behavior, boundaries, non-goals, edge cases, acceptance checks, and the rule that the spec should remove implementation guesswork instead of just sounding thorough.
Setup Pre Commit
Use when setting up pre-commit automation in a JavaScript or TypeScript repo. Covers Husky, lint-staged, formatter setup, package-manager-aware hook commands, and keeping commit-time checks realistic.
Documentation Diataxis And Technical Writing
Use when a docs page is unclear because it mixes too many purposes. Covers choosing one primary doc type, separating tutorial, how-to, reference, and explanation content, and restructuring technical docs around reader intent.
Github Triage
Use when triaging GitHub issues or incoming bug reports. Covers fast issue review, category and state decisions, codebase context gathering, next-action recommendations, and preparing issues for implementation without jumping straight into code.
Better Auth Social Providers And Oauth
Use when configuring social sign-in or provider-based OAuth flows in Better Auth. Covers social provider config, signIn.social, account linking, provider access tokens, generic OAuth, custom scopes, profile mapping, and redirect handling.
Performance Regression Verification
Use when someone claims a performance improvement or worries about a regression and needs proof. Covers before-versus-after comparison, stable verification scenarios, user-visible metrics, and guarding against “faster on my machine” conclusions.
Nextjs Overview And App Router
Set up Next.js App Router, choose the right starting path, and route work to the correct follow-up Next.js skill. Use when tasks mention `create-next-app`, App Router installation, project structure, layouts, pages, linking, navigation, Server vs Client Components, path aliases, `src/app`, App Router vs Pages Router decisions, or Next.js version and upgrade questions.
Nextjs Data Fetching And Cache
Fetch data and control cache behavior in Next.js App Router. Use when tasks mention `fetch` in Server Components, request memoization, cache components, `use cache`, `unstable_cache`, `revalidatePath`, `revalidateTag`, `updateTag`, `generateStaticParams`, route-segment cache behavior, or deciding whether a route should stay static, dynamic, or revalidated.
Improve Codebase Architecture
Use when exploring a codebase for architectural improvement opportunities. Covers finding shallow modules, identifying bad seams, proposing deeper boundaries, and turning structural friction into concrete refactor candidates.
Nextjs Rendering Runtime And Middleware
Choose rendering mode and request runtime boundaries in Next.js App Router. Use when tasks mention Server vs Client Components, static vs dynamic rendering, streaming, route segment config, `runtime = 'edge'`, Node.js vs Edge decisions, or legacy middleware questions that now map to `proxy.ts`.
Better Auth Nextjs Integration And Route Protection
Use when integrating Better Auth with Next.js App Router or Pages Router. Covers `toNextJsHandler`, auth route mounting, client setup, RSC and server action boundaries, proxy or middleware-based protection, and session checks across modern Next.js versions.
Lucide React Styling And Accessibility
Style `lucide-react` icons consistently and keep them accessible. Use when tasks mention `LucideProvider`, global icon CSS, the `.lucide` class, `title`, `aria-label`, icon-only buttons, contrast, non-scaling strokes, or icon semantics in React UI.
Request Refactor Plan
Use when planning a refactor before implementation starts. Covers scope clarification, alternatives, testing strategy, tiny-commit sequencing, and writing a refactor plan that stays durable even if the code layout changes.
Lucide React Dynamic Icons And Lucide Lab
Use `DynamicIcon`, Lucide Lab, or custom `iconNode` data in React with the right tradeoffs. Use when tasks mention `lucide-react/dynamic`, `DynamicIcon`, icon names coming from a CMS or database, `@lucide/lab`, the `Icon` component, custom Lucide nodes, or loading icons outside the core Lucide set.
Triage Issue
Use when investigating a bug before fixing it. Covers fast diagnosis, root-cause tracing, narrowing repro paths, checking adjacent code and tests, and producing a concrete fix plan instead of guessing.
Playwright Debugging Traces And Flake Reduction
Use when a Playwright test is flaky, failing only in CI, or needs investigation rather than another retry. Covers traces, inspector, UI mode, codegen cleanup, and turning intermittent failures into concrete synchronization or contract fixes.
Nextjs Metadata Seo And File Conventions
Manage metadata and SEO surfaces in Next.js App Router. Use when tasks mention `metadata`, `generateMetadata`, `generateViewport`, `ImageResponse`, Open Graph or Twitter images, `robots.txt`, `sitemap.xml`, `manifest.json`, JSON-LD, canonical URLs, or deciding between metadata exports and metadata file conventions.
Playwright Network Control And Api Synchronization
Use when Playwright tests need stable synchronization with backend behavior or deliberate network control. Covers request waiting, route interception, mocking boundaries, API request contexts, and the rule that tests should not over-mock what they actually need to verify.
Better Auth Overview And Setup
Use when setting up Better Auth for the first time or routing Better Auth work to the right follow-up skill. Covers package installation, secrets, base URL, auth handler mounting, client creation, and plugin-aware setup decisions.
Nextjs Performance And Render Cost
Use when a Next.js App Router route is slow because of render cost, client bundle weight, hydration work, or weak server-client boundaries. Covers server-first rendering, client boundary minimization, route cost diagnosis, and avoiding fashionable but expensive patterns.
Nodejs Api Latency And Throughput
Use when a Node.js API is slow because of per-request work, bad concurrency shape, I/O amplification, or weak throughput defaults. Covers p95-first analysis, request path simplification, batching, cancellation, and avoiding fake optimizations that hurt operability.
Setup Conventional Commits
Use when configuring a repo to enforce Conventional Commits locally without making commit flow annoying. Covers `commitlint`, Husky `commit-msg` hooks, minimal config choices, and the rule that semantic commits should improve history quality, not add ceremony.
Lucide React Overview And Setup
Set up `lucide-react`, choose the right import pattern, and route icon work to the right Lucide follow-up skill. Use when tasks mention `lucide-react`, Lucide installation, icon imports, SVG props, `absoluteStrokeWidth`, import aliases like `HouseIcon` or `LucideHouse`, or deciding whether to use direct imports, `DynamicIcon`, or `@lucide/lab`.
Playwright Locators Assertions And User Visible Contracts
Use when writing or fixing Playwright tests that should stay stable against UI refactors. Covers locators, actionability, web-first assertions, accessible roles, text and label contracts, and the rule that tests should bind to user-visible semantics before DOM structure.
Playwright Auth Projects And Isolation
Use when reusing authenticated state or modeling multiple user roles in Playwright without leaking state between tests. Covers storage state, setup projects, browser contexts, role-based projects, and the rule that isolation should stay intact even when login is optimized away.
Better Auth Plugins Organizations And Sso
Use when extending Better Auth with plugins, especially organization management and enterprise SSO. Covers plugin wiring on server and client, CLI migration flow, organization roles and access control, and deciding when SSO or organization plugins belong in the auth design.
Next Intl Messages And Formatting
Author and consume next-intl messages with ICU, rich text, typed arguments, validation, and Intl formatting across Next.js components. Use when tasks mention useTranslations, useFormatter, message catalogs, t.rich, t.markup, numbers, dates, lists, relative time, message validation, or extracted messages.
Drizzle Orm Overview And Setup
Set up Drizzle ORM, choose the right Drizzle package surface, and route Drizzle work to the correct follow-up skill. Use when tasks mention Drizzle installation, first-time setup, `drizzle-orm`, `drizzle-kit`, `drizzle.config.ts`, version selection, upgrading to the v1 beta line, validator-package import moves, or deciding whether a task belongs to schema design, queries, drivers, migrations, or…
Security Authz And Trust Boundaries
Use when the real security question is whether the current actor is allowed to do the thing, not whether they are merely authenticated. Covers server-side authorization, ownership checks, tenant boundaries, role use, and avoiding trust in user-controlled identifiers.
Performance Triage And Bottleneck Hunting
Use when something is slow but the owning bottleneck is still unclear. Covers choosing the right performance symptom, assigning likely layer ownership, and routing optimization work before the model starts changing random code.
React Render Performance And State Boundaries
Use when React performance problems come from rerender scope, bad state ownership, or cargo-cult memoization. Covers state placement, context blast radius, render cost boundaries, and choosing fixes that reduce work instead of hiding it.
Security Default Review For Web Apps
Use when reviewing a web app for practical security risk before coding or shipping. Covers trust boundaries, attacker-controlled input, privileged actions, secret exposure, and routing the problem to narrower security skills without pretending to do a full security audit.
Fastify Auth And Oauth
Use when implementing authentication or OAuth flows in Fastify, especially authorization code with PKCE, login callbacks, token validation, refresh handling, session or cookie boundaries, and protected route hooks.
Playwright Default Test Architecture
Choose a stable Playwright test architecture before writing more tests. Use when tasks mention Playwright adoption, test folder layout, fixture boundaries, `playwright.config.ts`, projects, retries, parallelism, CI posture, browser coverage, or deciding which Playwright follow-up skill should own the work.
Drizzle Orm Ecosystem And Extensions
Use Drizzle ORM companion libraries and extension surfaces. Use when tasks mention `drizzle-zod`, `drizzle-orm/zod`, `drizzle-valibot`, `drizzle-typebox`, `drizzle-arktype`, `drizzle-seed`, `drizzle-graphql`, `eslint-plugin-drizzle`, `@drizzle-team/studio`, Drizzle Gateway, Drizzle Prisma extension, validator import migration, schema generation for API validation, deterministic seeding, or GraphQ…
Fastify Best Practices
Use when building, organizing, or debugging Fastify applications. Covers plugins, routes, schemas, hooks, errors, auth boundaries, logging, testing, and deployment decisions for Fastify backends.
Profiling Before Optimizing
Use when someone wants to optimize code but the team has not profiled it yet. Covers baseline capture, profiling representative scenarios, finding dominant hotspots, and refusing performance folklore as a substitute for measurement.
Drizzle Orm Drivers And Runtimes
Choose the right Drizzle ORM driver and runtime integration. Use when tasks mention `drizzle-orm/node-postgres`, `neon-http`, `mysql2`, `better-sqlite3`, `@libsql/client`, PGlite, Bun SQL, Cloudflare D1, Durable Objects, Expo SQLite, OP-SQLite, AWS Data API, serverless/edge runtimes, or Drizzle HTTP proxy setup.