Skills graphql
๐Ÿ“ฆ

graphql

Content revision r2 High Risk โš™๏ธ External commands๐ŸŒ Network access๐Ÿ”‘ Env variables

Build Secure GraphQL APIs

GraphQL systems can suffer from inefficient resolvers, unsafe query flexibility, and inconsistent schemas. This skill provides patterns for schemas, clients, performance, authorization, and production safeguards.

Supports: Claude Codex Code(CC)
โš ๏ธ 38 Poor

Install with my Agent

Copy this request to your Agent. It includes the canonical Skill page and manifest.

Agent request
Review the Skillstore skill "graphql" from https://skillstore.io/skills/sickn33-graphql.md and its manifest at https://skillstore.io/api/skills/sickn33-graphql/manifest. Verify the artifact. Stop and obtain explicit user consent before installing or changing files.

Your Agent should still show its plan and request any confirmation required by the security policy.

Agent-readable resources

Use these links when an AI agent, crawler, or script needs clean context instead of reading the full page.

Test it

Using "graphql". Design user and post queries for a new content service.

Expected outcome:

A schema plan with paginated user and post connections, explicit nullability, typed mutation inputs, and payload unions for expected failures.

Using "graphql". Why does fetching 100 posts generate 101 database queries?

Expected outcome:

  • Each author resolver performs a separate database query.
  • Create one DataLoader instance per request.
  • Batch author identifiers and return results in the original order.

Using "graphql". Review production GraphQL security settings.

Expected outcome:

A prioritized audit covering query limits, field authorization, introspection, persisted operations, rate controls, and subscription identity verification.

Security Audit

High Risk
v5 โ€ข 7/24/2026 Open versioned report

All 40 static alerts are false positives caused by GraphQL templates, JavaScript interpolation, development configuration, and ordinary identifier checks. However, the subscription example trusts a client-supplied identity and lacks room authorization, which can expose events if copied into production.

1
Files scanned
1,077
Lines analyzed
0
Review items
0
False positives ignored

Confirmed security concerns (1)

High
Client-Supplied Subscription Identity
The example trusts userId from connectionParams and subscribes to arbitrary room topics without authentication or membership checks, enabling impersonation and unauthorized event access.
The context directly copies userId from client-controlled connection parameters, and the subscription filter checks only the requested roomId.
Audited by: codex View Audit History โ†’
Share & cite this report

Share the versioned assessment report, neutral badge, embed card, and citations. Skillstore reports evidence without deciding whether this Skill is safe.

Open versioned report
Security Assessment

Copy report link

https://skillstore.io/skills/sickn33-graphql/audits/5?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_report

Markdown badge

[![Skillstore security assessment](https://skillstore.io/badges/skills/sickn33-graphql/security.svg)](https://skillstore.io/skills/sickn33-graphql?utm_source=security_passport_badge)

HTML badge

<a href="https://skillstore.io/skills/sickn33-graphql?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/sickn33-graphql/security.svg" alt="Skillstore security assessment" loading="lazy"></a>

Embed card

<iframe src="https://skillstore.io/embed/skills/sickn33-graphql.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>
Academic citations (APA ยท BibTeX ยท CFF)

APA citation

sickn33. (2026). graphql security audit report (audit version 5) [Author version unspecified]. Skillstore. https://skillstore.io/skills/sickn33-graphql/audits/5

BibTeX citation

@techreport{sickn33-sickn33-graphql-2026, author = {sickn33}, title = {graphql security audit report (audit version 5)}, institution = {Skillstore}, year = {2026}, number = {5}, url = {https://skillstore.io/skills/sickn33-graphql/audits/5}, note = {Author version unspecified} }

CITATION.cff

cff-version: 1.2.0 message: "If you use this Skill, cite its author and this versioned security audit report." title: "graphql security audit report (audit version 5)" version: "unspecified" type: report authors: - name: "sickn33" date-released: "2026-07-24" url: "https://skillstore.io/skills/sickn33-graphql/audits/5" identifiers: - type: other value: "skillstore:sickn33-graphql:audit:5" description: "Skillstore immutable audit report identifier"

Skillstore Score

Why this score Evidence Confidence: Medium
55
Architecture
85
Maintainability
87
Content
68
Community
70
Spec Compliance

What You Can Build

Design a New API

Create a typed schema with clear nullability, pagination, mutation payloads, and expected error unions.

Improve Resolver Performance

Identify N+1 behavior and introduce request-scoped DataLoader instances with correctly ordered results.

Integrate a Typed Client

Configure client caching and generate typed operations for a TypeScript application.

Try These Prompts

Draft a Schema
Design a GraphQL schema for [domain] with queries, mutations, pagination, intentional nullability, and expected error types.
Fix N+1 Queries
Review these resolvers for N+1 queries and propose request-scoped DataLoader implementations that preserve result order: [resolvers].
Secure a GraphQL Server
Audit this GraphQL server for authorization, introspection, query depth, complexity, rate limits, and sensitive field exposure: [configuration].
Plan a Federated Migration
Create a staged migration from [current architecture] to GraphQL federation, including ownership, entity boundaries, compatibility, observability, and rollback.

Best Practices

  • Treat the schema as a versioned contract and design nullability intentionally.
  • Create DataLoader instances per request to prevent cross-user cache leakage.
  • Enforce authorization at resolver and sensitive-field boundaries.

Avoid

  • Do not expose unbounded nested queries or large list fields.
  • Do not rely only on schema directives for complex authorization.
  • Do not trust subscription identity values supplied directly by clients.

Frequently Asked Questions

When should I choose GraphQL instead of REST?
Choose GraphQL for complex relationships and varied client data needs. REST is often simpler for basic CRUD and cache-heavy public APIs.
Does this skill support Apollo and urql?
Yes. It covers Apollo Server, Apollo Client, urql, graphql-request, and related GraphQL tooling.
Can it prevent N+1 query problems?
It provides DataLoader batching and caching patterns. You must validate the result with database traces and load tests.
Does it generate TypeScript types?
It guides GraphQL Code Generator configuration for schemas, operations, and typed React hooks.
Does it secure production subscriptions?
It covers cleanup and filtering, but you must add verified connection authentication and resource-level authorization.
Can it implement authentication or database design?
No. Those areas require dedicated project logic and are outside this skill's stated scope.

Developer Details

Author

sickn33

License

MIT

Skillstore revision

r2

Version notice

The author did not declare a version.

Ref

88a8e9a07f4c54ab105c1c41b6267c287146b07b

Maintenance freshness

7/26/2026

Usage

7 downloads ยท 95 views

File structure

๐Ÿ“„ SKILL.md