gru-ai 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/.claude/skills/brainstorm/SKILL.md +340 -0
  2. package/.claude/skills/code-review-excellence/SKILL.md +198 -0
  3. package/.claude/skills/directive/SKILL.md +121 -0
  4. package/.claude/skills/directive/docs/pipeline/00-delegation-and-triage.md +181 -0
  5. package/.claude/skills/directive/docs/pipeline/01-checkpoint.md +34 -0
  6. package/.claude/skills/directive/docs/pipeline/02-read-directive.md +38 -0
  7. package/.claude/skills/directive/docs/pipeline/03-read-context.md +15 -0
  8. package/.claude/skills/directive/docs/pipeline/04-challenge.md +38 -0
  9. package/.claude/skills/directive/docs/pipeline/05-planning.md +64 -0
  10. package/.claude/skills/directive/docs/pipeline/06-technical-audit.md +88 -0
  11. package/.claude/skills/directive/docs/pipeline/07-plan-approval.md +145 -0
  12. package/.claude/skills/directive/docs/pipeline/07b-project-brainstorm.md +85 -0
  13. package/.claude/skills/directive/docs/pipeline/08-worktree-and-state.md +50 -0
  14. package/.claude/skills/directive/docs/pipeline/09-execute-projects.md +709 -0
  15. package/.claude/skills/directive/docs/pipeline/10-wrapup.md +242 -0
  16. package/.claude/skills/directive/docs/pipeline/11-completion-gate.md +75 -0
  17. package/.claude/skills/directive/docs/reference/rules/casting-rules.md +78 -0
  18. package/.claude/skills/directive/docs/reference/rules/failure-handling.md +20 -0
  19. package/.claude/skills/directive/docs/reference/rules/phase-definitions.md +42 -0
  20. package/.claude/skills/directive/docs/reference/rules/scope-and-dod.md +30 -0
  21. package/.claude/skills/directive/docs/reference/schemas/audit-output.md +44 -0
  22. package/.claude/skills/directive/docs/reference/schemas/brainstorm-output.md +52 -0
  23. package/.claude/skills/directive/docs/reference/schemas/challenger-output.md +13 -0
  24. package/.claude/skills/directive/docs/reference/schemas/checkpoint.md +18 -0
  25. package/.claude/skills/directive/docs/reference/schemas/current-json.md +5 -0
  26. package/.claude/skills/directive/docs/reference/schemas/directive-json.md +143 -0
  27. package/.claude/skills/directive/docs/reference/schemas/investigation-output.md +37 -0
  28. package/.claude/skills/directive/docs/reference/schemas/plan-schema.md +103 -0
  29. package/.claude/skills/directive/docs/reference/templates/architect-prompt.md +66 -0
  30. package/.claude/skills/directive/docs/reference/templates/auditor-prompt.md +53 -0
  31. package/.claude/skills/directive/docs/reference/templates/brainstorm-prompt.md +68 -0
  32. package/.claude/skills/directive/docs/reference/templates/challenger-prompt.md +35 -0
  33. package/.claude/skills/directive/docs/reference/templates/digest.md +134 -0
  34. package/.claude/skills/directive/docs/reference/templates/investigator-prompt.md +51 -0
  35. package/.claude/skills/directive/docs/reference/templates/planner-prompt.md +130 -0
  36. package/.claude/skills/frontend-design/SKILL.md +42 -0
  37. package/.claude/skills/gruai-agents/SKILL.md +161 -0
  38. package/.claude/skills/gruai-config/SKILL.md +61 -0
  39. package/.claude/skills/healthcheck/SKILL.md +216 -0
  40. package/.claude/skills/report/SKILL.md +380 -0
  41. package/.claude/skills/scout/SKILL.md +452 -0
  42. package/.claude/skills/seo-audit/SKILL.md +107 -0
  43. package/.claude/skills/walkthrough/SKILL.md +274 -0
  44. package/.claude/skills/webapp-testing/SKILL.md +96 -0
  45. package/LICENSE +21 -0
  46. package/README.md +206 -0
  47. package/cli/templates/CLAUDE.md.template +57 -0
  48. package/cli/templates/agent-roles/backend.md +47 -0
  49. package/cli/templates/agent-roles/cmo.md +52 -0
  50. package/cli/templates/agent-roles/content.md +48 -0
  51. package/cli/templates/agent-roles/coo.md +66 -0
  52. package/cli/templates/agent-roles/cpo.md +52 -0
  53. package/cli/templates/agent-roles/cto.md +63 -0
  54. package/cli/templates/agent-roles/data.md +46 -0
  55. package/cli/templates/agent-roles/design.md +46 -0
  56. package/cli/templates/agent-roles/frontend.md +47 -0
  57. package/cli/templates/agent-roles/fullstack.md +47 -0
  58. package/cli/templates/agent-roles/qa.md +46 -0
  59. package/cli/templates/backlog.json.template +3 -0
  60. package/cli/templates/directive.json.template +9 -0
  61. package/cli/templates/directive.md.template +23 -0
  62. package/cli/templates/goals-index.md +21 -0
  63. package/cli/templates/gruai.config.json.template +12 -0
  64. package/cli/templates/lessons.md +16 -0
  65. package/cli/templates/vision.md +35 -0
  66. package/cli/templates/welcome-directive/directive.json +9 -0
  67. package/cli/templates/welcome-directive/directive.md +53 -0
  68. package/dist/assets/GamePage-C5XQQOQH.js +49 -0
  69. package/dist/assets/README.md +17 -0
  70. package/dist/assets/characters/char_0.png +0 -0
  71. package/dist/assets/characters/char_1.png +0 -0
  72. package/dist/assets/characters/char_10.png +0 -0
  73. package/dist/assets/characters/char_11.png +0 -0
  74. package/dist/assets/characters/char_2.png +0 -0
  75. package/dist/assets/characters/char_3.png +0 -0
  76. package/dist/assets/characters/char_4.png +0 -0
  77. package/dist/assets/characters/char_5.png +0 -0
  78. package/dist/assets/characters/char_6.png +0 -0
  79. package/dist/assets/characters/char_7.png +0 -0
  80. package/dist/assets/characters/char_8.png +0 -0
  81. package/dist/assets/characters/char_9.png +0 -0
  82. package/dist/assets/index-CnTPDqpP.js +12 -0
  83. package/dist/assets/index-gR5q7ikB.css +1 -0
  84. package/dist/assets/office/furniture.png +0 -0
  85. package/dist/assets/office/room-builder.png +0 -0
  86. package/dist/index.html +16 -0
  87. package/dist-server/scripts/intelligence-trends.d.ts +100 -0
  88. package/dist-server/scripts/intelligence-trends.js +365 -0
  89. package/dist-server/server/actions/cleanup.d.ts +4 -0
  90. package/dist-server/server/actions/cleanup.js +30 -0
  91. package/dist-server/server/actions/send-input.d.ts +6 -0
  92. package/dist-server/server/actions/send-input.js +147 -0
  93. package/dist-server/server/actions/terminal.d.ts +4 -0
  94. package/dist-server/server/actions/terminal.js +427 -0
  95. package/dist-server/server/config.d.ts +9 -0
  96. package/dist-server/server/config.js +217 -0
  97. package/dist-server/server/db.d.ts +7 -0
  98. package/dist-server/server/db.js +79 -0
  99. package/dist-server/server/hooks/event-receiver.d.ts +11 -0
  100. package/dist-server/server/hooks/event-receiver.js +36 -0
  101. package/dist-server/server/index.d.ts +1 -0
  102. package/dist-server/server/index.js +552 -0
  103. package/dist-server/server/notifications/macos.d.ts +5 -0
  104. package/dist-server/server/notifications/macos.js +22 -0
  105. package/dist-server/server/notifications/notifier.d.ts +17 -0
  106. package/dist-server/server/notifications/notifier.js +110 -0
  107. package/dist-server/server/parsers/process-discovery.d.ts +39 -0
  108. package/dist-server/server/parsers/process-discovery.js +776 -0
  109. package/dist-server/server/parsers/session-scanner.d.ts +56 -0
  110. package/dist-server/server/parsers/session-scanner.js +390 -0
  111. package/dist-server/server/parsers/session-state.d.ts +68 -0
  112. package/dist-server/server/parsers/session-state.js +696 -0
  113. package/dist-server/server/parsers/session-state.test.d.ts +1 -0
  114. package/dist-server/server/parsers/session-state.test.js +950 -0
  115. package/dist-server/server/parsers/task-parser.d.ts +10 -0
  116. package/dist-server/server/parsers/task-parser.js +97 -0
  117. package/dist-server/server/parsers/team-parser.d.ts +3 -0
  118. package/dist-server/server/parsers/team-parser.js +67 -0
  119. package/dist-server/server/platform/__tests__/claude-code.test.d.ts +1 -0
  120. package/dist-server/server/platform/__tests__/claude-code.test.js +311 -0
  121. package/dist-server/server/platform/claude-code.d.ts +34 -0
  122. package/dist-server/server/platform/claude-code.js +94 -0
  123. package/dist-server/server/platform/index.d.ts +5 -0
  124. package/dist-server/server/platform/index.js +1 -0
  125. package/dist-server/server/platform/types.d.ts +190 -0
  126. package/dist-server/server/platform/types.js +9 -0
  127. package/dist-server/server/state/aggregator.d.ts +42 -0
  128. package/dist-server/server/state/aggregator.js +1080 -0
  129. package/dist-server/server/state/work-item-types.d.ts +555 -0
  130. package/dist-server/server/state/work-item-types.js +168 -0
  131. package/dist-server/server/types.d.ts +237 -0
  132. package/dist-server/server/types.js +1 -0
  133. package/dist-server/server/watchers/claude-watcher.d.ts +17 -0
  134. package/dist-server/server/watchers/claude-watcher.js +130 -0
  135. package/dist-server/server/watchers/context-watcher.d.ts +22 -0
  136. package/dist-server/server/watchers/context-watcher.js +125 -0
  137. package/dist-server/server/watchers/directive-watcher.d.ts +46 -0
  138. package/dist-server/server/watchers/directive-watcher.js +497 -0
  139. package/dist-server/server/watchers/session-watcher.d.ts +18 -0
  140. package/dist-server/server/watchers/session-watcher.js +126 -0
  141. package/dist-server/server/watchers/state-watcher.d.ts +36 -0
  142. package/dist-server/server/watchers/state-watcher.js +369 -0
  143. package/package.json +68 -0
@@ -0,0 +1,380 @@
1
+ ---
2
+ name: "report"
3
+ description: "CEO dashboard with progressive disclosure — 3 tiers: headline (5 lines, default), summary (per-goal detail), deep (full weekly analysis). Takes an optional argument: headline (default), summary, deep, or legacy aliases daily/weekly."
4
+ ---
5
+
6
+ # CEO Report
7
+
8
+ ## Role Resolution
9
+
10
+ Read `.claude/agent-registry.json` to map roles to agent names. Domain labels in this report use role titles (CTO, CPO, CMO, COO) -- resolve to actual agent names from the registry when generating output.
11
+
12
+ ---
13
+
14
+ Generate a CEO report. Tier: $ARGUMENTS (default: headline)
15
+
16
+ ## Step 1: Determine Tier
17
+
18
+ Parse `$ARGUMENTS`:
19
+ - If empty or "headline" or "h" → **headline tier**
20
+ - If "summary" or "s" or "daily" or "d" → **summary tier**
21
+ - If "deep" or "weekly" or "w" → **deep tier**
22
+
23
+ ## Step 2: Gather Data
24
+
25
+ What to read depends on the tier. Higher tiers include everything from lower tiers.
26
+
27
+ ### Headline Tier Data (minimal — fast)
28
+ - `.context/directives/*/directive.json` — count active goals
29
+ - `.context/directives/*/projects/*/project.json` — count active/completed/blocked projects, identify recently completed
30
+ - `.context/backlog.json` — count P0 items needing CEO
31
+ - `.context/directives/*.json` — count pending directives (filter by status: pending)
32
+ - `.context/reports/` — scan 3 most recent for unaddressed high-risk follow-ups
33
+ - `.context/healthchecks/latest/*.json` — quick health status (pass/fail)
34
+ - Run `npm run type-check` — build status (pass/fail only, don't show errors here)
35
+
36
+ ### Summary Tier Data (adds detail on top of headline)
37
+ All headline data, PLUS:
38
+ - `.context/vision.md` — for context on what matters
39
+ - `.context/preferences.md` — CEO standing orders
40
+ - `.context/intel/latest/*.json` — latest scout outputs per agent
41
+ - `~/.conductor/scheduler.json` and `~/.conductor/scheduler.log` — autopilot status
42
+ - Recent directive reports — corrections caught data
43
+ - Run git commands for recent changes:
44
+ ```bash
45
+ # Recent commits on main (last 24h)
46
+ git log --oneline --since="24 hours ago" main
47
+ # Active worktrees
48
+ git worktree list
49
+ # Recently modified context files
50
+ find .context/ -name "*.md" -mtime -1 -type f | head -20
51
+ ```
52
+ - Active projects with no recent progress
53
+ - Failed/blocked initiatives from recent directives
54
+ - OKR progress from `.context/directives/*/directive.json`
55
+
56
+ ### Deep Tier Data (adds weekly analysis)
57
+ All summary data, PLUS:
58
+ - `.context/reports/` — compute agent acceptance rates from all reports this week
59
+ - `.context/lessons/*.md` topic files — any new lessons this week?
60
+ - Commit activity distribution by area
61
+ - All directive reports from the past 7 days
62
+ - Previous weekly report for comparison (`.context/reports/weekly-*.md`)
63
+ - Expand git log to 7 days: `git log --oneline --since="7 days ago" main`
64
+
65
+ ## Step 3: Generate Report
66
+
67
+ ### Headline Tier Format (default)
68
+
69
+ The headline is a 5-line status snapshot. The CEO should know the state of the world in <10 seconds.
70
+
71
+ ```
72
+ # Status — {date}
73
+
74
+ Shipped: {N} projects completed | Blocked: {N} projects stalled | Needs CEO: {N} decisions pending
75
+ Health: {build pass/fail} | {security ok/N issues} | {N active goals}
76
+ Top action: {single most important thing the CEO should do next — e.g., "Review 2 high-risk follow-ups from auth-hardening directive" or "Nothing — all clear"}
77
+ ```
78
+
79
+ **Derivation rules for headline signals:**
80
+ - **Shipped**: Count projects where `status` changed to `"completed"` in the last 24h (compare project.json `completed` timestamps)
81
+ - **Blocked**: Count active projects where all tasks are incomplete AND last modification > 7 days ago
82
+ - **Needs CEO**: Count pending directives + P0 backlog items + unaddressed high-risk follow-ups from recent digests
83
+ - **Health**: type-check pass/fail + healthcheck summary + active goal count
84
+ - **Top action**: Priority order: (1) high-risk items needing decision, (2) blocked projects needing unblocking, (3) pending directives awaiting execution, (4) "Nothing — all clear"
85
+
86
+ If the CEO wants more detail: "Run `/report summary` for per-goal detail or `/report deep` for full analysis."
87
+
88
+ ### Summary Tier Format
89
+
90
+ ```
91
+ # Summary Report — {date}
92
+
93
+ ## External Intelligence (from latest /scout)
94
+ - **Technology (CTO)**: {summary + any act_now/this_week items}
95
+ - **Product (CPO)**: {summary + competitor moves}
96
+ - **Growth (CMO)**: {summary + channel opportunities}
97
+ - **Ecosystem (COO)**: {summary + framework updates}
98
+ {If no scout data: "No scout data yet — run /scout to gather external intelligence."}
99
+
100
+ ## Internal Health (from latest /healthcheck)
101
+ - **Build status**: {type-check pass/fail}
102
+ - **Security**: {npm audit summary}
103
+ - **Operations**: {stale goals, backlog health}
104
+ {If no healthcheck data: "No healthcheck data yet — run /healthcheck."}
105
+
106
+ ## Autopilot
107
+ {Read ~/.conductor/scheduler.json and ~/.conductor/scheduler.log}
108
+ - **Status**: {enabled/disabled}
109
+ - **Budget**: ${spent_today} / ${daily_max} ({pct}%)
110
+ - **Recent launches**: {list directives launched today, or "none"}
111
+ - **Last check**: {time of most recent check entry}
112
+ {If scheduler.json doesn't exist: "Not configured — run scripts/foreman.sh to initialize."}
113
+
114
+ ## Corrections Caught (from recent directives)
115
+ {Read recent directive reports for Corrections Caught data.}
116
+ - **Last directive**: {name} — {violations_found} violations found, {violations_fixed} fixed
117
+ - **Standing Corrections verified**: {count} across {N} initiatives
118
+ {If no recent directive data: "No directive executed recently."}
119
+ {If violations were found: list each with correction name and resolution}
120
+
121
+ ## What Changed
122
+ {Recent commits, summarized by area. Not a raw git log — group and summarize.}
123
+ {Active worktrees/branches and their status.}
124
+
125
+ ## Project Inventory
126
+
127
+ {Read all .context/directives/*/directive.json and .context/directives/*/projects/*/project.json for project inventory.}
128
+
129
+ ### Active Goals ({count})
130
+ | Goal | Active Projects | Done | Backlog | Status |
131
+ |------|----------------|------|---------|--------|
132
+ | {goal title} | {count} ({list names}) | {done_count} | {backlog_count} | {status badge} |
133
+
134
+ ### Partially-Done Alerts
135
+ {For each active feature: read project.json embedded tasks, compute completion %. Flag features where:
136
+ - completion > 0% but < 100%
137
+ - AND last file modification in the feature folder > 7 days ago}
138
+
139
+ Warning: **{feature name}** ({goal}) — {X}% complete, stale {N} days
140
+ Last activity: {date} | Tasks: {completed}/{total}
141
+
142
+ {If no partially-done alerts: "All active projects are either fresh or complete."}
143
+
144
+ ### Completed But Not Archived
145
+ {Projects with status "active" but 100% task completion — should have status updated to "completed"}
146
+ - {project name} ({goal}) — 100% complete, still status: active
147
+
148
+ ## What Needs Your Input
149
+ {Pending directives in directives/ (filter by status: pending) — list with one-line description each}
150
+ {High risk items awaiting decision from recent directives}
151
+ {Backlog items flagged for CEO decision}
152
+ {If nothing: "Nothing pending — all clear."}
153
+
154
+ ## What's At Risk
155
+ {Build errors from type-check, if any}
156
+ {Stale active projects with no recent changes}
157
+ {Failed/blocked initiatives from recent directives}
158
+ {If nothing: "No risks identified."}
159
+
160
+ ## Decision Queue
161
+
162
+ {Aggregate items needing CEO decision from multiple sources:}
163
+
164
+ ### From Recent Directives
165
+ {Scan .context/reports/ for the last 3 directive reports.
166
+ For each, check the "Follow-Up Actions" section for high-risk backlogged items.
167
+ Cross-reference with .context/backlog.json to see if they've been addressed.}
168
+
169
+ - **{action}** — Backlogged from {directive name} ({date})
170
+ Risk: {high} | Status: {addressed/pending}
171
+
172
+ ### From Backlogs
173
+ {Scan all .context/backlog.json for items explicitly marked as needing CEO decision
174
+ or items with Priority P0 that are not yet started}
175
+
176
+ ### From Healthchecks
177
+ {Read .context/healthchecks/latest/*.json for high-risk findings}
178
+
179
+ {If nothing: "No pending decisions — all clear."}
180
+
181
+ ## OKR Snapshot
182
+ {For each goal with OKRs:}
183
+ **{Goal Name}**
184
+ - KR-1: {description} — {status} ({metric}: {current} / {target})
185
+ - KR-2: ...
186
+ ```
187
+
188
+ ### Deep Tier Format
189
+
190
+ ```
191
+ # Deep Report — Week of {date}
192
+
193
+ ## Executive Summary
194
+ {3-5 bullet overview of the week: what shipped, what's in progress, what needs attention}
195
+
196
+ ## External Intelligence (from latest /scout)
197
+ - **Technology (CTO)**: {summary + action items}
198
+ - **Product (CPO)**: {summary + competitor moves}
199
+ - **Growth (CMO)**: {summary + opportunities}
200
+ - **Ecosystem (COO)**: {summary + framework updates}
201
+ - **Intelligence gathered this week**: {count by urgency level}
202
+ {If no scout data: "No scout data yet — run /scout."}
203
+
204
+ ## Internal Health (from latest /healthcheck)
205
+ - **Build status**: {type-check pass/fail}
206
+ - **Security**: {npm audit summary, CVE count}
207
+ - **Operations**: {goal freshness, backlog health}
208
+ - **Auto-fixed this period**: {count and summary}
209
+ {If no healthcheck data: "No healthcheck data yet — run /healthcheck."}
210
+
211
+ ## Autopilot
212
+ {Read ~/.conductor/scheduler.json and ~/.conductor/scheduler.log}
213
+ - **Status**: {enabled/disabled}
214
+ - **Budget**: ${spent_today} / ${daily_max} ({pct}%)
215
+ - **This week**: {count} directives auto-launched, {total estimated cost}
216
+ - **Errors this week**: {count, or "none"}
217
+ {If scheduler.json doesn't exist: "Not configured — run scripts/foreman.sh to initialize."}
218
+
219
+ ## What Changed This Week
220
+ {Commits grouped by area with counts}
221
+ {Directives executed and their outcomes}
222
+ {Features completed or progressed}
223
+
224
+ ## Project Inventory
225
+
226
+ {Read all .context/directives/*/directive.json and .context/directives/*/projects/*/project.json for project inventory.}
227
+
228
+ ### Active Goals ({count})
229
+ | Goal | Active Projects | Done | Backlog | Status |
230
+ |------|----------------|------|---------|--------|
231
+ | {goal title} | {count} ({list names}) | {done_count} | {backlog_count} | {status badge} |
232
+
233
+ ### Partially-Done Alerts
234
+ {For each active feature: read project.json embedded tasks, compute completion %. Flag features where:
235
+ - completion > 0% but < 100%
236
+ - AND last file modification in the feature folder > 7 days ago}
237
+
238
+ Warning: **{feature name}** ({goal}) — {X}% complete, stale {N} days
239
+ Last activity: {date} | Tasks: {completed}/{total}
240
+
241
+ {If no partially-done alerts: "All active projects are either fresh or complete."}
242
+
243
+ ### Completed But Not Archived
244
+ {Projects with status "active" but 100% task completion — should have status updated to "completed"}
245
+ - {project name} ({goal}) — 100% complete, still status: active
246
+
247
+ ## What Needs Your Input
248
+ {Same as summary, but covering the full week}
249
+
250
+ ## What's At Risk
251
+ {Same as summary, but covering the full week}
252
+ {Trend: are risks increasing or decreasing?}
253
+
254
+ ## Decision Queue
255
+
256
+ {Aggregate items needing CEO decision from multiple sources:}
257
+
258
+ ### From Recent Directives
259
+ {Scan .context/reports/ for the last 3 directive reports.
260
+ For each, check the "Follow-Up Actions" section for high-risk backlogged items.
261
+ Cross-reference with .context/backlog.json to see if they've been addressed.}
262
+
263
+ - **{action}** — Backlogged from {directive name} ({date})
264
+ Risk: {high} | Status: {addressed/pending}
265
+
266
+ ### From Backlogs
267
+ {Scan all .context/backlog.json for items explicitly marked as needing CEO decision
268
+ or items with Priority P0 that are not yet started}
269
+
270
+ ### From Healthchecks
271
+ {Read .context/healthchecks/latest/*.json for high-risk findings}
272
+
273
+ {If nothing: "No pending decisions — all clear."}
274
+
275
+ ## What Shifted This Week
276
+
277
+ {Compare current project inventory against what was reported in the most recent saved weekly report
278
+ in .context/reports/weekly-*.md}
279
+
280
+ ### New Work Started
281
+ - {feature name} ({goal}) — started this week
282
+
283
+ ### Completed This Week
284
+ - {project name} ({goal}) — status changed to completed
285
+
286
+ ### Went Stale (no activity >7 days)
287
+ - {feature name} ({goal}) — last activity {date}
288
+
289
+ ### Priority Changes
290
+ {Any backlog items that were promoted from /scout this week}
291
+
292
+ {If no previous weekly report exists: "First weekly report — no comparison available."}
293
+
294
+ ## OKR Progress
295
+ {Full OKR breakdown per goal — same as summary but with week-over-week changes if prior report exists}
296
+
297
+ ## Team Performance
298
+ {From recent scout reports in .context/intel/latest/:}
299
+ - **Proposals this week**: {count} ({count} approved, {count} rejected, {count} deferred)
300
+ - **By agent**:
301
+ - CTO: {proposed} proposed, {accepted} accepted ({rate}%)
302
+ - CPO: {proposed} proposed, {accepted} accepted ({rate}%)
303
+ - CMO: {proposed} proposed, {accepted} accepted ({rate}%)
304
+ - COO: {proposed} proposed, {accepted} accepted ({rate}%)
305
+
306
+ {From directive reports:}
307
+ - **Directives completed**: {count}
308
+ - **Initiatives**: {completed}/{total} ({rate}%)
309
+ - **Build success rate**: {pass}/{total} type-checks passed
310
+
311
+ {From directive reports this week:}
312
+ - **Corrections enforced**: {total corrections checked across all directives}
313
+ - **Violations caught**: {count} (by role: CTO {N}, CPO {N}, COO {N})
314
+ - **Violation types**: {which standing corrections were violated most}
315
+
316
+ ## Corrections Caught This Week
317
+ {Aggregate corrections_check data from all directive reports this week:}
318
+
319
+ | Correction | Directive | Caught By (role) | Resolution |
320
+ |------------|-----------|-------------------|------------|
321
+ | {correction} | {directive} | {reviewer role} | {fixed/noted} |
322
+
323
+ - **Trend**: {more/fewer/same violations as last week}
324
+ {If no violations: "Clean week — all standing corrections respected across all directives."}
325
+
326
+ ## Lessons Learned
327
+ {New entries in .context/lessons/ topic files from this week}
328
+ {If none: "No new lessons captured this week."}
329
+
330
+ ## Recommendations
331
+ {COO-style operational recommendations:}
332
+ - What should the CEO focus on next week?
333
+ - Any goals that need re-prioritization?
334
+ - Any process improvements to consider?
335
+ ```
336
+
337
+ ## Step 4: Display Report
338
+
339
+ Output the report directly to the CEO. Do NOT write it to a file unless the CEO asks.
340
+
341
+ For deep tier reports, also offer: "Would you like me to save this report to `.context/reports/weekly-{date}.md`?"
342
+
343
+ After any tier, remind: "Drill down with `/report summary` or `/report deep` for more detail." (Skip this line if already at deep tier.)
344
+
345
+ ## Failure Handling
346
+
347
+ | Situation | Action |
348
+ |-----------|--------|
349
+ | No OKR files exist | Skip OKR section, note "No OKRs tracked yet" |
350
+ | No scout data (intel/latest/) | Skip external intelligence section, note "No scout data yet — run /scout" |
351
+ | No healthcheck data (healthchecks/latest/) | Skip internal health section, note "No healthcheck data yet — run /healthcheck" |
352
+ | No scout data exists | Skip team performance section, note "No scout/patrol data yet" |
353
+ | Type-check fails to run | Note the error, skip build health section |
354
+ | No recent commits | Note "No commits in {timeframe}" |
355
+ | No directive reports | Skip directive outcomes section |
356
+ | No active projects found | Note "No active projects tracked yet" in Project Inventory |
357
+ | No tasks in a project.json | Skip that feature in completion calculations |
358
+ | No previous weekly report for comparison | Note "First weekly report — no comparison available" in Shift Tracking |
359
+ | No conductor reports for Decision Queue | Note "No directive history to scan" |
360
+ | No healthcheck data for Decision Queue | Skip "From Healthchecks" subsection |
361
+ | No ~/.conductor/scheduler.json | Note "Autopilot not configured" in Autopilot section |
362
+ | No ~/.conductor/scheduler.log | Note "No scheduler activity yet" |
363
+
364
+ ## Rules
365
+
366
+ ### NEVER
367
+ - Create files without CEO requesting it (reports are displayed, not saved by default)
368
+ - Run slow commands (no `npm run build`, no `npm run lint`)
369
+ - Modify any files (this is a read-only operation)
370
+ - Include raw git logs (always summarize and group)
371
+
372
+ ### ALWAYS
373
+ - Read preferences.md before generating (summary and deep tiers)
374
+ - Show concrete numbers (counts, percentages, dates)
375
+ - Flag items needing CEO action prominently
376
+ - Keep headline tier to exactly 3 lines of content (after the heading)
377
+ - Keep summary reports under 5 minutes reading time
378
+ - Keep deep reports under 15 minutes reading time
379
+ - Group information by importance, not by source
380
+ - Include drill-down hint after headline and summary tiers