AgentStack
SKILL verified MIT Self-run

Shopify Admin Duplicate Sku Barcode Detector

skill-40rty-ai-shopify-admin-skills-shopify-admin-duplicate-sku-barcode-detector · by 40RTY-ai

Read-only: finds duplicate SKUs or barcodes across all product variants.

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-40rty-ai-shopify-admin-skills-shopify-admin-duplicate-sku-barcode-detector

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures
Are you the author of Shopify Admin Duplicate Sku Barcode Detector? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.

About

Purpose

Scans all product variants and identifies duplicate SKUs or barcodes — two or more variants sharing the same identifier. Duplicate SKUs cause inventory sync failures, incorrect order routing, and accounting mismatches. Read-only — no mutations.

Prerequisites

  • Authenticated Shopify CLI session: shopify store auth --store --scopes read_products
  • API scopes: read_products

Parameters

| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | store | string | yes | — | Store domain (e.g., mystore.myshopify.com) | | checkskus | bool | no | true | Check for duplicate SKUs | | checkbarcodes | bool | no | true | Check for duplicate barcodes | | include_blank | bool | no | false | Flag variants with blank/null SKU | | format | string | no | human | Output format: human or json |

Safety

> ℹ️ Read-only skill — no mutations are executed. Safe to run at any time.

Workflow Steps

  1. OPERATION: productVariants — query

Inputs: first: 250, select sku, barcode, product { title }, pagination cursor Expected output: All variants with SKU and barcode values; paginate until hasNextPage: false

  1. Build in-memory map of sku → [variants] and barcode → [variants]
  1. Report all keys with more than one variant (duplicates)
  1. If include_blank: additionally flag variants where sku is null or empty string

GraphQL Operations

# productVariants:query — validated against api_version 2025-01
query VariantIdentifiers($after: String) {
  productVariants(first: 250, after: $after) {
    edges {
      node {
        id
        sku
        barcode
        title
        product {
          id
          title
          handle
          status
        }
      }
    }
    pageInfo {
      hasNextPage
      endCursor
    }
  }
}

Session Tracking

Claude MUST emit the following output at each stage. This is mandatory.

On start, emit:

╔══════════════════════════════════════════════╗
║  SKILL: Duplicate SKU/Barcode Detector       ║
║  Store:                        ║
║  Started:              ║
╚══════════════════════════════════════════════╝

After each step, emit:

[N/TOTAL]   
          → Params: 
          → Result: 

On completion, emit:

For format: human (default):

══════════════════════════════════════════════
DUPLICATE SKU / BARCODE REPORT
  Variants scanned:      
  Duplicate SKUs found:   groups
  Duplicate barcodes:     groups
  Blank SKUs:            

  Duplicate SKU groups:
    SKU "ABC-123"  — used by 2 variants:
      Product A / Blue / L
      Product B / Navy / XL
  Output: duplicates_.csv
══════════════════════════════════════════════

For format: json, emit:

{
  "skill": "duplicate-sku-barcode-detector",
  "store": "",
  "variants_scanned": 0,
  "duplicate_sku_groups": 0,
  "duplicate_barcode_groups": 0,
  "blank_skus": 0,
  "output_file": "duplicates_.csv"
}

Output Format

CSV file duplicates_.csv with columns: issue_type, duplicate_value, variant_id, product_title, variant_title, sku, barcode

Error Handling

| Error | Cause | Recovery | |-------|-------|----------| | THROTTLED | API rate limit exceeded | Wait 2 seconds, retry up to 3 times | | No duplicates found | Clean catalog | Exit with ✅ no issues found |

Best Practices

  • Run this skill after every bulk product import — imports are the most common source of duplicate SKUs.
  • A shared SKU across products is only valid if you intentionally use the same SKU for reprints or variants — most cases are data errors.
  • Blank SKUs are not duplicates but can cause problems with 3PLs and fulfillment systems that require a SKU for every variant — use include_blank: true to surface them.
  • After identifying duplicates, use the Shopify Admin UI or the productVariantsBulkUpdate mutation to correct SKU values.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.