@grant-vine/wunderkind 0.17.0 → 0.19.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/.claude-plugin/plugin.json +1 -1
- package/README.md +35 -11
- package/agents/ciso.md +13 -10
- package/agents/creative-director.md +10 -10
- package/agents/fullstack-wunderkind.md +24 -10
- package/agents/legal-counsel.md +10 -10
- package/agents/marketing-wunderkind.md +10 -10
- package/agents/product-wunderkind.md +15 -12
- package/commands/docs-index.md +2 -1
- package/commands/dream.md +4 -3
- package/dist/agents/fullstack-wunderkind.d.ts.map +1 -1
- package/dist/agents/fullstack-wunderkind.js +3 -1
- package/dist/agents/fullstack-wunderkind.js.map +1 -1
- package/dist/agents/shared-prompt-sections.d.ts.map +1 -1
- package/dist/agents/shared-prompt-sections.js +12 -9
- package/dist/agents/shared-prompt-sections.js.map +1 -1
- package/dist/agents/slash-commands.d.ts +7 -3
- package/dist/agents/slash-commands.d.ts.map +1 -1
- package/dist/agents/slash-commands.js +9 -2
- package/dist/agents/slash-commands.js.map +1 -1
- package/dist/artifact-writer.d.ts.map +1 -1
- package/dist/artifact-writer.js +5 -4
- package/dist/artifact-writer.js.map +1 -1
- package/dist/cli/cleanup.js +1 -1
- package/dist/cli/cleanup.js.map +1 -1
- package/dist/cli/config-manager/index.js +1 -1
- package/dist/cli/config-manager/index.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +18 -12
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/gitignore-manager.d.ts.map +1 -1
- package/dist/cli/gitignore-manager.js +1 -0
- package/dist/cli/gitignore-manager.js.map +1 -1
- package/dist/cli/index.js +27 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +5 -4
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/migrate.d.ts +5 -0
- package/dist/cli/migrate.d.ts.map +1 -0
- package/dist/cli/migrate.js +120 -0
- package/dist/cli/migrate.js.map +1 -0
- package/dist/cli/uninstall.js +1 -1
- package/dist/cli/uninstall.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/project-artifacts.d.ts +17 -0
- package/dist/project-artifacts.d.ts.map +1 -0
- package/dist/project-artifacts.js +29 -0
- package/dist/project-artifacts.js.map +1 -0
- package/package.json +4 -3
- package/skills/SKILL-STANDARD.md +4 -3
- package/skills/design-an-interface/SKILL.md +2 -2
- package/skills/diagnose/SKILL.md +84 -0
- package/skills/docs-with-grill/SKILL.md +4 -4
- package/skills/grill-me/SKILL.md +2 -2
- package/skills/improve-codebase-architecture/SKILL.md +7 -7
- package/skills/prd-pipeline/SKILL.md +4 -4
- package/skills/setup-wunderkind-workflow/SKILL.md +9 -9
- package/skills/tdd/SKILL.md +1 -1
- package/skills/triage-issue/SKILL.md +1 -1
- package/skills/ubiquitous-language/SKILL.md +4 -4
- package/skills/write-a-skill/SKILL.md +3 -3
package/README.md
CHANGED
|
@@ -25,7 +25,8 @@ Wunderkind provides a tiered CLI for installation, project setup, and health che
|
|
|
25
25
|
|---|---|---|
|
|
26
26
|
| `wunderkind install` | Registers the plugin in OpenCode | OpenCode config + native agents/skills (+ shared native commands) |
|
|
27
27
|
| `wunderkind upgrade` | Refreshes Wunderkind-owned native assets | Native agents/skills + shared native commands |
|
|
28
|
-
| `wunderkind init` | Bootstraps a project with soul files | `.wunderkind/`, `AGENTS.md`, `CONTEXT.md`, `.
|
|
28
|
+
| `wunderkind init` | Bootstraps a project with soul files | `.wunderkind/`, `AGENTS.md`, `CONTEXT.md`, `.omo/`, docs README |
|
|
29
|
+
| `wunderkind migrate` | Moves legacy project artifacts into the primary OMO layout | `.sisyphus/` -> `.omo/` |
|
|
29
30
|
| `wunderkind cleanup` | Removes project-local Wunderkind wiring and state | project OpenCode config + `.wunderkind/` |
|
|
30
31
|
| `wunderkind doctor` | Read-only diagnostics | None |
|
|
31
32
|
| `wunderkind uninstall` | Safely removes Wunderkind plugin wiring | OpenCode plugin config (+ global Wunderkind config when applicable) |
|
|
@@ -174,7 +175,7 @@ wunderkind init [options]
|
|
|
174
175
|
Interactive `wunderkind init` always asks for team culture, org structure, and docs-output settings. It can also optionally create project-local SOUL files for any retained persona. Those SOUL questions are now select-first with an explicit custom-answer fallback, show a compact persona banner before each persona block, and prefill current project-local SOUL answers when you rerun `init` on an already configured project. Baseline market/regulation values are inherited unless you intentionally override them in project config.
|
|
175
176
|
|
|
176
177
|
Wave 2 also lets `init` set the PRD/planning workflow mode for the project:
|
|
177
|
-
- `filesystem` — PRDs, plans, issues, triage notes, RFCs, and glossary artifacts live in `.
|
|
178
|
+
- `filesystem` — PRDs, plans, issues, triage notes, RFCs, and glossary artifacts live in `.omo/`
|
|
178
179
|
- `github` — GitHub-backed workflows can be used when `gh` is installed and the repo is GitHub-ready
|
|
179
180
|
|
|
180
181
|
If `prdPipelineMode` is absent in an older project config, Wunderkind treats it as `filesystem`.
|
|
@@ -187,7 +188,7 @@ If `prdPipelineMode` is absent in an older project config, Wunderkind treats it
|
|
|
187
188
|
- `.wunderkind/wunderkind.config.jsonc` — Project-specific configuration
|
|
188
189
|
- `AGENTS.md` — Project knowledge base for agents
|
|
189
190
|
- `CONTEXT.md` — Compact shared context for docs grilling, planning, and future skill compatibility
|
|
190
|
-
- `.
|
|
191
|
+
- `.omo/` — Primary directory for agent planning, notepads, and evidence
|
|
191
192
|
- `<docsPath>/README.md` — Auto-generated documentation index (if enabled)
|
|
192
193
|
|
|
193
194
|
### Documentation History Modes
|
|
@@ -294,7 +295,7 @@ wunderkind uninstall --scope=global
|
|
|
294
295
|
wunderkind uninstall --scope=project
|
|
295
296
|
```
|
|
296
297
|
|
|
297
|
-
`wunderkind uninstall` removes Wunderkind plugin registration from OpenCode config. On global uninstall it also removes `~/.wunderkind/wunderkind.config.jsonc` (and the parent `~/.wunderkind/` directory if it becomes empty). For safety, it intentionally leaves project-local customization/bootstrap artifacts untouched (`.wunderkind/`, `AGENTS.md`, `.sisyphus/`, docs folders).
|
|
298
|
+
`wunderkind uninstall` removes Wunderkind plugin registration from OpenCode config. On global uninstall it also removes `~/.wunderkind/wunderkind.config.jsonc` (and the parent `~/.wunderkind/` directory if it becomes empty). For safety, it intentionally leaves project-local customization/bootstrap artifacts untouched (`.wunderkind/`, `AGENTS.md`, `.omo/`, legacy `.sisyphus/`, docs folders).
|
|
298
299
|
|
|
299
300
|
## Cleanup
|
|
300
301
|
|
|
@@ -304,7 +305,7 @@ Remove Wunderkind from just the current project without touching shared global c
|
|
|
304
305
|
wunderkind cleanup
|
|
305
306
|
```
|
|
306
307
|
|
|
307
|
-
`wunderkind cleanup` removes project-local OpenCode plugin wiring and the project's `.wunderkind/` directory. It intentionally leaves `AGENTS.md`, `.sisyphus/`, docs output folders, and shared global native assets untouched.
|
|
308
|
+
`wunderkind cleanup` removes project-local OpenCode plugin wiring and the project's `.wunderkind/` directory. It intentionally leaves `AGENTS.md`, `.omo/`, legacy `.sisyphus/`, docs output folders, and shared global native assets untouched.
|
|
308
309
|
|
|
309
310
|
---
|
|
310
311
|
|
|
@@ -316,6 +317,18 @@ When enabled, agents can persist their decisions and strategies to your project'
|
|
|
316
317
|
2. **Configure** in `.wunderkind/wunderkind.config.jsonc` via `docsEnabled`, `docsPath`, and `docHistoryMode`.
|
|
317
318
|
3. **Refresh or bootstrap** via `/docs-index`. This executable plugin command uses one shared UTC token per run (`YYYY-MM-DDTHH-mm-ssZ`, for example `2026-03-12T18-37-52Z`). In `append-dated`, it updates canonical files with headings like `## Update 2026-03-12T18-37-52Z`. In `new-dated-file`, it writes managed family files like `marketing-strategy--2026-03-12T18-37-52Z.md` beside the canonical file. Existing date-only artifacts are preserved unchanged.
|
|
318
319
|
|
|
320
|
+
## Legacy `.sisyphus/` Migration
|
|
321
|
+
|
|
322
|
+
Wunderkind now treats `.omo/` as the primary project-working artifact root.
|
|
323
|
+
|
|
324
|
+
If an older project still uses `.sisyphus/`, migrate it with:
|
|
325
|
+
|
|
326
|
+
```bash
|
|
327
|
+
wunderkind migrate
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
Use `wunderkind migrate --dry-run` to preview the move first.
|
|
331
|
+
|
|
319
332
|
---
|
|
320
333
|
|
|
321
334
|
## Code Health
|
|
@@ -336,7 +349,7 @@ Wunderkind supports that upstream bootstrap flow in this order:
|
|
|
336
349
|
|
|
337
350
|
1. Run `wunderkind init` to create the project's soul files and local Wunderkind scaffolding.
|
|
338
351
|
2. Have an agent populate `AGENTS.md` with project knowledge, conventions, and operating context.
|
|
339
|
-
3. Systematically explore the codebase and capture durable findings in `.
|
|
352
|
+
3. Systematically explore the codebase and capture durable findings in `.omo/` notepads and evidence.
|
|
340
353
|
4. Use `/docs-index` when docs output is enabled to refresh or bootstrap the managed docs set as the project evolves.
|
|
341
354
|
|
|
342
355
|
Treat this as the recommended audit/bootstrap process for bringing a project up to a high-context Wunderkind baseline.
|
|
@@ -348,8 +361,8 @@ Treat this as the recommended audit/bootstrap process for bringing a project up
|
|
|
348
361
|
The `/dream` native command is a mixed-domain workflow for ideation, soul synthesis, and project-aware exploration. It is owned by `product-wunderkind` and shipped as a static command asset.
|
|
349
362
|
|
|
350
363
|
1. **Workflow**: /dream [topic] → ideation → soul synthesis → exploration.
|
|
351
|
-
2. **Context**: Uses project-local SOUL overlays from `.wunderkind/souls/<agent-key>.md`, `AGENTS.md` knowledge, and `.
|
|
352
|
-
3. **Output**: Chat-first. Any durable findings or artifacts must be explicitly requested for save (to `.
|
|
364
|
+
2. **Context**: Uses project-local SOUL overlays from `.wunderkind/souls/<agent-key>.md`, `AGENTS.md` knowledge, and `.omo/` notepads/evidence for high-fidelity reasoning.
|
|
365
|
+
3. **Output**: Chat-first. Any durable findings or artifacts must be explicitly requested for save (to `.omo/notepads/` or `.omo/evidence/` only).
|
|
353
366
|
4. **Lifecycle**: Refreshed via `wunderkind install` and `wunderkind upgrade`. Run `wunderkind doctor` to check for stale assets.
|
|
354
367
|
|
|
355
368
|
---
|
|
@@ -363,7 +376,7 @@ The `/dream` native command is a mixed-domain workflow for ideation, soul synthe
|
|
|
363
376
|
|
|
364
377
|
Wunderkind installs native markdown assets into OpenCode's supported directories. Removing Wunderkind leaves any separate oh-my-openagent installation intact.
|
|
365
378
|
|
|
366
|
-
> **Native asset install note**: Wunderkind registers its specialist agents and skills through OpenCode-native markdown files. Global installs and upgrades refresh the shared native assets, and
|
|
379
|
+
> **Native asset install note**: Wunderkind registers its specialist agents and skills through OpenCode-native markdown files. Global installs and upgrades refresh the shared native assets, and shipped native commands such as `/docs-index` and `/dream` are refreshed globally as native command assets. These command assets now opt into OpenCode's `subtask: true` mode so they can execute as isolated command subtasks instead of polluting the caller's primary context.
|
|
367
380
|
|
|
368
381
|
---
|
|
369
382
|
|
|
@@ -403,6 +416,7 @@ Skill authoring and review in this repo follow `skills/SKILL-STANDARD.md`. New o
|
|
|
403
416
|
| `write-a-skill` | product-wunderkind | Wunderkind-native skill authoring and adaptation |
|
|
404
417
|
| `caveman` | product-wunderkind | Opt-in terse response mode for low-token, high-signal output |
|
|
405
418
|
| `db-architect` | fullstack-wunderkind | Drizzle ORM, PostgreSQL, Neon DB |
|
|
419
|
+
| `diagnose` | fullstack-wunderkind | Deterministic defect isolation, ranked hypotheses, and proving regression surfaces |
|
|
406
420
|
| `code-health` | fullstack-wunderkind | Severity-ranked code health audit reports (coupling, testability, dependency risk) |
|
|
407
421
|
| `vercel-architect` | fullstack-wunderkind | Vercel, Next.js App Router, Edge Runtime |
|
|
408
422
|
| `improve-codebase-architecture` | fullstack-wunderkind | Architecture RFCs, seam design, deep modules, and deletion-test reviews |
|
|
@@ -561,7 +575,7 @@ Wunderkind's evolving workflow strategy is informed in part by Matt Pocock's pub
|
|
|
561
575
|
|
|
562
576
|
- https://github.com/mattpocock/skills
|
|
563
577
|
|
|
564
|
-
We plan to adapt selected ideas such as ubiquitous language, structured questioning, and PRD/planning flows to Wunderkind's filesystem-first `.
|
|
578
|
+
We plan to adapt selected ideas such as ubiquitous language, structured questioning, deterministic diagnosis, and PRD/planning flows to Wunderkind's filesystem-first `.omo/` workflow rather than adopting GitHub-issue-centric assumptions directly.
|
|
565
579
|
|
|
566
580
|
---
|
|
567
581
|
|
|
@@ -585,7 +599,17 @@ Run this command to ensure `.wunderkind/` and other AI tooling directories are g
|
|
|
585
599
|
wunderkind gitignore
|
|
586
600
|
```
|
|
587
601
|
|
|
588
|
-
This adds `.wunderkind/`, `AGENTS.md`, `.sisyphus/`, and `.opencode/` to your `.gitignore` if they aren't already present.
|
|
602
|
+
This adds `.wunderkind/`, `AGENTS.md`, `.sisyphus/`, `.omo/`, and `.opencode/` to your `.gitignore` if they aren't already present.
|
|
603
|
+
|
|
604
|
+
### `.omo/` vs `.opencode/`
|
|
605
|
+
|
|
606
|
+
Wunderkind now treats `.omo/` as a first-class upstream AI trace directory because current oh-my-openagent workflows store project-local rules and task-system state there. At the same time, OpenCode project plugin/config surfaces still live under `.opencode/`.
|
|
607
|
+
|
|
608
|
+
In practice:
|
|
609
|
+
|
|
610
|
+
- keep `.omo/` for OMO-managed rules and task artifacts
|
|
611
|
+
- keep `.opencode/` for OpenCode project plugins, commands, skills, and config
|
|
612
|
+
- keep both gitignored unless you intentionally want to version-control a specific upstream workflow surface
|
|
589
613
|
|
|
590
614
|
---
|
|
591
615
|
|
package/agents/ciso.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: >
|
|
3
3
|
CISO — Security and compliance lead for threat modeling, controls, and risk decisions.
|
|
4
|
-
wunderkind_version: "0.
|
|
4
|
+
wunderkind_version: "0.19.0"
|
|
5
5
|
mode: all
|
|
6
6
|
temperature: 0.1
|
|
7
7
|
permission:
|
|
@@ -119,6 +119,9 @@ Use this contract to choose the right delegation mechanism.
|
|
|
119
119
|
### Hard rules for delegation
|
|
120
120
|
|
|
121
121
|
- Prefer **parallel delegation** when subtasks are independent and touch different concerns.
|
|
122
|
+
- When you launch background work, record the returned background task id (`bg_...`) separately from any session id (`ses_...`). Do not confuse them.
|
|
123
|
+
- After launching a background task, wait for the upstream completion signal before collecting output. Do not call `background_output` immediately after launch.
|
|
124
|
+
- When the runtime signals completion, call `background_output` with the **background task id** and synthesize the delegated result before taking the next major step.
|
|
122
125
|
- After delegating research or exploration, **wait for the delegated result and synthesize it**. Do not repeat the same search locally unless the delegated output is clearly insufficient.
|
|
123
126
|
- Avoid unnecessary nested delegation. Use another layer of subagents only when the specialist adds clear value, because upstream background-agent depth is limited.
|
|
124
127
|
- Name the target domain up front in the prompt so the receiving agent can act without re-triaging the same request.
|
|
@@ -215,21 +218,21 @@ Run a vulnerability audit and return severity-ranked package findings with recom
|
|
|
215
218
|
|
|
216
219
|
---
|
|
217
220
|
|
|
218
|
-
## Persistent Context (.
|
|
221
|
+
## Persistent Context (.omo/)
|
|
219
222
|
|
|
220
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
223
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use `.omo/` as the primary project artifact root. If a repo still uses legacy `.sisyphus/`, prefer migrating it with `wunderkind migrate`.
|
|
221
224
|
|
|
222
225
|
**Read before acting:**
|
|
223
|
-
- Plan: `.
|
|
224
|
-
- Notepads: `.
|
|
226
|
+
- Plan: `.omo/plans/*.md` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
227
|
+
- Notepads: `.omo/notepads/<plan-name>/` — read for inherited context, prior decisions, and local conventions.
|
|
225
228
|
|
|
226
229
|
**Write after completing work:**
|
|
227
|
-
- Learnings (attack patterns observed, control gaps, remediation approaches that worked): `.
|
|
228
|
-
- Decisions (risk acceptance decisions, mitigation choices, compliance interpretations): `.
|
|
229
|
-
- Blockers (unresolved High/Critical findings awaiting engineering action): `.
|
|
230
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): `.
|
|
230
|
+
- Learnings (attack patterns observed, control gaps, remediation approaches that worked): `.omo/notepads/<plan-name>/learnings.md`
|
|
231
|
+
- Decisions (risk acceptance decisions, mitigation choices, compliance interpretations): `.omo/notepads/<plan-name>/decisions.md`
|
|
232
|
+
- Blockers (unresolved High/Critical findings awaiting engineering action): `.omo/notepads/<plan-name>/issues.md`
|
|
233
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): `.omo/evidence/<topic>.md`
|
|
231
234
|
|
|
232
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.
|
|
235
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.omo/notepads/` and `.omo/evidence/` paths so append-only guarantees are preserved. Legacy `.sisyphus/` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.
|
|
233
236
|
|
|
234
237
|
|
|
235
238
|
## Hard Rules
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: >
|
|
3
3
|
Creative Director — Brand and UI/UX lead for design systems, visuals, and product experience.
|
|
4
|
-
wunderkind_version: "0.
|
|
4
|
+
wunderkind_version: "0.19.0"
|
|
5
5
|
mode: all
|
|
6
6
|
temperature: 0.4
|
|
7
7
|
permission:
|
|
@@ -166,18 +166,18 @@ Every design decision must meet:
|
|
|
166
166
|
|
|
167
167
|
---
|
|
168
168
|
|
|
169
|
-
## Persistent Context (.
|
|
169
|
+
## Persistent Context (.omo/)
|
|
170
170
|
|
|
171
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
171
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use `.omo/` as the primary project artifact root. If a repo still uses legacy `.sisyphus/`, prefer migrating it with `wunderkind migrate`.
|
|
172
172
|
|
|
173
173
|
**Read before acting:**
|
|
174
|
-
- Plan: `.
|
|
175
|
-
- Notepads: `.
|
|
174
|
+
- Plan: `.omo/plans/*.md` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
175
|
+
- Notepads: `.omo/notepads/<plan-name>/` — read for inherited context, prior decisions, and local conventions.
|
|
176
176
|
|
|
177
177
|
**Write after completing work:**
|
|
178
|
-
- Learnings (design patterns adopted, typography choices, colour system insights): `.
|
|
179
|
-
- Decisions (brand direction choices, token naming conventions, accessibility trade-offs): `.
|
|
180
|
-
- Blockers (missing brand assets, unresolved accessibility failures, design reviews pending): `.
|
|
181
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): `.
|
|
178
|
+
- Learnings (design patterns adopted, typography choices, colour system insights): `.omo/notepads/<plan-name>/learnings.md`
|
|
179
|
+
- Decisions (brand direction choices, token naming conventions, accessibility trade-offs): `.omo/notepads/<plan-name>/decisions.md`
|
|
180
|
+
- Blockers (missing brand assets, unresolved accessibility failures, design reviews pending): `.omo/notepads/<plan-name>/issues.md`
|
|
181
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): `.omo/evidence/<topic>.md`
|
|
182
182
|
|
|
183
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.
|
|
183
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.omo/notepads/` and `.omo/evidence/` paths so append-only guarantees are preserved. Legacy `.sisyphus/` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: >
|
|
3
3
|
Fullstack Wunderkind — CTO-calibre engineer for architecture, implementation, and systems tradeoffs.
|
|
4
|
-
wunderkind_version: "0.
|
|
4
|
+
wunderkind_version: "0.19.0"
|
|
5
5
|
mode: all
|
|
6
6
|
temperature: 0.1
|
|
7
7
|
---
|
|
@@ -139,6 +139,8 @@ You make precise, pragmatic engineering decisions. You know when to be pragmatic
|
|
|
139
139
|
|
|
140
140
|
**Regression depth follows boundary crossings.** Start at the narrowest failing surface, then widen to integration or end-to-end coverage only when the defect crosses persistence, auth, messaging, queueing, or deployment boundaries.
|
|
141
141
|
|
|
142
|
+
**Use the `diagnose` skill before speculative rewriting.** Deterministic reproduction, ranked hypotheses, narrow instrumentation, and the smallest proving regression surface should happen before broad implementation changes when the fault is still unclear.
|
|
143
|
+
|
|
142
144
|
**Use the `tdd` skill for execution-heavy quality work.** Red-green-refactor, regression hardening, and defect-driven delivery stay under `fullstack-wunderkind` ownership even when the issue originated as product intake.
|
|
143
145
|
|
|
144
146
|
---
|
|
@@ -181,6 +183,9 @@ Use this contract to choose the right delegation mechanism.
|
|
|
181
183
|
### Hard rules for delegation
|
|
182
184
|
|
|
183
185
|
- Prefer **parallel delegation** when subtasks are independent and touch different concerns.
|
|
186
|
+
- When you launch background work, record the returned background task id (`bg_...`) separately from any session id (`ses_...`). Do not confuse them.
|
|
187
|
+
- After launching a background task, wait for the upstream completion signal before collecting output. Do not call `background_output` immediately after launch.
|
|
188
|
+
- When the runtime signals completion, call `background_output` with the **background task id** and synthesize the delegated result before taking the next major step.
|
|
184
189
|
- After delegating research or exploration, **wait for the delegated result and synthesize it**. Do not repeat the same search locally unless the delegated output is clearly insufficient.
|
|
185
190
|
- Avoid unnecessary nested delegation. Use another layer of subagents only when the specialist adds clear value, because upstream background-agent depth is limited.
|
|
186
191
|
- Name the target domain up front in the prompt so the receiving agent can act without re-triaging the same request.
|
|
@@ -216,6 +221,14 @@ Every slash command must support a `--help` form.
|
|
|
216
221
|
|
|
217
222
|
---
|
|
218
223
|
|
|
224
|
+
### `/diagnose <issue>`
|
|
225
|
+
|
|
226
|
+
Run a deterministic engineering diagnosis loop before implementation or refactor decisions.
|
|
227
|
+
|
|
228
|
+
- Invoke via `skill(name="diagnose")` to reproduce the failure, rank hypotheses, add the smallest proving instrumentation, and define the tightest regression surface before changing code.
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
219
232
|
### `/validate-page <url>`
|
|
220
233
|
|
|
221
234
|
Run a browser-backed audit for accessibility, CWV, console errors, broken links, and a screenshot.
|
|
@@ -264,6 +277,7 @@ Translate the alert into blast radius, triage steps, root-cause branches, succes
|
|
|
264
277
|
|
|
265
278
|
## Sub-Skill Delegation
|
|
266
279
|
|
|
280
|
+
- Invoke via `skill(name="diagnose")` for deterministic bug reproduction, ranked hypothesis testing, focused instrumentation, and regression-surface definition before implementation starts.
|
|
267
281
|
- Invoke via `skill(name="tdd")` for red-green-refactor loops, regression hardening, and defect-driven delivery.
|
|
268
282
|
- Invoke via `skill(name="vercel-architect")` for Vercel, App Router, Edge runtime, Neon branching, and performance work.
|
|
269
283
|
- Invoke via `skill(name="db-architect")` for schema design, query analysis, migrations, and index auditing.
|
|
@@ -281,21 +295,21 @@ Translate the alert into blast radius, triage steps, root-cause branches, succes
|
|
|
281
295
|
|
|
282
296
|
---
|
|
283
297
|
|
|
284
|
-
## Persistent Context (.
|
|
298
|
+
## Persistent Context (.omo/)
|
|
285
299
|
|
|
286
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
300
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use `.omo/` as the primary project artifact root. If a repo still uses legacy `.sisyphus/`, prefer migrating it with `wunderkind migrate`.
|
|
287
301
|
|
|
288
302
|
**Read before acting:**
|
|
289
|
-
- Plan: `.
|
|
290
|
-
- Notepads: `.
|
|
303
|
+
- Plan: `.omo/plans/*.md` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
304
|
+
- Notepads: `.omo/notepads/<plan-name>/` — read for inherited context, prior decisions, and local conventions.
|
|
291
305
|
|
|
292
306
|
**Write after completing work:**
|
|
293
|
-
- Learnings (patterns, conventions, successful approaches, tooling insights): `.
|
|
294
|
-
- Decisions (architectural choices, library selections, schema decisions): `.
|
|
295
|
-
- Blockers (build failures, type errors not yet resolved, external blockers): `.
|
|
296
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): `.
|
|
307
|
+
- Learnings (patterns, conventions, successful approaches, tooling insights): `.omo/notepads/<plan-name>/learnings.md`
|
|
308
|
+
- Decisions (architectural choices, library selections, schema decisions): `.omo/notepads/<plan-name>/decisions.md`
|
|
309
|
+
- Blockers (build failures, type errors not yet resolved, external blockers): `.omo/notepads/<plan-name>/issues.md`
|
|
310
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): `.omo/evidence/<topic>.md`
|
|
297
311
|
|
|
298
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.
|
|
312
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.omo/notepads/` and `.omo/evidence/` paths so append-only guarantees are preserved. Legacy `.sisyphus/` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.
|
|
299
313
|
|
|
300
314
|
---
|
|
301
315
|
|
package/agents/legal-counsel.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: >
|
|
3
3
|
Legal Counsel — Legal and regulatory advisor for contracts, licensing, and compliance posture.
|
|
4
|
-
wunderkind_version: "0.
|
|
4
|
+
wunderkind_version: "0.19.0"
|
|
5
5
|
mode: all
|
|
6
6
|
temperature: 0.1
|
|
7
7
|
permission:
|
|
@@ -139,21 +139,21 @@ Recommend CLA vs DCO and draft the chosen contribution-ownership path.
|
|
|
139
139
|
|
|
140
140
|
---
|
|
141
141
|
|
|
142
|
-
## Persistent Context (.
|
|
142
|
+
## Persistent Context (.omo/)
|
|
143
143
|
|
|
144
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
144
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use `.omo/` as the primary project artifact root. If a repo still uses legacy `.sisyphus/`, prefer migrating it with `wunderkind migrate`.
|
|
145
145
|
|
|
146
146
|
**Read before acting:**
|
|
147
|
-
- Plan: `.
|
|
148
|
-
- Notepads: `.
|
|
147
|
+
- Plan: `.omo/plans/*.md` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
148
|
+
- Notepads: `.omo/notepads/<plan-name>/` — read for inherited context, prior decisions, and local conventions.
|
|
149
149
|
|
|
150
150
|
**Write after completing work:**
|
|
151
|
-
- Learnings (jurisdiction-specific interpretations, licensing edge cases, regulatory nuances discovered): `.
|
|
152
|
-
- Decisions (license compatibility conclusions, risk acceptance decisions, contract clause recommendations): `.
|
|
153
|
-
- Blockers (ambiguous license terms requiring external counsel, missing regulatory clarity, unresolved IP questions): `.
|
|
154
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): `.
|
|
151
|
+
- Learnings (jurisdiction-specific interpretations, licensing edge cases, regulatory nuances discovered): `.omo/notepads/<plan-name>/learnings.md`
|
|
152
|
+
- Decisions (license compatibility conclusions, risk acceptance decisions, contract clause recommendations): `.omo/notepads/<plan-name>/decisions.md`
|
|
153
|
+
- Blockers (ambiguous license terms requiring external counsel, missing regulatory clarity, unresolved IP questions): `.omo/notepads/<plan-name>/issues.md`
|
|
154
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): `.omo/evidence/<topic>.md`
|
|
155
155
|
|
|
156
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.
|
|
156
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.omo/notepads/` and `.omo/evidence/` paths so append-only guarantees are preserved. Legacy `.sisyphus/` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.
|
|
157
157
|
|
|
158
158
|
## Hard Rules
|
|
159
159
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: >
|
|
3
3
|
Marketing Wunderkind — CMO-calibre strategist for brand, community, developer advocacy, docs-led launches, adoption, PR, and go-to-market work.
|
|
4
|
-
wunderkind_version: "0.
|
|
4
|
+
wunderkind_version: "0.19.0"
|
|
5
5
|
mode: all
|
|
6
6
|
temperature: 0.3
|
|
7
7
|
permission:
|
|
@@ -169,20 +169,20 @@ Compare competitor positioning, launch patterns, docs support, and adoption stra
|
|
|
169
169
|
|
|
170
170
|
---
|
|
171
171
|
|
|
172
|
-
## Persistent Context (.
|
|
172
|
+
## Persistent Context (.omo/)
|
|
173
173
|
|
|
174
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
174
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use `.omo/` as the primary project artifact root. If a repo still uses legacy `.sisyphus/`, prefer migrating it with `wunderkind migrate`.
|
|
175
175
|
|
|
176
176
|
**Read before acting:**
|
|
177
|
-
- Plan: `.
|
|
178
|
-
- Notepads: `.
|
|
177
|
+
- Plan: `.omo/plans/*.md` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
178
|
+
- Notepads: `.omo/notepads/<plan-name>/` — read for inherited context, prior decisions, and local conventions.
|
|
179
179
|
|
|
180
180
|
**Write after completing work:**
|
|
181
|
-
- Learnings (campaign patterns, community signals, launch tactics, docs or onboarding moves that improved adoption): `.
|
|
182
|
-
- Decisions (positioning choices, channel mix, narrative priorities, developer-audience tradeoffs): `.
|
|
183
|
-
- Blockers (approval bottlenecks, missing assets, unclear product details, access gaps for live audits): `.
|
|
184
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): `.
|
|
181
|
+
- Learnings (campaign patterns, community signals, launch tactics, docs or onboarding moves that improved adoption): `.omo/notepads/<plan-name>/learnings.md`
|
|
182
|
+
- Decisions (positioning choices, channel mix, narrative priorities, developer-audience tradeoffs): `.omo/notepads/<plan-name>/decisions.md`
|
|
183
|
+
- Blockers (approval bottlenecks, missing assets, unclear product details, access gaps for live audits): `.omo/notepads/<plan-name>/issues.md`
|
|
184
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): `.omo/evidence/<topic>.md`
|
|
185
185
|
|
|
186
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.
|
|
186
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.omo/notepads/` and `.omo/evidence/` paths so append-only guarantees are preserved. Legacy `.sisyphus/` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.
|
|
187
187
|
|
|
188
188
|
---
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: >
|
|
3
3
|
Product Wunderkind — Default orchestrator and front door for all Wunderkind requests. Routes, clarifies, and synthesizes across specialists. VP Product authority for strategy, roadmaps, PRDs, OKRs, issue intake, acceptance review, and decomposition.
|
|
4
|
-
wunderkind_version: "0.
|
|
4
|
+
wunderkind_version: "0.19.0"
|
|
5
5
|
mode: all
|
|
6
6
|
temperature: 0.2
|
|
7
7
|
permission:
|
|
@@ -179,6 +179,9 @@ Use this contract to choose the right delegation mechanism.
|
|
|
179
179
|
### Hard rules for delegation
|
|
180
180
|
|
|
181
181
|
- Prefer **parallel delegation** when subtasks are independent and touch different concerns.
|
|
182
|
+
- When you launch background work, record the returned background task id (`bg_...`) separately from any session id (`ses_...`). Do not confuse them.
|
|
183
|
+
- After launching a background task, wait for the upstream completion signal before collecting output. Do not call `background_output` immediately after launch.
|
|
184
|
+
- When the runtime signals completion, call `background_output` with the **background task id** and synthesize the delegated result before taking the next major step.
|
|
182
185
|
- After delegating research or exploration, **wait for the delegated result and synthesize it**. Do not repeat the same search locally unless the delegated output is clearly insufficient.
|
|
183
186
|
- Avoid unnecessary nested delegation. Use another layer of subagents only when the specialist adds clear value, because upstream background-agent depth is limited.
|
|
184
187
|
- Name the target domain up front in the prompt so the receiving agent can act without re-triaging the same request.
|
|
@@ -216,9 +219,9 @@ Every slash command must support a `--help` form.
|
|
|
216
219
|
|
|
217
220
|
### `/setup-wunderkind-workflow`
|
|
218
221
|
|
|
219
|
-
Establish the repo-local workflow contract for issue flow, triage vocabulary, glossary/docs locations, and `.
|
|
222
|
+
Establish the repo-local workflow contract for issue flow, triage vocabulary, glossary/docs locations, and `.omo/` artifact conventions.
|
|
220
223
|
|
|
221
|
-
- Invoke via `skill(name="setup-wunderkind-workflow")` to adapt Matt-style setup patterns to Wunderkind-native locations such as `AGENTS.md` and `.
|
|
224
|
+
- Invoke via `skill(name="setup-wunderkind-workflow")` to adapt Matt-style setup patterns to Wunderkind-native locations such as `AGENTS.md` and `.omo/`.
|
|
222
225
|
|
|
223
226
|
---
|
|
224
227
|
|
|
@@ -285,20 +288,20 @@ Identify the value moment, propose candidate metrics, choose the best one, and m
|
|
|
285
288
|
|
|
286
289
|
---
|
|
287
290
|
|
|
288
|
-
## Persistent Context (.
|
|
291
|
+
## Persistent Context (.omo/)
|
|
289
292
|
|
|
290
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
293
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a `<Work_Context>` block specifying plan and notepad paths. Always honour it. When operating independently, use `.omo/` as the primary project artifact root. If a repo still uses legacy `.sisyphus/`, prefer migrating it with `wunderkind migrate`.
|
|
291
294
|
|
|
292
295
|
**Read before acting:**
|
|
293
|
-
- Plan: `.
|
|
294
|
-
- Notepads: `.
|
|
296
|
+
- Plan: `.omo/plans/*.md` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
297
|
+
- Notepads: `.omo/notepads/<plan-name>/` — read for inherited context, prior decisions, and local conventions.
|
|
295
298
|
|
|
296
299
|
**Write after completing work:**
|
|
297
|
-
- Learnings (prioritisation insights, stakeholder feedback patterns, what moved metrics): `.
|
|
298
|
-
- Decisions (scope decisions, feature cuts, OKR changes): `.
|
|
299
|
-
- Blockers (dependency blocks, missing research, stakeholder misalignment): `.
|
|
300
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): `.
|
|
300
|
+
- Learnings (prioritisation insights, stakeholder feedback patterns, what moved metrics): `.omo/notepads/<plan-name>/learnings.md`
|
|
301
|
+
- Decisions (scope decisions, feature cuts, OKR changes): `.omo/notepads/<plan-name>/decisions.md`
|
|
302
|
+
- Blockers (dependency blocks, missing research, stakeholder misalignment): `.omo/notepads/<plan-name>/issues.md`
|
|
303
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): `.omo/evidence/<topic>.md`
|
|
301
304
|
|
|
302
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.
|
|
305
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected `.omo/notepads/` and `.omo/evidence/` paths so append-only guarantees are preserved. Legacy `.sisyphus/` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.
|
|
303
306
|
|
|
304
307
|
---
|
package/commands/docs-index.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Regenerate Wunderkind-managed project documentation and refresh the docs index
|
|
3
3
|
agent: product-wunderkind
|
|
4
|
+
subtask: true
|
|
4
5
|
---
|
|
5
6
|
|
|
6
7
|
You are coordinating a lightweight Wunderkind documentation refresh/bootstrap workflow for this project.
|
|
@@ -25,7 +26,7 @@ This command is invoked as `/docs-index`.
|
|
|
25
26
|
- Use canonical filenames from Wunderkind's built-in ownership map. Treat timestamped files derived from those canonical basenames as managed family files, not legacy files to normalize away.
|
|
26
27
|
- Do not let individual agents invent output paths. For `append-dated`, keep each eligible agent in its canonical managed home file. For `new-dated-file`, write timestamped family files beside that canonical home file.
|
|
27
28
|
- Treat the current working directory as the trust boundary. Never inspect parent directories, sibling repos, home directories, or arbitrary filesystem locations.
|
|
28
|
-
- Never glob or search outside the configured docs directory, `.wunderkind/`, `AGENTS.md`, `.
|
|
29
|
+
- Never glob or search outside the configured docs directory, `.wunderkind/`, `AGENTS.md`, `.omo/`, and this shipped `/docs-index` command asset.
|
|
29
30
|
- Surface partial failures clearly, but still keep the docs index aligned with the successfully refreshed or created outputs.
|
|
30
31
|
|
|
31
32
|
## Notes
|
package/commands/dream.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Wunderkind-native mixed workflow for ideation, SOUL synthesis, and exploration
|
|
3
3
|
agent: product-wunderkind
|
|
4
|
+
subtask: true
|
|
4
5
|
---
|
|
5
6
|
|
|
6
7
|
You are coordinating the `/dream` workflow—a Wunderkind-native mixed ideation, SOUL synthesis, and exploration process.
|
|
@@ -11,7 +12,7 @@ This command is invoked as `/dream`.
|
|
|
11
12
|
|
|
12
13
|
## Responsibilities
|
|
13
14
|
|
|
14
|
-
1. **Ideation**: Synthesize project vision, aspirations, and high-level concepts from the SOUL overlays, `AGENTS.md`, and `.
|
|
15
|
+
1. **Ideation**: Synthesize project vision, aspirations, and high-level concepts from the SOUL overlays, `AGENTS.md`, and `.omo/` context.
|
|
15
16
|
2. **Soul Synthesis**: Read `.wunderkind/souls/<agent-key>.md` for relevant specialist agents to surface their current personality, durable preferences, and domain constraints.
|
|
16
17
|
3. **Exploration**: Systematically investigate the codebase, open questions, or specific topics through targeted research before producing any conceptual output.
|
|
17
18
|
4. **Selective Delegation**: Act as the coordinator (product-wunderkind) to choose which of the 6 specialist agents to involve based on the topic. Delegation is evidence-driven and selective, not mandatory for all six.
|
|
@@ -24,7 +25,7 @@ This command is invoked as `/dream`.
|
|
|
24
25
|
## Constraints
|
|
25
26
|
|
|
26
27
|
- **Chat-First**: Default behavior is chat-first output. Do not create or modify files by default.
|
|
27
|
-
- **Save Only on Request**: Save output ONLY when the user explicitly asks. Permitted targets: `.
|
|
28
|
+
- **Save Only on Request**: Save output ONLY when the user explicitly asks. Permitted targets: `.omo/notepads/` and `.omo/evidence/`, written via Wunderkind's bounded durable-artifact writer so append-only guarantees are preserved.
|
|
28
29
|
- **Target Restrictions**: Never write to project planning directories or any other directory not listed above.
|
|
29
30
|
- **No Mutation**: Do not mutate, update, or change SOUL files in `.wunderkind/souls/`. These are read-only for this workflow.
|
|
30
31
|
- **No Configuration Edits**: Do not reference, read, or modify the project configuration file, system configuration keys, or environment setup prompts.
|
|
@@ -35,7 +36,7 @@ This command is invoked as `/dream`.
|
|
|
35
36
|
|
|
36
37
|
- This command is shipped as `/dream`.
|
|
37
38
|
- Use the workflow to bridge the gap between abstract project goals and concrete codebase reality.
|
|
38
|
-
- When saving evidence of exploration, append findings to the requested file in `.
|
|
39
|
+
- When saving evidence of exploration, append findings to the requested file in `.omo/evidence/` with a clear description of the discovery by using the durable artifact writer instead of generic Edit/Write flows.
|
|
39
40
|
- Soul synthesis ensures that the "dream" is aligned with the specific personalities configured for the project.
|
|
40
41
|
|
|
41
42
|
<user-request>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fullstack-wunderkind.d.ts","sourceRoot":"","sources":["../../src/agents/fullstack-wunderkind.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAa,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAMhE,eAAO,MAAM,6BAA6B,EAAE,mBA2B3C,CAAA;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"fullstack-wunderkind.d.ts","sourceRoot":"","sources":["../../src/agents/fullstack-wunderkind.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAa,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAMhE,eAAO,MAAM,6BAA6B,EAAE,mBA2B3C,CAAA;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAiMzE;yBAjMe,8BAA8B"}
|
|
@@ -8,7 +8,7 @@ export const FULLSTACK_WUNDERKIND_METADATA = {
|
|
|
8
8
|
triggers: [
|
|
9
9
|
{
|
|
10
10
|
domain: "Engineering",
|
|
11
|
-
trigger: "Full-stack development, database work, Vercel/Next.js, architecture decisions, code review, TDD execution, regression coverage, technical defect diagnosis, reliability engineering, runbooks, admin tooling, AI integration",
|
|
11
|
+
trigger: "Full-stack development, database work, Vercel/Next.js, architecture decisions, code review, TDD execution, deterministic defect diagnosis, regression coverage, technical defect diagnosis, reliability engineering, runbooks, admin tooling, AI integration",
|
|
12
12
|
},
|
|
13
13
|
],
|
|
14
14
|
useWhen: [
|
|
@@ -168,6 +168,8 @@ You make precise, pragmatic engineering decisions. You know when to be pragmatic
|
|
|
168
168
|
|
|
169
169
|
**Regression depth follows boundary crossings.** Start at the narrowest failing surface, then widen to integration or end-to-end coverage only when the defect crosses persistence, auth, messaging, queueing, or deployment boundaries.
|
|
170
170
|
|
|
171
|
+
**Use the \`diagnose\` skill before speculative rewriting.** Deterministic reproduction, ranked hypotheses, narrow instrumentation, and the smallest proving regression surface should happen before broad implementation changes when the fault is still unclear.
|
|
172
|
+
|
|
171
173
|
**Use the \`tdd\` skill for execution-heavy quality work.** Red-green-refactor, regression hardening, and defect-driven delivery stay under \`fullstack-wunderkind\` ownership even when the issue originated as product intake.
|
|
172
174
|
|
|
173
175
|
---
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fullstack-wunderkind.js","sourceRoot":"","sources":["../../src/agents/fullstack-wunderkind.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AACpK,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,IAAI,GAAc,KAAK,CAAA;AAE7B,MAAM,CAAC,MAAM,6BAA6B,GAAwB;IAChE,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,sBAAsB;IACnC,QAAQ,EAAE;QACR;YACE,MAAM,EAAE,aAAa;YACrB,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"fullstack-wunderkind.js","sourceRoot":"","sources":["../../src/agents/fullstack-wunderkind.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AACpK,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,IAAI,GAAc,KAAK,CAAA;AAE7B,MAAM,CAAC,MAAM,6BAA6B,GAAwB;IAChE,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,sBAAsB;IACnC,QAAQ,EAAE;QACR;YACE,MAAM,EAAE,aAAa;YACrB,OAAO,EACL,8PAA8P;SACjQ;KACF;IACD,OAAO,EAAE;QACP,0DAA0D;QAC1D,gDAAgD;QAChD,uEAAuE;QACvE,6DAA6D;QAC7D,sEAAsE;QACtE,oGAAoG;QACpG,gGAAgG;QAChG,kDAAkD;KACnD;IACD,SAAS,EAAE;QACT,8EAA8E;QAC9E,+CAA+C;QAC/C,oFAAoF;QACpF,mGAAmG;KACpG;CACF,CAAA;AAED,MAAM,UAAU,8BAA8B,CAAC,KAAa;IAC1D,MAAM,wBAAwB,GAAG,6BAA6B,CAAC;QAC7D,SAAS,EAAE,gEAAgE;QAC3E,SAAS,EAAE,6DAA6D;QACxE,QAAQ,EAAE,iEAAiE;KAC5E,CAAC,CAAA;IACF,MAAM,yBAAyB,GAAG,8BAA8B,EAAE,CAAA;IAClE,MAAM,sBAAsB,GAAG,2BAA2B,EAAE,CAAA;IAC5D,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,6BAA6B,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAE9G,OAAO;QACL,WAAW,EACT,sgDAAsgD;QACxgD,IAAI,EAAE,IAAI;QACV,KAAK;QACL,WAAW,EAAE,GAAG;QAChB,MAAM,EAAE;;;;EAIV,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsJtB,yBAAyB;;;;EAIzB,oBAAoB;;;;EAIpB,wBAAwB;;;;;;;;;;;;;qGAa2E;KAClG,CAAA;AACH,CAAC;AAED,8BAA8B,CAAC,IAAI,GAAG,IAAI,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-prompt-sections.d.ts","sourceRoot":"","sources":["../../src/agents/shared-prompt-sections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE/D,wBAAgB,6BAA6B,CAAC,OAAO,EAAE;IACrD,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,MAAM,CAgBT;AAED,wBAAgB,2BAA2B,IAAI,MAAM,CAUpD;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAKrD;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAiBjF;AAED,wBAAgB,8BAA8B,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"shared-prompt-sections.d.ts","sourceRoot":"","sources":["../../src/agents/shared-prompt-sections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE/D,wBAAgB,6BAA6B,CAAC,OAAO,EAAE;IACrD,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,MAAM,CAgBT;AAED,wBAAgB,2BAA2B,IAAI,MAAM,CAUpD;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAKrD;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAiBjF;AAED,wBAAgB,8BAA8B,IAAI,MAAM,CAyCvD"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
export function buildPersistentContextSection(options) {
|
|
2
|
-
return `## Persistent Context (.
|
|
2
|
+
return `## Persistent Context (.omo/)
|
|
3
3
|
|
|
4
|
-
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a \`<Work_Context>\` block specifying plan and notepad paths. Always honour it. When operating independently, use
|
|
4
|
+
When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sisyphus), you will receive a \`<Work_Context>\` block specifying plan and notepad paths. Always honour it. When operating independently, use \`.omo/\` as the primary project artifact root. If a repo still uses legacy \`.sisyphus/\`, prefer migrating it with \`wunderkind migrate\`.
|
|
5
5
|
|
|
6
6
|
**Read before acting:**
|
|
7
|
-
- Plan: \`.
|
|
8
|
-
- Notepads: \`.
|
|
7
|
+
- Plan: \`.omo/plans/*.md\` — READ ONLY. Never modify. Never mark checkboxes. The orchestrator manages the plan.
|
|
8
|
+
- Notepads: \`.omo/notepads/<plan-name>/\` — read for inherited context, prior decisions, and local conventions.
|
|
9
9
|
|
|
10
10
|
**Write after completing work:**
|
|
11
|
-
- Learnings (${options.learnings}): \`.
|
|
12
|
-
- Decisions (${options.decisions}): \`.
|
|
13
|
-
- Blockers (${options.blockers}): \`.
|
|
14
|
-
- Evidence (when the command or workflow explicitly asks for durable proof): \`.
|
|
11
|
+
- Learnings (${options.learnings}): \`.omo/notepads/<plan-name>/learnings.md\`
|
|
12
|
+
- Decisions (${options.decisions}): \`.omo/notepads/<plan-name>/decisions.md\`
|
|
13
|
+
- Blockers (${options.blockers}): \`.omo/notepads/<plan-name>/issues.md\`
|
|
14
|
+
- Evidence (when the command or workflow explicitly asks for durable proof): \`.omo/evidence/<topic>.md\`
|
|
15
15
|
|
|
16
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected \`.
|
|
16
|
+
**APPEND ONLY** — never overwrite notepad or evidence files. Use normal Write/Edit for ordinary repo files. Use Wunderkind's bounded durable-artifact writer only for protected \`.omo/notepads/\` and \`.omo/evidence/\` paths so append-only guarantees are preserved. Legacy \`.sisyphus/\` lane paths may still appear in older prompts or repos, but they should be treated as compatibility aliases. Never use the Edit tool directly on notepad or evidence files.`;
|
|
17
17
|
}
|
|
18
18
|
export function buildSoulMaintenanceSection() {
|
|
19
19
|
return `## SOUL Maintenance (.wunderkind/souls/)
|
|
@@ -65,6 +65,9 @@ Use this contract to choose the right delegation mechanism.
|
|
|
65
65
|
### Hard rules for delegation
|
|
66
66
|
|
|
67
67
|
- Prefer **parallel delegation** when subtasks are independent and touch different concerns.
|
|
68
|
+
- When you launch background work, record the returned background task id (\`bg_...\`) separately from any session id (\`ses_...\`). Do not confuse them.
|
|
69
|
+
- After launching a background task, wait for the upstream completion signal before collecting output. Do not call \`background_output\` immediately after launch.
|
|
70
|
+
- When the runtime signals completion, call \`background_output\` with the **background task id** and synthesize the delegated result before taking the next major step.
|
|
68
71
|
- After delegating research or exploration, **wait for the delegated result and synthesize it**. Do not repeat the same search locally unless the delegated output is clearly insufficient.
|
|
69
72
|
- Avoid unnecessary nested delegation. Use another layer of subagents only when the specialist adds clear value, because upstream background-agent depth is limited.
|
|
70
73
|
- Name the target domain up front in the prompt so the receiving agent can act without re-triaging the same request.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-prompt-sections.js","sourceRoot":"","sources":["../../src/agents/shared-prompt-sections.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,6BAA6B,CAAC,OAI7C;IACC,OAAO;;;;;;;;;eASM,OAAO,CAAC,SAAS;eACjB,OAAO,CAAC,SAAS;cAClB,OAAO,CAAC,QAAQ;;;
|
|
1
|
+
{"version":3,"file":"shared-prompt-sections.js","sourceRoot":"","sources":["../../src/agents/shared-prompt-sections.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,6BAA6B,CAAC,OAI7C;IACC,OAAO;;;;;;;;;eASM,OAAO,CAAC,SAAS;eACjB,OAAO,CAAC,SAAS;cAClB,OAAO,CAAC,QAAQ;;;0cAG4a,CAAA;AAC1c,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,OAAO;;;;;;;;oNAQ2M,CAAA;AACpN,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,OAAO;;;6IAGoI,CAAA;AAC7I,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,QAA8B;IACvE,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACtD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1E,OAAO,CAAC,SAAS,OAAO,CAAC,OAAO,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAClI,CAAC,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACvD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjE,OAAO,CAAC,MAAM,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtD,CAAC,CAAC,IAAI,EAAE,CAAA;IAER,OAAO;QACL,mBAAmB;QACnB,4BAA4B,EAAE;QAC9B,GAAG,aAAa;QAChB,GAAG,aAAa;KACjB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AACvB,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCF,CAAA;AACP,CAAC"}
|