CtrlK
BlogDocsLog inGet started
Tessl Logo

weekly-report

Structure and data sources for the weekly inventory report. Load this when the task is "weekly report", "Monday report", or "summarize inventory status".

89

1.03x
Quality

88%

Does it follow best practices?

Impact

87%

1.03x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Weekly Inventory Report

Generate the report by writing one Python script via code execution that reads the CSVs and emits markdown. Do not make per-SKU tool calls.

Structure

# Inventory Report — {{warehouse or "All Warehouses"}} — week of {{date}}

## Stockouts (on_hand = 0)
| SKU | Product | Warehouse | Days out |
...

## Low Stock (below reorder point)
| SKU | On hand | Reorder pt | Days cover | Action |
...top 15 by urgency (lowest days_cover first)...

## Open POs
| PO | SKU | Qty | Supplier | ETA |
...from /mnt/user/sinks/purchase_orders.jsonl...

## Forecast Risk
SKUs where promo_next_month=1 or is_seasonal=1 and on_hand < 14d cover.
One line each: SKU, reason, recommended action.

Operating cadence (which report is being asked for)

CadenceTrigger phrasingContents
Daily"run the check", "the sweep"Low-stock list with action taken per SKU; one summary notification at the end.
Weekly (Mon)"the report", "weekly review"Per-warehouse: top concerns, open POs aging past their lead time, SKUs below reorder for >5 business days.
Monthly"supplier review"Suppliers whose on-time rate slipped; SKUs whose primary supplier may need changing.
Ad hocanything elseScope to what was asked.

If the request doesn't say which, infer from wording. The structure below is the weekly format; for daily, drop the Open-POs and Forecast-Risk sections and lead with the actions taken.

Aging-PO check (weekly only)

For each open PO, compare days-since-placed to the supplier's lead_time_days. List any PO where elapsed > lead_time as aging and include supplier + days overdue so ops can follow up.

Data sources

  • Stockouts & low stock: latest-date rows from /mnt/user/data/stock_levels.csv joined with /mnt/user/data/products.csv
  • Days of cover: on_hand / avg_daily_sales (last 14d from /mnt/user/data/sales_history.csv)
  • Open POs: /mnt/user/sinks/purchase_orders.jsonl
  • Forecast risk: /mnt/user/data/products.csv flags + days-of-cover from above

Do this in code

The CSVs are large (stock_levels is ~67k rows). Write a single script that loads them once, computes everything, and prints the markdown. Don't page through the data with tool calls — that's exactly the pattern this skill replaces.

Repository
anthropics/cwc-workshops
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.