Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计通过

pricingpricing 开发

Agent Skill

pricing 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

374

周安装

15

GitHub Stars

4

下载量

121
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:pricing(pricing 开发)
来源仓库:https://github.com/crystallizeapi/ai
仓库路径:skills/pricing
安装命令:
npx skills add https://github.com/crystallizeapi/ai --skill pricing
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/crystallizeapi/ai --skill pricing

简介

构建 Crystallize 多层级定价体系,包括变体、本地化价表与促销规则。

  • 支持全局价格类型、区域货币转换与购物车级别折扣叠加逻辑。
  • 适用于复杂电商场景下的灵活定价策略实施与架构决策。
  • 安装需通过 npx 添加指定仓库,建议结合产品目录结构规划价格层级。
  • pricing 属于开发类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Crystallize Pricing Skill

Design, recommend, and implement pricing strategies in Crystallize. This skill covers the full pricing hierarchy — from global price variants through localized price lists to cart-level promotions — and helps you make sound architectural decisions about how to structure pricing for any commerce use case.

The Pricing Hierarchy

Crystallize resolves prices through a layered hierarchy. Each layer can override or adjust the one above it:

┌─────────────────────────────────────────────────┐
│  1. Price Variants (base layer)                 │
│     Global price types applied to all products  │
│     e.g. Retail, Sales, B2B, Members            │
├─────────────────────────────────────────────────┤
│  2. Price Lists (override layer)                │
│     Market/customer-specific adjustments        │
│     e.g. "EU Retail EUR", "US B2B USD"          │
├─────────────────────────────────────────────────┤
│  3. Promotions (cart layer)                     │
│     Checkout-time discounts and campaigns       │
│     e.g. "20% off", "Buy 3 pay for 2"          │
└─────────────────────────────────────────────────┘

Resolution order: When a customer checks out, the system evaluates:

  1. Which price variant applies (based on context)
  2. Whether a price list overrides that variant (based on market, customer group, time period)
  3. Whether any promotions apply (based on cart contents, coupon codes, triggers)

Quick Start Decision Tree

START: You need to set up pricing.

Q1: Do you sell in a single currency with one price per product?
  → Yes → Create 1 price variant (e.g. "default" in your currency)
  → No → Continue

Q2: Do you need different price *types* (retail vs wholesale, regular vs sale)?
  → Yes → Create a price variant per type (see Price Variant Patterns below)

Q3: Do you sell in multiple currencies or regions?
  → Yes → Create Markets + Price Lists (see Markets & Price Lists below)

Q4: Do you need temporary discounts, coupon codes, or "buy X get Y" deals?
  → Yes → Set up Promotions (see Promotions below)

Q5: Do you have customer-specific pricing (B2B agreements, VIP tiers)?
  → Yes → Use Price Lists targeted to customer groups

Price Variants

Price variants are global definitions — they define the *types* of prices available across your entire catalogue. Every product variant can then have a value for each price variant.

Key Concepts

  • Name: Human-readable (e.g. "US Dollar Retail")
  • Identifier: API-safe, lowercase (e.g. usd-retail)
  • Currency: ISO 4217 code (e.g. USD, EUR, NOK)
  • A single price variant = one currency. For multi-currency, create separate variants.

The Default Price Variant

Every Crystallize tenant comes with a default price variant. It must always exist — it is the system's fallback and cannot be deleted.

Best practice: Rename it to match your primary use case.

Business TypeRename default toCurrencyRationale
B2C single marketretailYour main currencyThe standard consumer price
B2C multi-marketretail (main market currency)Main market currencyThe primary market's retail price
B2B single marketb2b or wholesaleYour main currencyYour main B2B list price
B2B + B2Cretail (main market)Main market currencyRetail is the most common base

The default variant serves as the fallback everywhere — if no price list override or more specific variant applies, this is the price the system resolves to. So it should represent your most common, primary price type for your main market.

Naming Conventions

Use clear, consistent names that encode purpose and currency:

PatternExample IdentifierExample NameCurrency
Single marketdefaultDefaultUSD
Currency-basedusd, eur, nokUS Dollar, Euro, Norwegian Kronerespective
Purpose-basedretail, sales, b2bRetail, Sales, B2Bsame
Combinedusd-retail, eur-b2bUSD Retail, EUR B2Brespective

Recommended Patterns by Business Type

Simple B2C (single market)

Price Variants:
  └── default (USD) — The only price, used everywhere

When: Single-country store, one currency, no B2B. Start here and add complexity later.

B2C with Sales Pricing (single market)

Price Variants:
  ├── retail (USD) — The standard price / compare-at price ("was" price)
  └── sales (USD)  — The marked-down selling price ("now" price)

When: You show was/now or strikethrough pricing. Retail is the reference price — the "compare at" price displayed crossed out. Sales is the actual selling price. When no sale is active, the storefront falls back to the Retail price (Sales is left empty or equal to Retail).

Key rule: Retail is always set. Sales is only set when the product is on sale. The storefront checks: if Sales exists and is lower than Retail → show strikethrough. Otherwise → show Retail as the current price.

B2C Per-Market (the most typical B2C pattern)

Price Variants:
  ├── retail (USD)  — US retail (the default variant, renamed)
  ├── sales (USD)   — US sales / marked-down price
  ├── retail-eur (EUR) — EU retail
  ├── sales-eur (EUR)  — EU sales
  ├── retail-gbp (GBP) — UK retail
  └── sales-gbp (GBP)  — UK sales

When: Multi-market B2C with was/now pricing per market. Each market gets a Retail + Sales pair. The default variant is renamed to retail for the primary market. Secondary markets use retail-{currency} / sales-{currency} suffixes.

Resolution per market:

  • Primary market (US): Check sales → fall back to retail
  • EU market: Check sales-eur → fall back to retail-eur
  • UK market: Check sales-gbp → fall back to retail-gbp

Price Lists can further override any of these per market.

B2C Multi-Currency (no sales pricing)

Price Variants:
  ├── usd (USD) — US market price
  ├── eur (EUR) — European market price
  └── gbp (GBP) — UK market price

When: You sell internationally with manually set prices per currency but don't show was/now pricing. Simpler than the retail/sales pattern.

B2C + B2B (single currency)

Price Variants:
  ├── retail (USD) — Consumer price / compare-at reference
  ├── sales (USD)  — Consumer sale price (when on sale)
  └── b2b (USD)    — Wholesale/business price

When: You serve both consumers and business customers in the same currency. B2B customers typically don't see sales pricing — they have fixed contract rates.

B2C + B2B Multi-Currency

Price Variants:
  ├── retail (USD)      — US consumer price (default, renamed)
  ├── sales (USD)       — US consumer sale price
  ├── b2b (USD)         — US wholesale price
  ├── retail-eur (EUR)  — EU consumer price
  ├── sales-eur (EUR)   — EU consumer sale price
  ├── b2b-eur (EUR)     — EU wholesale price
  └── ...per additional market

When: International B2B+B2C. Each market gets a retail/sales pair for consumers plus a B2B variant. The most complex but most flexible setup.

Membership / Loyalty Tiers

Price Variants:
  ├── retail (USD) — Standard consumer price
  ├── members (USD) — Loyalty program price
  └── vip (USD) — Top-tier customer price

When: You have tiered customer programmes. Often combined with Price Lists for more granular control.

How Many Price Variants?

Guidelines:

  • Start minimal — You can always add more. Begin with 1–2 and expand when the business requires it.
  • Avoid explosion — 10+ variants is a warning sign. Use Price Lists for market-specific overrides instead.
  • One per purpose × currency — If you have 3 currencies and 2 purposes (retail + B2B), that's 6 variants.
  • Don't duplicate what Price Lists do — Price variants are for structurally different price *types*. Regional adjustments belong in Price Lists.
Business ComplexityTypical CountVariants
Simple single-market1default
B2C with sales pricing2retail + sales
Multi-currency B2C2–5One per currency
B2C + B2B single currency2–3retail + sales + b2b
Enterprise multi-market4–8Purpose × currency

Common Mistakes

  1. Creating a variant per country — Use Price Lists for regional adjustments instead
  2. Leaving "default" named as "default" — Always rename it to reflect its purpose (e.g. retail for B2C, b2b for B2B). The name "default" tells nobody what the price represents.
  3. Confusing retail and sales — Retail is the reference/compare-at price (always set). Sales is the marked-down price (only set during a sale). The storefront falls back to Retail when Sales is empty.
  4. Using promotions when you need persistent sales pricing — Promotions are for cart-level, time-limited campaigns. If you always show a was/now price on the product page, use a sales price variant instead.
  5. Inconsistent naming — Pick a convention ({purpose}-{currency} or {purpose}) and stick with it across all variants
  6. No currency suffix for secondary markets — When multi-currency, primary market variants can be just retail/sales, but secondary markets should include a currency suffix: retail-eur, sales-eur
  7. Too many variants — 10+ variants is a red flag. Use Price Lists for customer-specific or regional fine-tuning instead of creating more variants

Price Lists

Price lists override or adjust prices for specific contexts. They sit between variants and promotions in the hierarchy.

When to Use Price Lists (not Price Variants)

ScenarioUse Price Variant?Use Price List?
USD vs EUR base prices✅ YesNo
B2B vs Retail price type✅ YesNo
"Norway gets 10% less than global EUR"No✅ Yes
"VIP customers get special prices"No✅ Yes
"Black Friday EU pricing"No✅ Yes
"Wholesale customer X negotiated rate"No✅ Yes

Price List Configuration

Each price list can:

  • Target specific price variants (e.g. only adjust B2B prices)
  • Apply to all or specific products (by drag-and-drop or bulk selection)
  • Adjust by: percentage, relative value, or absolute price
  • Have a time period: start/end dates for seasonal campaigns
  • Be scoped to: a market, customer group, or individual customer

Recommended Price List Patterns

Regional Adjustments

Price Lists:
  ├── "EU Retail" — Applies to: eur-retail variant, Market: EU
  ├── "US Retail" — Applies to: usd-retail variant, Market: US
  └── "Nordic B2B" — Applies to: eur-b2b variant, Market: Nordics

Customer-Specific B2B

Price Lists:
  ├── "Wholesale Tier 1" — 15% off B2B variant, Customer Group: Tier 1
  ├── "Wholesale Tier 2" — 25% off B2B variant, Customer Group: Tier 2
  └── "Acme Corp Agreement" — Fixed prices, Customer: Acme Corp

Seasonal Campaigns

Price Lists:
  ├── "Summer Sale EU" — 20% off retail, Market: EU, Period: Jun–Aug
  └── "Black Friday Global" — Specific prices, Period: Nov 25–28

Markets

Markets define selling contexts. They group together the rules for who gets which prices, promotions, and configurations.

What Markets Represent

A market can be:

  • A country (Norway, Sweden, Germany)
  • A region (EU, Nordics, North America)
  • A segment (Norway B2B, Norway Retail)
  • A channel (Online, In-Store, Marketplace)

Market Setup Recommendations

Simple: One Market

Markets:
  └── "default" — Your only selling context

Multi-Region

Markets:
  ├── "us" — United States
  ├── "eu" — European Union
  ├── "uk" — United Kingdom
  └── "row" — Rest of World (fallback)

B2B + B2C per Region

Markets:
  ├── "eu-retail" — EU consumers
  ├── "eu-b2b" — EU businesses
  ├── "us-retail" — US consumers
  └── "us-b2b" — US businesses

How Markets Connect to Pricing

Market ──→ Price Lists (which prices apply)
       ──→ Promotions (which campaigns apply)
       ──→ Checkout context (resolved at purchase time)

Markets are set in the checkout context — at cart/checkout time, the active market determines which price lists and promotions are evaluated.

Promotions

Promotions apply at the cart level — they only become visible during checkout, not on product pages. This keeps your base pricing clean while enabling flexible campaigns.

Promotion Mechanisms

MechanismDescriptionExample
Percentage% off the price"20% off all shoes"
FixedFlat amount off"$10 off orders over $50"
X for YBuy X, pay for Y"Buy 3, pay for 2"
CartReduce cart total"$20 off the entire cart"

Promotion Components

  1. Mechanism — How the discount is calculated (percentage, fixed, X-for-Y, cart)
  2. Period (optional) — When the promotion is active (start/end dates, can recur)
  3. Trigger (optional) — What activates it (e.g. "3 items of product X in cart")
  4. Target (optional) — Which products are affected (if empty, applies to all)
  5. Limitations — Cumulative rules, max usage, per-customer limits

When to Use Promotions vs Price Lists

ScenarioPromotionsPrice Lists
Time-limited discountsPossible but less ideal
Coupon codes
"Buy X get Y" deals
Permanent regional pricing
Customer-specific agreements
Free shipping thresholds

Consultation Approach

When advising on pricing setup, ask these discovery questions:

Discovery Questions

  1. Business Model

- "Is this B2C, B2B, or both?" - "Do you have tiered pricing for different customer groups?"

  1. Geographic Scope

- "Which markets/countries do you sell to?" - "Do you need separate currencies, or do you use a single currency?" - "Are prices manually set per region, or derived from a base price?"

  1. Sales Strategy

- "Do you run sales or show 'was/now' pricing?" - "Do you use coupon codes or promotional campaigns?" - "Do you have seasonal pricing patterns?"

  1. Customer Relationships

- "Do you have wholesale/B2B customers with negotiated rates?" - "Do you have a loyalty or membership programme?" - "Do individual customers have unique pricing agreements?"

  1. Complexity Assessment

- "How many products are in your catalogue?" - "How often do prices change?" - "Who manages pricing? (technical team vs merchandisers)"

Response Framework

After discovery, structure your recommendation as:

  1. Price Variants — The base layer: how many, naming, currencies
  2. Markets — If multi-region: how to segment
  3. Price Lists — Regional/customer overrides (if needed)
  4. Promotions — Campaign strategy (if needed)
  5. Migration path — Start simple, grow into complexity

Always recommend starting with the minimum viable setup and adding layers as the business requires them.

Tax & Pricing

Prices in Crystallize are stored as raw numbers — the system does not enforce whether they are tax-inclusive or tax-exclusive. This is a business decision:

  • B2C (most of Europe, Australia): Prices typically include VAT. Store gross prices in your variants.
  • B2B / US B2C: Prices are typically tax-exclusive. Store net prices and calculate tax at checkout.
  • Mixed: Use price variants or price lists to maintain both. For example, EU retail variants hold gross prices while US retail variants hold net prices.

Tax calculation itself happens at the checkout/order layer — configure tax rates in your checkout flow or use an external tax service. The pricing hierarchy (variants → price lists → promotions) resolves the price; tax is applied on top of (or extracted from) that resolved price.

Migration Paths

Start simple and add layers as your business requires. Here are common upgrade paths:

Single variant → Sales pricing

Before: default (USD)
After:  retail (USD) + sales (USD)

Rename default to retail. Create a new sales variant in the same currency. Only set sales on products that are currently on sale.

Single currency → Multi-currency

Before: retail (USD) + sales (USD)
After:  retail (USD) + sales (USD) + retail-eur (EUR) + sales-eur (EUR)

Keep your primary market variants as-is. Add new variant pairs for each additional currency. Create Markets for each region and Price Lists if you need regional adjustments beyond the base variant prices.

B2C only → B2C + B2B

Before: retail (USD) + sales (USD)
After:  retail (USD) + sales (USD) + b2b (USD)

Add a b2b variant. Create a Market for B2B customers (e.g. us-b2b). Use Price Lists for customer-specific or tiered B2B pricing.

Static pricing → Campaigns

Before: Price variants only
After:  Price variants + Promotions

Keep your variant structure unchanged. Add Promotions for time-limited, cart-level discounts (coupons, buy-X-get-Y, seasonal sales). If you need persistent regional adjustments, add Price Lists instead of (or alongside) Promotions.

Further Reading

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.45%
按下载量换算45

Claude

28.33%
按下载量换算34

Cursor

19.24%
按下载量换算23

Gemini CLI

9.12%
按下载量换算11

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills