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.
- package/README.md +16 -0
- package/defaults/AGENTS.md +53 -0
- package/{dist/defaults/skill → defaults/skill/_legacy}/gardener/SKILL.md +243 -17
- package/defaults/skill/_legacy/onboarding/SKILL.md +207 -0
- package/defaults/skill/evening-close/SKILL.md +97 -0
- package/defaults/skill/mail-triage/SKILL.md +26 -0
- package/defaults/skill/morning-boot/SKILL.md +45 -0
- package/defaults/skill/slack-pulse/SKILL.md +26 -0
- package/defaults/skill/thought-router/SKILL.md +89 -0
- package/dist/cli.d.ts +0 -8
- package/dist/cli.js +70 -436
- package/dist/config/index.d.ts +1 -1
- package/dist/config/schema.d.ts +17 -0
- package/dist/defaults/skill/_legacy/cal-grid/SKILL.md +16 -0
- package/dist/defaults/skill/_legacy/capsule-init/SKILL.md +102 -0
- package/dist/defaults/skill/_legacy/cross-linker/SKILL.md +357 -0
- package/dist/defaults/skill/_legacy/email-draft/skill.md +134 -0
- package/dist/defaults/skill/_legacy/gardener/SKILL.md +509 -0
- package/dist/defaults/skill/_legacy/gardener/confidence-tiers.md +142 -0
- package/dist/defaults/skill/_legacy/gardener/repair-workflow.md +170 -0
- package/dist/defaults/skill/_legacy/google-chat-scan/SKILL.md +135 -0
- package/dist/defaults/skill/_legacy/handover/SKILL.md +18 -0
- package/dist/defaults/skill/_legacy/interview-prep/SKILL.md +23 -0
- package/dist/defaults/skill/_legacy/leadership-coach/SKILL.md +167 -0
- package/dist/defaults/skill/_legacy/link-retrofit/SKILL.md +345 -0
- package/dist/defaults/skill/_legacy/onboarding/SKILL.md +207 -0
- package/dist/defaults/skill/_legacy/post-meeting-drill/SKILL.md +485 -0
- package/dist/defaults/skill/_legacy/restore-environment/SKILL.md +30 -0
- package/dist/defaults/skill/_legacy/scorecard-synthesis/SKILL.md +26 -0
- package/dist/defaults/skill/_legacy/skill-generator/SKILL.md +362 -0
- package/dist/defaults/skill/_legacy/skill-generator/testing-protocol.md +158 -0
- package/dist/defaults/skill/_legacy/system-init/SKILL.md +103 -0
- package/dist/defaults/skill/evening-close/SKILL.md +6 -7
- package/dist/defaults/skill/mail-triage/SKILL.md +11 -8
- package/dist/defaults/skill/morning-boot/SKILL.md +26 -87
- package/dist/defaults/skill/slack-pulse/SKILL.md +11 -7
- package/dist/defaults/skill/thought-router/SKILL.md +10 -8
- package/dist/index.js +11316 -2308
- package/dist/schemas/skill.d.ts +96 -0
- package/dist/sdk/index.d.ts +4 -0
- package/dist/sdk/sentinel-service.d.ts +71 -0
- package/dist/sdk/skill-runner.d.ts +21 -0
- package/dist/sdk/thoth-client.d.ts +51 -0
- package/dist/sdk/workflows/calendar-watcher.d.ts +2 -0
- package/dist/sdk/workflows/inbox-watcher.d.ts +2 -0
- package/dist/sdk/workflows/index.d.ts +4 -0
- package/dist/sdk/workflows/system-watcher.d.ts +2 -0
- package/dist/sdk/workflows/task-watcher.d.ts +2 -0
- package/dist/services/index.d.ts +1 -0
- package/dist/services/skill-registry.d.ts +23 -0
- package/dist/tools/skill/tools.d.ts +2 -1
- package/package.json +8 -3
- /package/{dist/defaults/skill → defaults/skill/_legacy}/cal-grid/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/capsule-init/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/cross-linker/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/email-draft/skill.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/gardener/confidence-tiers.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/gardener/repair-workflow.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/google-chat-scan/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/handover/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/interview-prep/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/leadership-coach/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/link-retrofit/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/post-meeting-drill/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/restore-environment/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/scorecard-synthesis/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/skill-generator/SKILL.md +0 -0
- /package/{dist/defaults/skill → defaults/skill/_legacy}/skill-generator/testing-protocol.md +0 -0
- /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:
|
|
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
|
-
```
|
|
66
|
-
|
|
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**: {
|
|
77
|
-
|
|
78
|
-
### Summary
|
|
79
|
-
|
|
|
80
|
-
|
|
81
|
-
|
|
|
82
|
-
|
|
|
83
|
-
|
|
|
84
|
-
|
|
|
85
|
-
|
|
86
|
-
###
|
|
87
|
-
|
|
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
|
-
|
|
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.
|