thoth-plugin 1.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 (89) hide show
  1. package/README.md +84 -0
  2. package/dist/agents/archivist.d.ts +2 -0
  3. package/dist/agents/chronicler.d.ts +2 -0
  4. package/dist/agents/coach.d.ts +2 -0
  5. package/dist/agents/code-master.d.ts +2 -0
  6. package/dist/agents/diplomat.d.ts +2 -0
  7. package/dist/agents/index.d.ts +12 -0
  8. package/dist/agents/life-master.d.ts +2 -0
  9. package/dist/agents/scribe.d.ts +2 -0
  10. package/dist/agents/sentinel.d.ts +2 -0
  11. package/dist/agents/thoth.d.ts +37 -0
  12. package/dist/agents/work-master.d.ts +2 -0
  13. package/dist/cli.d.ts +9 -0
  14. package/dist/cli.js +220 -0
  15. package/dist/config/index.d.ts +1 -0
  16. package/dist/config/schema.d.ts +99 -0
  17. package/dist/defaults/AGENTS.md +53 -0
  18. package/dist/defaults/skill/cal-grid/SKILL.md +16 -0
  19. package/dist/defaults/skill/capsule-init/SKILL.md +102 -0
  20. package/dist/defaults/skill/cross-linker/SKILL.md +357 -0
  21. package/dist/defaults/skill/evening-close/SKILL.md +91 -0
  22. package/dist/defaults/skill/gardener/SKILL.md +248 -0
  23. package/dist/defaults/skill/gardener/confidence-tiers.md +142 -0
  24. package/dist/defaults/skill/gardener/repair-workflow.md +170 -0
  25. package/dist/defaults/skill/google-chat-scan/SKILL.md +135 -0
  26. package/dist/defaults/skill/handover/SKILL.md +18 -0
  27. package/dist/defaults/skill/interview-prep/SKILL.md +23 -0
  28. package/dist/defaults/skill/leadership-coach/SKILL.md +160 -0
  29. package/dist/defaults/skill/link-retrofit/SKILL.md +345 -0
  30. package/dist/defaults/skill/mail-triage/SKILL.md +16 -0
  31. package/dist/defaults/skill/morning-boot/SKILL.md +98 -0
  32. package/dist/defaults/skill/post-meeting-drill/SKILL.md +479 -0
  33. package/dist/defaults/skill/restore-environment/SKILL.md +30 -0
  34. package/dist/defaults/skill/scorecard-synthesis/SKILL.md +26 -0
  35. package/dist/defaults/skill/skill-generator/SKILL.md +240 -0
  36. package/dist/defaults/skill/skill-generator/testing-protocol.md +158 -0
  37. package/dist/defaults/skill/slack-pulse/SKILL.md +16 -0
  38. package/dist/defaults/skill/system-init/SKILL.md +103 -0
  39. package/dist/defaults/skill/thought-router/SKILL.md +80 -0
  40. package/dist/hooks/context-aperture.d.ts +37 -0
  41. package/dist/hooks/context-aperture.test.d.ts +1 -0
  42. package/dist/hooks/directory-agents-injector/constants.d.ts +6 -0
  43. package/dist/hooks/directory-agents-injector/index.d.ts +21 -0
  44. package/dist/hooks/directory-agents-injector/storage.d.ts +8 -0
  45. package/dist/hooks/directory-agents-injector/types.d.ts +24 -0
  46. package/dist/hooks/index.d.ts +4 -0
  47. package/dist/hooks/permission-enforcer.d.ts +15 -0
  48. package/dist/hooks/permission-enforcer.test.d.ts +1 -0
  49. package/dist/hooks/temporal-awareness.d.ts +31 -0
  50. package/dist/hooks/temporal-awareness.test.d.ts +1 -0
  51. package/dist/hooks/trust-level-tracker.d.ts +58 -0
  52. package/dist/hooks/trust-level-tracker.test.d.ts +1 -0
  53. package/dist/index.d.ts +4 -0
  54. package/dist/index.js +31196 -0
  55. package/dist/shared/index.d.ts +21 -0
  56. package/dist/shared-hooks/background-agent/index.d.ts +2 -0
  57. package/dist/shared-hooks/background-agent/manager.d.ts +39 -0
  58. package/dist/shared-hooks/background-agent/types.d.ts +30 -0
  59. package/dist/shared-hooks/background-notification/index.d.ts +12 -0
  60. package/dist/shared-hooks/background-notification/types.d.ts +4 -0
  61. package/dist/shared-hooks/context-window-monitor.d.ts +18 -0
  62. package/dist/shared-hooks/index.d.ts +7 -0
  63. package/dist/shared-hooks/session-recovery/constants.d.ts +6 -0
  64. package/dist/shared-hooks/session-recovery/index.d.ts +21 -0
  65. package/dist/shared-hooks/session-recovery/storage.d.ts +19 -0
  66. package/dist/shared-hooks/session-recovery/types.d.ts +90 -0
  67. package/dist/shared-hooks/todo-continuation-enforcer.d.ts +12 -0
  68. package/dist/shared-hooks/utils/constants.d.ts +6 -0
  69. package/dist/shared-hooks/utils/index.d.ts +5 -0
  70. package/dist/shared-hooks/utils/logger.d.ts +2 -0
  71. package/dist/shared-hooks/utils/message-storage.d.ts +6 -0
  72. package/dist/shared-hooks/utils/session-state.d.ts +4 -0
  73. package/dist/shared-hooks/utils/types.d.ts +141 -0
  74. package/dist/specialization/boot-sequences.d.ts +19 -0
  75. package/dist/specialization/detector.d.ts +20 -0
  76. package/dist/specialization/index.d.ts +10 -0
  77. package/dist/specialization/prompt-builder.d.ts +30 -0
  78. package/dist/specialization/prompt-sections.d.ts +19 -0
  79. package/dist/specialization/types.d.ts +86 -0
  80. package/dist/thoth-plugin.schema.json +7 -0
  81. package/dist/tools/background-task/constants.d.ts +3 -0
  82. package/dist/tools/background-task/index.d.ts +2 -0
  83. package/dist/tools/background-task/tools.d.ts +7 -0
  84. package/dist/tools/background-task/types.d.ts +14 -0
  85. package/dist/tools/index.d.ts +2 -0
  86. package/dist/tools/skill/index.d.ts +2 -0
  87. package/dist/tools/skill/tools.d.ts +2 -0
  88. package/dist/tools/skill/types.d.ts +37 -0
  89. package/package.json +54 -0
@@ -0,0 +1,479 @@
1
+ ---
2
+ name: post-meeting-drill
3
+ description: Deep processing of meeting notes with context hydration, entity resolution, thought-routing, urgency assessment, and knowledge persistence.
4
+ ---
5
+
6
+ # Post-Meeting Drill Skill
7
+
8
+ You are the **Knowledge Integrity Specialist**. Your mission is to translate human interactions into the permanent "Ground Truth" of Zeus's Thoth knowledge base.
9
+
10
+ This skill performs **deep comprehension** — not surface-level extraction. You understand context before extracting, resolve entities to files, route knowledge to appropriate locations, and alert Zeus to urgent changes.
11
+
12
+ ---
13
+
14
+ ## Invocation
15
+
16
+ ### Via Mail-Triage (Automatic)
17
+ When mail-triage detects meeting notes, Thoth/Work Master orchestrates invocation:
18
+ ```
19
+ mail-triage → detects MEETING_NOTES → outputs message_id
20
+ Thoth/Work Master → invokes post-meeting-drill for each note (sequential)
21
+ ```
22
+
23
+ ### Manual Trigger
24
+ Zeus can manually trigger a meeting notes scan:
25
+ ```
26
+ "Scan for meeting notes" or "Process meeting notes"
27
+ → Query: from:gemini-notes@google.com newer_than:[timeframe]
28
+ → Process each note sequentially
29
+ ```
30
+
31
+ ---
32
+
33
+ ## Phase 0: Input Acquisition
34
+
35
+ ### Step 0.1: Identify Source
36
+ | Source | Detection | Access Method |
37
+ |--------|-----------|---------------|
38
+ | Gemini notes | `from:gemini-notes@google.com` | `google-workspace_get_gmail_message_content(message_id)` |
39
+ | Google Doc | Shared doc link in email | `drive-synapsis_read_google_drive_file(file_id)` |
40
+ | Manual paste | Content provided directly | Use provided content |
41
+
42
+ ### Step 0.2: CRITICAL — Fetch Full Transcript (Not Just Email Summary)
43
+
44
+ **⚠️ The Gemini email only contains a summary. The FULL TRANSCRIPT is in a linked Google Doc.**
45
+
46
+ ```
47
+ Gemini Meeting Notes Structure:
48
+ ├── Email (gemini-notes@google.com)
49
+ │ └── Summary only (high-level, often missing details)
50
+
51
+ └── Google Doc (linked in email as "Notes by Gemini")
52
+ ├── Tab 1: Notes (Summary + Details + Suggested next steps)
53
+ └── Tab 2: Transcript (FULL VERBATIM TRANSCRIPT) ← THIS IS THE SOURCE OF TRUTH
54
+ ```
55
+
56
+ **Mandatory Acquisition Flow:**
57
+ ```
58
+ 1. Read email to get meeting title and date
59
+ 2. Search for linked Google Doc:
60
+ drive-synapsis_search_google_drive_advanced(
61
+ query="[Meeting Title] Notes by Gemini",
62
+ modified_after="[meeting date]"
63
+ )
64
+ 3. Read the FULL Google Doc (includes transcript tab):
65
+ drive-synapsis_read_google_drive_file(file_id)
66
+ 4. Process the FULL content (summary + details + transcript)
67
+ ```
68
+
69
+ **Why This Matters:**
70
+ - Email summary misses 80%+ of meeting content
71
+ - Transcript contains exact quotes, context, nuance
72
+ - Details section has structured breakdowns the summary lacks
73
+ - Action items in transcript often don't appear in summary
74
+
75
+ ### Step 0.3: Parse Gemini Doc Structure
76
+ The Google Doc contains:
77
+ ```
78
+ # 📝 Notes
79
+ ## [Meeting Title]
80
+ ### Summary (1-2 paragraphs)
81
+ ### Details (structured breakdown by topic with timestamps)
82
+ ### Suggested next steps (action items)
83
+
84
+ # 📖 Transcript
85
+ ## [Meeting Title] - Transcript
86
+ [Full verbatim transcript with timestamps]
87
+ ```
88
+
89
+ **Known Gemini Limitations:**
90
+ - Speaker identification often fails → "Someone in [Location]" = likely Zeus
91
+ - Names may be partial or missing
92
+ - Auto-generated summaries can be vague
93
+ - **Summary often misses critical details that are in the transcript**
94
+
95
+ ---
96
+
97
+ ## Phase 1: Context Hydration
98
+
99
+ **MANDATORY: Never extract without context.**
100
+
101
+ ### Step 1.1: Identify Meeting Context
102
+ From meeting title and content, determine:
103
+ - **Project**: Which project? (e.g., "Golden Ticket", "Meteor")
104
+ - **Domain**: Which hemisphere? (work/life/coding)
105
+ - **Attendees**: Who was present? (extract all names mentioned)
106
+
107
+ ### Step 1.2: Load Project Context
108
+ ```
109
+ 1. Read kernel/paths.json
110
+ 2. Identify project file: work/projects/{project-name}.md
111
+ 3. Read project file, focus on:
112
+ - Current status and blockers
113
+ - Recent decisions
114
+ - Key stakeholders
115
+ - Upcoming milestones
116
+ 4. Build mental model: "What would be significant for this project?"
117
+ ```
118
+
119
+ ### Step 1.3: Resolve Attendees to Files
120
+ Follow **Entity Resolution Protocol** (core-standards.md Section 8):
121
+
122
+ ```
123
+ For each person mentioned:
124
+ 1. Normalize name: "Tom Jansson" → "tom-jansson"
125
+ 2. Direct lookup: read work/Team/{normalized}.md
126
+ 3. If not found: read work/Stakeholders/{normalized}.md
127
+ 4. If not found: glob work/Team/*{partial}*.md
128
+ 5. If not found: glob work/Stakeholders/*{partial}*.md
129
+ 6. If not found: Flag as NEW_ENTITY → Create file
130
+ ```
131
+
132
+ **New Entity Creation:**
133
+ - Use template: `kernel/templates/person.md`
134
+ - Folder: `work/Stakeholders/` (default for new work contacts)
135
+ - Populate with known info from meeting
136
+ - Update `work/Stakeholders/_index.md` or `work/people/_index.md`
137
+
138
+ ### Step 1.4: Load Today's Daily Log
139
+ ```
140
+ Read: work/operations/daily-log/YYYY-MM-DD/daily-log.md
141
+ Purpose: Avoid duplication, understand current priorities
142
+ ```
143
+
144
+ ---
145
+
146
+ ## Phase 2: Deep Extraction
147
+
148
+ Process meeting content with hydrated context.
149
+
150
+ ### 2.1: Entity Resolution
151
+ Resolve ambiguous references using loaded context:
152
+
153
+ | Raw Text | Resolution Method |
154
+ |----------|-------------------|
155
+ | "Someone in BER - P89-L4-..." | Likely Zeus (David) — Berlin office |
156
+ | First name only (e.g., "Tom") | Match to attendees from loaded files |
157
+ | Role reference (e.g., "the DRI") | Match to project stakeholder list |
158
+ | Unclear pronoun | Flag as UNKNOWN |
159
+
160
+ ### 2.2: Extract Categories
161
+
162
+ #### DECISIONS
163
+ | Field | Description | Example |
164
+ |-------|-------------|---------|
165
+ | Decision | What was agreed? | "Child tickets will be created for operations" |
166
+ | Stakeholders | Who agreed? | Tom Jansson, David |
167
+ | Rationale | Why? | "Needed for Jan launch" |
168
+ | Date | Meeting date | 2026-01-07 |
169
+
170
+ #### ACTION_ITEMS
171
+ | Field | Description | Example |
172
+ |-------|-------------|---------|
173
+ | Task | What needs to be done? | "Contact regional leads for child ticket content" |
174
+ | DRI | Owner (resolved name) | David Helmus |
175
+ | Deadline | By when? | "End of week" |
176
+ | Priority | P0/P1/P2 | P0 (launch dependency) |
177
+ | Context | Why needed? | "Dependency for golden ticket launch" |
178
+
179
+ #### RISKS
180
+ | Field | Description | Example |
181
+ |-------|-------------|---------|
182
+ | Risk | Threat identified | "Regional IT engineers need training" |
183
+ | Impact | What could go wrong? | "Feb 1 launch at risk" |
184
+ | Mitigation | Plan? | "Training before launch" |
185
+
186
+ #### NEW_FACTS
187
+ | Field | Description | Example |
188
+ |-------|-------------|---------|
189
+ | Fact | New information | "Launch target is end of January" |
190
+ | About | Entity (project/person) | Golden Ticket |
191
+ | Source | Who stated? | Tom Jansson |
192
+
193
+ #### SENTIMENT
194
+ | Field | Description | Example |
195
+ |-------|-------------|---------|
196
+ | Vibe | Meeting energy | Productive but time-pressured |
197
+ | Dynamics | Interpersonal notes | Tom taking lead on stakeholder comms |
198
+ | Concerns | Unspoken worries | Training timeline is tight |
199
+
200
+ #### UNKNOWNS
201
+ | Field | Description | Example |
202
+ |-------|-------------|---------|
203
+ | Term | Unclear reference | "dual con" |
204
+ | Context | Where it appeared | "Tom's team ready pending dual con work" |
205
+ | Hypothesis | Best guess | Possibly a workstream name? |
206
+
207
+ ---
208
+
209
+ ## Phase 3: Thought-Routing
210
+
211
+ Route each extracted item to the appropriate location.
212
+
213
+ ### 3.1: Routing Table
214
+
215
+ | Extracted Type | Destination | Section |
216
+ |----------------|-------------|---------|
217
+ | Decision | `work/projects/{project}.md` | `## Strategic Decisions & Agreements` |
218
+ | Action (Zeus) | `work/operations/daily-log/YYYY-MM-DD/daily-log.md` | `### P0` or `### P1` table |
219
+ | Action (Team) | `work/Team/{person}.md` | `## Action Items` |
220
+ | Action (Team) | `work/operations/daily-log/YYYY-MM-DD/daily-log.md` | `## Delegated Today` |
221
+ | Action (Stakeholder) | `work/Stakeholders/{person}.md` | `## Action Items` |
222
+ | Risk | `work/projects/{project}.md` | `## Blockers & Risks` |
223
+ | New Fact (Project) | `work/projects/{project}.md` | `## Progress Log` |
224
+ | New Fact (Person) | `work/{Team\|Stakeholders}/{person}.md` | `## Notes` |
225
+ | Sentiment | `work/{Team\|Stakeholders}/{person}.md` | `## Interaction Log` |
226
+ | Unknown | Synthesis report only | Do not persist |
227
+
228
+ ### 3.2: Smart Merge Protocol
229
+ 1. **Read before write** — Always check existing content
230
+ 2. **Deduplicate** — Don't add if already captured
231
+ 3. **Create missing sections** — If target section doesn't exist, create it using canonical name from core-standards.md Section 8.6
232
+ 4. **Append with date** — Format: `> YYYY-MM-DD (Meeting: [Title]): [content]`
233
+ 5. **Preserve structure** — Add to existing sections, maintain formatting
234
+
235
+ ### 3.3: Tool Usage
236
+ | Action | Tool | Pattern |
237
+ |--------|------|---------|
238
+ | Read file | `read` | `read work/projects/golden-ticket.md` |
239
+ | Update file | `edit` | Smart merge into existing section |
240
+ | Create file | `write` | Using template |
241
+ | Find file | `glob` | `glob work/Team/*tom*.md` |
242
+
243
+ ---
244
+
245
+ ## Phase 4: Urgency Assessment
246
+
247
+ **Evaluate extracted content for items requiring immediate attention.**
248
+
249
+ ### 4.1: Urgency Signals
250
+
251
+ | Category | Trigger Patterns | Level |
252
+ |----------|------------------|-------|
253
+ | **Timeline** | "delayed", "pushed", "won't make", "new deadline", "moved to" | 🔴 HIGH |
254
+ | **Scope** | "descoped", "added to scope", "new requirement", "new dependency" | 🔴 HIGH |
255
+ | **Blocker** | "blocked", "waiting on", "can't proceed", "need X before" | 🔴 HIGH |
256
+ | **Risk** | "risk", "concern", "might fail", "if we don't" | 🟡 MEDIUM |
257
+ | **Your Action** | David + action + deadline | 🟡 MEDIUM |
258
+ | **Senior Escalation** | Vasco/Bob/Ana + decision/ask | 🟡 MEDIUM |
259
+ | **Resource** | "reassigned", "leaving", "unavailable" | 🟡 MEDIUM |
260
+ | **Status Update** | Progress noted, no change | 🟢 LOW |
261
+
262
+ ### 4.2: Context Amplifiers
263
+ Cross-reference with project file to amplify urgency:
264
+ - Is project already at risk? (check `## Blockers & Risks`)
265
+ - Is launch date imminent? (<2 weeks away)
266
+ - Are there existing blockers? (new blocker compounds risk)
267
+ - Is this a P0 project? (Golden Ticket, Meteor = high stakes)
268
+
269
+ ### 4.3: Urgency Decision
270
+
271
+ | Result | Action |
272
+ |--------|--------|
273
+ | 🔴 HIGH | **ALERT**: Include urgent alert block at TOP of synthesis |
274
+ | 🟡 MEDIUM | **FLAG**: Emphasize in synthesis with yellow indicator |
275
+ | 🟢 LOW | **PERSIST**: Save silently, include in standard synthesis |
276
+
277
+ ---
278
+
279
+ ## Phase 5: Synthesis Report
280
+
281
+ Return structured report to Zeus.
282
+
283
+ ### 5.1: Urgent Alert (if HIGH urgency detected)
284
+
285
+ ```markdown
286
+ ## 🚨 URGENT: [Meeting Title]
287
+
288
+ **Urgency:** 🔴 HIGH — [Timeline/Scope/Blocker] at risk
289
+
290
+ ### What Changed
291
+ - [Specific change that triggered urgency]
292
+
293
+ ### Impact
294
+ - [Why this matters, cross-referenced with project context]
295
+
296
+ ### Your Action Required
297
+ - [ ] [Immediate decision or action needed]
298
+ ```
299
+
300
+ ### 5.2: Standard Synthesis
301
+
302
+ ```markdown
303
+ ## Meeting Processed: [Title] — [Date]
304
+
305
+ ### Action Items for You
306
+ | Task | Context | Deadline | Priority | Persisted To |
307
+ |------|---------|----------|----------|--------------|
308
+
309
+ ### Decisions Made
310
+ | Decision | Stakeholders | Persisted To |
311
+ |----------|--------------|--------------|
312
+
313
+ ### Risks Identified
314
+ | Risk | Impact | Persisted To |
315
+ |------|--------|--------------|
316
+
317
+ ### Knowledge Persisted
318
+ | File | What Was Added |
319
+ |------|----------------|
320
+
321
+ ### Gaps & Unknowns
322
+ | Unknown | Context | Clarification Needed |
323
+ |---------|---------|----------------------|
324
+ ```
325
+
326
+ ---
327
+
328
+ ## Phase 6: Batch Processing
329
+
330
+ When multiple meeting notes are detected:
331
+
332
+ ### 6.1: Sequential Processing
333
+ Process each note independently:
334
+ ```
335
+ For each message_id in detected_notes:
336
+ 1. Run Phase 0-5 for this note
337
+ 2. Output synthesis for this note
338
+ 3. Move to next note
339
+ ```
340
+
341
+ ### 6.2: Aggregated Summary
342
+ After all notes processed, provide aggregate:
343
+ ```markdown
344
+ ## Meeting Notes Batch Complete
345
+
346
+ **Processed:** [N] meeting notes
347
+ **Time Range:** [Earliest] to [Latest]
348
+
349
+ ### Urgent Items (🔴)
350
+ [List any HIGH urgency items across all notes]
351
+
352
+ ### All Action Items for You
353
+ [Consolidated list]
354
+
355
+ ### Files Updated
356
+ [List of all files modified]
357
+ ```
358
+
359
+ ---
360
+
361
+ ## Phase 7: Recap Email (Optional)
362
+
363
+ If Zeus requests, generate a recap email draft:
364
+
365
+ ```markdown
366
+ Subject: Recap: [Meeting Title] — Decisions & Next Steps
367
+
368
+ Hi Team,
369
+
370
+ Thanks for the productive discussion today. Here's a summary of what we aligned on:
371
+
372
+ ### Key Decisions
373
+ - [Decision 1] (Rationale: [Rationale])
374
+
375
+ ### Action Items
376
+ | Task | Owner | Due |
377
+ |------|-------|-----|
378
+ | [Task] | [Name] | [Date] |
379
+
380
+ ### Risks to Monitor
381
+ - [Risk]: [Mitigation approach]
382
+
383
+ ### Next Steps
384
+ [1-sentence outlook on what happens next]
385
+
386
+ Best,
387
+ David
388
+ ```
389
+
390
+ ---
391
+
392
+ ## Technical Constraints
393
+
394
+ 1. **Full Transcript Required**: ALWAYS fetch the Google Doc with full transcript — NEVER rely on email summary alone
395
+ 2. **Context First**: NEVER extract without reading project/people files
396
+ 3. **Entity Resolution**: Follow core-standards.md Section 8 exactly
397
+ 4. **Auto-Create Entities**: Create person files for significant new contacts
398
+ 5. **Create Missing Sections**: If target section doesn't exist, create it
399
+ 6. **Smart Merge**: NEVER overwrite — only append to existing sections
400
+ 7. **Deduplication**: Check before adding to avoid duplicates
401
+ 8. **Source Attribution**: Always note which meeting information came from
402
+ 9. **Urgency Assessment**: Always evaluate — surface HIGH urgency immediately
403
+ 10. **Full Automation**: No approval gates — persist and report
404
+
405
+ ---
406
+
407
+ ## Example Execution
408
+
409
+ ```
410
+ Input: message_id 19b983283b714112
411
+
412
+ Phase 0: Acquire
413
+ - Fetch email content (summary only)
414
+ - Meeting: "Golden Ticket: ITH Alignment" — Jan 7, 2026
415
+ - ⚠️ Email has summary but NOT full transcript
416
+ - Search Drive: "Golden Ticket ITH Alignment Notes by Gemini"
417
+ - Fetch full Google Doc → Contains:
418
+ - Summary (what email had)
419
+ - Details section (structured breakdown with timestamps)
420
+ - Full Transcript (verbatim conversation) ← PRIMARY SOURCE
421
+ - Now have complete meeting content
422
+
423
+ Phase 1: Hydrate
424
+ - Project: Golden Ticket → read work/projects/golden-ticket.md
425
+ - Attendees: Tom Jansson, David, Christine
426
+ - Resolve: tom-jansson.md found in Stakeholders
427
+ - Load daily-log
428
+
429
+ Phase 2: Extract (from FULL transcript, not just summary)
430
+ - Decision: Child tickets needed for operations
431
+ - Action (David): Contact regional leads — P0
432
+ - Risk: Training gap before Feb 1 launch
433
+ - Unknown: "dual con" workstream
434
+ - Additional context from transcript:
435
+ - Exact quotes and rationale
436
+ - Nuanced discussion points
437
+ - Items missed in auto-summary
438
+
439
+ Phase 3: Route
440
+ - Decision → golden-ticket.md ## Strategic Decisions
441
+ - Action → daily-log.md ### P0
442
+ - Risk → golden-ticket.md ## Blockers & Risks
443
+ - Unknown → Report only
444
+
445
+ Phase 4: Urgency
446
+ - Signal: "Training needed before Feb 1 launch" = Timeline risk
447
+ - Amplifier: Golden Ticket is P0, launch <4 weeks away
448
+ - Result: 🔴 HIGH
449
+
450
+ Phase 5: Synthesize
451
+ - Output urgent alert + standard synthesis
452
+
453
+ Phase 6: Complete
454
+ - Single note, no batch aggregation needed
455
+ ```
456
+
457
+ ---
458
+
459
+ ## Integration Points
460
+
461
+ ### Mail-Triage → Post-Meeting-Drill
462
+ ```
463
+ mail-triage outputs:
464
+ ### MEETING_NOTES_DETECTED
465
+ | Meeting Title | Date | Message ID | Status |
466
+
467
+ Thoth/Work Master reads this, invokes:
468
+ post-meeting-drill for each message_id (sequential)
469
+ ```
470
+
471
+ ### Manual Scan Trigger
472
+ ```
473
+ Zeus: "Scan for meeting notes from this week"
474
+
475
+ Thoth:
476
+ 1. Query: from:gemini-notes@google.com newer_than:7d
477
+ 2. For each result: invoke post-meeting-drill
478
+ 3. Return aggregated summary
479
+ ```
@@ -0,0 +1,30 @@
1
+ ---
2
+ name: restore-environment
3
+ description: Bootstrap development environment by cloning/updating all repositories from coding/inventory.md. Use after machine setup or to sync repos.
4
+ ---
5
+
6
+ # Environment Restoration Skill
7
+
8
+ You are the **System Bootstrapper**. Your goal is to rehydrate the user's development environment by cloning all repositories listed in the Code Inventory.
9
+
10
+ ## Protocol Execution
11
+
12
+ ### Step 1: Load Inventory
13
+ 1. **Read**: `coding/inventory.md`.
14
+ 2. **Parse**: Extract the table rows into a list of objects: `{ Name, RepoURL, LocalPath }`.
15
+
16
+ ### Step 2: Verification & Clone
17
+ For each repository in the list:
18
+ 1. **Check**: Does `LocalPath` exist?
19
+ 2. **Action**:
20
+ - **If Missing**: Execute `git clone {RepoURL} {LocalPath}`.
21
+ - **If Present**: Execute `cd {LocalPath} && git pull`.
22
+ 3. **Log**: Record the outcome (Cloned, Updated, or Error).
23
+
24
+ ### Step 3: Validation
25
+ 1. **Check**: Verify that `LocalPath/.git` exists.
26
+ 2. **Output**: Report successful hydration of the Code Hemisphere.
27
+
28
+ ## Output
29
+ - A summary report of all repositories synced.
30
+ - A "Ready" state for the Architect to begin work.
@@ -0,0 +1,26 @@
1
+ ---
2
+ name: scorecard-synthesis
3
+ description: Synthesize hiring scorecards from interview transcripts. Analyzes candidate responses against role criteria and generates structured evaluation with evidence.
4
+ ---
5
+
6
+ # Skill: Interview Scorecard Synthesis
7
+ # Strategy: Manager (Skill) -> Contractor (Agent)
8
+
9
+ ## 1. Objective
10
+ Orchestrate the synthesis of a hiring scorecard by bundling large transcript data and launching the 'Senior Hiring Analyst' agent.
11
+
12
+ ## 2. Executable Protocol
13
+ 1. **Identify Target**: Confirm `candidate_name` and `target_career_step`.
14
+ 2. **Select Lens**: Ask user or determine if this is a "Technical" or "Hiring Manager" scorecard.
15
+ 3. **Artifact Retrieval**:
16
+ - Capture the full meeting transcript text.
17
+ - Read the manual notes from the session or `work/Operations/Daily_Log`.
18
+ - Read the prepared questions from `work/Inbox/Tasks/Interviews/[Candidate]/questions.md`.
19
+ 4. **Bundle & Delegate (Context Isolation)**:
20
+ - Launch `task(subagent_type="general", description="Synthesize Scorecard for [Candidate]")`.
21
+ - **Prompt Pattern**: "You are acting as the Persona in kernel/Agents/hiring-analyst.md. Perform a DIRECT EXECUTION. Lens: [Selected Lens]. Inputs: [Full Transcript], [Manual Notes], [Prepared Questions], [Target Career Step]."
22
+ 5. **Finalization**:
23
+ - Parse the output: Split at `===QA_LOG_START===`.
24
+ - Save Part 1 to `work/Inbox/Tasks/Interviews/[Candidate]/scorecard.md`.
25
+ - Save Part 2 to `work/Inbox/Tasks/Interviews/[Candidate]/qa_log.md`.
26
+ - Append the result summary to `work/Team/open-position-hiring.md`.