Use consistent terminology throughout the project (unify on either "create" or "add")
Date Format
ISO 8601 UTC
Use DateTime type
Pagination
Relay Connection Specification
type UserConnection {
edges: [UserEdge!]!
pageInfo: PageInfo!
}
type UserEdge {
node: User!
cursor: String!
}
type PageInfo {
hasNextPage: Boolean!
endCursor: String
}
Parameters: first, after
Sorting
orderBy: [{ field: "createdAt", order: DESC }]
Type Naming
Input: {Verb}{Type}Input
Connection: {Type}Connection
Edge: {Type}Edge
Input
Separate creation and modification (required for creation, optional for modification)
Avoid nesting - IDs only
Errors
extensions (default)
code, field in errors[].extensions
Union (type safety)
User | ValidationError
N+1
DataLoader is mandatory
Documentation
"""description""" is required
Explicitly state Input constraints
Deprecation
@deprecated(reason: "...")
Never delete types
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: kubrickcode-workflow-toolkit-graphql3description: GraphQL API Standards4---56# GraphQL API Standards78## Naming Conventions910### Field Naming1112- Boolean: Require `is/has/can` prefix13- Date: Require `~At` suffix14- Use consistent terminology throughout the project (unify on either "create" or "add")1516## Date Format1718- ISO 8601 UTC19- Use DateTime type2021## Pagination2223### Relay Connection Specification2425```graphql26type UserConnection {27 edges: [UserEdge!]!28 pageInfo: PageInfo!29}3031type UserEdge {32 node: User!33 cursor: String!34}3536type PageInfo {37 hasNextPage: Boolean!38 endCursor: String39}40```4142- Parameters: `first`, `after`4344## Sorting4546- `orderBy: [{ field: "createdAt", order: DESC }]`4748## Type Naming4950- Input: `{Verb}{Type}Input`51- Connection: `{Type}Connection`52- Edge: `{Type}Edge`5354## Input5556- Separate creation and modification (required for creation, optional for modification)57- Avoid nesting - IDs only5859## Errors6061### extensions (default)6263- `code`, `field` in `errors[].extensions`6465### Union (type safety)6667- `User | ValidationError`6869## N+17071- DataLoader is mandatory7273## Documentation7475- `"""description"""` is required76- Explicitly state Input constraints7778## Deprecation7980- `@deprecated(reason: "...")`81- Never delete types8283---84> Converted and distributed by [TomeVault](https://tomevault.io/claim/kubrickcode) — claim your Tome and manage your conversions.85<!-- tomevault:4.0:skill_md:2026-04-13 -->
Run npx skillmds@latest add tomevault-io/kubrickcode-workflow-toolkit-graphql in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
GraphQL API Standards It is listed under Integrations & APIs on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
tomevault-io (@tomevault-io) published this skill. Their other Agent Skills are listed on their SkillMD profile.