Explore in MochiBot. Install in chat.Hosted workspaces and MochiBot lightweight setups include the Skills assistant. Choose a Skill and ask for installation in chat. Other OpenClaw setups can follow the first-install guide.
How to use Skills →
MOCHILAB / AI SKILL
Dynamic Stock Cover and Arrival Gaps
Project dated demand against available stock and confirmed arrivals, with lead-time gaps and pack/MOQ replenishment scenarios.
What it does
Project dated demand against available stock and confirmed arrivals, with lead-time gaps and pack/MOQ replenishment scenarios.
Model and scope
stock_basis must be available_to_allocate, observed_on must equal as_of. Historical sales have unique sale_id, sku, date, nonnegative units and kind=sale; returns are excluded in normalization. window_start/end select explicit days on/before as_of. velocity_denominator is calendar_days or in_stock_days; latter needs unique in_stock_dates per SKU and validates sale dates. Stock rows provide available, lead_days, safety_days, target_days, positive pack, nonnegative moq. horizon_days (1–365) must include lead+safety+target for each SKU. Future arrivals are incremental unique arrival_id, sku, arrival_on, units and confirmed/unconfirmed status; only confirmed receipts apply. demand_plan has unique sku/date and overrides velocity on that future day. For each day, receive at start, subtract demand, carry negative backlog. Baseline excludes hypothetical new order. Suggestion covers demand over lead+safety+target minus opening stock and confirmed arrivals within that window, then ceil(max(need,MOQ)/pack)*pack if need>0. Historical zero-sales cover is null. Zero in-stock observation days are rejected because velocity is unknown. Actual demand is not forecast. Raw on-hand reports must be adjusted for committed/unavailable units first.
Try saying
Project the next seven days from dated sales and confirmed receipts, and show the first stock gap.
Use my in-stock observation dates, dated demand overrides and supplier lead time to compare order scenarios.
Runtime and outputs
Reads supplied normalized JSON and creates result.json, report.md and rows.csv with input and output hashes. Preserve raw CSV; ask the assistant to normalize exports against the bundled input reference. Python 3.10+ standard library only; no paid data key or MochiLab backend needed. Optional explanation uses your current agent model and its ordinary service costs separately. Existing output directories are refused. Includes fictional examples and independent offline domain tests. No API/store changes, uploads, automatic tasks, notifications, legal or tax decisions.
References