@grant-vine/wunderkind 0.10.1 → 0.10.4
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 +3 -3
- package/commands/docs-index.md +7 -4
- package/dist/agents/docs-config.d.ts.map +1 -1
- package/dist/agents/docs-config.js +11 -4
- package/dist/agents/docs-config.js.map +1 -1
- package/dist/agents/docs-index-plan.d.ts +7 -2
- package/dist/agents/docs-index-plan.d.ts.map +1 -1
- package/dist/agents/docs-index-plan.js +40 -11
- package/dist/agents/docs-index-plan.js.map +1 -1
- package/dist/cli/config-manager/index.d.ts +7 -0
- package/dist/cli/config-manager/index.d.ts.map +1 -1
- package/dist/cli/config-manager/index.js +111 -60
- package/dist/cli/config-manager/index.js.map +1 -1
- package/dist/cli/docs-output-helper.d.ts +4 -0
- package/dist/cli/docs-output-helper.d.ts.map +1 -1
- package/dist/cli/docs-output-helper.js +44 -0
- package/dist/cli/docs-output-helper.js.map +1 -1
- package/dist/cli/gitignore-manager.d.ts +1 -1
- package/dist/cli/gitignore-manager.d.ts.map +1 -1
- package/dist/cli/gitignore-manager.js +5 -3
- package/dist/cli/gitignore-manager.js.map +1 -1
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +59 -0
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/personality-meta.js +2 -2
- package/dist/cli/personality-meta.js.map +1 -1
- package/dist/cli/tui-installer.d.ts.map +1 -1
- package/dist/cli/tui-installer.js +27 -82
- package/dist/cli/tui-installer.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/package.json +4 -2
|
@@ -3,52 +3,6 @@ import color from "picocolors";
|
|
|
3
3
|
import { addPluginToOpenCodeConfig, detectCurrentConfig, detectLegacyConfig, getDefaultGlobalConfig, readWunderkindConfigForScope, writeNativeAgentFiles, writeNativeCommandFiles, writeNativeSkillFiles, writeWunderkindConfig, } from "./config-manager/index.js";
|
|
4
4
|
import { addAiTracesToGitignore } from "./gitignore-manager.js";
|
|
5
5
|
import { isProjectContext, runInit } from "./init.js";
|
|
6
|
-
const COMMON_REGULATIONS = [
|
|
7
|
-
{ value: "GDPR", label: "GDPR", hint: "EU General Data Protection Regulation" },
|
|
8
|
-
{ value: "POPIA", label: "POPIA", hint: "South Africa Protection of Personal Information Act" },
|
|
9
|
-
{ value: "CCPA", label: "CCPA", hint: "California Consumer Privacy Act" },
|
|
10
|
-
{ value: "LGPD", label: "LGPD", hint: "Brazil Lei Geral de Proteção de Dados" },
|
|
11
|
-
{ value: "HIPAA", label: "HIPAA", hint: "US Health Insurance Portability and Accountability Act" },
|
|
12
|
-
{ value: "PIPEDA", label: "PIPEDA", hint: "Canada Personal Information Protection and Electronic Documents Act" },
|
|
13
|
-
{ value: "PDPA", label: "PDPA", hint: "Thailand/Singapore Personal Data Protection Act" },
|
|
14
|
-
{ value: "APPI", label: "APPI", hint: "Japan Act on the Protection of Personal Information" },
|
|
15
|
-
{ value: "SOC2", label: "SOC 2", hint: "AICPA Service Organization Control 2" },
|
|
16
|
-
{ value: "ISO27001", label: "ISO 27001", hint: "Information security management standard" },
|
|
17
|
-
{ value: "__other__", label: "Enter manually…", hint: "Type a custom regulation name" },
|
|
18
|
-
];
|
|
19
|
-
async function promptRegulation(message, initialValue, isRequired) {
|
|
20
|
-
const knownValues = COMMON_REGULATIONS.map((r) => r.value).filter((v) => v !== "__other__");
|
|
21
|
-
const initial = knownValues.includes(initialValue) ? initialValue : "__other__";
|
|
22
|
-
const selection = await p.select({
|
|
23
|
-
message,
|
|
24
|
-
options: COMMON_REGULATIONS,
|
|
25
|
-
initialValue: initial,
|
|
26
|
-
});
|
|
27
|
-
if (p.isCancel(selection)) {
|
|
28
|
-
p.cancel("Installation cancelled.");
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
if (selection !== "__other__") {
|
|
32
|
-
return selection;
|
|
33
|
-
}
|
|
34
|
-
const custom = isRequired
|
|
35
|
-
? await p.text({
|
|
36
|
-
message: "Enter regulation name:",
|
|
37
|
-
placeholder: "POPIA",
|
|
38
|
-
initialValue: knownValues.includes(initialValue) ? "" : initialValue,
|
|
39
|
-
validate: (v) => (v.trim() ? undefined : "Regulation name is required"),
|
|
40
|
-
})
|
|
41
|
-
: await p.text({
|
|
42
|
-
message: "Enter regulation name:",
|
|
43
|
-
placeholder: "leave blank to skip",
|
|
44
|
-
initialValue: knownValues.includes(initialValue) ? "" : initialValue,
|
|
45
|
-
});
|
|
46
|
-
if (p.isCancel(custom)) {
|
|
47
|
-
p.cancel("Installation cancelled.");
|
|
48
|
-
return null;
|
|
49
|
-
}
|
|
50
|
-
return custom.trim();
|
|
51
|
-
}
|
|
52
6
|
export async function runTuiInstaller(scopeHint) {
|
|
53
7
|
if (!process.stdin.isTTY || !process.stdout.isTTY) {
|
|
54
8
|
console.error("Error: Interactive installer requires a TTY. Use --no-tui and pass flags directly.");
|
|
@@ -114,37 +68,26 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
114
68
|
return 1;
|
|
115
69
|
}
|
|
116
70
|
if (isUpdate) {
|
|
117
|
-
p.log.info(`Existing configuration detected: Region=${installBase.region}, Industry=${installBase.industry || "(not set)"}`);
|
|
118
|
-
}
|
|
119
|
-
const
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
});
|
|
133
|
-
if (p.isCancel(industry)) {
|
|
134
|
-
p.cancel("Installation cancelled.");
|
|
135
|
-
return 1;
|
|
136
|
-
}
|
|
137
|
-
const primaryRegulation = await promptRegulation("What is your primary data-protection regulation?", installBase.primaryRegulation, false);
|
|
138
|
-
if (primaryRegulation === null)
|
|
139
|
-
return 1;
|
|
140
|
-
const secondaryRegulation = await promptRegulation("Secondary regulation? (optional)", installBase.secondaryRegulation, false);
|
|
141
|
-
if (secondaryRegulation === null)
|
|
142
|
-
return 1;
|
|
71
|
+
p.log.info(`Existing configuration detected: Region=${scope === "project" ? detected.region : installBase.region}, Industry=${(scope === "project" ? detected.industry : installBase.industry) || "(not set)"}`);
|
|
72
|
+
}
|
|
73
|
+
const effectiveBaseline = scope === "project"
|
|
74
|
+
? {
|
|
75
|
+
region: detected.region,
|
|
76
|
+
industry: detected.industry,
|
|
77
|
+
primaryRegulation: detected.primaryRegulation,
|
|
78
|
+
secondaryRegulation: detected.secondaryRegulation,
|
|
79
|
+
}
|
|
80
|
+
: {
|
|
81
|
+
region: installBase.region,
|
|
82
|
+
industry: installBase.industry,
|
|
83
|
+
primaryRegulation: installBase.primaryRegulation,
|
|
84
|
+
secondaryRegulation: installBase.secondaryRegulation,
|
|
85
|
+
};
|
|
143
86
|
const config = {
|
|
144
|
-
region: region
|
|
145
|
-
industry: industry
|
|
146
|
-
primaryRegulation: primaryRegulation,
|
|
147
|
-
secondaryRegulation: secondaryRegulation,
|
|
87
|
+
region: effectiveBaseline.region,
|
|
88
|
+
industry: effectiveBaseline.industry,
|
|
89
|
+
primaryRegulation: effectiveBaseline.primaryRegulation,
|
|
90
|
+
secondaryRegulation: effectiveBaseline.secondaryRegulation,
|
|
148
91
|
teamCulture: detected.teamCulture,
|
|
149
92
|
orgStructure: detected.orgStructure,
|
|
150
93
|
cisoPersonality: detected.cisoPersonality,
|
|
@@ -159,20 +102,20 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
159
102
|
prdPipelineMode: detected.prdPipelineMode,
|
|
160
103
|
};
|
|
161
104
|
const spinner = p.spinner();
|
|
162
|
-
spinner.start("Applying
|
|
105
|
+
spinner.start("Applying installation");
|
|
163
106
|
const pluginResult = addPluginToOpenCodeConfig(scope);
|
|
164
107
|
if (!pluginResult.success) {
|
|
165
108
|
spinner.stop(color.red(`Failed to add plugin: ${pluginResult.error}`));
|
|
166
109
|
p.outro(color.red("Installation failed."));
|
|
167
110
|
return 1;
|
|
168
111
|
}
|
|
169
|
-
const configResult = writeWunderkindConfig(config, scope);
|
|
170
|
-
if (!configResult.success) {
|
|
112
|
+
const configResult = scope === "global" ? writeWunderkindConfig(config, scope) : null;
|
|
113
|
+
if (configResult && !configResult.success) {
|
|
171
114
|
spinner.stop(color.red(`Failed to write config: ${configResult.error}`));
|
|
172
115
|
p.outro(color.red("Installation failed."));
|
|
173
116
|
return 1;
|
|
174
117
|
}
|
|
175
|
-
spinner.stop("
|
|
118
|
+
spinner.stop("Installation applied successfully");
|
|
176
119
|
const nativeAgentsResult = writeNativeAgentFiles(scope);
|
|
177
120
|
if (!nativeAgentsResult.success) {
|
|
178
121
|
spinner.stop(color.red(`Failed to write native agent files: ${nativeAgentsResult.error}`));
|
|
@@ -192,7 +135,9 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
192
135
|
return 1;
|
|
193
136
|
}
|
|
194
137
|
p.log.success(`Plugin added to ${color.cyan(pluginResult.configPath)}`);
|
|
195
|
-
|
|
138
|
+
if (configResult) {
|
|
139
|
+
p.log.success(`Config written to ${color.cyan(configResult.configPath)}`);
|
|
140
|
+
}
|
|
196
141
|
p.log.success(`Native agents written to ${color.cyan(nativeAgentsResult.configPath)}`);
|
|
197
142
|
p.log.success(`Global native commands written to ${color.cyan(nativeCommandsResult.configPath)}`);
|
|
198
143
|
p.log.success(`Native skills written to ${color.cyan(nativeSkillsResult.configPath)}`);
|
|
@@ -215,7 +160,7 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
215
160
|
`Primary regulation: ${color.cyan(config.primaryRegulation || color.dim("(not set)"))}`,
|
|
216
161
|
config.secondaryRegulation ? `Secondary: ${color.cyan(config.secondaryRegulation)}` : "",
|
|
217
162
|
``,
|
|
218
|
-
`${color.dim("
|
|
163
|
+
`${color.dim("Use 'wunderkind init' for project-local market/regulation, team/personality, and docs settings.")}`,
|
|
219
164
|
]
|
|
220
165
|
.filter(Boolean)
|
|
221
166
|
.join("\n"), isUpdate ? "Updated Setup" : "Installation Setup");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-installer.js","sourceRoot":"","sources":["../../src/cli/tui-installer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAA;AACnC,OAAO,KAAK,MAAM,YAAY,CAAA;AAC9B,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"tui-installer.js","sourceRoot":"","sources":["../../src/cli/tui-installer.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAsCjD,QAAA,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAsCjD,QAAA,MAAM,gBAAgB,EAAE,MA8GvB,CAAA;AAED,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -52,7 +52,14 @@ Documentation output is enabled for this project. Use these resolved runtime val
|
|
|
52
52
|
- docHistoryMode: ${docHistoryMode}
|
|
53
53
|
- docs scope: current project root only
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
### History Mode Behavior
|
|
56
|
+
|
|
57
|
+
\`/docs-index\` uses a shared UTC timestamp contract (format: \`YYYY-MM-DDTHH-mm-ssZ\`, e.g. \`2026-03-12T18-37-52Z\`) for timestamped history modes:
|
|
58
|
+
|
|
59
|
+
- **\`append-dated\`**: Appends a new section heading \`## Update <UTC_TOKEN>\` to the canonical home file. Multiple same-day updates use collision suffixes: \`## Update <UTC_TOKEN> (2)\`, \`(3)\`, etc.
|
|
60
|
+
- **\`new-dated-file\`**: Writes a timestamped file \`<basename>--<UTC_TOKEN>.md\` alongside the canonical home file. For collisions, use suffixes: \`<basename>--<UTC_TOKEN>--2.md\`, \`--3.md\`, etc. These files are managed family members of the canonical home file, not legacy artifacts.
|
|
61
|
+
|
|
62
|
+
Treat the canonical unsuffixed files below as managed home files. Within \`/docs-index\`, refresh them if present or bootstrap them if missing for \`append-dated\`. For \`new-dated-file\`, write timestamped family files alongside the canonical home file.
|
|
56
63
|
|
|
57
64
|
Eligible Wunderkind docs targets:
|
|
58
65
|
${docsTargets}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAEpE,MAAM,oBAAoB,GAAG,uCAAuC,CAAA;AAEpE,MAAM,oBAAoB,GAAG;IAC3B,EAAE,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,oBAAoB,EAAE;IACnE,EAAE,OAAO,EAAE,wBAAwB,EAAE,QAAQ,EAAE,sBAAsB,EAAE;IACvE,EAAE,OAAO,EAAE,wBAAwB,EAAE,QAAQ,EAAE,sBAAsB,EAAE;IACvE,EAAE,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,mBAAmB,EAAE;IACjE,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE;IACvC,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,eAAe,EAAE;CACjD,CAAA;AAEV,SAAS,qBAAqB,CAAC,cAAiC;IAC9D,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5C,KAAK,MAAM,MAAM,IAAI,oBAAoB,EAAE,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,OAAO,MAAM,CAAC,QAAQ,CAAA;QACxB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,eAAe,CAAC,QAA2D;IAClF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,QAAQ,KAAK,CAAC,CAAA;IAE9E,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAA;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,MAAM,gBAAgB,GAAW,KAAK,EAAE,MAAM,EAAE,EAAE;IAChD,OAAO;QACL,oCAAoC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC7D,MAAM,gBAAgB,GAAG,oBAAoB,EAAE,CAAA;YAC/C,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YAEnF,IAAI,gBAAgB,EAAE,WAAW,KAAK,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACrE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,IAAI,QAAQ,CAAA;gBACtD,MAAM,cAAc,GAAG,gBAAgB,CAAC,cAAc,IAAI,WAAW,CAAA;gBACrE,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC;qBAClD,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;qBACvC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;qBACrF,IAAI,CAAC,IAAI,CAAC,CAAA;gBAEb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;EACzB,oBAAoB;;;;;cAKR,QAAQ;oBACF,cAAc
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grant-vine/wunderkind",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.4",
|
|
4
4
|
"description": "Wunderkind \u2014 specialist AI agent addon for OpenCode with 12 professional agents for any software product team",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -29,7 +29,9 @@
|
|
|
29
29
|
"dev": "tsc --watch",
|
|
30
30
|
"prepublishOnly": "bun run build",
|
|
31
31
|
"test": "bun test tests/unit/",
|
|
32
|
-
"test:contract": "bun test tests/unit/"
|
|
32
|
+
"test:contract": "bun test tests/unit/",
|
|
33
|
+
"test:coverage": "bun test --coverage tests/unit/",
|
|
34
|
+
"test:coverage:config-manager": "bun test --coverage tests/unit/config-manager-coverage.test.ts"
|
|
33
35
|
},
|
|
34
36
|
"dependencies": {
|
|
35
37
|
"@clack/prompts": "^0.9.1",
|