agentleFS
VercelKnown publishervercel/shop/.agents/skills/shopify-graphql-reference/SKILL.md

shopify-graphql-reference

Skill127 starsChanged 21 days agoMITView on GitHub

Integrate Shopify-validated Storefront or Customer Account GraphQL into Vercel Shop. Use after Shopify AI Toolkit has supplied and validated an API operation, or when adapting existing GraphQL to the template's operation placement, fragments, domain transforms, locale flow, cache role, invalidation, and route architecture.

The file

We split this skill into the rules it gives an agent

11 rules. About 0 are common, 7 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Treat Shopify AI Toolkit as authoritative for Shopify documentation, schemas, fields, arguments, enum values, API versions, operation …

    line 8
  2. Very specific:

    Read references/REFERENCE.md before editing.

    line 10
  3. Distinctive:

    Use Shopify AI Toolkit's Storefront GraphQL skill for catalog, search, menus, cart, and public metaobject reads.

    line 15
  4. Distinctive:

    Use its Customer skill for profiles, orders, addresses, and other authenticated customer data.

    line 16
  5. Distinctive:

    Use its custom-data skill first for metafields or metaobjects.

    line 17
  6. Distinctive:

    Search current Shopify documentation and validate the complete operation with that skill.

    line 18
  7. Distinctive:

    Do not copy schema snapshots, field catalogs, or generated API reference into this skill.

    line 19
  8. Distinctive:

    If Shopify AI Toolkit is unavailable, use official Shopify documentation and validation tooling.

    line 20
  9. Very specific:

    Never place carts in the Next.js data cache.

    line 31
  10. Distinctive:

    Run local lint, typecheck, focused tests, and affected commerce flows.

    line 36
  11. Very specific:

    Do not present this skill as a Shopify schema source.

    line 42

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Integrate Shopify GraphQL

Treat Shopify AI Toolkit as authoritative for Shopify documentation, schemas, fields, arguments, enum values, API versions, operation design, and validation. This skill owns only the Vercel Shop integration layer.

Read references/REFERENCE.md before editing.

Delegate Shopify facts first

  1. Choose the Shopify API:
    • Use Shopify AI Toolkit's Storefront GraphQL skill for catalog, search, menus, cart, and public metaobject reads.
    • Use its Customer skill for profiles, orders, addresses, and other authenticated customer data.
    • Use its custom-data skill first for metafields or metaobjects.
  2. Search current Shopify documentation and validate the complete operation with that skill.
  3. Do not copy schema snapshots, field catalogs, or generated API reference into this skill.
  4. If Shopify AI Toolkit is unavailable, use official Shopify documentation and validation tooling; do not guess.

Apply the Vercel Shop conventions

  1. Inspect the consuming route before choosing cache behavior. Classify the read as static-shell content, request-time shared content, or private/request-scoped data.
  2. Add the operation to lib/shopify/operations/<resource>/server.ts in the closest resource domain as an uncached fetch* function with no next/cache import. Put the cache directive, cacheLife, and cacheTag calls in a get* wrapper in the consuming domain's lib/<domain>/server.ts (for example lib/product/server.ts, lib/collections/server.ts, lib/policies/server.ts). Keep pure transforms in lib/shopify/transforms/<resource>/index.ts, named shared contracts in the owning domain's types.ts, and reusable fragment documents in their resource domain. Import implementations and types directly; do not add barrels or forwarding exports.
  3. Wrap documents in Hydrogen's gql() with a leading #graphql comment, keep them static, and use variables for dynamic values. Inference supplies types; Shopify AI Toolkit validates fields and arguments.
  4. Reuse the smallest existing fragment that fits by passing it in the gql(source, [FRAGMENT]) list. Extend a shared fragment only when multiple operations need the same selection.
  5. Pass locale to storefront.request when Shopify localizes the result; never add country or language to variables.
  6. Derive raw Shopify types from fragment documents with ResultOf<typeof FRAGMENT> under lib/shopify/**; transform catalog/account data into domain types before presentation. Cart types intentionally derive from Hydrogen handlers through lib/cart/types.ts.
  7. Preserve cache tags and the existing webhook invalidation hierarchy. Do not cache mutations.
  8. Never place carts in the Next.js data cache; cart reads are memoized per request via getCart, so cart mutations need no cache invalidation step.

Revalidate both boundaries

  1. Validate the final GraphQL document again with Shopify AI Toolkit after fragment and variable changes.
  2. Run local lint, typecheck, focused tests, and affected commerce flows; run a build when the changed surface requires it. Exercise the operation against the store once; typecheck does not catch invalid fields.
  3. Report separately:
    • Shopify validation performed;
    • Vercel Shop cache and route role;
    • domain transform and invalidation changes.

Do not present this skill as a Shopify schema source. Shopify AI Toolkit determines what Shopify supports; this skill determines how validated operations fit Vercel Shop.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.