A reusable pipeline folder — drop in a complaints CSV, type one line, get four artifacts — heatmap report, reply drafts, interactive dashboard, summary email — all consistent with each other, every Monday.
Chain it together: complaints in, Monday briefing pack out
← Use cases Contact center
Chain it together: complaints in, Monday briefing pack out
The capstone. You've done the heatmap, you've done the reply drafts — now chain them. One describes the whole Monday workflow, and from then on a single line ("do the Monday pack") turns a fresh complaints CSV into a themed report, reply drafts for the worst theme, an interactive dashboard, and a ready-to-send summary email. This is where stops being a tool and becomes a workflow. Audience: beginner · capstone · ~45 min · 6 steps
- The complaint-heatmap use case done once (you'll reuse its ideas, not its files)
- Ideally the empathic-reply use case too — the pipeline includes its drafting step
- Claude Code installed and a terminal open (see Day 1)
Every use case in this hub is one task: file in, file out. This one is different — it’s about composition. The insight: a CLAUDE.md isn’t just remembered preferences, it’s a program you wrote in plain English. Describe a multi-step workflow in it once, and a one-line runs the whole thing.
If you’ve done the complaint heatmap and the reply drafts, you’ve built both halves. Today you wire them together, add the dashboard and a summary email, and compress your Monday to one line.
Compliance check before you start. Same posture as the heatmap use case: this walkthrough runs on a synthetic CSV that Claude invents. With real complaint exports, clear the data source with your line manager first; the pipeline itself doesn’t change. The reply drafts the pipeline produces are drafts — a human reads and sends them, always.
Build the workspace
Open the .
Press ⌘+Space, type “Terminal”, and press Enter.
Open the Start menu (press the Windows key), type “Ubuntu”, and press Enter. If you don’t see Ubuntu listed, install WSL first.
In Ubuntu, ~/Desktop is a folder inside ’s Linux home (/home/<your-Linux-username>/Desktop) — not the Windows desktop you see in File Explorer at C:\Users\...\Desktop. That’s fine: the files are real and Claude can read and write them. Anywhere this use case says “open in Finder / File Explorer”, run explorer.exe . from your Ubuntu terminal — Windows opens that exact WSL folder in Explorer.
Type each line:
mkdir -p ~/Desktop/claude-lab/complaints-pipeline
cd ~/Desktop/claude-lab/complaints-pipeline
claude --dangerously-skip-permissions
mkdir -p ~/Desktop/claude-lab/complaints-pipeline— make a folder insideclaude-labon your Desktop (-pcreatesclaude-labtoo if it’s not there yet — it’s the one home for all hub use cases).cd ~/Desktop/claude-lab/complaints-pipeline— move into it.claude --dangerously-skip-permissions— start here. The flag stops Claude you for permission on every file write — safe in a fresh, dedicated folder like this one. (If you’d rather see every prompt for your first run, just typeclaude— same thing, more interruptions.)
Write the pipeline as a CLAUDE.md — *before* any data exists
This is the step that makes this use case the capstone. In every other walkthrough, CLAUDE.md came last, as a way to remember what you’d already done. Here it comes first: you’re writing the program before you run it.
Tell Claude:
Create a
CLAUDE.mdin this folder describing my Monday complaints pipeline. When I say “do the Monday pack”, you will, in this order:
- Read
complaints.csv(columns:date,channel,text) — the freshest export in the folder.- Write
heatmap-report.md— a one-pager: headline count (“X complaints across Y themes this week”), 5–7 themes sorted by count, one verbatim quote per theme, one resolution sentence per theme.- Write
replies-top-theme.md— for the single biggest theme, three reply drafts (warm / formal / accountable), each under 150 words, no corporate filler phrases, only facts present in the complaints themselves, with placeholders[CUSTOMER NAME]and[AGENT NAME].- Build
dashboard.html— a single self-contained interactive page: stat cards, a theme-by-day heatmap grid (weekday labels computed from the dates), click any cell to see the verbatim complaints behind it. No server, no internet, no external libraries. Accent colour#007a8a.- Write
weekly-email.md— a short email to the contact-centre lead: the headline, the top three themes with counts, one recommended action, and a line noting the dashboard file is attached.- Verify the pack before declaring it done: every quote in every artifact grep-matches the
textcolumn ofcomplaints.csv; the theme counts are identical across report, dashboard, and email; the per-theme counts sum to the CSV row count. Show me the verification output. If a check fails, fix and re-verify — don’t hand me an inconsistent pack.Stable rules: never invent complaints or counts; quotes are exact strings; if the CSV has fewer than 10 rows, say so and stop instead of inventing a trend.
Read what Claude wrote back. That file is the pipeline — six numbered behaviours, including the self-check. Notice step 6: the verification habit you learned in the other use cases is now baked into the program itself, so you can’t forget to run it.
Drop in a week of complaints
Practise on synthetic data first:
Create
complaints.csv: 40 realistic synthetic complaints for a Greek retail-bank contact centre, columnsdate,channel,text, dates spanning Monday 2026-06-01 to Sunday 2026-06-07, channels phone / email / chat. Cluster around recurring themes (duplicate card charges, app login failures, ATM errors, waits, transfer delays), uneven distribution, no real names or IBANs, commas inside text quoted properly.
Next Monday, this step becomes: download the real export, rename it complaints.csv, drop it in this folder. Nothing else changes.
Say the magic words
Type exactly this:
do the Monday pack
Then watch. Claude reads CLAUDE.md, walks the six steps in order, runs its own verification, and shows you the grep output proving the quotes are real. Two to four minutes, four files.
This is the moment the mental shifts. You didn’t paste a six-paragraph — the six paragraphs live in a file, version-controlled by you, and the prompt was four words.
Inspect the pack like a sceptic
The pipeline self-verifies the mechanical things; you check the judgment things, once per pipeline change:
- Open
dashboard.html— do the themes matchheatmap-report.md? Click two cells; are the complaints behind them really about that theme? - Read
replies-top-theme.md— would you actually send the warm one? If a draft states a “fact” that isn’t in any complaint, that’s a rule violation: tell Claude, and also ask it to tighten the rule inCLAUDE.mdso the leak can’t recur. - Read
weekly-email.mdaloud — it goes to a human who can fire back questions; the headline number must match the dashboard they’ll open.
Anything you correct, correct in CLAUDE.md, not just in the artifact. Fixing the artifact fixes this Monday; fixing the program fixes every Monday after.
What you've actually built
Run the loop twice more with fresh synthetic CSVs (ask Claude to invent “a bad week dominated by an app outage” and “a quiet week”) and watch the pack adapt while the format holds steady. That stability is what makes the team trust it by week three.
Stand back and look at the shape:
- Input contract — a CSV with three named columns.
- Program — a
CLAUDE.mdin plain English, six steps, self-verifying. - Invocation — four words.
- Output contract — four named files, mutually consistent, quotes provably real.
That’s a pipeline, by any engineer’s definition — and you wrote it in your own language, in an afternoon. Every recurring multi-step task in your team is a candidate for the same shape: month-end packs, weekly KPI summaries, intake triage. Pick the one that eats your Mondays, and write its CLAUDE.md first.
Turn a stack of customer complaints into a one-page heatmap
You ask Claude to invent a realistic complaints CSV (so the use case works without any system access), then a few minutes later you have a one-page report showing the top five themes, how often each appears, and one verbatim quote per theme. Repeatable every Monday on real data once you have it.