{
  "schemaVersion": "1.0",
  "item": {
    "slug": "clawpify",
    "name": "Clawpify",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Alhwyn/clawpify",
    "canonicalUrl": "https://clawhub.ai/Alhwyn/clawpify",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/clawpify",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=clawpify",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/blogs.md",
      "references/bulk-operations.md",
      "references/collections.md",
      "references/customers.md",
      "references/discounts.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/clawpify"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/clawpify",
    "agentPageUrl": "https://openagent3.xyz/skills/clawpify/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawpify/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawpify/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Shopify GraphQL Admin API",
        "body": "A comprehensive skill for interacting with Shopify's GraphQL Admin API. This skill enables Claude to query and manage all aspects of Shopify store data."
      },
      {
        "title": "When to Use This Skill",
        "body": "Use this skill when the user asks about:\n\nProducts (list, search, create, update, delete)\nOrders (view, cancel, fulfill)\nCustomers (list, create, update)\nInventory (check levels, adjust quantities)\nDiscounts (create codes, manage promotions)\nAny other Shopify store operations"
      },
      {
        "title": "Critical Operations Requiring Permission",
        "body": "IMPORTANT: Before executing any of the following operations, you MUST ask for explicit user permission:\n\nRefunds: Create refunds (permanent financial transactions)\nOrder Cancellations: Cancel orders (may trigger refunds)\nGift Card Deactivation: Permanently disable gift cards\nInventory Adjustments: Modify stock levels\nProduct Deletions: Permanently remove products\nDiscount Activations: Change pricing for customers\n\nAlways show what will be changed and wait for user confirmation."
      },
      {
        "title": "How to Use",
        "body": "Use the shopify_graphql tool to execute queries\nCheck for errors (GraphQL issues) and userErrors (validation issues)\nUse pagination with first/after for large result sets\nFormat all IDs as: gid://shopify/Resource/123"
      },
      {
        "title": "Available References",
        "body": "For detailed patterns and examples, refer to the reference documents:\n\nproducts.md - Products and variants management\norders.md - Order operations\ncustomers.md - Customer management\ninventory.md - Inventory and locations\ndiscounts.md - Discount codes and promotions\ncollections.md - Product collections\nfulfillments.md - Order fulfillment and shipping\nrefunds.md - Process refunds\ndraft-orders.md - Draft order creation\ngift-cards.md - Gift card management\nwebhooks.md - Event subscriptions\nlocations.md - Store locations\nmarketing.md - Marketing activities\nmarkets.md - Multi-market setup\nmenus.md - Navigation menus\nmetafields.md - Custom data fields\npages.md - Store pages\nblogs.md - Blog management\nfiles.md - File uploads\nshipping.md - Shipping configuration\nshop.md - Store information\nsubscriptions.md - Subscription management\ntranslations.md - Content translations\nsegments.md - Customer segments\nbulk-operations.md - Bulk data operations"
      },
      {
        "title": "List Recent Orders",
        "body": "query {\n  orders(first: 10, sortKey: CREATED_AT, reverse: true) {\n    nodes {\n      id\n      name\n      totalPriceSet {\n        shopMoney { amount currencyCode }\n      }\n      customer { displayName }\n    }\n  }\n}"
      },
      {
        "title": "Search Products",
        "body": "query {\n  products(first: 10, query: \"title:*shirt* AND status:ACTIVE\") {\n    nodes {\n      id\n      title\n      status\n    }\n  }\n}"
      },
      {
        "title": "Check Inventory",
        "body": "query GetInventory($id: ID!) {\n  inventoryItem(id: $id) {\n    id\n    inventoryLevels(first: 5) {\n      nodes {\n        quantities(names: [\"available\"]) {\n          name\n          quantity\n        }\n        location { name }\n      }\n    }\n  }\n}"
      },
      {
        "title": "Error Handling",
        "body": "Always check responses:\n\nerrors array = GraphQL syntax issues\nuserErrors in mutations = validation problems"
      },
      {
        "title": "Best Practices",
        "body": "Request only needed fields to optimize response size\nUse pagination for lists that may grow\nCheck userErrors in all mutation responses\nAsk permission before dangerous operations\nFormat results clearly for the user\nUse bulk operations for large data exports/imports\nHandle rate limits with exponential backoff"
      }
    ],
    "body": "Shopify GraphQL Admin API\n\nA comprehensive skill for interacting with Shopify's GraphQL Admin API. This skill enables Claude to query and manage all aspects of Shopify store data.\n\nWhen to Use This Skill\n\nUse this skill when the user asks about:\n\nProducts (list, search, create, update, delete)\nOrders (view, cancel, fulfill)\nCustomers (list, create, update)\nInventory (check levels, adjust quantities)\nDiscounts (create codes, manage promotions)\nAny other Shopify store operations\nCritical Operations Requiring Permission\n\nIMPORTANT: Before executing any of the following operations, you MUST ask for explicit user permission:\n\nRefunds: Create refunds (permanent financial transactions)\nOrder Cancellations: Cancel orders (may trigger refunds)\nGift Card Deactivation: Permanently disable gift cards\nInventory Adjustments: Modify stock levels\nProduct Deletions: Permanently remove products\nDiscount Activations: Change pricing for customers\n\nAlways show what will be changed and wait for user confirmation.\n\nHow to Use\nUse the shopify_graphql tool to execute queries\nCheck for errors (GraphQL issues) and userErrors (validation issues)\nUse pagination with first/after for large result sets\nFormat all IDs as: gid://shopify/Resource/123\nAvailable References\n\nFor detailed patterns and examples, refer to the reference documents:\n\nproducts.md - Products and variants management\norders.md - Order operations\ncustomers.md - Customer management\ninventory.md - Inventory and locations\ndiscounts.md - Discount codes and promotions\ncollections.md - Product collections\nfulfillments.md - Order fulfillment and shipping\nrefunds.md - Process refunds\ndraft-orders.md - Draft order creation\ngift-cards.md - Gift card management\nwebhooks.md - Event subscriptions\nlocations.md - Store locations\nmarketing.md - Marketing activities\nmarkets.md - Multi-market setup\nmenus.md - Navigation menus\nmetafields.md - Custom data fields\npages.md - Store pages\nblogs.md - Blog management\nfiles.md - File uploads\nshipping.md - Shipping configuration\nshop.md - Store information\nsubscriptions.md - Subscription management\ntranslations.md - Content translations\nsegments.md - Customer segments\nbulk-operations.md - Bulk data operations\nQuick Examples\nList Recent Orders\nquery {\n  orders(first: 10, sortKey: CREATED_AT, reverse: true) {\n    nodes {\n      id\n      name\n      totalPriceSet {\n        shopMoney { amount currencyCode }\n      }\n      customer { displayName }\n    }\n  }\n}\n\nSearch Products\nquery {\n  products(first: 10, query: \"title:*shirt* AND status:ACTIVE\") {\n    nodes {\n      id\n      title\n      status\n    }\n  }\n}\n\nCheck Inventory\nquery GetInventory($id: ID!) {\n  inventoryItem(id: $id) {\n    id\n    inventoryLevels(first: 5) {\n      nodes {\n        quantities(names: [\"available\"]) {\n          name\n          quantity\n        }\n        location { name }\n      }\n    }\n  }\n}\n\nError Handling\n\nAlways check responses:\n\nerrors array = GraphQL syntax issues\nuserErrors in mutations = validation problems\nBest Practices\nRequest only needed fields to optimize response size\nUse pagination for lists that may grow\nCheck userErrors in all mutation responses\nAsk permission before dangerous operations\nFormat results clearly for the user\nUse bulk operations for large data exports/imports\nHandle rate limits with exponential backoff"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Alhwyn/clawpify",
    "publisherUrl": "https://clawhub.ai/Alhwyn/clawpify",
    "owner": "Alhwyn",
    "version": "0.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/clawpify",
    "downloadUrl": "https://openagent3.xyz/downloads/clawpify",
    "agentUrl": "https://openagent3.xyz/skills/clawpify/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawpify/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawpify/agent.md"
  }
}