reorder-policy

Cómo decidir si reordenar un SKU y en qué cantidad. Cargar esto siempre que una tarea involucre recomendaciones de reorden, órdenes de compra o "¿debemos reabastecer?"…

npx skills add https://github.com/anthropics/cwc-workshops --skill reorder-policy

Reorder Policy

This skill encodes StockPilot's reorder rules. Use it whenever you need to decide whether to reorder a SKU and how many units to order.

Inputs you need

ValueWhere to get it
on_handLatest row for the SKU in /mnt/user/data/stock_levels.csv (sum across warehouses unless the task is warehouse-specific)
reorder_point/mnt/user/data/products.csv
avg_daily_salesMean of units_sold over the last 14 days in /mnt/user/data/sales_history.csv
lead_time_daysFrom the chosen supplier (see the supplier-selection skill)
forecast_qty, confidence, flagsFrom the forecasting skill, only if the task looks forward more than 14 days or mentions a promo/season

Decision rules

  1. Do we reorder at all? Reorder if on_hand < reorder_point. If on_hand ≥ reorder_point, the answer is "no reorder needed" — stop here.

  2. How much? The target order quantity is 30 days of cover plus safety stock, minus what's already on hand:

    safety_stock = 1.5 × avg_daily_sales × lead_time_days
    order_qty    = (avg_daily_sales × 30) + safety_stock − on_hand
    

    Round up to the supplier's min_order_qty multiple.

  3. Confidence guard. If you obtained a forecast and confidence < 0.6, do not place a PO automatically. Instead:

    • Write an escalation to /mnt/user/sinks/outbox.jsonl using the notify-templates skill (escalation template), including the flags from the forecast.
    • In your final answer, state the recommended quantity and that it requires human review, with the reason.
  4. Expedite? If on_hand / avg_daily_sales < lead_time_days (you'll stock out before the order arrives), pick the supplier with the shortest lead time even if it's not the cheapest, and note "expedited" in the PO.

Worked example

SKU-0057: on_hand = 38, reorder_point = 120, avg_daily_sales = 18.2, chosen supplier lead_time_days = 7, min_order_qty = 50.

  • 38 < 120 → reorder.
  • safety_stock = 1.5 × 18.2 × 7 = 191.1
  • order_qty = (18.2 × 30) + 191.1 − 38 = 546 + 191.1 − 38 = 699.1 → round up to next 50 → 700
  • 38 / 18.2 = 2.1 days of cover, lead time is 7 → expedite.

Prioritization (when many SKUs are at risk)

Sort by tier, then by days-of-cover ascending within a tier:

  1. Stockouts — on_hand = 0 at any warehouse. Always first.
  2. Will stock out before PO arrives — days_of_cover < lead_time_days. Expedite or transfer.
  3. High-velocity below reorder — top-100 sellers below reorder point.
  4. Routine replenishment — everything else below reorder point.
  5. Trending toward reorder — note only, no action.

If you can't action every SKU in one pass, say how many you handled, how many remain, and list the remaining SKU IDs so the next run picks them up.

Transfer vs reorder

When one warehouse is low and another has surplus:

  • Transfer when the surplus warehouse has >30 days cover for itself, the 3–5 day transfer beats the best supplier lead, and the qty needed is ≲200 units. WH-CENTRAL is the default source.
  • Reorder when no warehouse has surplus, the qty is large, or supplier lead is comparable to transfer lead anyway.
  • Both when the shortage is urgent and large — transfer a bridge qty now, PO the remainder.

State which path you chose and why.

Compliance

  • Any single PO over $10,000 needs a one-line rationale included with the PO so ops can copy it into the ERP.
  • If you place more than five POs in one task, end with a one-line total committed spend.
  • Do not place a second PO for a SKU that already has an open PO covering the need.

Output

When you act, append to /mnt/user/sinks/purchase_orders.jsonl:

{"sku": "SKU-0057", "supplier_id": "SUP-03", "qty": 700, "expedite": true, "reason": "below reorder point; 2.1d cover"}

When you only recommend (no side-effect requested), return a structured ReorderDecision:

{"sku": "...", "reorder": true, "qty": 700, "supplier_id": "SUP-03", "expedite": true, "confidence": 0.85, "notes": "..."}

Más skills de anthropic

analyzing-financial-statements
anthropic
Esta habilidad calcula ratios financieros clave y métricas a partir de datos de estados financieros para el análisis de inversiones.
applying-brand-guidelines
anthropic
Esta habilidad aplica una imagen corporativa y un estilo consistentes a todos los documentos generados, incluidos colores, fuentes, diseños y mensajes.
creating-financial-models
anthropic
Esta habilidad proporciona un conjunto avanzado de modelado financiero con análisis DCF, pruebas de sensibilidad, simulaciones de Monte Carlo y planificación de escenarios para inversiones…
board-minutes
anthropic
Redacta actas de reuniones de la junta o comité en el formato de su organización. Detecta automáticamente las próximas reuniones de la junta y comités desde su calendario, solicita la agenda y…
crm-cleanup
anthropic
Escanea HubSpot en busca de negocios obsoletos, contactos duplicados y campos faltantes, luego corrige lo que el propietario aprueba. Acepta un argumento de alcance opcional para negocios, contactos,…
redshift-api
anthropic
Ejecutar SQL contra Amazon Redshift — enviar declaraciones, consultar estado, paginar resultados y explorar bases de datos/esquemas/tablas. Use esto siempre que el usuario quiera…
ticket-deflector
anthropic
Lee un correo electrónico o ticket de cliente reenviado, obtiene el estado del pedido/reembolso de PayPal y el historial de la cuenta de HubSpot, redacta una respuesta con tono adecuado en el estilo del propietario…
reg-feed-watcher
anthropic
Revisa los feeds regulatorios ahora e informa qué hay de nuevo desde la última revisión, filtrado por tu umbral de materialidad. Úsalo cuando el usuario diga "revisa los feeds",…