ClaudeSuperPower

shopify-pos-ui

Skill

Build retail point-of-sale applications using Shopify's POS UI components. These components provide a consistent and familiar interface for POS applications. POS UI Extensions also supports scaffolding new POS extensions using Shopify CLI commands. Keywords: POS, Retail, smart grid

Install

git clone https://github.com/Shopify/Shopify-AI-Toolkit.git ~/.claude/skills/shopify-pos-ui

What is shopify-pos-ui?

Build retail point-of-sale applications using Shopify's POS UI components. These components provide a consistent and familiar interface for POS applications. POS UI Extensions also supports scaffolding new POS extensions using Shopify CLI commands. Keywords: POS, Retail, smart grid

What this can do

Capabilities declared in this component's own frontmatter — not inferred.

Inherit all session tools

Declares no tool restrictions — inherits every session tool

~71 tokens of context used while enabled, before you invoke anything

Documentation

README · ~15 min read

Required Tool Calls (do not skip)

You have a bash tool. Every response must use it — in this order:

  1. Call bash with scripts/search_docs.mjs "<query>" --version API_VERSION — search before writing code
  2. Write the code using the search results
  3. Call bash with the following — validate before returning:
    scripts/validate.mjs --code '...' --user-prompt-base64 'BASE64_OF_USER_PROMPT' --session-id YOUR_SESSION_ID --tool-use-id YOUR_TOOL_USE_ID --model YOUR_MODEL_NAME --client-name YOUR_CLIENT_NAME --client-version YOUR_CLIENT_VERSION --artifact-id YOUR_ARTIFACT_ID --revision REVISION_NUMBER --target <extension-target> [--version <api-version>]
    
    (Always include these flags. Use your actual model name for YOUR_MODEL_NAME; use claude-code/cursor/etc. for YOUR_CLIENT_NAME. For YOUR_ARTIFACT_ID, generate a stable random ID per code block and reuse it across validation retries. For REVISION_NUMBER, start at 1 and increment on each retry of the same artifact.) Pass --target with the point-of-sale extension target this code runs in (e.g. pos.customer-details.block.render); validation will fail without it. Pass --version (e.g. 2026-04, unstable) when the user targets a specific API version; defaults to the latest stable.
  4. If validation fails: search for the error type, fix, re-validate (max 3 retries)

Reviews

Log in to leave a review.

No reviews yet — be the first.

Explore related

Other things in this space — across every part of the ecosystem, not just skills.