A Claude Code project that acts as a CEO advisor for a Shopify store, using data you export from Shopify's admin — or, optionally, pulled live from the Shopify Admin API.
.claude/agents/shopify-ceo.md— the CEO persona: a subagent that synthesizes data into strategic insight rather than just reporting numbers..claude/skills/— the analytical building blocks the agent draws on:sales-analysis— revenue, growth, AOV, seasonality, top/bottom productscustomer-retention— repeat purchase rate, cohorts, LTV, churn signalsinventory-ops— stock levels, sell-through, restock priorities, negative-stock data-integrity checkmarketing-channel— discount code performance, channel/source mixprofitability-margin— gross margin by product/period/channel, not just revenue (needs product cost data, see below)forecasting— seasonality-aware trend projection; flags whether a recent swing is a real break or normal seasonal variationwinback-campaign— turnscustomer-retention's dormant-customer signal into a ranked, tiered outreach target listceo-memo— synthesizes the above into a full executive memo, optionally with chartsshopify-api— pulls fresh data directly from Shopify's Admin API intodata/exports/, as an alternative to manual exports (requires one-time credential setup, see below); also pulls per-variant cost, needed forprofitability-margin
data/exports/— where Shopify data lives, whether dropped in manually or pulled via API (orders, products, customers, finance/analytics — no subfolders, the agent identifies each file by its header row). Seedata/exports/README.md.reports/— dated CEO memos get saved here when generated..env.example— template for Shopify API credentials (copy to.envand fill in; only needed for theshopify-apiskill).
Manual exports: export what you want analyzed from Shopify admin (Orders / Products / Customers / Analytics) and drop the CSV(s) into data/exports/ — everything goes in the same folder.
Live pulls (optional): copy .env.example to .env, fill in a Shopify Admin API access token (see .claude/skills/shopify-api/SKILL.md for the one-time setup steps), then either ask for current data — e.g. "pull the latest orders" — or use one of the commands below.
Either way, open this project in Claude Code and just ask, e.g.:
- "How's revenue trending this month?"
- "Which products should I restock first?"
- "Are customers coming back?"
- "Give me a state-of-the-business memo."
For a narrow question, Claude will use the one relevant skill directly.
| Command | What it does |
|---|---|
/pull-all-data |
Pulls orders, products, and customers from Shopify's Admin API into data/exports/. Requires .env to be configured. |
/ceo-report |
Analyzes everything currently in data/exports/ and produces a full CEO memo in reports/. |
/pull-and-report |
Runs both of the above back to back — the one-shot option for "pull everything and give me a report." |
See reports/sample-ceo-memo.md for an example of what /ceo-report (or /pull-and-report) produces.
- Video for showing how to get your Shopify Admin API access token: https://www.youtube.com/watch?v=zOZPq0s8yZU
- The agent only reasons over data you've actually provided — it will call out missing exports rather than guessing.
- Shopify's orders export has one row per line item (order totals repeat across rows); the skills account for this when computing order-level vs. product-level metrics.
data/exports/*.csvand.envare gitignored by default since they're business-sensitive.