# 01 — Morning Round

**Cadence:** Daily, Monday to Saturday
**Default delivery:** 07:30, channel per profile (Telegram, web, email)
**Risk level:** Read-only. No write actions.
**Pre-req reading:** `00-architecture-and-customization.md`

---

## 1. Purpose

A one-page snapshot the agent can read in under a minute, covering everything they would otherwise check across five browser tabs and the CRM. The job is to make Claude the first thing the agent opens, every day.

## 2. Trigger recognition

The router invokes this workflow when the operator says any variant of:

- "morning round" / "morning brief"
- "what's on" / "what's on today"
- "where are we" / "where are we this morning"
- "start my day" / "kick me off"
- "what's new since yesterday"
- A bare "morning" or "good morning" with no other content

Also fires on schedule at the profile's delivery time. The scheduled run posts to the configured channel; the on-demand run posts inline.

## 3. What it produces

One markdown page with five sections, in this order. Sections with no content collapse to a single line ("nothing in the diary today") rather than disappearing — the operator should always know the workflow checked.

**Today's diary.** Viewings, valuations, market appraisals, vendor meetings, completion calls. Times, addresses, and the relevant contact. Postcoded so the agent can see whether the order is sensible.

**Awaiting reply.** Anything the agent or Claude chased in the last 7 days (default; learns) that hasn't been responded to. Grouped by recipient type: vendor, buyer, vendor solicitor, buyer solicitor, mortgage broker, surveyor.

**New overnight.** Portal enquiries since last login, triaged. Each enquiry gets a one-line summary, a source label, and a triage tag: hot / lukewarm / cold / duplicate / spam. Hot enquiries get the full enquiry verbatim; lower tiers get summaries only.

**Stalled.** Sales agreed where nothing has moved in over the agent's stalled-threshold window (default 7 days; learns). Each line names the property, the days stalled, and the most likely cause based on chain state.

**Top three.** Three things to act on first, with the *reason* each one made the list. Not "Mrs Patel" but "Mrs Patel — her buyer's mortgage offer expires in 9 days and the survey was booked but not done." This section is the one the agent will actually use; the rest is reference.

## 4. Skills composed

| Skill | Purpose |
|---|---|
| `diary-builder` | Reads calendar and CRM, produces the diary block |
| `enquiry-triage` | Classifies overnight portal/email enquiries |
| `chain-progression-tracker` | Identifies stalled deals and likely causes |
| `priority-ranker` (cross-cutting) | Produces the top three |
| `variance-narrator` (cross-cutting) | Writes the cause sentences |

## 5. Connectors read

CRM, calendar, email, WhatsApp, portal feeds. No connectors written.

## 6. Approval gates

None. This workflow is read-only by design. The first principle here is that the operator should trust Claude to look without trusting Claude to act, and the morning round is where that trust is earned.

## 7. Continuous learning hooks

This workflow is the highest-volume source of learning signals because it runs daily and the operator's behaviour after reading it is observable.

- **Skip pattern.** If the operator never acts on a category (e.g. they always ignore "lukewarm" portal enquiries from a specific source), that source's weight drops in `enquiry-triage` over time.
- **Threshold drift.** If the operator manually says "I don't consider this stalled until day 10," the stalled threshold updates. If they consistently act on items at day 5, the threshold tightens automatically.
- **Top-three accuracy.** When the operator actions item from the top three within the same day, that counts as a successful ranking. When they instead action a different item that was lower in the list, the ranker reweights toward whatever feature distinguished the actioned item.
- **Delivery time.** If the operator consistently asks for the round before the scheduled time, the schedule shifts earlier. If they ignore it for hours after delivery, it shifts later or to on-demand only.
- **Section preferences.** "Lead with stalled deals, not the diary" → reorder permanently. "Drop the awaiting-reply section, it's noise" → hide section, surface in chase-progression instead.

All learning happens through `profile-writer`. The morning round itself never writes profile changes inline.

## 8. Build notes

- This is workflow one. Start here. It is read-only, low risk, high frequency, and the trust foundation for everything that follows.
- The scheduled-delivery channel needs to handle the operator being offline (queue for next active session) and the operator being in multiple channels (don't duplicate).
- The "top three" is the make-or-break feature. If the priority ranker is mediocre, the agent will stop reading. Worth over-investing here, including a fallback to GPT-style chain-of-thought reasoning over the candidate list if the heuristic ranker is uncertain.
- A "yesterday's recap" toggle (off by default) shows what was on yesterday's round that was actioned vs. not. Useful for week-two onwards; noise on day one.
