nextjs-tanstack-query
SkillAI & modelsUse when implementing client-side data fetching, server prefetching with hydration, or optimistic mutations in Next.js 16 with TanStack Query.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the nextjs-tanstack-query skill
What this skill tells your AI
The instructions your AI receives, as published by fusengine/agents in plugins/nextjs-expert/skills/nextjs-tanstack-query/SKILL.md and read by ahel’s review.
Covers serializable query keys, staleTime tuning on prefetched queries to avoid immediate refetch, cache invalidation with invalidateQueries after writes, infinite scrolling/pagination, and DevTools setup gated to development only. Does not cover the Server Component boundary itself (nextjs-server-components) or core Next.js caching primitives like use cache (nextjs-16) — this skill is specifically about TanStack Query's client-side cache layer.
TanStack Query for Next.js
TanStack Query v5 provides powerful server state management with Next.js 16 integration.
Agent Workflow (MANDATORY)
Before ANY implementation, spawn 3 agents in parallel, one Agent call each with a name:
- fuse-ai-pilot:explore-codebase - Analyze existing data fetching patterns
- fuse-ai-pilot:research-expert - Verify latest TanStack Query v5 docs
- mcp__context7__query-docs - Check TanStack Query + Next.js patterns
After implementation, run fuse-ai-pilot:sniper for validation.
Overview
When to Use
- Client-side data fetching with caching and revalidation
- Server-side prefetching with hydration to client
- Optimistic updates for mutations
- Infinite scrolling and pagination
- Real-time data synchronization
Why TanStack Query
| Feature | Benefit |
|---|---|
| Server prefetching | Data ready on first render, no loading flash |
| Automatic caching | Deduplication, stale-while-revalidate |
| Mutations | Optimistic updates, rollback on error |
| DevTools | Visual cache inspection |
| TypeScript-first | Full type inference |
Critical Rules
- One QueryClient per request - Create in Server Component, share via context
- Prefetch in Server Components - Use
prefetchQueryfor SSR data - HydrationBoundary required - Wrap client tree to transfer server cache
- Query keys must be serializable - Arrays of strings/numbers only
staleTimeon prefetched queries - Prevent immediate refetch on mount- Never use
queryClientin Client Components directly - Use hooks
Installation
bun add @tanstack/react-query @tanstack/react-query-devtools
Best Practices
- Prefetch on server - Avoid loading states for critical data
- Set
staleTime- Prevent unnecessary refetches after hydration - Collocate query keys - Define keys near their usage
- Invalidate on mutation - Use
invalidateQueriesafter writes - Error boundaries - Use
throwOnErrorfor critical queries - DevTools in dev only - Wrap in
process.env.NODE_ENVcheck
Reference Guide
| Need | Reference |
|---|---|
| useQuery, useMutation | query-patterns.md |
| Server prefetching | hydration.md |
| QueryClient setup | hydration.md |
| Cache invalidation | query-patterns.md |
Signals
- GitHub stars
- 25
- Forks
- 4
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
nextjs-tanstack-query- Source
- github.com/fusengine/agents