msw

📁 thongdn-it/react-agent-skills 📅 Jan 28, 2026
3
总安装量
2
周安装量
#60774
全站排名
安装命令
npx skills add https://github.com/thongdn-it/react-agent-skills --skill msw

Agent 安装分布

gemini-cli 2
claude-code 2
github-copilot 2
kode 1
moltbot 1
zencoder 1

Skill 文档

MSW Best Practices

Comprehensive API mocking guide for MSW v2 applications, designed for AI agents and LLMs. Contains 45 rules across 8 categories, prioritized by impact to guide automated refactoring and code generation.

When to Apply

Reference these guidelines when:

  • Setting up MSW for testing or development
  • Writing or organizing request handlers
  • Configuring test environments with MSW
  • Mocking REST or GraphQL APIs
  • Debugging handler matching issues
  • Testing error states and edge cases

Rule Categories by Priority

Priority Category Impact Prefix
1 Setup & Initialization CRITICAL setup-
2 Handler Architecture CRITICAL handler-
3 Test Integration HIGH test-
4 Response Patterns HIGH response-
5 Request Matching MEDIUM-HIGH match-
6 GraphQL Mocking MEDIUM graphql-
7 Advanced Patterns MEDIUM advanced-
8 Debugging & Performance LOW debug-

Quick Reference

1. Setup & Initialization (CRITICAL)

  • setup-server-node-entrypoint – Use correct entrypoint for Node.js (msw/node)
  • setup-lifecycle-hooks – Configure server lifecycle in test setup
  • setup-worker-script-commit – Commit worker script to version control
  • setup-node-version – Require Node.js 18+ for MSW v2
  • setup-unhandled-requests – Configure unhandled request behavior
  • setup-typescript-config – Configure TypeScript for MSW v2

2. Handler Architecture (CRITICAL)

  • handler-happy-path-first – Define happy path handlers as baseline
  • handler-domain-grouping – Group handlers by domain
  • handler-absolute-urls – Use absolute URLs in handlers
  • handler-shared-resolvers – Extract shared response logic into resolvers
  • handler-v2-response-syntax – Use MSW v2 response syntax
  • handler-request-body-parsing – Explicitly parse request bodies
  • handler-resolver-argument – Destructure resolver arguments correctly
  • handler-reusability-environments – Share handlers across environments

3. Test Integration (HIGH)

  • test-reset-handlers – Reset handlers after each test
  • test-avoid-request-assertions – Avoid direct request assertions
  • test-concurrent-boundary – Use server.boundary() for concurrent tests
  • test-fake-timers-config – Configure fake timers to preserve queueMicrotask
  • test-async-utilities – Use async testing utilities for mock responses
  • test-clear-request-cache – Clear request library caches between tests
  • test-jsdom-environment – Use correct JSDOM environment for Jest

4. Response Patterns (HIGH)

  • response-http-response-helpers – Use HttpResponse static methods
  • response-delay-realistic – Add realistic response delays
  • response-error-simulation – Simulate error responses correctly
  • response-one-time-handlers – Use one-time handlers for sequential scenarios
  • response-custom-headers – Set response headers correctly
  • response-streaming – Mock streaming responses with ReadableStream

5. Request Matching (MEDIUM-HIGH)

  • match-url-patterns – Use URL path parameters correctly
  • match-query-params – Access query parameters from request URL
  • match-custom-predicate – Use custom predicates for complex matching
  • match-http-methods – Match HTTP methods explicitly
  • match-handler-order – Order handlers from specific to general

6. GraphQL Mocking (MEDIUM)

  • graphql-operation-handlers – Use operation name for GraphQL matching
  • graphql-error-responses – Return GraphQL errors in correct format
  • graphql-batched-queries – Handle batched GraphQL queries
  • graphql-variables-access – Access GraphQL variables correctly

7. Advanced Patterns (MEDIUM)

  • advanced-bypass-requests – Use bypass() for passthrough requests
  • advanced-cookies-auth – Handle cookies and authentication
  • advanced-dynamic-scenarios – Implement dynamic mock scenarios
  • advanced-vitest-browser – Configure MSW for Vitest browser mode
  • advanced-file-uploads – Mock file upload endpoints

8. Debugging & Performance (LOW)

  • debug-lifecycle-events – Use lifecycle events for debugging
  • debug-verify-interception – Verify request interception is working
  • debug-common-issues – Know common MSW issues and fixes
  • debug-request-logging – Log request details for debugging

How to Use

Read individual reference files for detailed explanations and code examples:

Related Skills

  • For generating MSW mocks from OpenAPI, see orval skill
  • For consuming mocked APIs, see tanstack-query skill
  • For test methodology, see test-vitest or test-tdd skills

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md