skills/nextjs/SKILL.md
Next.js 14/15 App Router patterns — server components, data fetching, caching, server actions
npx skillsauth add xoai/sage nextjsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Layer 2 — Framework Pack
Next.js 14/15 App Router patterns. Server components, data fetching, caching, server actions, and the specific mistakes agents make from Pages Router training data contamination.
Next.js is where the "judgment not knowledge" principle matters most. The framework underwent a fundamental paradigm shift from Pages Router to App Router. Server components changed how data fetching works. Server actions changed how mutations work. The caching model changed between Next.js 14 and 15.
LLMs trained on pre-App-Router content produce code that technically runs but
uses wrong patterns — getServerSideProps in App Router projects, useEffect
for data fetching that should happen on the server, 'use client' on every
component because the agent doesn't understand the server-first model.
This pack establishes the App Router mental model as the default and explicitly corrects the most common Pages Router contamination patterns.
| Type | Files | Coverage | |------|-------|----------| | Patterns | 7 | Server components, data fetching, routing/layouts, server actions, caching, middleware, metadata | | Anti-patterns | 5 | Pages Router patterns, use-client-everywhere, useEffect data fetching, client-side routing, wrong caching | | Constitution | 1 | 6 Next.js-specific principles | | Gate | 1 | Next.js pattern compliance check |
When installed alongside react, this pack overrides React's
data-fetching pattern. In Next.js, data fetching happens in server components,
not via TanStack Query in client components (unless you specifically need
client-side real-time data).
Server-first. Components are server components by default. They run on the
server, have direct access to databases and file systems, and ship zero JavaScript
to the browser. Only add 'use client' when you need interactivity (event handlers,
hooks, browser APIs). Most components (70-90% in a typical app) should remain
server components.
tools
Captures agent mistakes, corrections, and discovered gotchas so they are not repeated. Use when: (1) a command or operation fails unexpectedly, (2) the user corrects the agent, (3) the agent discovers non-obvious behavior through debugging, (4) an API or tool behaves differently than expected, (5) a better approach is found for a recurring task. Also searches past learnings before starting tasks to avoid known pitfalls. Activate alongside the sage-memory skill — they share the same MCP backend but serve different purposes (sage-memory = codebase knowledge, sage-self-learning = agent mistakes and gotchas).
development
Typed knowledge graph stored in sage-memory. Use when creating or querying structured entities (Person, Project, Task, Event, Document), linking related objects, checking dependencies, planning multi-step actions as graph transformations, or when skills need to share structured state. Trigger on "remember that X is Y", "what do I know about", "link X to Y", "show dependencies", "what blocks X", entity CRUD, cross-skill data access, or any request involving structured relationships between things.
tools
Integrates sage-memory into Sage workflows. Teaches the agent when to remember (store findings during work), when to recall (search memory at session start and task start), and how to learn (structured knowledge capture via sage learn). Use when the user mentions memory, remember, recall, learn, capture knowledge, onboard to codebase, or when starting any session where sage-memory MCP tools are available.
tools
Captures agent mistakes, corrections, and discovered gotchas so they are not repeated. Use when: (1) a command or operation fails unexpectedly, (2) the user corrects the agent, (3) the agent discovers non-obvious behavior through debugging, (4) an API or tool behaves differently than expected, (5) a better approach is found for a recurring task. Also searches past learnings before starting tasks to avoid known pitfalls. Activate alongside the sage-memory skill — they share the same MCP backend but serve different purposes (sage-memory = codebase knowledge, sage-self-learning = agent mistakes and gotchas).