What problem does it solve? Building GraphQL servers in Go involves recurring pitfalls: N+1 query storms from child resolvers, leaked subscription goroutines, exposed internal errors, and uncapped query complexity. This Skill provides a schema-first discipline covering library selection, SDL design, thin resolvers, per-request DataLoaders, auth, error mapping, subscriptions, and production limits. ## Core Features & Use Cases - Library Selection & Schema Design: Choose between gqlgen (codegen, federation, large schemas) and graph-gophers/graphql-go (reflection, small schemas), then design SDL with deliberate nullability, ID scalars, cursor pagination, and mutation payload envelopes. - Performance & Safety Patterns: Implement per-request DataLoaders to eliminate N+1 queries, two-layer auth with schema directives, error presenters that hide internals, and complexity limits with gated introspection. - Review & Audit Workflow: Audit existing servers for N+1 resolvers, global DataLoader scope, subscription goroutine leaks, and missing complexity caps. - Use Case: You are building a Go GraphQL API where a User.posts field fires one SQL query per user. Apply this Skill to wire a per-request DataLoader in HTTP middleware, mark the field resolver: true in gqlgen.yml, and coalesce all loads into a single batch query. ## Quick Start Ask the assistant to design a GraphQL schema and implement thin resolvers with per-request DataLoaders for a Go service using gqlgen.