Official Shopify skill for theme development in Liquid — teaches an agent the modern theme architecture of sections, blocks and snippets, and validates generated templates and schemas.
Shopify Custom Data (Metafields & Metaobjects)
Summary
Official Shopify skill for modelling custom data — it pushes metafield and metaobject definitions into shopify.app.toml instead of runtime GraphQL, and gets $app namespacing right.
Features
- Defaults to declaring definitions in shopify.app.toml rather than runtime GraphQL
- Gets $app namespacing right for both metafields and metaobjects
- Names the runtime-definition exceptions instead of leaving the choice open
- Fixed working order: define, then write values, then read them back
- Covers merchant access levels and storefront exposure on definitions
Install This Skill
Add this skill to your favorite AI agent in a few steps.
Skill Content
Usage Instructions
Learn how to use this skill with different AI agents.
Example Usage
Model a 'care guide' text field on products and an author metaobject linked from each product, following Shopify's recommended approach.
Description
shopify-custom-data is the Shopify AI Toolkit skill for metafields and metaobjects — the mechanism apps use to extend built-in Shopify types like products, customers and orders, and to define bespoke data structures of their own.
The opinion it enforces
Most generated code for this gets the approach wrong before it gets the syntax wrong. The skill's position is unambiguous: for roughly 99.99% of apps, definitions belong in shopify.app.toml, declared as TOML, not created at runtime through metafieldDefinitionCreate and metaobjectDefinitionCreate:
[product.metafields.app.care_guide]
type = "single_line_text_field"
name = "Care Guide"
access.admin = "merchant_read_write"
[metaobjects.app.author]
name = "Author"
display_name_field = "name"
access.storefront = "public_read"TOML definitions are version controlled, auto-installed on app install, and type-safe. GraphQL is then used only to read and write values. Runtime definition creation is reserved for the genuine exceptions — apps where merchants configure types dynamically, or where other apps must read the data.
The namespacing trap
It is emphatic about the mistake that costs the most debugging time: a metaobject declared as [metaobjects.app.example] must be accessed as type $app:example, and a metafield declared as [product.metafields.app.example] must use namespace $app with key example. Using the literal namespace app — the obvious guess — silently fails. The skill also discourages custom namespaces entirely.
Working order
Definitions first, then writing values through the Admin API, then reading them back. The skill deliberately refuses to present alternative approaches to the same problem unless asked, on the grounds that choice here mostly produces confusion.
Requirements and caveats
Node.js required for the bundled scripts, which report usage telemetry to shopify.dev unless OPT_OUT_INSTRUMENTATION=true is set. MIT licensed.
Related Skills
Shopify's official skill for writing Admin GraphQL queries and mutations — it searches the live API docs and validates every operation against the schema before handing you code.
Planning skill that interrogates your use case before any code is written, then recommends the right Twilio Conversations stack — ConversationRelay, Memory, Intelligence, Orchestrator, TaskRouter — and the implementation skills to follow.
Foundational fal.ai skill that drives the genmedia CLI across 1200+ hosted generative model endpoints — smart routing, schema inspection, async queues and agent-parseable JSON.