skills/stack-nextjs-supabase/SKILL.md
--- name: "stack-nextjs-supabase" description: "Integration seams for Next.js App Router + Supabase: dual-client auth (browser/server), middleware token refresh, RLS policies, typed queries, and real-time subscriptions" version: "1.0.0" type: composite layer: stack requires: sage: ">=1.0.0" skills: - "web" - "baas" - "nextjs" activates-when: detected: [next, @supabase/supabase-js, @supabase/ssr] tags: [next,@supabase/supabase-js,@supabase/ssr] --- # stack-nextjs-supabase **La
npx skillsauth add xoai/sage skills/stack-nextjs-supabaseInstall 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 3 — Stack Composition
Integration seams for Next.js App Router + Supabase. Covers the five critical integration points that neither Next.js docs nor Supabase docs adequately address together.
| Seam | What Goes Wrong |
|------|----------------|
| Dual Clients | Agents create one client — auth silently breaks across server/client boundary |
| Middleware Token Refresh | Agents skip middleware — users randomly get logged out on expired tokens |
| RLS as Authorization | Agents rely on Next.js middleware for auth — database is still publicly accessible |
| Typed Queries | Agents use untyped select('*') — typos are silent runtime errors |
| Server Actions | Agents build REST API routes for same-app mutations instead of using Server Actions |
L1: web (domain) + baas (backend domain)
L2: nextjs (framework) + react (framework)
L3: stack-nextjs-supabase (this pack — integration seams)
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).