Use this when you have ~2 minutes before standup and need a clear read on iteration status before walking into the room. Output is a personal reference sheet — not a script, not a read-aloud artifact.
Inputs
Paste any or all of the following. Raw is fine — no required format.
- Iteration plan — stories in flight, their status, acceptance criteria if handy
- Yesterday's updates — what shipped, what got stuck, what moved
- New signals — Slack threads, PR comments, stakeholder messages since yesterday
Minimum: provide #1. The agent flags explicitly what it cannot assess without #2 or #3.
Steps
Step 1 — Parse
Auto-load yesterday's day-close handoff: Before parsing pasted inputs, check for journals/day-close-{{YESTERDAY}}.md. If it exists, load it as input #2 (Yesterday's updates) automatically. Kate does not need to paste it. If the file exists and Kate also pastes yesterday's updates, merge them -- the file may have items Kate's paste does not, and vice versa. If the file does not exist, proceed with whatever Kate pastes. Do not error.
Read all inputs and identify:
- Stories in flight and their last known status
- Explicit blockers or risks mentioned
- Signals of drift: story taking longer than expected, AC not started, PR sitting unreviewed, no update in 48+ hours
- Anything new the team may not have seen yet
Do not invent status. If a story has no update signal, mark it Unknown — no signal
and move it to Questions to Ask.
Step 2 — Generate
Produce the following sections:
Story Status Table
| Story | Status | Why |
|---|---|---|
| [title] | On Track / At Risk / Blocked / Done | [one sentence — specific signal, not vague] |
Status definitions:
- On Track — work is progressing, no signals of delay, within expected pace
- At Risk — a specific signal suggests delay or drift (name the signal)
- Blocked — work cannot continue without external input (name what and who)
- Done — accepted and off the board
- Unknown — no signal available; raise in standup
Blockers to Raise
Format: [Story] is blocked on [what] — needs [who] to [action].
If none: write "No blockers." Do not manufacture them.
Questions to Ask
Specific questions the PM should raise in standup — about unknown statuses, stalled PRs, stories with no recent signal, or risks needing team input.
Format: [Specific question] — listening for [what].
Vague questions ("How's it going?") are not acceptable here.
Pace Check
One sentence: is the iteration on track to hit its goal at current velocity? If the data doesn't support a clear answer, say so explicitly.
Things You Might Not Have Seen (omit if empty)
Surface anything from new signals -- Slack, PRs, stakeholder messages -- that the team may not know yet. If nothing new was provided or found, omit this section entirely.
Housekeeping Targets (omit if the day is full of meetings or active project work)
If the day looks light (few meetings, no urgent commitments), suggest a housekeeping block with specific targets. Pull from:
- Stale continuation prompts (glob
prompts/continuation-*.md, flag any >14 days old) - Stalled inbox items (check
inbox/_queue.mdfor items in raw/triaged >14 days or processing >7 days) - Superseded continuation prompts that need deletion
Format: "Light day -- good candidate for a housekeeping block. Targets:" followed by a bulleted list of 2-4 specific items. If none of these sources have actionable items, omit this section entirely.
Step 3 — Flag Uncertainty
Before delivering output, review:
- Any status assigned without a clear signal? Reclassify as Unknown.
- Any blocker that looks like it may already be resolved? Flag as Monitor, not raise.
- Anything missing that the PM should check before walking in?
List these at the bottom under: Check before you go in.
Output Format
Personal reference sheet. Plain text or markdown. Designed to be glanced at, not read aloud. Keep it to one screen.
Writing Rules
- Don't invent. No signal = Unknown, not a best guess.
- Status must earn its label. Every non-On Track status needs a named, specific reason.
- Questions must be specific. Name the story, name what you're watching for.
- Flag uncertainty explicitly. Hedge language beats false confidence every time.
- This is not a standup script. Never produce read-aloud text or "you should say..." framing.
Frequency
Daily. Gets faster with practice as the PM learns what signals to paste. If Kate ran /daily-wrapup the evening before, yesterday's context is pre-loaded from journals/day-close-{{YESTERDAY}}.md. No paste needed for input #2.
Example Output
Input
- Iteration plan: Sprint 14, ending Friday. Stories in flight: (1) "Export to CSV — filtered views" [in dev, AC: exports respect active filters, handles 10k+ rows without timeout]; (2) "Onboarding checklist — step 3 copy updates" [in review, AC: copy matches approved deck, no broken links]; (3) "Fix pagination bug on /reports" [in QA, AC: page numbers render correctly across all browsers]; (4) "API rate limit headers — v2 endpoints" [not started, planned for this sprint]
- Yesterday's updates: Pagination bug passed QA on Chrome and Firefox — Marcus is running Safari checks this morning. CSV export: Dev (Priya) hit a timeout issue on the 10k-row test, was investigating a query optimization fix as of EOD. Onboarding copy PR has been open since Monday, no reviewer assigned yet.
- New signals: Slack message from CS lead (Donna, 8:42am): "Getting reports from 3 enterprise accounts that the /reports page is blank on Safari — is this related to the pagination work?" No new signals on rate limit headers story.
Output (abbreviated)
Standup Prep — Sprint 14
Story Status Table
| Story | Status | Why |
|---|---|---|
| Export to CSV — filtered views | At Risk | Priya hit query timeout on 10k-row test EOD yesterday; fix in progress but unverified |
| Onboarding checklist — step 3 copy | At Risk | PR open since Monday, no reviewer assigned; sitting unreviewed 2+ days |
| Fix pagination bug — /reports | At Risk | Safari QA in progress this morning; new Slack signal from Donna suggests live Safari failures in enterprise accounts — may be same issue or broader |
| API rate limit headers — v2 | Unknown — no signal | Not started, no update since sprint planning |
Blockers to Raise
Onboarding checklist PR is blocked on reviewer assignment — needs someone to claim it today or it won't close by Friday.
Questions to Ask
- Has Marcus completed Safari QA on the pagination fix, and does Donna's enterprise report match what he's seeing? — listening for whether this is one issue or two.
- Where does Priya stand on the query optimization — does she have a fix in hand or is she still diagnosing? — listening for whether CSV export is same-day or slips to tomorrow.
- Is anyone picking up API rate limit headers today, or is that story a cut risk? — listening for a name and a start signal.
Pace Check
Pace is marginal — two stories have active risk signals and one hasn't started with two days left. Insufficient data to call the sprint on track; depends heavily on Priya's fix and Safari QA results this morning.
Things You Might Not Have Seen
Donna (CS, 8:42am) flagged blank /reports page on Safari from 3 enterprise accounts. Team may not know this is customer-visible yet. Worth surfacing before standup closes — if Marcus's QA confirms Safari failure, this needs a fix-and-redeploy decision today, not tomorrow.
Check before you go in.
- Pagination / Safari status could change in the next 20 minutes — check Slack for any update from Marcus before the call.
- Rate limit headers story has no signal at all; confirm it's still in scope before raising it as a question (may have been quietly deprioritized).