@soleri/forge 9.11.0 → 9.13.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.
- package/dist/compose-claude-md.js +30 -19
- package/dist/compose-claude-md.js.map +1 -1
- package/dist/scaffold-filetree.js +116 -49
- package/dist/scaffold-filetree.js.map +1 -1
- package/dist/skills/{agent-dev → soleri-agent-dev}/SKILL.md +4 -7
- package/dist/skills/{agent-guide → soleri-agent-guide}/SKILL.md +7 -6
- package/{src/skills/agent-issues → dist/skills/soleri-agent-issues}/SKILL.md +33 -6
- package/{src/skills/agent-persona → dist/skills/soleri-agent-persona}/SKILL.md +4 -5
- package/{src/skills/brain-debrief → dist/skills/soleri-brain-debrief}/SKILL.md +5 -5
- package/dist/skills/{brainstorming → soleri-brainstorming}/SKILL.md +4 -5
- package/dist/skills/soleri-build-skill/SKILL.md +210 -0
- package/dist/skills/{code-patrol → soleri-code-patrol}/SKILL.md +6 -2
- package/{src/skills/context-resume → dist/skills/soleri-context-resume}/SKILL.md +4 -4
- package/{src/skills/deep-review → dist/skills/soleri-deep-review}/SKILL.md +5 -5
- package/dist/skills/{deliver-and-ship → soleri-deliver-and-ship}/SKILL.md +5 -5
- package/{src/skills/discovery-phase → dist/skills/soleri-discovery-phase}/SKILL.md +18 -17
- package/dist/skills/soleri-dream/SKILL.md +104 -0
- package/dist/skills/{env-setup → soleri-env-setup}/SKILL.md +31 -7
- package/dist/skills/{executing-plans → soleri-executing-plans}/SKILL.md +4 -5
- package/{src/skills/finishing-a-development-branch → dist/skills/soleri-finishing-a-development-branch}/SKILL.md +35 -4
- package/dist/skills/{fix-and-learn → soleri-fix-and-learn}/SKILL.md +4 -5
- package/{src/skills/health-check → dist/skills/soleri-health-check}/SKILL.md +5 -5
- package/{src/skills/knowledge-harvest → dist/skills/soleri-knowledge-harvest}/SKILL.md +5 -5
- package/dist/skills/{mcp-doctor → soleri-mcp-doctor}/SKILL.md +4 -4
- package/{src/skills/onboard-me → dist/skills/soleri-onboard-me}/SKILL.md +14 -4
- package/{src/skills/parallel-execute → dist/skills/soleri-parallel-execute}/SKILL.md +12 -7
- package/dist/skills/soleri-research-scout/SKILL.md +225 -0
- package/dist/skills/{retrospective → soleri-retrospective}/SKILL.md +5 -4
- package/{src/skills/second-opinion → dist/skills/soleri-second-opinion}/SKILL.md +5 -2
- package/dist/skills/{subagent-driven-development → soleri-subagent-driven-development}/SKILL.md +36 -15
- package/{src/skills/systematic-debugging → dist/skills/soleri-systematic-debugging}/SKILL.md +5 -5
- package/{src/skills/test-driven-development → dist/skills/soleri-test-driven-development}/SKILL.md +12 -2
- package/dist/skills/{using-git-worktrees → soleri-using-git-worktrees}/SKILL.md +25 -4
- package/dist/skills/soleri-vault-capture/SKILL.md +205 -0
- package/{src/skills/vault-curate → dist/skills/soleri-vault-curate}/SKILL.md +13 -6
- package/{src/skills/vault-navigator → dist/skills/soleri-vault-navigator}/SKILL.md +14 -5
- package/dist/skills/{vault-smells → soleri-vault-smells}/SKILL.md +7 -8
- package/{src/skills/verification-before-completion → dist/skills/soleri-verification-before-completion}/SKILL.md +15 -4
- package/{src/skills/writing-plans → dist/skills/soleri-writing-plans}/SKILL.md +10 -4
- package/dist/skills/{yolo-mode → soleri-yolo-mode}/SKILL.md +4 -4
- package/dist/templates/clean-worktrees.js +20 -0
- package/dist/templates/clean-worktrees.js.map +1 -1
- package/dist/templates/package-json.js +1 -1
- package/dist/templates/readme.js +19 -19
- package/dist/templates/readme.js.map +1 -1
- package/dist/templates/setup-script.js +24 -4
- package/dist/templates/setup-script.js.map +1 -1
- package/dist/templates/shared-rules.js +53 -5
- package/dist/templates/shared-rules.js.map +1 -1
- package/dist/templates/skills.d.ts +15 -0
- package/dist/templates/skills.js +63 -0
- package/dist/templates/skills.js.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/extensions-scaffold.test.ts +1 -1
- package/src/__tests__/scaffold-filetree.test.ts +24 -20
- package/src/__tests__/scaffolder.test.ts +6 -6
- package/src/compose-claude-md.ts +30 -19
- package/src/scaffold-filetree.ts +134 -49
- package/src/skills/{agent-dev → soleri-agent-dev}/SKILL.md +4 -7
- package/src/skills/{agent-guide → soleri-agent-guide}/SKILL.md +7 -6
- package/{dist/skills/agent-issues → src/skills/soleri-agent-issues}/SKILL.md +33 -6
- package/{dist/skills/agent-persona → src/skills/soleri-agent-persona}/SKILL.md +4 -5
- package/{dist/skills/brain-debrief → src/skills/soleri-brain-debrief}/SKILL.md +5 -5
- package/src/skills/{brainstorming → soleri-brainstorming}/SKILL.md +4 -5
- package/src/skills/soleri-build-skill/SKILL.md +210 -0
- package/src/skills/{code-patrol → soleri-code-patrol}/SKILL.md +6 -2
- package/{dist/skills/context-resume → src/skills/soleri-context-resume}/SKILL.md +4 -4
- package/{dist/skills/deep-review → src/skills/soleri-deep-review}/SKILL.md +5 -5
- package/src/skills/{deliver-and-ship → soleri-deliver-and-ship}/SKILL.md +5 -5
- package/{dist/skills/discovery-phase → src/skills/soleri-discovery-phase}/SKILL.md +18 -17
- package/src/skills/soleri-dream/SKILL.md +104 -0
- package/src/skills/{env-setup → soleri-env-setup}/SKILL.md +31 -7
- package/src/skills/{executing-plans → soleri-executing-plans}/SKILL.md +4 -5
- package/{dist/skills/finishing-a-development-branch → src/skills/soleri-finishing-a-development-branch}/SKILL.md +35 -4
- package/src/skills/{fix-and-learn → soleri-fix-and-learn}/SKILL.md +4 -5
- package/{dist/skills/health-check → src/skills/soleri-health-check}/SKILL.md +5 -5
- package/{dist/skills/knowledge-harvest → src/skills/soleri-knowledge-harvest}/SKILL.md +5 -5
- package/src/skills/{mcp-doctor → soleri-mcp-doctor}/SKILL.md +4 -4
- package/{dist/skills/onboard-me → src/skills/soleri-onboard-me}/SKILL.md +14 -4
- package/{dist/skills/parallel-execute → src/skills/soleri-parallel-execute}/SKILL.md +12 -7
- package/src/skills/soleri-research-scout/SKILL.md +225 -0
- package/src/skills/{retrospective → soleri-retrospective}/SKILL.md +5 -4
- package/{dist/skills/second-opinion → src/skills/soleri-second-opinion}/SKILL.md +5 -2
- package/src/skills/{subagent-driven-development → soleri-subagent-driven-development}/SKILL.md +36 -15
- package/{dist/skills/systematic-debugging → src/skills/soleri-systematic-debugging}/SKILL.md +5 -5
- package/{dist/skills/test-driven-development → src/skills/soleri-test-driven-development}/SKILL.md +12 -2
- package/src/skills/{using-git-worktrees → soleri-using-git-worktrees}/SKILL.md +25 -4
- package/src/skills/soleri-vault-capture/SKILL.md +205 -0
- package/{dist/skills/vault-curate → src/skills/soleri-vault-curate}/SKILL.md +13 -6
- package/{dist/skills/vault-navigator → src/skills/soleri-vault-navigator}/SKILL.md +14 -5
- package/src/skills/{vault-smells → soleri-vault-smells}/SKILL.md +7 -8
- package/{dist/skills/verification-before-completion → src/skills/soleri-verification-before-completion}/SKILL.md +15 -4
- package/{dist/skills/writing-plans → src/skills/soleri-writing-plans}/SKILL.md +10 -4
- package/src/skills/{yolo-mode → soleri-yolo-mode}/SKILL.md +4 -4
- package/src/templates/clean-worktrees.ts +20 -0
- package/src/templates/package-json.ts +1 -1
- package/src/templates/readme.ts +19 -19
- package/src/templates/setup-script.ts +24 -4
- package/src/templates/shared-rules.ts +54 -5
- package/src/templates/skills.ts +82 -0
- package/dist/skills/vault-capture/SKILL.md +0 -86
- package/src/skills/vault-capture/SKILL.md +0 -86
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: discovery-phase
|
|
2
|
+
name: soleri-discovery-phase
|
|
3
3
|
description: >
|
|
4
|
-
Use
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
a discovery document with options, tradeoffs, and a recommendation.
|
|
4
|
+
Use when the user says "I don't know where to start", "investigate",
|
|
5
|
+
"research this", "explore the problem", or "discovery". Structured exploration
|
|
6
|
+
before committing to a plan, producing options with tradeoffs.
|
|
8
7
|
---
|
|
9
8
|
|
|
10
9
|
# Discovery Phase
|
|
@@ -19,12 +18,13 @@ Do NOT create a plan, write code, or take any implementation action until the di
|
|
|
19
18
|
|
|
20
19
|
1. **Define the question** — restate what we're exploring as one specific, answerable sentence
|
|
21
20
|
2. **Search vault for prior art** — `YOUR_AGENT_core op:search_intelligent params: { query: "<question>", mode: "scan" }`. Also `op:memory_search` with `crossProject: true`.
|
|
22
|
-
3. **
|
|
23
|
-
4. **
|
|
24
|
-
5. **
|
|
25
|
-
6. **
|
|
26
|
-
7. **
|
|
27
|
-
8. **
|
|
21
|
+
3. **Get brain recommendations** — `YOUR_AGENT_core op:brain_recommend params: { query: "<discovery topic>" }`. Get brain recommendations for similar past explorations.
|
|
22
|
+
4. **Explore codebase** — read relevant files, configs, architecture, recent commits
|
|
23
|
+
5. **Identify constraints** — hard (must-haves) vs soft (nice-to-haves), unknowns that block a decision
|
|
24
|
+
6. **Draft 2-4 options** — each with pros, cons, risk, and effort (S/M/L)
|
|
25
|
+
7. **Recommend** — pick one, state the primary reason, note what would change the answer
|
|
26
|
+
8. **Capture to vault** — persist the discovery finding
|
|
27
|
+
9. **Transition** — hand off to brainstorming or writing-plans skill
|
|
28
28
|
|
|
29
29
|
## Option Format
|
|
30
30
|
|
|
@@ -61,9 +61,10 @@ Save to `docs/discoveries/YYYY-MM-DD-<topic>.md` and commit. Then transition to
|
|
|
61
61
|
|
|
62
62
|
## Quick Reference
|
|
63
63
|
|
|
64
|
-
| Op | When to Use
|
|
65
|
-
| -------------------- |
|
|
66
|
-
| `search_intelligent` | Search vault for prior art
|
|
67
|
-
| `memory_search` | Check session history and projects
|
|
68
|
-
| `
|
|
69
|
-
| `
|
|
64
|
+
| Op | When to Use |
|
|
65
|
+
| -------------------- | --------------------------------------------------- |
|
|
66
|
+
| `search_intelligent` | Search vault for prior art |
|
|
67
|
+
| `memory_search` | Check session history and projects |
|
|
68
|
+
| `brain_recommend` | Brain recommendations for similar past explorations |
|
|
69
|
+
| `capture_knowledge` | Persist discovery finding |
|
|
70
|
+
| `route_intent` | Classify what comes after |
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: soleri-dream
|
|
3
|
+
description: >
|
|
4
|
+
Use when the user says "dream", "consolidate memory", "clean up memory",
|
|
5
|
+
"memory cleanup", or "dream status". Runs automatic memory consolidation
|
|
6
|
+
— dedup, archive stale entries, resolve contradictions.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# /dream — Automatic Memory Consolidation
|
|
10
|
+
|
|
11
|
+
Runs a full "dream" pass over the vault: dedup, archive stale entries, resolve
|
|
12
|
+
contradictions, and produce a summary report. Inspired by how REM sleep
|
|
13
|
+
consolidates biological memory.
|
|
14
|
+
|
|
15
|
+
**Announce at start:** "Running a dream pass — consolidating vault memory."
|
|
16
|
+
|
|
17
|
+
## Quick Commands
|
|
18
|
+
|
|
19
|
+
| Command | What it does |
|
|
20
|
+
| --------------- | --------------------------------------------------------- |
|
|
21
|
+
| `/dream` | Run a full dream pass (forces, bypasses gate) |
|
|
22
|
+
| `/dream status` | Show dream state: last dream, sessions since, eligibility |
|
|
23
|
+
|
|
24
|
+
## Orchestration
|
|
25
|
+
|
|
26
|
+
### Step 1: Check Dream Status
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
YOUR_AGENT_dream op:dream_status
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Report current state to user as a table:
|
|
33
|
+
|
|
34
|
+
| Field | Value |
|
|
35
|
+
| ----------------------------- | ------------------------ |
|
|
36
|
+
| **Sessions since last dream** | {sessionsSinceLastDream} |
|
|
37
|
+
| **Last dream** | {lastDreamAt or "Never"} |
|
|
38
|
+
| **Total dreams** | {totalDreams} |
|
|
39
|
+
| **Gate eligible** | {gateEligible} |
|
|
40
|
+
|
|
41
|
+
### Step 2: Run Dream
|
|
42
|
+
|
|
43
|
+
If user explicitly asked to dream (manual `/dream`), force it:
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
YOUR_AGENT_dream op:dream_run
|
|
47
|
+
params: { force: true }
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
If auto-triggered (session start), respect the gate:
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
YOUR_AGENT_dream op:dream_run
|
|
54
|
+
params: { force: false }
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
If the response contains `skipped: true`, inform the user:
|
|
58
|
+
"Dream skipped — {reason}. Use `/dream` to force a run."
|
|
59
|
+
|
|
60
|
+
### Step 3: Present Dream Report
|
|
61
|
+
|
|
62
|
+
Format the dream report as a table:
|
|
63
|
+
|
|
64
|
+
| Metric | Value |
|
|
65
|
+
| -------------------------- | --------------------- |
|
|
66
|
+
| **Duration** | {durationMs}ms |
|
|
67
|
+
| **Duplicates found** | {duplicatesFound} |
|
|
68
|
+
| **Stale entries archived** | {staleArchived} |
|
|
69
|
+
| **Contradictions found** | {contradictionsFound} |
|
|
70
|
+
| **Total dreams** | {totalDreams} |
|
|
71
|
+
| **Timestamp** | {timestamp} |
|
|
72
|
+
|
|
73
|
+
### Step 4: Rebuild Brain Intelligence
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
YOUR_AGENT_core op:brain_build_intelligence
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Rebuild brain intelligence with the freshly consolidated vault data.
|
|
80
|
+
|
|
81
|
+
### Step 5: Capture to Memory
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
YOUR_AGENT_memory op:session_capture
|
|
85
|
+
params: {
|
|
86
|
+
summary: "Dream pass completed: {duplicatesFound} duplicates, {staleArchived} stale archived, {contradictionsFound} contradictions found"
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Gate Logic
|
|
91
|
+
|
|
92
|
+
Auto-dream triggers automatically on session start when BOTH conditions are met:
|
|
93
|
+
|
|
94
|
+
- **5+ sessions** since last dream
|
|
95
|
+
- **24+ hours** since last dream
|
|
96
|
+
|
|
97
|
+
Manual `/dream` always runs immediately (force=true).
|
|
98
|
+
|
|
99
|
+
## Background
|
|
100
|
+
|
|
101
|
+
Inspired by Claude Code's AutoDream feature and the neuroscience of REM sleep.
|
|
102
|
+
During sleep, the brain consolidates short-term memories into long-term storage,
|
|
103
|
+
prunes irrelevant connections, and resolves conflicts. The /dream skill does
|
|
104
|
+
the same for the vault.
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: env-setup
|
|
2
|
+
name: soleri-env-setup
|
|
3
3
|
description: >
|
|
4
|
-
Use when
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
module errors, gyp ERR or native module build failures, missing .env files or unknown required
|
|
8
|
-
environment variables, database setup, Docker compose issues, or connection refused during
|
|
9
|
-
local dev. Covers Node.js, Python, Rust, Go, Ruby, PHP, and Docker-based projects.
|
|
4
|
+
Use when the user says "setup environment", "post-clone setup", "broken build",
|
|
5
|
+
"missing dependencies", or "MODULE_NOT_FOUND". Detects what a project needs,
|
|
6
|
+
diagnoses what's missing, and produces an actionable setup checklist.
|
|
10
7
|
---
|
|
11
8
|
|
|
12
9
|
# Environment Setup
|
|
@@ -26,6 +23,16 @@ Scan the project root for configuration files, detect the tech stack and depende
|
|
|
26
23
|
- Docker/container environment not starting
|
|
27
24
|
- Missing `.env` file or environment variables
|
|
28
25
|
|
|
26
|
+
## Check Vault for Known Setup Patterns
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
YOUR_AGENT_core op:search_intelligent
|
|
30
|
+
params: { query: "<tech stack> setup gotchas" }
|
|
31
|
+
|
|
32
|
+
YOUR_AGENT_core op:memory_search
|
|
33
|
+
params: { query: "environment setup <project>" }
|
|
34
|
+
```
|
|
35
|
+
|
|
29
36
|
## Detection Phase
|
|
30
37
|
|
|
31
38
|
Scan the project root and identify:
|
|
@@ -149,3 +156,20 @@ If monorepo detected (turbo.json, nx.json, pnpm-workspace.yaml):
|
|
|
149
156
|
- **Missing runtime version** — subtle bugs from wrong Node/Python version.
|
|
150
157
|
- **Docker not running** — cryptic "connection refused" errors.
|
|
151
158
|
- **Stale dependencies** — after `git pull`, always re-install if lockfile changed.
|
|
159
|
+
|
|
160
|
+
## Capture Setup Learnings
|
|
161
|
+
|
|
162
|
+
If any non-obvious steps or workarounds were needed:
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
YOUR_AGENT_core op:capture_knowledge
|
|
166
|
+
params: { title: "<gotcha>", description: "<what happened and the fix>", type: "anti-pattern", tags: ["env-setup", "<tech-stack>"] }
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## Agent Tools Reference
|
|
170
|
+
|
|
171
|
+
| Op | When to Use |
|
|
172
|
+
| -------------------- | ---------------------------------- |
|
|
173
|
+
| `search_intelligent` | Check vault before starting |
|
|
174
|
+
| `memory_search` | Find similar past experiences |
|
|
175
|
+
| `capture_knowledge` | Persist patterns worth remembering |
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: executing-plans
|
|
2
|
+
name: soleri-executing-plans
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user says "execute my plan", "run the plan", "start executing",
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
parallel-execute instead.
|
|
4
|
+
Use when the user says "execute my plan", "run the plan", "start executing",
|
|
5
|
+
or "implement the plan". Executes tasks sequentially with review checkpoints.
|
|
6
|
+
For parallel execution, use parallel-execute instead.
|
|
8
7
|
---
|
|
9
8
|
|
|
10
9
|
# Executing Plans
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: finishing-a-development-branch
|
|
2
|
+
name: soleri-finishing-a-development-branch
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user says "finish branch", "
|
|
5
|
-
"
|
|
6
|
-
|
|
4
|
+
Use when the user says "finish branch", "ready to merge", "PR ready",
|
|
5
|
+
"submit PR", or "close branch". Handles pre-merge checks, PR creation,
|
|
6
|
+
merge strategy, and branch cleanup.
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Finishing a Development Branch
|
|
@@ -12,6 +12,18 @@ Pre-merge checks, PR creation, merge strategy, and branch cleanup.
|
|
|
12
12
|
|
|
13
13
|
**Announce at start:** "I'm using the finishing-a-development-branch skill to prepare this branch for merge."
|
|
14
14
|
|
|
15
|
+
## Vault Context
|
|
16
|
+
|
|
17
|
+
Search for merge patterns and known conflict areas:
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
YOUR_AGENT_core op:search_intelligent
|
|
21
|
+
params: { query: "merge patterns <branch domain>" }
|
|
22
|
+
|
|
23
|
+
YOUR_AGENT_core op:memory_search
|
|
24
|
+
params: { query: "merge conflicts" }
|
|
25
|
+
```
|
|
26
|
+
|
|
15
27
|
## Step 1: Pre-Merge Checklist
|
|
16
28
|
|
|
17
29
|
Run all checks before creating a PR. Stop on any failure.
|
|
@@ -57,6 +69,15 @@ If the base branch has diverged:
|
|
|
57
69
|
|
|
58
70
|
Never force-push a rebased branch that others are working on.
|
|
59
71
|
|
|
72
|
+
### Capture Merge Learnings
|
|
73
|
+
|
|
74
|
+
If tricky conflicts were resolved:
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
YOUR_AGENT_core op:capture_knowledge
|
|
78
|
+
params: { title: "<conflict pattern>", description: "<resolution strategy>", type: "pattern", tags: ["git", "merge", "conflict-resolution"] }
|
|
79
|
+
```
|
|
80
|
+
|
|
60
81
|
## Step 5: Branch Cleanup
|
|
61
82
|
|
|
62
83
|
After merge is confirmed:
|
|
@@ -65,6 +86,8 @@ After merge is confirmed:
|
|
|
65
86
|
2. `git branch -d <branch>` — delete local branch
|
|
66
87
|
3. If remote branch not auto-deleted: `git push origin --delete <branch>`
|
|
67
88
|
|
|
89
|
+
**This step is mandatory, not optional.** Stale branches accumulate fast.
|
|
90
|
+
|
|
68
91
|
## Anti-Patterns
|
|
69
92
|
|
|
70
93
|
- **Force-pushing to shared branches** — destroys others' history; only force-push personal branches
|
|
@@ -74,3 +97,11 @@ After merge is confirmed:
|
|
|
74
97
|
- **Leaving stale branches** — delete after merge; stale branches create confusion
|
|
75
98
|
|
|
76
99
|
**Related skills:** executing-plans, verification-before-completion
|
|
100
|
+
|
|
101
|
+
## Agent Tools Reference
|
|
102
|
+
|
|
103
|
+
| Op | When to Use |
|
|
104
|
+
| -------------------- | ---------------------------------- |
|
|
105
|
+
| `search_intelligent` | Check vault before starting |
|
|
106
|
+
| `memory_search` | Find similar past experiences |
|
|
107
|
+
| `capture_knowledge` | Persist patterns worth remembering |
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: fix-and-learn
|
|
2
|
+
name: soleri-fix-and-learn
|
|
3
3
|
description: >
|
|
4
|
-
Use
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
systematic-debugging first to find root cause.
|
|
4
|
+
Use when the user says "fix it", "apply the fix", "patch this and remember",
|
|
5
|
+
or "fix and capture". Executes a fix AFTER root cause is identified and
|
|
6
|
+
captures the learning in the vault. Use systematic-debugging first.
|
|
8
7
|
---
|
|
9
8
|
|
|
10
9
|
# Fix & Learn — Debug, Repair, Capture
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: health-check
|
|
2
|
+
name: soleri-health-check
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
Use when the user says "system health", "agent health", "run diagnostics",
|
|
5
|
+
"system status", or "check health". Read-only health assessment of the
|
|
6
|
+
knowledge base — scoring, reporting, finding issues. For deep quality
|
|
7
|
+
analysis (contradictions, stale patterns, knowledge debt), use vault-smells instead.
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Health Check — Knowledge Base Maintenance
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: knowledge-harvest
|
|
2
|
+
name: soleri-knowledge-harvest
|
|
3
3
|
description: >
|
|
4
|
-
Use
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
use vault-capture instead.
|
|
4
|
+
Use when the user says "learn from this", "harvest knowledge", "ingest this",
|
|
5
|
+
or "extract patterns from". Extracts multiple patterns from a source like
|
|
6
|
+
code, docs, PRs, or articles into the vault. For saving a single known
|
|
7
|
+
pattern, use vault-capture instead.
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Knowledge Harvest — Extract Patterns From Anything
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: mcp-doctor
|
|
2
|
+
name: soleri-mcp-doctor
|
|
3
3
|
description: >
|
|
4
|
-
Use when
|
|
5
|
-
"
|
|
6
|
-
|
|
4
|
+
Use when the user says "MCP not working", "tools missing", "fix MCP",
|
|
5
|
+
"mcp doctor", or "server not connecting". Diagnoses and repairs MCP server
|
|
6
|
+
connectivity issues.
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# MCP Doctor — Diagnose and Heal MCP Connections
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: onboard-me
|
|
2
|
+
name: soleri-onboard-me
|
|
3
3
|
description: >
|
|
4
|
-
Use when
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
Use when the user says "onboard me", "I'm new here", "project overview",
|
|
5
|
+
or "what should I know about this codebase". Provides a structured tour
|
|
6
|
+
of everything the vault knows about this project.
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Onboard Me — Instant Project Intelligence
|
|
@@ -101,6 +101,15 @@ YOUR_AGENT_core op:vault_age_report
|
|
|
101
101
|
|
|
102
102
|
**Tip:** Use vault-navigator to search topics as you work. Use second-opinion before architectural decisions.
|
|
103
103
|
|
|
104
|
+
### Record Onboarding
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
YOUR_AGENT_core op:capture_knowledge
|
|
108
|
+
params: { title: "Onboarding completed for <project>", description: "<key takeaways and knowledge gaps identified>", type: "workflow", tags: ["onboarding", "<project>"] }
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Record what was covered and what gaps remain for future onboarding.
|
|
112
|
+
|
|
104
113
|
## Common Mistakes
|
|
105
114
|
|
|
106
115
|
- Dumping all vault entries instead of curating the most important ones
|
|
@@ -119,3 +128,4 @@ YOUR_AGENT_core op:vault_age_report
|
|
|
119
128
|
| `brain_strengths` | Proven patterns |
|
|
120
129
|
| `brain_global_patterns` | Cross-project patterns |
|
|
121
130
|
| `admin_search_insights` | Knowledge gaps |
|
|
131
|
+
| `capture_knowledge` | Record onboarding completion |
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: parallel-execute
|
|
2
|
+
name: soleri-parallel-execute
|
|
3
3
|
description: >
|
|
4
|
-
Use when
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
dependency overlap. For sequential task-by-task execution, use executing-plans instead.
|
|
4
|
+
Use when the user says "run in parallel", "fan out", "concurrent execution",
|
|
5
|
+
"batch execute", or "dispatch subagents". Executes independent plan tasks
|
|
6
|
+
concurrently via subagents. For sequential execution, use executing-plans.
|
|
8
7
|
---
|
|
9
8
|
|
|
10
9
|
# Parallel Execute — Subagent-Driven Plan Execution
|
|
@@ -165,7 +164,7 @@ As subagents complete, collect their results. For each completed task:
|
|
|
165
164
|
| Pass | Critical issues | Dispatch targeted fix subagent (max 2 retries) |
|
|
166
165
|
| Pass | Minor issues only | Mark completed, note issues for later |
|
|
167
166
|
|
|
168
|
-
|
|
167
|
+
1. **Mark completed:**
|
|
169
168
|
```
|
|
170
169
|
YOUR_AGENT_core op:update_task params:{ planId: "<id>", taskIndex: <n>, status: "completed" }
|
|
171
170
|
```
|
|
@@ -234,7 +233,13 @@ YOUR_AGENT_core op:session_capture params:{
|
|
|
234
233
|
| Tasks touch files in the same package | Use `isolation: "worktree"` |
|
|
235
234
|
| Tasks modify the same file | **Do NOT parallelize** — run sequentially |
|
|
236
235
|
|
|
237
|
-
When using worktree isolation, the controller must merge worktree changes back after review passes
|
|
236
|
+
When using worktree isolation, the controller must merge worktree changes back after review passes, then **immediately delete the local branch**:
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
git branch -D <subagent/taskId>
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
Worktree branches are local-only — never push them to remote. Branch cleanup is mandatory after every merge.
|
|
238
243
|
|
|
239
244
|
## Failure Handling
|
|
240
245
|
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: soleri-research-scout
|
|
3
|
+
description: >
|
|
4
|
+
Use when the user says "scout", "research scout", "find new info",
|
|
5
|
+
"what's new", or "scan the web". Discovers new information that challenges
|
|
6
|
+
or updates existing vault knowledge via web search.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# /research-scout — Knowledge Discovery via Vault Branching
|
|
10
|
+
|
|
11
|
+
Finds new information that challenges or updates existing vault knowledge.
|
|
12
|
+
Searches web, Reddit, HN, and Quora for strategies, tools, announcements,
|
|
13
|
+
and workflow changes relevant to vault domains.
|
|
14
|
+
|
|
15
|
+
Findings go to a **scout branch** — never the main vault. Weekly review
|
|
16
|
+
promotes the good ones, discards the rest.
|
|
17
|
+
|
|
18
|
+
**Announce at start:** "Scouting for new intelligence — findings go to the scout branch, not the main vault."
|
|
19
|
+
|
|
20
|
+
## Two Modes
|
|
21
|
+
|
|
22
|
+
| Command | What it does |
|
|
23
|
+
| ------------------------ | ------------------------------------------------ |
|
|
24
|
+
| `/research-scout` | Run a scout pass — search web, capture to branch |
|
|
25
|
+
| `/research-scout review` | Review branch findings, promote or discard |
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Mode 1: Scout Pass
|
|
30
|
+
|
|
31
|
+
### Step 1: Ensure Scout Branch Exists
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
YOUR_AGENT_branching op:vault_branch_list
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
If no branch named `scout-findings` exists, create it:
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
YOUR_AGENT_branching op:vault_branch
|
|
41
|
+
params: { name: "scout-findings" }
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Step 2: Identify What to Scout
|
|
45
|
+
|
|
46
|
+
Pull active domains and recent topics from the vault:
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
YOUR_AGENT_vault op:vault_domains
|
|
50
|
+
YOUR_AGENT_vault op:vault_recent params:{ limit: 15 }
|
|
51
|
+
YOUR_AGENT_brain op:brain_strengths params:{ limit: 10 }
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
From these, build 3-5 focused search queries based on:
|
|
55
|
+
|
|
56
|
+
- Active vault domains (e.g., "typescript", "react", "testing")
|
|
57
|
+
- Strong brain patterns (what the user works on most)
|
|
58
|
+
- Recent capture topics (what's top of mind)
|
|
59
|
+
|
|
60
|
+
### Step 3: Web Search
|
|
61
|
+
|
|
62
|
+
For each query, search with year context:
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
WebSearch: "{topic} new tools breaking changes 2026"
|
|
66
|
+
WebSearch: "{topic} best practices updated site:reddit.com OR site:news.ycombinator.com"
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Focus on:
|
|
70
|
+
|
|
71
|
+
- New tool releases or deprecations
|
|
72
|
+
- Breaking changes in dependencies
|
|
73
|
+
- Updated best practices that contradict vault patterns
|
|
74
|
+
- Workflow patterns gaining traction
|
|
75
|
+
|
|
76
|
+
### Step 4: Cross-Reference Against Main Vault
|
|
77
|
+
|
|
78
|
+
For each finding, check if the main vault already knows:
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
YOUR_AGENT_vault op:search_intelligent
|
|
82
|
+
params: { query: "{finding summary}" }
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Classify:
|
|
86
|
+
|
|
87
|
+
- **NEW** — vault has nothing on this topic. Worth capturing.
|
|
88
|
+
- **UPDATE** — vault has related entry but info is outdated. Capture with link.
|
|
89
|
+
- **CONTRADICTS** — finding conflicts with existing vault pattern. High value. Capture with contradiction link.
|
|
90
|
+
- **REDUNDANT** — vault already has this. Skip entirely.
|
|
91
|
+
|
|
92
|
+
**Only keep NEW, UPDATE, and CONTRADICTS.** Discard REDUNDANT.
|
|
93
|
+
|
|
94
|
+
### Step 5: Validate Before Capture
|
|
95
|
+
|
|
96
|
+
For each non-redundant finding:
|
|
97
|
+
|
|
98
|
+
- Verify from at least 2 independent sources
|
|
99
|
+
- Check the date — reject anything older than 3 months
|
|
100
|
+
- Assess relevance — does this matter for active projects?
|
|
101
|
+
|
|
102
|
+
**If a finding can't be verified from 2 sources, skip it.**
|
|
103
|
+
|
|
104
|
+
### Step 6: Capture to Scout Branch
|
|
105
|
+
|
|
106
|
+
Switch to scout branch, capture, switch back:
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
YOUR_AGENT_branching op:vault_branch_add
|
|
110
|
+
params: {
|
|
111
|
+
branch: "scout-findings",
|
|
112
|
+
entry: {
|
|
113
|
+
title: "{concise finding title}",
|
|
114
|
+
type: "pattern",
|
|
115
|
+
domain: "{relevant domain}",
|
|
116
|
+
description: "{what changed and why it matters}",
|
|
117
|
+
why: "Scout [{date}]: {source URL}. {what it changes or adds}",
|
|
118
|
+
severity: "suggestion",
|
|
119
|
+
tags: ["research-scout", "{domain}", "{source-type}"]
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
If the finding CONTRADICTS an existing main vault entry, note the
|
|
125
|
+
contradicted entry ID in the description so the reviewer can link them
|
|
126
|
+
during promotion.
|
|
127
|
+
|
|
128
|
+
### Step 7: Scout Report
|
|
129
|
+
|
|
130
|
+
Present results:
|
|
131
|
+
|
|
132
|
+
| # | Finding | Type | Domain | Source | Status |
|
|
133
|
+
| --- | ------- | ----------- | -------- | ------ | --------------------------------- |
|
|
134
|
+
| 1 | {title} | NEW | {domain} | {url} | Captured to branch |
|
|
135
|
+
| 2 | {title} | CONTRADICTS | {domain} | {url} | Captured — contradicts {entry_id} |
|
|
136
|
+
| 3 | {title} | REDUNDANT | {domain} | — | Skipped |
|
|
137
|
+
|
|
138
|
+
**Summary:** {N} sources searched, {found} findings, {captured} captured to scout branch, {skipped} skipped as redundant.
|
|
139
|
+
|
|
140
|
+
### Step 8: Session Capture
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
YOUR_AGENT_memory op:session_capture
|
|
144
|
+
params: {
|
|
145
|
+
summary: "Research scout: searched {N} topics, {captured} findings staged to scout-findings branch, {contradictions} contradictions flagged",
|
|
146
|
+
topics: ["{domains searched}"],
|
|
147
|
+
intent: "research"
|
|
148
|
+
}
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## Mode 2: Scout Review (Weekly)
|
|
154
|
+
|
|
155
|
+
### Step 1: Load Branch Findings
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
YOUR_AGENT_branching op:vault_branch_list
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
List all entries on the `scout-findings` branch.
|
|
162
|
+
|
|
163
|
+
### Step 2: Triage Each Finding
|
|
164
|
+
|
|
165
|
+
For each entry on the branch, present to the user:
|
|
166
|
+
|
|
167
|
+
| Field | Value |
|
|
168
|
+
| --------------- | ------------------------------ |
|
|
169
|
+
| **Title** | {title} |
|
|
170
|
+
| **Domain** | {domain} |
|
|
171
|
+
| **Source** | {from why field} |
|
|
172
|
+
| **Age** | {days since capture} |
|
|
173
|
+
| **Contradicts** | {entry ID if noted, or "none"} |
|
|
174
|
+
|
|
175
|
+
Ask: **Promote, Archive, or Skip?**
|
|
176
|
+
|
|
177
|
+
- **Promote** — merge into main vault via `vault_merge_branch` or manual `capture_knowledge`. If it contradicts an entry, create a `link_entries` with type `contradicts`.
|
|
178
|
+
- **Archive** — remove from branch, don't add to main vault.
|
|
179
|
+
- **Skip** — leave on branch for next review.
|
|
180
|
+
|
|
181
|
+
### Step 3: Clean Up Branch
|
|
182
|
+
|
|
183
|
+
After review, delete the branch and recreate fresh:
|
|
184
|
+
|
|
185
|
+
```
|
|
186
|
+
YOUR_AGENT_branching op:vault_delete_branch
|
|
187
|
+
params: { name: "scout-findings" }
|
|
188
|
+
YOUR_AGENT_branching op:vault_branch
|
|
189
|
+
params: { name: "scout-findings" }
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### Step 4: Report
|
|
193
|
+
|
|
194
|
+
| Metric | Value |
|
|
195
|
+
| ------------ | ---------- |
|
|
196
|
+
| **Reviewed** | {total} |
|
|
197
|
+
| **Promoted** | {promoted} |
|
|
198
|
+
| **Archived** | {archived} |
|
|
199
|
+
| **Skipped** | {skipped} |
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
## Scheduling
|
|
204
|
+
|
|
205
|
+
### Nightly scout (3x)
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
/schedule create --name "research-scout-nightly" --cron "0 2,4,6 * * *" --prompt "/research-scout"
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Weekly review (Monday 9am)
|
|
212
|
+
|
|
213
|
+
```
|
|
214
|
+
/schedule create --name "research-scout-review" --cron "0 9 * * 1" --prompt "/research-scout review"
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Quality Gates
|
|
220
|
+
|
|
221
|
+
- **Max 5 captures per scout run** — if you find more, pick the 5 most impactful
|
|
222
|
+
- **2-source minimum** — never capture from a single unverified source
|
|
223
|
+
- **3-month freshness** — reject findings older than 90 days
|
|
224
|
+
- **Domain relevance** — only scout domains the user actively works in
|
|
225
|
+
- **No opinions** — capture facts, tools, and changes, not hot takes
|