About tanstack-query
A reference skill for optimizing TanStack Query v5 applications, aimed at developers writing or reviewing data-fetching code. It organizes 40 prioritized rules across query keys, caching, mutations, prefetching, and other patterns, with detailed examples in reference files.
Key features
- 0140 prioritized optimization rules
- 02Eight categories of guidance
- 03Query key and cache patterns
- 04Mutation and prefetching practices
- 05Infinite query and Suspense guidance
- 06Error handling and render optimization
Use cases
- 01Reviewing TanStack Query performance
- 02Designing caching and invalidation
- 03Refactoring mutations and optimistic updates
- 04Reducing request waterfalls
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ thongdn-it/ react-agent-skills --skill tanstack-queryAfter installing, type/tanstack-queryin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
AGENTS.mdreferences/cache-enabled-option.mdcache-global-defaults.mdcache-invalidation-precision.mdcache-placeholder-vs-initial.mdcache-refetch-triggers.mdcache-staletime-gctime.mderror-conditional-retry.mderror-display-patterns.mderror-global-handler.mderror-retry-config.mderror-throw-on-error.mdinfinite-flatten-pages.mdinfinite-loading-states.mdinfinite-max-pages.mdinfinite-refetch-behavior.mdmutation-avoid-parallel.mdmutation-cancel-queries.mdmutation-invalidate-onsettled.mdmutation-optimistic-updates.mdmutation-setquerydata.mdprefetch-avoid-waterfalls.mdprefetch-flatten-api.mdprefetch-in-queryfn.mdprefetch-on-hover.mdprefetch-server-components.mdrender-notify-props.mdrender-select-derived.mdrender-select-memoize.mdrender-structural-sharing.mdDetails
From the project READMETanStack Query Best Practices
Comprehensive performance optimization guide for TanStack Query v5 applications. Contains 40 rules across 8 categories, prioritized by impact to guide automated refactoring and code generation.
When to Apply
Reference these guidelines when:
- Writing new queries, mutations, or data fetching logic
- Implementing caching strategies (staleTime, gcTime)
- Reviewing code for performance issues or request waterfalls
- Refactoring existing TanStack Query code
- Implementing infinite queries, Suspense, or optimistic updates
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Query Key Structure | CRITICAL | tquery- |
| 2 | Caching Configuration | CRITICAL | cache- |
| 3 | Mutation Patterns | HIGH | mutation- |
| 4 | Prefetching & Waterfalls | HIGH | prefetch- |
| 5 | Infinite Queries | MEDIUM | infinite- |
| 6 | Suspense Integration | MEDIUM | suspense- |
| 7 | Error & Retry Handling | MEDIUM | error- |
| 8 | Render Optimization | LOW-MEDIUM | render- |
Quick Reference
1. Query Key Structure (CRITICAL)
tquery-key-factories- Use centralized query key factoriestquery-hierarchical-keys- Structure keys from generic to specifictquery-always-arrays- Always use array query keystquery-serializable-objects- Use serializable objects in keystquery-options-pattern- Use queryOptions for type-safe sharingtquery-colocate-keys- Colocate query keys with features
2. Caching Configuration (CRITICAL)
cache-staletime-gctime- Understand staleTime vs gcTimecache-global-defaults- Configure global defaults appropriatelycache-placeholder-vs-initial- Use placeholderData vs initialData correctlycache-invalidation-precision- Invalidate with precisioncache-refetch-triggers- Control automatic refetch triggerscache-enabled-option- Use enabled for conditional queries
3. Mutation Patterns (HIGH)
mutation-optimistic-updates- Implement optimistic updates with rollbackmutation-invalidate-onsettled- Invalidate in onSettled, not onSuccessmutation-cancel-queries- Cancel queries before optimistic updatesmutation-setquerydata- Use setQueryData for immediate cache updatesmutation-avoid-parallel- Avoid parallel mutations on same data
4. Prefetching & Waterfalls (HIGH)
prefetch-avoid-waterfalls- Avoid request waterfallsprefetch-on-hover- Prefetch on hover for perceived speedprefetch-in-queryfn- Prefetch dependent data in queryFnprefetch-server-components- Prefetch in Server Componentsprefetch-flatten-api- Flatten API to reduce waterfalls
5. Infinite Queries (MEDIUM)
infinite-max-pages- Limit infinite query pages with maxPagesinfinite-flatten-pages- Flatten pages for renderinginfinite-refetch-behavior- Understand infinite query refetch behaviorinfinite-loading-states- Handle infinite query loading states correctly
6. Suspense Integration (MEDIUM)
suspense-use-suspense-hooks- Use Suspense hooks for simpler loading statessuspense-error-boundaries- Always pair Suspense with Error Boundariessuspense-parallel-queries- Combine Suspense queries with useSuspenseQueriessuspense-boundaries-placement- Place Suspense boundaries strategically
7. Error & Retry Handling (MEDIUM)
error-retry-config- Configure retry with exponential backofferror-conditional-retry- Use conditional retry based on error typeerror-global-handler- Use global error handler for common errorserror-display-patterns- Display errors appropriatelyerror-throw-on-error- Use throwOnError with Error Boundaries
8. Render Optimization (LOW-MEDIUM)
render-select-memoize- Memoize select functionsrender-select-derived- Use select to derive data and reduce re-rendersrender-notify-props- Use notifyOnChangeProps to limit re-rendersrender-structural-sharing- Understand structural sharingrender-tracked-props- Avoid destructuring all properties
How to Use
Read individual reference files for detailed explanations and code examples:
- Section definitions - Category structure and impact levels
- Reference files:
references/{prefix}-{slug}.md
Each reference file contains:
- Brief explanation of why it matters
- Incorrect code example with explanation
- Correct code example with explanation
- Additional context and references
Related Skills
- For generating type-safe query hooks, see
orvalskill - For mocking API responses in tests, see
test-mswskill - For React 19 data fetching patterns, see
react-19skill
Full Compiled Document
For the complete guide with all rules expanded: AGENTS.md