$npx -y skills add kv0906/pm-kit --skill reportExecutive briefing in plain language — report to me like I'm the CEO or product owner. Business impact and user impact only, no jargon. Use for "/report", "/report project-a", "report to me", "brief me", "what should I know", "executive summary", or when user wants a non-technica
| 1 | # /report — Report to Me |
| 2 | |
| 3 | Brief the user as if they are the CEO or product owner. Plain language. Outcomes over output. No technical jargon unless translated into business or user impact. |
| 4 | |
| 5 | ## Context |
| 6 | |
| 7 | Today's date: `!date +%Y-%m-%d` |
| 8 | |
| 9 | Config: @_core/config.yaml |
| 10 | Processing logic: @_core/PROCESSING.md |
| 11 | Preview rules: @.claude/rules/preview-formats.md (when `--preview`) |
| 12 | |
| 13 | ## Usage |
| 14 | |
| 15 | ``` |
| 16 | /report |
| 17 | /report project-a |
| 18 | /report all |
| 19 | /report project-a --week |
| 20 | /report all --preview |
| 21 | /report project-a --save --preview |
| 22 | ``` |
| 23 | |
| 24 | ## Flags |
| 25 | |
| 26 | | Flag | Effect | |
| 27 | |------|--------| |
| 28 | | `--week` | Last 7 days (default) | |
| 29 | | `--since {date}` | Custom start date | |
| 30 | | `--save` | Write to `reports/{date}-executive-brief-{project}.md` | |
| 31 | | `--preview` | Also render HTML via `shell-executive.html` | |
| 32 | | `--risks-only` | Skip shipped/WIP — focus on blockers and decisions needed | |
| 33 | |
| 34 | ## Session Task Progress |
| 35 | |
| 36 | ``` |
| 37 | TaskCreate: "Gather vault signals" |
| 38 | activeForm: "Reading vault for executive signals..." |
| 39 | |
| 40 | TaskCreate: "Translate to impact" |
| 41 | activeForm: "Translating to business and user impact..." |
| 42 | |
| 43 | TaskCreate: "Deliver brief" |
| 44 | activeForm: "Preparing your briefing..." |
| 45 | ``` |
| 46 | |
| 47 | ## Voice & Rules |
| 48 | |
| 49 | **You are briefing a decision-maker, not an engineer.** |
| 50 | |
| 51 | ### Always |
| 52 | |
| 53 | - Lead with what matters most to the business |
| 54 | - Explain what changed for **users** (faster, safer, clearer, unblocked) |
| 55 | - Explain what changed for the **business** (revenue, risk, speed, cost, trust) |
| 56 | - Use short sentences. No acronyms without plain-English translation |
| 57 | - Quantify when data exists ("3 items shipped", "1 blocker overdue") |
| 58 | - End with what needs **their** decision or attention |
| 59 | |
| 60 | ### Never |
| 61 | |
| 62 | - Stack traces, API names, framework choices, sprint mechanics |
| 63 | - "We merged PR #412" → say what capability that unlocks for users |
| 64 | - "Blocked on Redis" → say "users may see slower checkout until caching is fixed" |
| 65 | - Jira ticket IDs, branch names, implementation details |
| 66 | - Passive voice that hides ownership |
| 67 | |
| 68 | ### Translation examples |
| 69 | |
| 70 | | Vault says | Report says | |
| 71 | |------------|-------------| |
| 72 | | Merged auth migration PR | Users can now sign in with their company account — fewer password resets | |
| 73 | | Blocked on API rate limits | Checkout may fail during peak traffic until we secure higher API limits | |
| 74 | | Decided PostgreSQL over MongoDB | We chose a database that handles financial transactions more reliably — reduces data-loss risk | |
| 75 | | WIP on notifications | Users will soon get alerts when their order ships — not live yet | |
| 76 | |
| 77 | ## Processing Steps |
| 78 | |
| 79 | ### 1. Parse Input |
| 80 | |
| 81 | - Project: specific id, or `all` (default: all active projects from config) |
| 82 | - Timeframe: `--week` or `--since` |
| 83 | |
| 84 | ### 2. Gather Signals |
| 85 | |
| 86 | Scan vault (same sources as `/progress`, different lens): |
| 87 | |
| 88 | | Source | Extract for executive view | |
| 89 | |--------|---------------------------| |
| 90 | | `daily/*.md` | Shipped items, WIP themes, blocked themes | |
| 91 | | `blockers/{project}/*.md` | Open blockers — severity, due, user/business impact | |
| 92 | | `decisions/{project}/*.md` | Recent decisions — what it means for product direction | |
| 93 | | `docs/{project}/*.md` | Active specs — what capability is being built | |
| 94 | | `meetings/*.md` | Action items needing leadership input | |
| 95 | |
| 96 | ### 3. Synthesize Executive Brief |
| 97 | |
| 98 | Structure output in this order: |
| 99 | |
| 100 | ```markdown |
| 101 | # Briefing — {Project or All Projects} |
| 102 | **{Date}** · {Period covered} |
| 103 | |
| 104 | ## Bottom Line |
| 105 | {2-3 sentences. Most important thing first. What should they walk away knowing?} |
| 106 | |
| 107 | ## What Users Get (or Will Get) |
| 108 | - {Shipped capabilities in user language} |
| 109 | - {In-progress capabilities — expected value, not ETA unless due date exists} |
| 110 | |
| 111 | ## Business Impact |
| 112 | - {Revenue, risk reduction, speed, cost, compliance, trust — only what's evidenced in vault} |
| 113 | |
| 114 | ## What's at Risk |
| 115 | - {Open blockers translated to user/business consequences} |
| 116 | - {Overdue items flagged clearly} |
| 117 | |
| 118 | ## Decisions Made (Recent) |
| 119 | - {Decision → why it matters to product/business, not technical rationale} |
| 120 | |
| 121 | ## Needs Your Attention |
| 122 | - {Explicit asks: approve, escalate, decide, unblock} |
| 123 | - {If nothing: "No decisions needed from you this period."} |
| 124 | ``` |
| 125 | |
| 126 | For `--risks-only`, output only: Bottom Line, What's at Risk, Needs Your Attention. |
| 127 | |
| 128 | ### 4. Deliver |
| 129 | |
| 130 | **Default:** Output to terminal. This is a spoken brief — concise, scannable. |
| 131 | |
| 132 | **Do not** create files unless `--save` or `--preview`. |
| 133 | |
| 134 | ### 5. Optional: Save |
| 135 | |
| 136 | If `--save`: |
| 137 | - Write markdown to `reports/{date}-executive-brief-{project}.md` |
| 138 | - Append vault log (action: `report`) |
| 139 | |
| 140 | ### 6. Optional: Preview |
| 141 | |
| 142 | If `--preview`: |
| 143 | - Follow `/preview` workflow with `shell-executive.html` |
| 144 | - `{{LEAD}}` = Bottom Line paragraph |
| 145 | - ` |