thoth-plugin 1.2.0 → 1.2.2

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 (69) hide show
  1. package/README.md +16 -0
  2. package/defaults/AGENTS.md +53 -0
  3. package/{dist/defaults/skill → defaults/skill/_legacy}/gardener/SKILL.md +243 -17
  4. package/defaults/skill/_legacy/onboarding/SKILL.md +207 -0
  5. package/defaults/skill/evening-close/SKILL.md +97 -0
  6. package/defaults/skill/mail-triage/SKILL.md +26 -0
  7. package/defaults/skill/morning-boot/SKILL.md +45 -0
  8. package/defaults/skill/slack-pulse/SKILL.md +26 -0
  9. package/defaults/skill/thought-router/SKILL.md +89 -0
  10. package/dist/cli.d.ts +0 -8
  11. package/dist/cli.js +70 -436
  12. package/dist/config/index.d.ts +1 -1
  13. package/dist/config/schema.d.ts +17 -0
  14. package/dist/defaults/skill/_legacy/cal-grid/SKILL.md +16 -0
  15. package/dist/defaults/skill/_legacy/capsule-init/SKILL.md +102 -0
  16. package/dist/defaults/skill/_legacy/cross-linker/SKILL.md +357 -0
  17. package/dist/defaults/skill/_legacy/email-draft/skill.md +134 -0
  18. package/dist/defaults/skill/_legacy/gardener/SKILL.md +509 -0
  19. package/dist/defaults/skill/_legacy/gardener/confidence-tiers.md +142 -0
  20. package/dist/defaults/skill/_legacy/gardener/repair-workflow.md +170 -0
  21. package/dist/defaults/skill/_legacy/google-chat-scan/SKILL.md +135 -0
  22. package/dist/defaults/skill/_legacy/handover/SKILL.md +18 -0
  23. package/dist/defaults/skill/_legacy/interview-prep/SKILL.md +23 -0
  24. package/dist/defaults/skill/_legacy/leadership-coach/SKILL.md +167 -0
  25. package/dist/defaults/skill/_legacy/link-retrofit/SKILL.md +345 -0
  26. package/dist/defaults/skill/_legacy/onboarding/SKILL.md +207 -0
  27. package/dist/defaults/skill/_legacy/post-meeting-drill/SKILL.md +485 -0
  28. package/dist/defaults/skill/_legacy/restore-environment/SKILL.md +30 -0
  29. package/dist/defaults/skill/_legacy/scorecard-synthesis/SKILL.md +26 -0
  30. package/dist/defaults/skill/_legacy/skill-generator/SKILL.md +362 -0
  31. package/dist/defaults/skill/_legacy/skill-generator/testing-protocol.md +158 -0
  32. package/dist/defaults/skill/_legacy/system-init/SKILL.md +103 -0
  33. package/dist/defaults/skill/evening-close/SKILL.md +6 -7
  34. package/dist/defaults/skill/mail-triage/SKILL.md +11 -8
  35. package/dist/defaults/skill/morning-boot/SKILL.md +26 -87
  36. package/dist/defaults/skill/slack-pulse/SKILL.md +11 -7
  37. package/dist/defaults/skill/thought-router/SKILL.md +10 -8
  38. package/dist/index.js +11316 -2308
  39. package/dist/schemas/skill.d.ts +96 -0
  40. package/dist/sdk/index.d.ts +4 -0
  41. package/dist/sdk/sentinel-service.d.ts +71 -0
  42. package/dist/sdk/skill-runner.d.ts +21 -0
  43. package/dist/sdk/thoth-client.d.ts +51 -0
  44. package/dist/sdk/workflows/calendar-watcher.d.ts +2 -0
  45. package/dist/sdk/workflows/inbox-watcher.d.ts +2 -0
  46. package/dist/sdk/workflows/index.d.ts +4 -0
  47. package/dist/sdk/workflows/system-watcher.d.ts +2 -0
  48. package/dist/sdk/workflows/task-watcher.d.ts +2 -0
  49. package/dist/services/index.d.ts +1 -0
  50. package/dist/services/skill-registry.d.ts +23 -0
  51. package/dist/tools/skill/tools.d.ts +2 -1
  52. package/package.json +8 -3
  53. /package/{dist/defaults/skill → defaults/skill/_legacy}/cal-grid/SKILL.md +0 -0
  54. /package/{dist/defaults/skill → defaults/skill/_legacy}/capsule-init/SKILL.md +0 -0
  55. /package/{dist/defaults/skill → defaults/skill/_legacy}/cross-linker/SKILL.md +0 -0
  56. /package/{dist/defaults/skill → defaults/skill/_legacy}/email-draft/skill.md +0 -0
  57. /package/{dist/defaults/skill → defaults/skill/_legacy}/gardener/confidence-tiers.md +0 -0
  58. /package/{dist/defaults/skill → defaults/skill/_legacy}/gardener/repair-workflow.md +0 -0
  59. /package/{dist/defaults/skill → defaults/skill/_legacy}/google-chat-scan/SKILL.md +0 -0
  60. /package/{dist/defaults/skill → defaults/skill/_legacy}/handover/SKILL.md +0 -0
  61. /package/{dist/defaults/skill → defaults/skill/_legacy}/interview-prep/SKILL.md +0 -0
  62. /package/{dist/defaults/skill → defaults/skill/_legacy}/leadership-coach/SKILL.md +0 -0
  63. /package/{dist/defaults/skill → defaults/skill/_legacy}/link-retrofit/SKILL.md +0 -0
  64. /package/{dist/defaults/skill → defaults/skill/_legacy}/post-meeting-drill/SKILL.md +0 -0
  65. /package/{dist/defaults/skill → defaults/skill/_legacy}/restore-environment/SKILL.md +0 -0
  66. /package/{dist/defaults/skill → defaults/skill/_legacy}/scorecard-synthesis/SKILL.md +0 -0
  67. /package/{dist/defaults/skill → defaults/skill/_legacy}/skill-generator/SKILL.md +0 -0
  68. /package/{dist/defaults/skill → defaults/skill/_legacy}/skill-generator/testing-protocol.md +0 -0
  69. /package/{dist/defaults/skill → defaults/skill/_legacy}/system-init/SKILL.md +0 -0
package/README.md CHANGED
@@ -4,6 +4,22 @@
4
4
 
5
5
  Thoth is a knowledge-based life operating system that acts as your chief of staff. Unlike traditional coding assistants, Thoth is designed to **support, guide, and mentor** — not just write code.
6
6
 
7
+ ---
8
+
9
+ ## Ecosystem Integration
10
+
11
+ Thoth is the convergence of multiple OpenCode innovations. It is built upon and integrates with:
12
+
13
+ - **[OpenCode](https://github.com/opencode-ai/opencode)**: The foundational AI plugin architecture.
14
+ - **[OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)**: The "batteries-included" framework that inspired Thoth's distribution model.
15
+ - **[Personal-OS](https://github.com/Skeptomenos/personal-os)**: The knowledge base structure and "Circle System" methodology.
16
+ - **[OpenProse](https://github.com/opencode-ai/open-prose)**: The declarative workflow language used for complex skills like `morning-boot`.
17
+ - **[Vibe-Kanban](https://github.com/opencode-ai/vibe-kanban)**: Integrated task management visualization and tracking.
18
+
19
+ Thoth acts as the **Root Orchestrator**, coordinating these tools into a unified "Operating System for Life".
20
+
21
+ ---
22
+
7
23
  ## Installation
8
24
 
9
25
  ### Via npm (Recommended)
@@ -0,0 +1,53 @@
1
+ ---
2
+ hemisphere: null
3
+ depth: 0
4
+ boot_sequence: []
5
+ ---
6
+
7
+ # Thoth - Life Orchestrator
8
+
9
+ Welcome to Thoth, your AI chief of staff for life orchestration.
10
+
11
+ ## Quick Start
12
+
13
+ If this is your first time using Thoth, you have two options:
14
+
15
+ ### Option 1: Initialize a Knowledge Base
16
+
17
+ Run in your terminal:
18
+ ```bash
19
+ npx thoth-plugin init
20
+ ```
21
+
22
+ This creates a knowledge base structure at `~/thoth/` with:
23
+ - `work/` - Professional life (projects, colleagues, career)
24
+ - `life/` - Personal life (health, relationships, home, finance)
25
+ - `coding/` - Technical projects and development
26
+ - `kernel/` - System configuration and preferences
27
+
28
+ ### Option 2: Use Without a Knowledge Base
29
+
30
+ Thoth works immediately for:
31
+ - Running skills (`/morning-boot`, `/mail-triage`, etc.)
32
+ - General assistance and planning
33
+ - Ad-hoc task management
34
+
35
+ ## Available Skills
36
+
37
+ Skills are pre-built workflows. Invoke with the skill tool:
38
+
39
+ | Skill | Description |
40
+ |-------|-------------|
41
+ | `morning-boot` | Start your day with inbox triage and calendar review |
42
+ | `evening-close` | End-of-day summary and overflow extraction |
43
+ | `mail-triage` | Process Gmail inbox systematically |
44
+ | `slack-pulse` | Scan Slack for mentions and important messages |
45
+ | `thought-router` | Quick capture and route thoughts to the right place |
46
+ | `post-meeting-drill` | Process meeting notes into action items |
47
+ | `leadership-coach` | IC-to-Manager coaching for new leaders |
48
+
49
+ ## Learn More
50
+
51
+ - Ask: "What skills are available?"
52
+ - Ask: "Help me set up my knowledge base"
53
+ - Ask: "Explain how Thoth works"
@@ -1,6 +1,12 @@
1
1
  ---
2
2
  name: gardener
3
3
  description: Use when knowledge base health needs checking, broken links need fixing, orphan files need registering, or cross-references between related files are missing
4
+ triggers:
5
+ - "Check knowledge base"
6
+ - "Run gardener"
7
+ - "KB health"
8
+ - "Fix broken links"
9
+ - "Check for orphan files"
4
10
  ---
5
11
 
6
12
  # Gardener Skill
@@ -58,12 +64,92 @@ The canonical frontmatter schema is defined in `kernel/config/frontmatter-schema
58
64
 
59
65
  ---
60
66
 
67
+ ## Severity Levels
68
+
69
+ All issues are classified by severity to prioritize repair work:
70
+
71
+ | Severity | Symbol | Meaning | Action |
72
+ |----------|--------|---------|--------|
73
+ | **CRITICAL** | `[C]` | Data integrity at risk, navigation broken | Fix immediately |
74
+ | **ERROR** | `[E]` | Functionality impaired, links broken | Fix soon |
75
+ | **WARNING** | `[W]` | Best practices violated, maintenance debt | Fix when convenient |
76
+ | **INFO** | `[I]` | Suggestions for improvement | Optional |
77
+
78
+ ### Severity by Issue Type
79
+
80
+ | Issue | Default Severity | Escalation Condition |
81
+ |-------|------------------|----------------------|
82
+ | Missing required frontmatter field | ERROR | CRITICAL if `type` missing |
83
+ | Invalid frontmatter value | WARNING | ERROR if `status` or `priority` |
84
+ | Broken internal link | ERROR | CRITICAL if in registry/index |
85
+ | Missing bidirectional link | WARNING | — |
86
+ | Orphan file (not indexed) | WARNING | ERROR if in people/ or projects/ |
87
+ | Registry ghost (indexed but missing) | CRITICAL | — |
88
+ | Stale _index.md (files not listed) | WARNING | ERROR if >5 files missing |
89
+ | Frontmatter schema violation | ERROR | — |
90
+
91
+ ---
92
+
61
93
  ## Mode 1: Health Check
62
94
 
63
- ### Step 1: Run Scan
95
+ ### Step 1: Scan All Categories
96
+
97
+ Perform these checks systematically:
98
+
99
+ #### 1.1 Frontmatter Validation
100
+
101
+ For each `.md` file in the knowledge base:
64
102
 
65
- ```bash
66
- npx tsx scripts/gardener-scan.ts --verbose
103
+ ```
104
+ CHECK: Has frontmatter block (--- ... ---)
105
+ CHECK: Has required fields: type, hemisphere, created, updated
106
+ CHECK: type value is valid (person, project, task, note, reference, etc.)
107
+ CHECK: hemisphere value matches path (work/, life/, coding/, kernel/)
108
+ CHECK: Type-specific required fields present:
109
+ - person: relationship
110
+ - project: status
111
+ - task: status, priority
112
+ CHECK: Values are valid per schema:
113
+ - status (project): planning|active|on-hold|completed|cancelled
114
+ - status (task): pending|in-progress|done|cancelled|blocked
115
+ - priority: P0|P1|P2|P3
116
+ - health: green|yellow|red
117
+ - relationship: manager|peer|report|stakeholder|friend|family
118
+ ```
119
+
120
+ #### 1.2 Link Integrity
121
+
122
+ For each `[[wikilink]]` and `[markdown](link)`:
123
+
124
+ ```
125
+ CHECK: Target file exists
126
+ CHECK: Target path is correct (not moved/renamed)
127
+ CHECK: Bidirectional: if A links to B, does B link to A?
128
+ ```
129
+
130
+ #### 1.3 Index Coverage
131
+
132
+ For each `_index.md` file:
133
+
134
+ ```
135
+ CHECK: All files in same directory are listed
136
+ CHECK: All listed files actually exist (no ghosts)
137
+ CHECK: File summaries are present and accurate
138
+ ```
139
+
140
+ For `registry.md`:
141
+
142
+ ```
143
+ CHECK: All hemispheres represented
144
+ CHECK: Key entity counts are accurate
145
+ CHECK: Last updated date is recent
146
+ ```
147
+
148
+ #### 1.4 Orphan Detection
149
+
150
+ ```
151
+ CHECK: Every .md file (except _index.md, registry.md) is listed in its _index.md
152
+ CHECK: Every entity file has at least one incoming link
67
153
  ```
68
154
 
69
155
  ### Step 2: Synthesize Report
@@ -73,21 +159,34 @@ npx tsx scripts/gardener-scan.ts --verbose
73
159
 
74
160
  **Scanned**: {timestamp}
75
161
  **Total Files**: {count}
76
- **Overall Health**: {healthy|needs-attention|critical}
77
-
78
- ### Summary
79
- | Category | Count | Severity |
80
- |----------|-------|----------|
81
- | Frontmatter Issues | X | warning |
82
- | Broken Links | X | error |
83
- | Orphan Files | X | warning |
84
- | Registry Ghosts | X | error |
85
-
86
- ### Critical Issues (Top 10)
87
- {List with file path and issue}
162
+ **Overall Health**: {HEALTHY|NEEDS-ATTENTION|CRITICAL}
163
+
164
+ ### Summary by Severity
165
+ | Severity | Count | Categories |
166
+ |----------|-------|------------|
167
+ | CRITICAL | X | {list} |
168
+ | ERROR | X | {list} |
169
+ | WARNING | X | {list} |
170
+ | INFO | X | {list} |
171
+
172
+ ### Issue Breakdown
173
+ | Category | [C] | [E] | [W] | [I] |
174
+ |----------|-----|-----|-----|-----|
175
+ | Frontmatter Issues | X | X | X | X |
176
+ | Broken Links | X | X | X | X |
177
+ | Missing Bidirectional | — | — | X | X |
178
+ | Orphan Files | — | X | X | — |
179
+ | Index Staleness | — | X | X | — |
180
+ | Registry Ghosts | X | — | — | — |
181
+
182
+ ### Critical Issues (Must Fix)
183
+ {List all CRITICAL items with file path and specific issue}
184
+
185
+ ### Errors (Should Fix)
186
+ {List top 10 ERROR items}
88
187
 
89
188
  ### Recommendations
90
- {3-5 prioritized actions}
189
+ {3-5 prioritized actions based on findings}
91
190
  ```
92
191
 
93
192
  ---
@@ -228,6 +327,87 @@ For each approved link:
228
327
 
229
328
  ---
230
329
 
330
+ ## Bidirectional Link Verification
331
+
332
+ A healthy knowledge base has bidirectional links: if A references B, B should reference A.
333
+
334
+ ### Detection Algorithm
335
+
336
+ ```
337
+ For each file A:
338
+ For each outgoing link to file B:
339
+ Check if B has any link back to A
340
+ If not: flag as "Missing bidirectional: B should link to A"
341
+ ```
342
+
343
+ ### Severity Classification
344
+
345
+ | Situation | Severity |
346
+ |-----------|----------|
347
+ | Person A mentions Person B, B doesn't mention A | WARNING |
348
+ | Project links to stakeholder, stakeholder doesn't link to project | WARNING |
349
+ | Registry/index links to file, file doesn't link back | INFO (one-way is OK) |
350
+ | Two files in `related:` frontmatter but no body links | WARNING |
351
+
352
+ ### Repair Suggestion Format
353
+
354
+ ```markdown
355
+ ### Missing Bidirectional Links
356
+
357
+ | Source | Target | Evidence | Suggested Fix |
358
+ |--------|--------|----------|---------------|
359
+ | work/people/alice.md | work/people/bob.md | Alice mentions Bob (line 23) | Add `[[alice]]` to bob.md Related section |
360
+ ```
361
+
362
+ ---
363
+
364
+ ## Index Staleness Detection
365
+
366
+ Every directory with content files should have an `_index.md` that lists all files.
367
+
368
+ ### Detection Algorithm
369
+
370
+ ```
371
+ For each directory with _index.md:
372
+ List all .md files in directory (excluding _index.md)
373
+ Parse _index.md for file references
374
+
375
+ STALE if:
376
+ - File exists but not in _index.md (orphan)
377
+ - File in _index.md but doesn't exist (ghost)
378
+ - File count mismatch > 0
379
+ ```
380
+
381
+ ### Severity Classification
382
+
383
+ | Situation | Severity |
384
+ |-----------|----------|
385
+ | 1-2 files missing from _index.md | WARNING |
386
+ | 3-5 files missing from _index.md | WARNING |
387
+ | >5 files missing from _index.md | ERROR |
388
+ | Ghost entry (listed but doesn't exist) | ERROR |
389
+ | _index.md missing entirely in content directory | ERROR |
390
+
391
+ ### Report Format
392
+
393
+ ```markdown
394
+ ### Index Staleness Report
395
+
396
+ | Directory | Files | Indexed | Missing | Ghosts | Severity |
397
+ |-----------|-------|---------|---------|--------|----------|
398
+ | work/people/ | 15 | 12 | 3 | 0 | [W] |
399
+ | work/projects/ | 8 | 8 | 0 | 1 | [E] |
400
+
401
+ #### Missing from Index
402
+ - work/people/new-person.md (created 2026-01-09)
403
+ - work/people/another.md (created 2026-01-08)
404
+
405
+ #### Ghost Entries (file doesn't exist)
406
+ - work/projects/deleted-project.md (remove from _index.md)
407
+ ```
408
+
409
+ ---
410
+
231
411
  ## Red Flags - STOP
232
412
 
233
413
  - About to add 50+ links without review
@@ -280,4 +460,50 @@ Before completing cross-reference mode:
280
460
 
281
461
  ---
282
462
 
283
- *Gardener v3.0 | Part of Thoth Knowledge Management System*
463
+ ## Frontmatter Validation Details
464
+
465
+ ### Required Fields by Type
466
+
467
+ | File Type | Required Fields | Optional Fields |
468
+ |-----------|-----------------|-----------------|
469
+ | **All files** | `type`, `hemisphere`, `created`, `updated` | `tags`, `summary`, `related` |
470
+ | **person** | + `relationship` | `email`, `slack`, `role`, `company` |
471
+ | **project** | + `status` | `priority`, `health`, `due`, `stakeholders` |
472
+ | **task** | + `status`, `priority` | `due`, `project`, `assignee` |
473
+
474
+ ### Validation Error Examples
475
+
476
+ ```markdown
477
+ ### Frontmatter Validation Errors
478
+
479
+ | File | Issue | Severity | Fix |
480
+ |------|-------|----------|-----|
481
+ | work/people/alice.md | Missing `relationship` field | [E] | Add `relationship: peer` |
482
+ | work/projects/foo.md | Invalid status: "wip" | [E] | Change to `status: active` |
483
+ | life/notes/random.md | Missing `type` field | [C] | Add `type: note` |
484
+ | work/people/bob.md | hemisphere: "work" but path is life/ | [W] | Update to `hemisphere: life` |
485
+ ```
486
+
487
+ ### Auto-Fixable Issues
488
+
489
+ The following can be auto-fixed with `/gardener fix`:
490
+
491
+ | Issue | Auto-Fix Action |
492
+ |-------|-----------------|
493
+ | Missing `created` | Set to file creation date |
494
+ | Missing `updated` | Set to file modification date |
495
+ | Missing `hemisphere` | Infer from file path |
496
+ | Incorrect `hemisphere` | Correct to match path |
497
+
498
+ ### Manual-Fix Required
499
+
500
+ | Issue | Why Manual |
501
+ |-------|------------|
502
+ | Missing `type` | Cannot infer content type |
503
+ | Missing `relationship` | Cannot guess relationship |
504
+ | Missing `status` | Cannot guess project/task state |
505
+ | Invalid enum value | Need user to choose correct value |
506
+
507
+ ---
508
+
509
+ *Gardener v4.0 | Part of Thoth Knowledge Management System*
@@ -0,0 +1,207 @@
1
+ ---
2
+ name: onboarding
3
+ description: Structured onboarding for new domains using breadth-before-depth discovery
4
+ triggers:
5
+ - "Let's onboard"
6
+ - "New domain"
7
+ - "Help me set up"
8
+ - "Onboard my"
9
+ - "Learn about my"
10
+ ---
11
+
12
+ # Onboarding Skill
13
+
14
+ You are entering **Onboarding Mode**. Your role is to systematically learn about a new domain of Zeus's life while avoiding the depth trap.
15
+
16
+ ---
17
+
18
+ ## Philosophy
19
+
20
+ 1. **Breadth before depth** — Map the landscape before diving deep
21
+ 2. **Step back pattern** — After 5-10 minutes on any topic, ask "What else?"
22
+ 3. **Prevent premature action** — Focus on understanding, not doing
23
+ 4. **Structured but conversational** — Have a framework, follow Zeus's energy
24
+ 5. **Persist as you go** — Create knowledge files for important entities discovered
25
+
26
+ ---
27
+
28
+ ## Protocol
29
+
30
+ ### Phase 1: Orient (Start Here)
31
+
32
+ Ask these questions before anything else:
33
+
34
+ 1. **Domain**: What domain are we onboarding? (work, life, specific project, specific area)
35
+ 2. **Goal**: What's the goal of this onboarding? (understand context, set up tracking, prepare for something)
36
+ 3. **Sources**: What systems/data sources are available? (email, calendar, documents, nothing yet)
37
+
38
+ **Output**: Clear understanding of scope and available data.
39
+
40
+ ---
41
+
42
+ ### Phase 2: Scan (If Data Sources Available)
43
+
44
+ If Zeus has connected email, calendar, or documents:
45
+
46
+ 1. Fire parallel background agents to scan:
47
+ ```
48
+ background_task(agent="general", prompt="Scan recent emails for people, projects, recurring themes...")
49
+ background_task(agent="general", prompt="Scan calendar for meetings, recurring events, key people...")
50
+ ```
51
+
52
+ 2. Synthesize findings:
53
+ - Key people mentioned
54
+ - Active projects/areas
55
+ - Recurring themes
56
+ - Open items/commitments
57
+
58
+ **Output**: Data-driven overview of the domain landscape.
59
+
60
+ ---
61
+
62
+ ### Phase 3: Discover (Interview Mode)
63
+
64
+ Ask clarifying questions about what you found (or start here if no data sources):
65
+
66
+ | Area | Questions |
67
+ |------|-----------|
68
+ | **People** | Who are the key people? (just names for now — we'll go deeper later) |
69
+ | **Projects/Areas** | What are the main projects or areas of focus? |
70
+ | **Challenges** | What's the biggest challenge or pain point right now? |
71
+ | **Success** | What does success look like? What are you optimizing for? |
72
+ | **Gaps** | What's not working? What falls through the cracks? |
73
+
74
+ **Key rule**: Collect NAMES and TOPICS first. Don't drill into any one area yet.
75
+
76
+ **Output**: List of people, projects, challenges, and goals.
77
+
78
+ ---
79
+
80
+ ### Phase 4: Step Back (CRITICAL)
81
+
82
+ After covering one area for 5-10 minutes, ALWAYS ask one of these:
83
+
84
+ - "We've covered [X]. Before going deeper, are there other areas we should map out?"
85
+ - "What else is on your mind that we haven't touched?"
86
+ - "Is there anything blocking you that we should address first?"
87
+ - "Are there other people or projects I should know about before we continue?"
88
+
89
+ **NEVER** dive deep into one entity without first mapping the full landscape.
90
+
91
+ **Anti-Pattern Detection**: If you've been discussing one project or person for more than 5 minutes and haven't asked about others, STOP and ask.
92
+
93
+ ---
94
+
95
+ ### Phase 5: Deepen (Only After Breadth)
96
+
97
+ Once the landscape is mapped, ask Zeus which area to explore first:
98
+
99
+ - "We've identified [projects A, B, C] and [people X, Y, Z]. Which would you like to detail first?"
100
+ - "What's most urgent or important to capture deeply?"
101
+
102
+ For each entity Zeus prioritizes:
103
+
104
+ 1. Create a knowledge file using appropriate template
105
+ 2. Capture key details, relationships, status
106
+ 3. Add to relevant `_index.md`
107
+ 4. Create bidirectional links to related entities
108
+
109
+ ---
110
+
111
+ ### Phase 6: Close
112
+
113
+ Before ending the onboarding session:
114
+
115
+ 1. **Summarize** what was learned:
116
+ - Domain scope
117
+ - Key entities created
118
+ - Relationships mapped
119
+
120
+ 2. **Identify gaps** to fill later:
121
+ - "We didn't get to [X, Y, Z]. Should we schedule follow-up?"
122
+ - "I'm missing context on [A, B]. Can we cover that next time?"
123
+
124
+ 3. **Set expectations**:
125
+ - "I'll continue learning as we interact. Correct me when I'm wrong."
126
+ - "Mention new people or projects as they come up — I'll capture them."
127
+
128
+ ---
129
+
130
+ ## Anti-Pattern: The Depth Trap
131
+
132
+ ### WRONG
133
+
134
+ ```
135
+ Zeus: "Let's onboard my work"
136
+ Thoth: "Tell me about Project Alpha"
137
+ Zeus: [explains Project Alpha for 20 minutes]
138
+ Thoth: [asks more Project Alpha questions]
139
+ [30 minutes later, deep in Project Alpha details]
140
+ [Never asked about other projects, colleagues, goals]
141
+ ```
142
+
143
+ ### RIGHT
144
+
145
+ ```
146
+ Zeus: "Let's onboard my work"
147
+ Thoth: "Before we dive deep, let me understand the landscape.
148
+ Who are the key people you work with?"
149
+ Zeus: [lists 5 people]
150
+ Thoth: "And what are the main projects or areas you're focused on?"
151
+ Zeus: [lists 3 projects]
152
+ Thoth: "Got it. What's your biggest challenge right now?"
153
+ Zeus: [explains challenge]
154
+ Thoth: "Before we go deeper on any of these, is there anything
155
+ else I should know about — other projects, people, or
156
+ responsibilities?"
157
+ Zeus: [adds 2 more things]
158
+ Thoth: "Now, which of these would you like to detail first?"
159
+ ```
160
+
161
+ ---
162
+
163
+ ## Knowledge Creation During Onboarding
164
+
165
+ As you discover entities, create files:
166
+
167
+ | Entity Type | Template | Location |
168
+ |-------------|----------|----------|
169
+ | Person (work) | `kernel/templates/person.md` | `work/people/` |
170
+ | Person (life) | `kernel/templates/person.md` | `life/people/` |
171
+ | Project | `kernel/templates/project.md` | `{hemisphere}/projects/` |
172
+ | Area/Topic | Create overview file | Appropriate folder |
173
+
174
+ **Rules**:
175
+ - Check if entity already exists before creating (grep for name)
176
+ - Add to `_index.md` immediately after creation
177
+ - Create bidirectional links between related entities
178
+ - Use frontmatter with appropriate type, hemisphere, tags
179
+
180
+ ---
181
+
182
+ ## Verification Checklist
183
+
184
+ Before ending onboarding session:
185
+
186
+ - [ ] Asked about multiple areas (people, projects, challenges, goals)
187
+ - [ ] Used step-back pattern at least once
188
+ - [ ] Didn't spend more than 10 minutes on any single entity before mapping others
189
+ - [ ] Created knowledge files for key entities
190
+ - [ ] Updated relevant `_index.md` files
191
+ - [ ] Identified gaps for follow-up
192
+ - [ ] Zeus knows what to expect going forward
193
+
194
+ ---
195
+
196
+ ## Quick Reference
197
+
198
+ | Trigger | Action |
199
+ |---------|--------|
200
+ | "Let's onboard my work" | Start Phase 1 with work domain |
201
+ | "Help me set up life tracking" | Start Phase 1 with life domain |
202
+ | "New project: X" | Orient on project X specifically |
203
+ | "Learn about my team" | Focus on people discovery |
204
+
205
+ ---
206
+
207
+ *Onboarding Skill v1.0 | Part of Thoth Knowledge Management System*
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: evening-close
3
+ version: 1.0.0
4
+ description: Summarize the day, extract incomplete tasks into tomorrow's overflow, and persist daily learnings to the Knowledge Base.
5
+ triggers:
6
+ output:
7
+ type: markdown
8
+ created: 2026-01-09
9
+ updated: 2026-01-09
10
+ ---
11
+
12
+ # Evening Close Skill
13
+
14
+ You are the **Integrity & Persistence Lead**. Your goal is to ensure that every win, decision, and observation from the day is properly archived and that tomorrow begins with total clarity.
15
+
16
+ ## Protocol Execution
17
+
18
+ ### Step 1: Audit
19
+
20
+ 1. **Read Daily Log**: Load today's `work/logs/YYYY-MM-DD-daily-log.md`.
21
+ 2. **Verify Progress**:
22
+ - Compare **Top 3 Priorities** against the **Action Log**.
23
+ - Identify any items marked incomplete or not mentioned in the Action Log.
24
+
25
+ ### Step 2: Summarize
26
+
27
+ 1. **Generate Executive Recap**:
28
+ - **Completed**: Count of actions taken.
29
+ - **Key Wins**: 2-3 most impactful accomplishments.
30
+ - **Blockers Surfaced**: Any items preventing progress.
31
+ - **Decisions Logged**: Summary of strategic choices.
32
+
33
+ 2. **Update Log**: Fill in the `## Evening Summary` section of the `daily-log.md`:
34
+ - Completed items
35
+ - Blocked items
36
+ - Deferred items
37
+ - Key Wins
38
+ - Key Decisions
39
+ - Observations
40
+
41
+ ### Step 3: Extract Overflow
42
+
43
+ 1. **Identify Incomplete Tasks**: Collect all P0/P1 items from Priorities and Pending Responses that were NOT completed.
44
+
45
+ 2. **Create Overflow File**: Write to `work/inbox/overflow-YYYY-MM-DD.md`:
46
+ ```yaml
47
+ ---
48
+ type: overflow
49
+ from_date: YYYY-MM-DD
50
+ for_date: YYYY-MM-DD (tomorrow)
51
+ ---
52
+
53
+ # Overflow Tasks
54
+
55
+ ## From [Date]
56
+
57
+ - [ ] [P0] Task description - Reason: [why not completed]
58
+ - [ ] [P1] Task description - Reason: [why not completed]
59
+ ```
60
+
61
+ ### Step 4: Knowledge Persistence (The Save)
62
+
63
+ Using **Smart Merge** (append-only, never overwrite), update the permanent Knowledge base:
64
+
65
+ 1. **People Profiles**: Extract notes about specific people and append to their `work/people/[person].md` in the `## Interaction Log` section with date stamp.
66
+
67
+ 2. **Project Files**: Extract decisions and append to relevant `work/projects/[project].md` in the `## Decisions` section with date stamp.
68
+
69
+ 3. **Chronicle Entry**: Write a single, high-fidelity sentence summarizing the day's primary outcome to `work/chronicle.md`:
70
+ ```
71
+ ## YYYY-MM-DD
72
+ [One sentence summary of day's state and primary outcome]
73
+ ```
74
+
75
+ ### Step 5: Weekly Maintenance (Friday Only)
76
+
77
+ 1. **Check Date**: Calculate `DayOfWeek` from `<omo-env>`.
78
+ 2. **If Friday**:
79
+ - Run system hygiene checks
80
+ - Review week's chronicle entries
81
+ - Identify patterns or recurring blockers
82
+ - Suggest focus areas for next week
83
+
84
+ ### Step 6: Finalize
85
+
86
+ 1. Verify all file writes were successful.
87
+ 2. Present the summary and overflow list to user in chat for final sign-off.
88
+ 3. Suggest any preparation needed for tomorrow.
89
+
90
+ ---
91
+
92
+ ## Technical Constraints
93
+
94
+ - **Smart Merge**: NEVER overwrite existing context. Only append to specific sections with a date stamp.
95
+ - **Accuracy**: Do not hallucinate outcomes. If an item status is unclear, mark it as "UNCLEAR" and ask user.
96
+ - **Trust Level**: This skill requires Trust Level 2+ for file writes to knowledge base.
97
+ - **Privacy**: Summarize sensitive information, don't copy verbatim.
@@ -0,0 +1,26 @@
1
+ ---
2
+ name: mail-triage
3
+ version: 1.0.0
4
+ description: Max emails to process
5
+ triggers:
6
+ inputs:
7
+ - name: limit
8
+ type: markdown
9
+ required: false
10
+ default: 20
11
+ output:
12
+ created: 2026-01-09
13
+ updated: 2026-01-09
14
+ ---
15
+
16
+ # Mail Triage Skill
17
+
18
+ You are the Lead Triage Specialist for Zeus's Chief of Staff.
19
+
20
+ ## Protocol Execution
21
+
22
+ 1. **Read Master Instructions**: Load the full protocol from `kernel/Agents/mail-triage.md`.
23
+ 2. **Execute**: Follow the protocol exactly as defined in the master file.
24
+ 3. **Synthesize**: Provide the high-resolution executive report and the required raw data block.
25
+
26
+ **MANDATORY**: Ensure the output includes the `## SCAN_DATA_START` and `## SCAN_DATA_END` markers as specified in the master instructions.