Agent skill

Shopify Admin Product Affinity Cross Sell

by 40RTY-ai in 40RTY-ai/shopify-admin-skills

Mine order history to find which products are most frequently bought together, then rank pairs by support, confidence, and lift to power bundles and cross-sell recommendations.

MITAuto-check passed

Install Shopify Admin Product Affinity Cross Sell

skills CLI
$ npx skills add 40RTY-ai/shopify-admin-skills --skill shopify-admin-product-affinity-cross-sell -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install 40RTY-ai/shopify-admin-skills shopify-admin-product-affinity-cross-sell --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/40RTY-ai/shopify-admin-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/order-intelligence/shopify-admin-product-affinity-cross-sell .claude/skills/shopify-admin-product-affinity-cross-sell && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
shopify-admin-product-affinity-cross-sell
GitHub stars
194
Token cost
~2.1k tokens
SKILL.md length
713 words
Files
1
Skills in repo
116
Repo updated
First seen
Licence
MIT

At a glance

Mine order history to find which products are most frequently bought together, then rank pairs by support, confidence, and lift to power bundles and cross-sell recommendations.

  • Works in 2 steps: OPERATION: orders — query → In-memory analysis
  • SKILL.md covers Purpose, Prerequisites, Parameters and Workflow Steps, plus 5 more sections
  • Calls shopify

What it does

Shopify Admin Product Affinity Cross Sell is an agent skill from 40RTY-ai/shopify-admin-skills. Mine order history to find which products are most frequently bought together, then rank pairs by support, confidence, and lift to power bundles and cross-sell recommendations.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Claude Code, Cursor, Codex, Gemini CLI

It works with Shopify. The repository describes itself as: Community-maintained AI agent skills for operating Shopify stores — workflows, optimization, reports and more. The licence is MIT.

Example prompts

  • “/shopify-admin-product-affinity-cross-sell”

Requirements

  • Compatibility (from SKILL.md): Claude Code, Cursor, Codex, Gemini CLI

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. OPERATION: orders — query
  2. In-memory analysis

What it can do on your machine

Read from SKILL.md and the folder at commit 6765cb4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • shopify

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Claude Code, Cursor, Codex, Gemini CLI

    From compatibility in the SKILL.md frontmatter.

Context cost

Shopify Admin Product Affinity Cross Sell loads about 2.1k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 713 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~55
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from 40RTY-ai/shopify-admin-skills at commit 6765cb4, republished under its MIT licence (© 40RTY-ai). 713 words, ~2,075 tokens.

Download SKILL.mdSave it as .claude/skills/shopify-admin-product-affinity-cross-sell/SKILL.md (or your agent's skills folder).
name
shopify-admin-product-affinity-cross-sell
description
Mine order history to find which products are most frequently bought together, then rank pairs by support, confidence, and lift to power bundles and cross-sell recommendations.
compatibility
Claude Code, Cursor, Codex, Gemini CLI
role
order-intelligence
toolkit
shopify-admin, shopify-admin-execution
api_version
2025-01
graphql_operations
orders:query
status
stable

Purpose

Applies market basket analysis to your order history to surface product pairs that customers naturally buy together. For every co-purchased pair it calculates support (how often the pair appears), confidence (given product A, how likely is B?), and lift (how much more likely than chance). The output is actionable input for product bundles, "frequently bought together" widgets, cross-sell email flows, and homepage recommendations. Read-only — no mutations are executed.

Prerequisites

  • Authenticated Shopify CLI session: shopify auth login --store <domain>
  • API scopes: read_orders, read_products (validator-confirmed: line item product field traverses the product graph)

Parameters

ParameterTypeRequiredDefaultDescription
storestringyes—Store domain (e.g., mystore.myshopify.com)
formatstringnohumanOutput format: human or json
dry_runboolnofalsePreview operations without executing mutations
date_range_startstringyes—Start date in ISO 8601 (e.g., 2025-01-01)
date_range_endstringyes—End date in ISO 8601 (e.g., 2025-03-31)
min_supportintegerno5Minimum number of orders a pair must co-appear in to be included
min_confidencefloatno0.1Minimum P(B|A) threshold (0–1)
min_liftfloatno1.0Only include pairs where lift > this value (> 1 means non-random)
top_nintegerno20Number of top pairs to show in the ranked output
sort_bystringnoliftRanking metric: lift, confidence, or support
exclude_tagsstringno—Comma-separated product tags to exclude (e.g., gift-wrap,donation)

Workflow Steps

  1. OPERATION: orders — query Inputs: first: 250, query: "created_at:>='<date_range_start>' created_at:<='<date_range_end>'", pagination cursor; select lineItems with product { id, title } and quantity; skip orders with a single line item Expected output: All multi-item orders in range; paginate until hasNextPage: false; build a product frequency map (product_id → order_count) and a pair frequency map ((product_a_id, product_b_id) → co_occurrence_count)

  2. In-memory analysis:

    • For each order with ≥ 2 distinct products, enumerate every unique unordered pair and increment the pair counter
    • Compute metrics for each pair that meets min_support:
      • Support = pair_count / total_orders
      • Confidence A→B = pair_count / count(orders containing A)
      • Confidence B→A = pair_count / count(orders containing B)
      • Lift = support / (P(A) × P(B))
    • Filter by min_confidence and min_lift; sort by sort_by; truncate to top_n

GraphQL Operations

graphql
# orders:query (multi-item basket analysis) — validated against api_version 2025-01
query OrdersForAffinityAnalysis($first: Int!, $after: String, $query: String) {
  orders(first: $first, after: $after, query: $query) {
    edges {
      node {
        id
        createdAt
        lineItems(first: 50) {
          edges {
            node {
              quantity
              product {
                id
                title
                tags
              }
            }
          }
        }
      }
    }
    pageInfo {
      hasNextPage
      endCursor
    }
  }
}

Session Tracking

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

On start, emit:

╔══════════════════════════════════════════════╗
║  SKILL: product-affinity-cross-sell          ║
║  Store: <store domain>                       ║
║  Started: <YYYY-MM-DD HH:MM UTC>             ║
╚══════════════════════════════════════════════╝

After each step, emit:

[N/TOTAL] <QUERY|MUTATION>  <OperationName>
          → Params: <brief summary of key inputs>
          → Result: <count or outcome>

On completion, emit:

For format: human (default):

══════════════════════════════════════════════
OUTCOME SUMMARY
  Orders analysed:      <n>
  Unique products:      <n>
  Pairs evaluated:      <n>
  Pairs above threshold:<n>
  Date range:           <start> to <end>
  Sort by:              <lift|confidence|support>
  Errors:               0
  Output:               product_affinity_<date>.csv
══════════════════════════════════════════════

Followed by an inline ranked table of the top top_n pairs:

RankProduct AProduct BSupportConf A→BConf B→ALift
1............%...%...

For format: json, emit:

json
{
  "skill": "product-affinity-cross-sell",
  "store": "<domain>",
  "started_at": "<ISO8601>",
  "completed_at": "<ISO8601>",
  "dry_run": false,
  "steps": [
    { "step": 1, "operation": "OrdersForAffinityAnalysis", "type": "query", "params_summary": "<date_range_start> to <date_range_end>", "result_summary": "<n> orders, <n> multi-item baskets", "skipped": false }
  ],
  "outcome": {
    "orders_analysed": 0,
    "unique_products": 0,
    "pairs_evaluated": 0,
    "pairs_above_threshold": 0,
    "date_range_start": "<date_range_start>",
    "date_range_end": "<date_range_end>",
    "sort_by": "lift",
    "results": [],
    "errors": 0,
    "output_file": "product_affinity_<date>.csv"
  }
}
Show full SKILL.md (328 more words)Show less

Output Format

CSV file product_affinity_<YYYY-MM-DD>.csv with one row per qualifying pair:

ColumnDescription
rankPosition in sorted output
product_a_idShopify product GID for the first item
product_a_titleProduct A name
product_b_idShopify product GID for the second item
product_b_titleProduct B name
co_occurrence_countNumber of orders containing both products
supportco_occurrence_count / total_orders
confidence_a_to_bP(B|A) — likelihood of B given A is in cart
confidence_b_to_aP(A|B) — likelihood of A given B is in cart
liftHow much more likely than random co-occurrence
recommendation_typebundle_candidate if lift > 2, else cross_sell

Error Handling

ErrorCauseRecovery
THROTTLEDAPI rate limit from paginating large order historyWait 2 s, retry up to 3 times; narrow date range if persistent
product is null on line itemProduct was deleted after purchaseSkip that item from pair analysis; count the order in the total
Zero pairs above thresholdStore has few multi-item orders or thresholds too strictLower min_support to 2 and min_confidence to 0.05, or widen date range
Combinatorial explosionStores with very large line item counts per orderThe pair-enumeration loop skips orders with > 20 distinct products to cap O(n²) growth

Best Practices

  1. Use at least 90 days of order history — short windows produce noisy lift scores because the probability denominators are small.
  2. Lift > 2 is a strong bundle signal: customers are buying these products together at least twice as often as chance would predict.
  3. Confidence A→B > 30% makes for a reliable "frequently bought with" widget: three in ten shoppers who buy A also buy B.
  4. Filter out accessories and add-ons (like gift wrap or donation SKUs) with exclude_tags before ranking — they inflate support scores without being meaningful cross-sell pairs.
  5. Use the recommendation_type column to split your output: bundle_candidate pairs are best for pre-built bundles or volume discounts; cross_sell pairs are better suited to cart upsells and post-purchase email recommendations.
  6. Re-run quarterly — seasonal products enter and exit the top pairs list, and ignoring that produces stale recommendations.

© 40RTY-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/order-intelligence/shopify-admin-product-affinity-cross-sell of 40RTY-ai/shopify-admin-skills.

Open the folder on GitHubat commit 6765cb4

Compare with similar skills

Shopify Admin Product Affinity Cross Sell next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Shopify Admin Product Affinity Cross Sell compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Shopify Admin Product Affinity Cross Sell this skill40RTY-ai/shopify-admin-skills194—~2.1kAutomated safety check: PassMIT
ShopifyShopify/Shopify-AI-Toolkit592—~4.2kAutomated safety check: PassMIT
E-commerce Visual Copywritingfeichanggege/ecommerce-visual-copywriting-skill867—~1.3kAutomated safety check: PassMIT
Reviewing Pull RequestsShopify/shopify-app-js541—~1.9kAutomated safety check: PassMIT
Better Designmarvkr/better-design254—~1.2kAutomated safety check: PassMIT
Liquid Theme A11ybenjaminsehl/liquid-skills120—~3.2kAutomated safety check: PassNone

Similar skills

  • Shopify

    Shopify/Shopify-AI-Toolkit

    Official

    Build anything on Shopify. An agent skill from Shopify/Shopify-AI-Toolkit.

    592 GitHub stars~4.2k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • E-commerce Visual Copywriting

    feichanggege/ecommerce-visual-copywriting-skill

    Turns product details, packaging, target platform and audience into an executable e-commerce image plan with copy, storyboards, image prompts and a compliance review.

    867 GitHub stars~1.3k tokensUpdated 24 days ago
    Writing & ContentAuto-check passed
  • Reviewing Pull Requests

    Shopify/shopify-app-js

    Official

    Reviews pull requests for Shopify/shopify-app-js with comprehensive analysis including semver compliance (MAJOR/MINOR/PATCH classification), single responsibility validation, pattern consistency…

    541 GitHub stars~1.9k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Better Design

    marvkr/better-design

    Build, improve, and review production interfaces with the Better Design MCP.

    254 GitHub stars~1.2k tokensUpdated 18 days ago
    Frontend & DesignAuto-check passed
  • Liquid Theme A11y

    benjaminsehl/liquid-skills

    Implement WCAG 2.2 accessibility patterns in Shopify Liquid themes.

    120 GitHub stars~3.2k tokensUpdated 2 mo ago
    Frontend & DesignAuto-check passed
  • Analytics Tracking Automation

    jtrackingai/analytics-tracking-automation

    A skill your agent uses when you need GA4 + GTM tracking delivery from site discovery through publish, or when the right phase entry point is still unclear.

    142 GitHub stars~2.8k tokensUpdated 5 mo ago
    Data & AnalyticsAuto-check passed

More from 40RTY-ai/shopify-admin-skills

All 116 skills in this repo
  • Shopify Admin Abandoned Cart Recovery

    40RTY-ai/shopify-admin-skills

    Query checkouts abandoned in the last N days, generate unique discount codes per customer, and tag them for re-engagement.

    194 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Shopify Admin Address Correction

    40RTY-ai/shopify-admin-skills

    Update the shipping address on an unfulfilled order before it ships.

    194 GitHub stars~1.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Shopify Admin Agentic Crawler Access

    40RTY-ai/shopify-admin-skills

    Edit the theme's robots.txt.liquid to explicitly allow AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, OAI-SearchBot, Amazonbot) so AI assistants are permitted to read the catalog.

    194 GitHub stars~1.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Rewrite thin product descriptions into structured, fact-rich copy (materials, fit, use-cases, the words shoppers actually type) so AI agents have something concrete to quote and match.

    194 GitHub stars~1.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Shopify Admin Agentic Image Alt Text

    40RTY-ai/shopify-admin-skills

    Generate and set descriptive alt text on product images so AI agents (which can't 'see' pixels) can understand and recommend what each product looks like.

    194 GitHub stars~1.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Shopify Admin Agentic LLMs Txt

    40RTY-ai/shopify-admin-skills

    Generate and publish an /llms.txt guide (brand summary, flagship products, key policies, contact) via a theme template so AI assistants get a curated, machine-readable map of the store.

    194 GitHub stars~1.8k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Shopify Admin Product Affinity Cross Sell

What does Shopify Admin Product Affinity Cross Sell do?

Mine order history to find which products are most frequently bought together, then rank pairs by support, confidence, and lift to power bundles and cross-sell recommendations. Shopify Admin Product Affinity Cross Sell is an agent skill from 40RTY-ai/shopify-admin-skills. Mine order history to find which products are most frequently bought together, then rank pairs by support, confidence, and lift to power bundles and cross-sell recommendations.

How do I install Shopify Admin Product Affinity Cross Sell in Claude Code?

Run `npx skills add 40RTY-ai/shopify-admin-skills --skill shopify-admin-product-affinity-cross-sell -a claude-code`. Or copy the skill folder (skills/order-intelligence/shopify-admin-product-affinity-cross-sell in 40RTY-ai/shopify-admin-skills) into .claude/skills/shopify-admin-product-affinity-cross-sell in your project. Claude Code loads it when a task matches its description.

How do I install Shopify Admin Product Affinity Cross Sell in Codex?

Run `npx skills add 40RTY-ai/shopify-admin-skills --skill shopify-admin-product-affinity-cross-sell -a codex`. Or copy the skill folder (skills/order-intelligence/shopify-admin-product-affinity-cross-sell in 40RTY-ai/shopify-admin-skills) into .agents/skills/shopify-admin-product-affinity-cross-sell in your project. Codex loads it when a task matches its description.

Can I use Shopify Admin Product Affinity Cross Sell in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add 40RTY-ai/shopify-admin-skills --skill shopify-admin-product-affinity-cross-sell -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/shopify-admin-product-affinity-cross-sell, .gemini/skills/shopify-admin-product-affinity-cross-sell, .github/skills/shopify-admin-product-affinity-cross-sell and .opencode/skills/shopify-admin-product-affinity-cross-sell in your project.

What does Shopify Admin Product Affinity Cross Sell need to run?

Going by SKILL.md and its folder, Shopify Admin Product Affinity Cross Sell needs the command-line tools its instructions call (shopify). Compatibility (from SKILL.md): Claude Code, Cursor, Codex, Gemini CLI.

Does Shopify Admin Product Affinity Cross Sell access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Shopify Admin Product Affinity Cross Sell safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Shopify Admin Product Affinity Cross Sell use?

Shopify Admin Product Affinity Cross Sell is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Shopify Admin Product Affinity Cross Sell use?

About 2.1k tokens (SKILL.md is roughly 8.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Shopify Admin Product Affinity Cross Sell?

Skills that share tags, products or a category with Shopify Admin Product Affinity Cross Sell: Shopify (Shopify/Shopify-AI-Toolkit, 592 stars), E-commerce Visual Copywriting (feichanggege/ecommerce-visual-copywriting-skill, 867 stars), Reviewing Pull Requests (Shopify/shopify-app-js, 541 stars) and Better Design (marvkr/better-design, 254 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Shopify Admin Product Affinity Cross Sell?

40RTY-ai (a GitHub organization) maintains it in 40RTY-ai/shopify-admin-skills, which has 194 GitHub stars. The repository holds 116 skills in this directory. The repository was last updated on August 14, 2026.

Source: 40RTY-ai/shopify-admin-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.