graphql-review

Review GraphQL schemas and resolvers for design, security, and performance issues.

7|Updated Mar 19, 2026
One-click install
npx skills add https://github.com/camilooscargbaptista/cto-toolkit --skill graphql-review
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: graphql-review
Source: https://github.com/camilooscargbaptista/cto-toolkit/tree/main/graphql-review
Command: npx skills add https://github.com/camilooscargbaptista/cto-toolkit --skill graphql-review

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill identifies design, security, and performance issues in GraphQL APIs by reviewing schemas, resolvers, and configuration to prevent N+1 queries, abuse, and breaking changes.

Core Features & Use Cases

  • Schema design checks: naming consistency, nullability practices, connection-style pagination, input types, enums, and descriptions to avoid god types and breaking changes.
  • N+1 prevention: detect resolver-level query patterns, recommend DataLoader/batching, and suggest query plan analysis and deferred/streamed responses.
  • Security hardening: validate query depth and complexity limits, rate limiting, introspection policies, field-level authorization, input validation, and persisted queries for production.
  • Performance & federation: recommend caching strategies, automatic persisted queries, connection pooling, and validate federation directives and subgraph composition.
  • Use Case: Run this review on repositories containing .graphql schema files and resolver implementations to generate prioritized remediation and hardening tasks.

Quick Start

Run a GraphQL design and security review on schema.graphql and resolver source to identify N+1, complexity, and authorization issues.

Frequently Asked Questions about graphql-review

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect and prevent N+1 queries in GraphQL resolvers?

Detect N+1 queries in GraphQL resolvers by analyzing resolver-level database access patterns, then implement DataLoader batching to optimize data fetching and eliminate redundant queries.

How do I secure a GraphQL API against query complexity and introspection abuse?

Secure a GraphQL API against abuse by validating query depth and complexity limits, enforcing rate limiting, restricting introspection policies, and implementing persisted queries for production environments.

Can I use this review on Apollo subgraphs with federation directives?

Yes, you can apply this review to Apollo federated subgraphs. It validates federation directives, checks subgraph composition, and ensures field-level authorization across federated schemas.

What's the best way to enforce field-level authorization in a GraphQL schema?

The best way to enforce field-level authorization in a GraphQL schema is to review resolver implementations to verify authorization checks, validate input types, and ensure proper security boundaries are applied per field.

How do I validate GraphQL schema design for breaking changes and god types?

Validate GraphQL schema design by checking naming consistency, nullability practices, connection-style pagination, and descriptions to avoid god types and prevent breaking changes across the API.

When do I need persisted queries and caching strategies for GraphQL performance?

You need persisted queries and caching strategies for GraphQL performance when hardening production APIs, enabling automatic persisted queries, connection pooling, and deferred responses to optimize query execution.