用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/lukemcqueen/hermes-cortex --skill shopify命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Cross-server agent health monitoring using binary status vectors — deploy health endpoints on each agent, poll from orchestrator, alert on state transitions.
Wire a self-hosted Langfuse instance to Hermes Agent — generate API keys, configure env vars, enable the bundled plugin, install SDK, and verify traces flow.
Use before enforcement code changes or shared-repo commits.
基于 SOC 职业分类
正在显示 SKILL.md
| name | shopify |
| version | 1.0.0 |
| description | Shopify Admin & Storefront GraphQL APIs via curl. Products, orders, customers, inventory, metafields. |
Use when reading or querying Shopify store data (products, orders, customers, inventory, metafields) via the Admin or Storefront GraphQL APIs using curl — no SDK needed. For order mutations or app development, prefer the official libraries.
X-Shopify-Access-Token. Storefront: a storefront access token sent as X-Shopify-Storefront-Access-Token (safe to expose client-side).https://{store}.myshopify.com/admin/api/2026-01/graphql.json. Storefront: https://{store}.myshopify.com/api/2026-01/graphql.json.curl -s -X POST with a JSON body containing query and optional variables.curl -s -X POST "https://{store}.myshopify.com/admin/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: $SHOPIFY_ADMIN_TOKEN" \
-d '{
"query": "query { products(first: 10) { edges { node { id title handle status variants(first: 5) { edges { node { id title sku price } } } } } } }"
}'
curl -s -X POST "https://{store}.myshopify.com/admin/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: $SHOPIFY_ADMIN_TOKEN" \
-d '{
"query": "query { orders(first: 10, sortKey: CREATED_AT, reverse: true) { edges { node { id name createdAt totalPriceSet { shopMoney { amount currencyCode } } } } } }"
}'
curl -s -X POST "https://{store}.myshopify.com/admin/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: $SHOPIFY_ADMIN_TOKEN" \
-d '{"query": "query { customers(first: 10) { edges { node { id email firstName lastName ordersCount } } } }"}'
curl -s -X POST "https://{store}.myshopify.com/admin/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: $SHOPIFY_ADMIN_TOKEN" \
-d '{"query": "query { locations(first: 10) { edges { node { id name } } } }"}'
Then query inventoryLevels(locationId: "LOCATION_ID") { nodes { available } } for stock per variant.
curl -s -X POST "https://{store}.myshopify.com/admin/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: $SHOPIFY_ADMIN_TOKEN" \
-d '{
"query": "query { product(id: \"gid://shopify/Product/PRODUCT_ID\") { metafields(first: 10) { edges { node { namespace key value type } } } } }"
}'
curl -s -X POST "https://{store}.myshopify.com/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Storefront-Access-Token: $SHOPIFY_STOREFRONT_TOKEN" \
-d '{"query": "query { products(first: 10) { edges { node { id title handle availableForSale } } } }"}'
Shopify returns pageInfo { hasNextPage endCursor }; pass the cursor to the next request:
curl -s -X POST "https://{store}.myshopify.com/admin/api/2026-01/graphql.json" \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: $SHOPIFY_ADMIN_TOKEN" \
-d '{
"query": "query { products(first: 10, after: \"CURSOR\") { edges { node { id title } } pageInfo { hasNextPage endCursor } } }"
}'
X-Shopify-Shop-Api-Call-Limit response header; back off with jitter on 429s.gid://shopify/Product/123) — always pass them as strings and URL-encode them inside query variables.status is DRAFT/ACTIVE/ARCHIVED; use the query: argument to filter list queries.$SHOPIFY_ADMIN_TOKEN); keep them out of logs and reports.2026-01 version segment is pinned — Shopify deprecates API versions, so update it on a schedule.errors key; if present, fix the query before trusting data.