Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计提醒

dynamic-pricing动态定价

Agent Skill

dynamic-pricing 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

442

周安装

19

GitHub Stars

19

下载量

155
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/finsilabs/awesome-ecommerce-skills --skill dynamic-pricing

简介

dynamic-pricing 根据市场需求、库存与竞争价格自动调整商品价格以提升收益。

  • 适用于高周转 SKU 的电商定价策略优化场景。
  • 多数 Shopify/WooCommerce 商户使用第三方 repricing app 而非定制代码。
  • 需接入销售数据、竞品爬虫与业务规则引擎形成闭环系统。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Dynamic Pricing

Overview

Dynamic pricing automatically adjusts product prices based on demand signals, inventory levels, competitor prices, and business rules. The goal is to maximize revenue per unit sold — raising prices when demand is strong or inventory is scarce, and reducing them to clear slow-moving stock. Most Shopify and WooCommerce merchants accomplish this with a repricing app rather than custom code. Custom implementations are reserved for headless storefronts or merchants with unique repricing logic that apps cannot handle.

When to Use This Skill

  • When high-velocity SKUs lose revenue because prices are set-and-forgotten while competitors adjust hourly
  • When you need to liquidate slow-moving inventory through automatic markdown schedules
  • When running a marketplace where seller prices must respond to competitive pressure
  • When building a revenue management system for perishable or time-sensitive inventory
  • When A/B testing price elasticity at scale and needing a framework to safely roll out price changes

Core Instructions

Step 1: Determine the merchant's platform and choose the right tool

PlatformRecommended ToolWhy
ShopifyPrisync, Wiser, or Skio PricingPrisync monitors competitor prices and pushes price updates via Shopify Admin API; Wiser uses demand signals and inventory
Shopify PlusPrisync + Shopify Flow automationsShopify Flow can trigger price changes via webhooks based on inventory or sales velocity signals
WooCommercePrisync, Repricer.com (via WooCommerce API), or custom via WooCommerce REST APIMost repricers support WooCommerce through the product API
BigCommercePrisync, Linnworks, or ChannelAdvisorBigCommerce's Price Lists API is designed for dynamic segment-based pricing
Amazon/Multi-channelRepricerExpress, BQool, or Seller SnapPurpose-built for Amazon repricing with Buy Box optimization
Custom / HeadlessBuild a pricing job that calls your platform's pricing APIFull control; required when custom logic exceeds what apps can handle

Step 2: Define your pricing rules before configuring any tool

Before touching any tool, document your guardrails — these prevent the repricing algorithm from making decisions that destroy margin or customer trust:

RuleExample
Floor priceNever go below cost × 1.15 (15% gross margin minimum)
Ceiling priceNever exceed MSRP or a set maximum
Maximum change per cycleNever change more than 20% in a single repricing run
Change thresholdOnly update if the new price differs by more than 2% (prevents micro-oscillation)
Lock-out periodsDo not reprice during active flash sales or promotions
Human review thresholdAny change greater than 10% must be queued for human approval before applying

Step 3: Platform-specific setup


Shopify

Option A: Prisync (competitor-based repricing)

  1. Sign up at prisync.com and connect your Shopify store via the integration
  2. Add competitor product URLs to track in the Prisync dashboard
  3. Set repricing rules: "Match lowest competitor price", "Beat by X%", or "Match and beat"
  4. Set your floor and ceiling prices per product
  5. Prisync pushes price updates to Shopify automatically on your configured schedule (hourly, daily)

Option B: Shopify Flow (inventory/demand-based, Shopify Plus)

  1. In your Shopify admin, go to Apps → Flow
  2. Create a new workflow triggered by Inventory level changed or a custom webhook
  3. Add a condition: e.g., "Inventory quantity is less than 10"
  4. Add an action: Update product variant and set the price to a higher value
  5. Add a separate workflow for when inventory recovers to restore the original price

Keep the original prices stored as a product metafield (product.metafields.pricing.original_price) so you can always restore them.

Option C: Third-party apps for demand-based repricing

  • Wiser (Shopify App Store): uses sales velocity, add-to-cart rates, and inventory to suggest and apply price changes
  • Bold Commerce's Pricing: allows scheduling price changes and automated rules

WooCommerce

Option A: Prisync + WooCommerce REST API

  1. Connect Prisync to WooCommerce using the REST API credentials (WooCommerce Settings → Advanced → REST API → Add key)
  2. Map your products in Prisync to competitor URLs
  3. Configure repricing rules and schedules in Prisync
  4. Prisync calls PUT /wp-json/wc/v3/products/{id}/variations/{id} to update prices

Option B: Custom scheduled repricing via WP-Cron

For demand-based repricing in WooCommerce, use a scheduled task:

  1. Write a PHP function that checks inventory levels and sales velocity via WooCommerce's order history
  2. Schedule it with WP-Cron or a server cron
  3. Call wc_get_product()->set_price() and save() to update prices programmatically
  4. Log every price change to a custom table for audit and rollback

Option C: YITH Dynamic Pricing plugin

For time-based price changes (scheduled markdowns):

  1. Install YITH WooCommerce Dynamic Pricing & Discounts
  2. Create rules that apply a percentage discount during specific date ranges
  3. This is simpler than full dynamic repricing but covers "end of season" markdown use cases

BigCommerce

BigCommerce's Price Lists feature is ideal for dynamic customer-segment pricing:

  1. Go to Products → Price Lists
  2. Create price lists per customer group (e.g., "demand_high_inventory_low")
  3. Use the BigCommerce Price Lists API to update prices programmatically based on your pricing logic
  4. Assign price lists to customer groups via Customers → Customer Groups

For site-wide dynamic pricing without customer segmentation, use the BigCommerce Catalog API to update sale_price on products based on your repricing schedule.

Third-party tools: Linnworks and ChannelAdvisor both integrate with BigCommerce and include competitor monitoring and automated repricing.


Custom / Headless

For headless storefronts, implement a repricing job that runs on a schedule:

import { CronJob } from 'cron';

interface PricingContext {
  productId: string;
  currentPriceCents: number;
  costCents: number;
  inventoryLevel: number;
  salesVelocity7d: number;       // units/day rolling average
  competitorLowestCents?: number; // from price intelligence feed
  floorCents: number;
  ceilingCents: number;
}

function computeNewPrice(ctx: PricingContext): { priceCents: number; reason: string } {
  let price = ctx.currentPriceCents;
  const reasons: string[] = [];

  // Inventory pressure: near stockout → slow demand with a price increase
  if (ctx.inventoryLevel <= 5 && ctx.salesVelocity7d > 0.5) {
    price = Math.round(price * 1.08);
    reasons.push('low_inventory');
  }

  // Slow mover: markdown if no meaningful sales in 7 days
  if (ctx.salesVelocity7d < 0.1) {
    price = Math.round(price * 0.95);
    reasons.push('slow_mover_markdown');
  }

  // Competitor pricing: stay competitive
  if (ctx.competitorLowestCents && price > ctx.competitorLowestCents * 1.05) {
    price = Math.round(ctx.competitorLowestCents * 0.99); // undercut by 1%
    reasons.push('competitor_undercut');
  }

  // Enforce guardrails
  const marginFloor = Math.round(ctx.costCents * 1.15);
  price = Math.max(price, marginFloor, ctx.floorCents);
  price = Math.min(price, ctx.ceilingCents);

  // Only apply if change exceeds 2% threshold
  const changePct = Math.abs(price - ctx.currentPriceCents) / ctx.currentPriceCents;
  if (changePct < 0.02) return { priceCents: ctx.currentPriceCents, reason: 'below_threshold' };

  // Cap single-run change at 20%
  if (changePct > 0.20) {
    const direction = price > ctx.currentPriceCents ? 1 : -1;
    price = Math.round(ctx.currentPriceCents * (1 + direction * 0.20));
    reasons.push('capped_at_20pct');
  }

  return { priceCents: price, reason: reasons.join(',') || 'no_change' };
}

// Run every 30 minutes during business hours
new CronJob('*/30 6-22 * * *', async () => {
  const products = await db.products.findAll({ dynamicPricingEnabled: true });
  for (const product of products) {
    const ctx = await buildPricingContext(product);
    const { priceCents, reason } = computeNewPrice(ctx);
    if (priceCents !== ctx.currentPriceCents) {
      await platformApi.updatePrice(product.id, priceCents);
      await db.priceHistory.insert({ productId: product.id, oldPrice: ctx.currentPriceCents, newPrice: priceCents, reason, changedAt: new Date() });
    }
  }
}, null, true, 'America/New_York');

Best Practices

  • Always enforce a floor price tied to cost — compute floor = cost × 1 + min_margin and make it inviolable; no algorithm override permitted below cost
  • Store a full price history — every price change needs a row with timestamp, old price, new price, and reason for rollback, audits, and elasticity analysis
  • Cap single-run price changes — limit any single job run to ±20% to prevent runaway repricing from bad data or bugs
  • Separate recommendation from application — the engine proposes a price; a separate step applies it; this enables human review queues and dry-run mode
  • Alert on large automatic changes — send a Slack or email alert when the engine applies a change greater than 10% so a human can review
  • A/B test price changes — before rolling out a new price site-wide, run a test on a segment of visitors using the A/B testing pricing skill

Common Pitfalls

ProblemSolution
Price drops below cost during competitor warEnforce Math.max(newPrice, costCents * 1.15) as an absolute floor that the algorithm cannot bypass
Stale competitor prices cause bad repricingStore fetched_at on every competitor price record; skip prices older than 4 hours
Price oscillation — engine keeps raising then loweringAdd a minimum 2-hour cooldown between changes and a 2% hysteresis band
Repricing fires during an active flash saleCheck for active promotions before applying algorithmic changes; add an is_price_locked flag to products in active sales
CDN/search index serves old price after updatePurge the product page cache and update the search index immediately after each price change

Related Skills

  • @ab-testing-pricing
  • @flash-sale-engine
  • @price-rules-engine
  • @volume-pricing
  • @discount-engine

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Codex

35.57%
按下载量换算55

Claude

30.9%
按下载量换算48

Cursor

20.6%
按下载量换算32

Gemini CLI

10.88%
按下载量换算17

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

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

来源信息

继续浏览同类 Skills