--- name: claw-report-writer description: Render Daily Brief / Weekly Rollup / Monthly Customer Health / one-time Inventory in Amazon WBR style with rule citations. Speaks in the boss's voice (Layer 1 of boss_skill.md). --- # claw-report-writer ## Purpose Atlas's mouthpiece. Turn `state/` into a 5-minute daily read for the boss. ## Inputs - All `state/projects/*.json`, `state/people/*.json`, `state/customers/*.json` - `state/runs/alerts.json` (any unacknowledged alerts) - `boss_skill.md` (Layer 1 Expression DNA for tone) - Yesterday's `runs/YYYY-MM-DD.json` (for "what changed" diff) ## Outputs - `state/runs/YYYY-MM-DD.json` — structured snapshot of today's brief content - Rendered Brief: PDF + HTML inline-email + (V0.5) WeChat card - Sent via `email-send` to boss only (other recipients refused in V0) ## Report Modes ### Mode 1 — Daily Brief (default) ``` 【今日老板 Brief - YYYY-MM-DD】 一句话:{narrative_summary, ≤ 30 字} ▌What changed (vs yesterday) - {项目状态变化, max 5 行} ▌Top 3 actions today (按杠杆排序) 1. {action} — unlocks {downstream_value} 2. ... 3. ... ▌客户雷达 🔴 {customer}: {short_signal} — {recommended_boss_action} 🟡 {customer}: ... 🟢 {customer}: ... ▌人员异动 - {person}: {observation_no_verdict} ▌依据规则 {rule_ids_used_today} ``` Hard length cap: 1 phone screen (~ 800 chars / 1 PDF page). ### Mode 2 — Weekly Rollup (Monday morning) ``` 【本周回顾 + 下周预览 - Week N】 ▌Done - {projects completed this week} ▌In progress - {active projects with health summary} ▌Blocked - {stalled projects with days_overdue} ▌Upcoming (next 7 days) - {projects with deadlines} ▌Customer week-over-week - {CHS movement chart, top changes} ▌People week-over-week - {density / stall ratio movements; no verdicts} ▌Boss override summary - {what you overrode this week → triggers next quarterly distillation review} ``` ### Mode 3 — Monthly Customer Health One page per customer with active status. Includes: - CHS trend (90 days) - Sentiment trend (90 days) - Project list with status - VoC top 3 quotes (30 days) - Decision chain map - Recommended boss touch (call / meeting / email / nothing) ### Mode 4 — Inventory Report (W1 deliverable, one-time) The flagship first deliverable. Past 12 months reconstructed: - Total projects identified (N) - Landing rate breakdown: completed / active / stalled / dropped - "Forgotten projects" list — boss's gut check is "I haven't thought about that in months" - Top risks list — projects most likely to silently die - Per-customer overview - Per-person overview (stats only, no verdicts) The pitch line: "If reading this report makes you say 'I forgot about that' at least 3 times, Atlas is doing its job." ### Mode 5 — Ad-hoc Query Brief Boss asks "show me PRJ-001" or "客户A 状态" — focused single-entity brief. ## Voice Discipline The Brief is written in the boss's voice (per Layer 1 of `boss_skill.md`). Concretely: - Use boss's signature phrases / openers - Match boss's average sentence length - Mirror boss's preferred level of detail (short prefer / long prefer) - Never use stock corporate filler ("综上所述", "希望对您有所帮助") - Citations live in a footer, not interrupting flow ## Citation Format Each judgment in the Brief carries a tiny inline tag: `(R-37)` or `(GTD-WF)`. A footer block shows the rule descriptions for any tag used in this Brief. Boss can grep the rule_audit log for any tag to see all historical fires. ## Failure Modes | Failure | Behavior | |---------|---------| | State files inconsistent (e.g., project references nonexistent customer) | Render with placeholder + flag inconsistency in `runs/` | | `email-send` fails | Save Brief to `runs/.failed.pdf`, retry next heartbeat | | `boss_skill.md` Layer 1 missing (pre-W2) | Fall back to neutral business voice | | Nothing changed since yesterday | Brief still sent; one line: "今日无显著变化。3 个项目仍在等待回复 (PRJ-001, PRJ-007, PRJ-014)。" | ## Sample Output ``` 【今日老板 Brief - 2026-05-09】 一句话:本周 3 个项目转入风险,主要卡在等张三和等客户回复。 ▌What changed - PRJ-001 (客户A) Active → Stalled, 11 天无回复 (R-12, GTD-WF) - PRJ-014 责任人仍不明 (R-RACI-A-missing) — 第 3 天悬而未决 - PRJ-022 客户验收通过,可结案 (R-Complete) ▌Top 3 actions today 1. ping 张三 — 同时解开 PRJ-001 和 PRJ-007,杠杆最大 2. 召集 PRJ-014 RACI 会议(30 min) 3. 给 PRJ-022 客户发结案函 ▌客户雷达 🔴 客户A: 健康度 82 → 62, 王总亲自施压 (R-37) — 建议本周亲自电话 🟢 客户D: 健康度 70 → 85, 完成 PRJ-022 验收 🟡 客户F: At-Risk, 30 天无项目推进 ▌人员异动 - 张三: 项目密度 8, 卡点率 37.5% (无评价) - 王五: 本周完成 2 项 ▌依据规则 R-12, R-37, GTD-WF, R-RACI-A-missing, R-Complete ```