@grant-vine/wunderkind 0.8.0 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +209 -27
- package/commands/docs-index.md +44 -0
- package/dist/agents/docs-config.d.ts +6 -0
- package/dist/agents/docs-config.d.ts.map +1 -1
- package/dist/agents/docs-config.js +15 -1
- package/dist/agents/docs-config.js.map +1 -1
- package/dist/agents/docs-index-plan.d.ts +28 -0
- package/dist/agents/docs-index-plan.d.ts.map +1 -0
- package/dist/agents/docs-index-plan.js +118 -0
- package/dist/agents/docs-index-plan.js.map +1 -0
- package/dist/cli/cli-installer.d.ts +9 -1
- package/dist/cli/cli-installer.d.ts.map +1 -1
- package/dist/cli/cli-installer.js +65 -7
- package/dist/cli/cli-installer.js.map +1 -1
- package/dist/cli/config-manager/index.d.ts +17 -1
- package/dist/cli/config-manager/index.d.ts.map +1 -1
- package/dist/cli/config-manager/index.js +415 -177
- package/dist/cli/config-manager/index.js.map +1 -1
- package/dist/cli/doctor.d.ts +4 -0
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +113 -35
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.js +69 -22
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init.d.ts +0 -4
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +144 -38
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/personality-meta.d.ts +8 -0
- package/dist/cli/personality-meta.d.ts.map +1 -0
- package/dist/cli/personality-meta.js +213 -0
- package/dist/cli/personality-meta.js.map +1 -0
- package/dist/cli/tui-installer.d.ts.map +1 -1
- package/dist/cli/tui-installer.js +57 -42
- package/dist/cli/tui-installer.js.map +1 -1
- package/dist/cli/types.d.ts +34 -22
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/cli/uninstall.d.ts +6 -0
- package/dist/cli/uninstall.d.ts.map +1 -0
- package/dist/cli/uninstall.js +64 -0
- package/dist/cli/uninstall.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -8
- package/dist/index.js.map +1 -1
- package/package.json +3 -1
- package/schemas/wunderkind.config.schema.json +67 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as p from "@clack/prompts";
|
|
2
2
|
import color from "picocolors";
|
|
3
|
-
import { addPluginToOpenCodeConfig, detectCurrentConfig, detectLegacyConfig, writeWunderkindConfig, } from "./config-manager/index.js";
|
|
3
|
+
import { addPluginToOpenCodeConfig, detectCurrentConfig, detectLegacyConfig, getDefaultGlobalConfig, readWunderkindConfigForScope, writeOmoAgentConfig, writeWunderkindConfig, } from "./config-manager/index.js";
|
|
4
4
|
import { addAiTracesToGitignore } from "./gitignore-manager.js";
|
|
5
5
|
import { isProjectContext, runInit } from "./init.js";
|
|
6
6
|
const COMMON_REGULATIONS = [
|
|
@@ -78,6 +78,7 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
78
78
|
const scope = scopeRaw;
|
|
79
79
|
const inProjectContext = isProjectContext(process.cwd());
|
|
80
80
|
let shouldInitProjectNow = false;
|
|
81
|
+
let shouldUpdateGitignore = false;
|
|
81
82
|
if (inProjectContext) {
|
|
82
83
|
const initNow = await p.confirm({
|
|
83
84
|
message: "Initialize the current project now?",
|
|
@@ -88,20 +89,37 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
88
89
|
return 1;
|
|
89
90
|
}
|
|
90
91
|
shouldInitProjectNow = initNow;
|
|
92
|
+
if (shouldInitProjectNow) {
|
|
93
|
+
const updateGit = await p.confirm({
|
|
94
|
+
message: "Add AI tooling traces to .gitignore?",
|
|
95
|
+
initialValue: true,
|
|
96
|
+
});
|
|
97
|
+
if (p.isCancel(updateGit)) {
|
|
98
|
+
p.cancel("Installation cancelled.");
|
|
99
|
+
return 1;
|
|
100
|
+
}
|
|
101
|
+
shouldUpdateGitignore = updateGit;
|
|
102
|
+
}
|
|
91
103
|
}
|
|
92
104
|
const detected = detectCurrentConfig();
|
|
93
|
-
const
|
|
105
|
+
const defaults = getDefaultGlobalConfig();
|
|
106
|
+
const scopedConfig = readWunderkindConfigForScope(scope);
|
|
107
|
+
const installBase = {
|
|
108
|
+
...defaults,
|
|
109
|
+
...(scopedConfig ?? {}),
|
|
110
|
+
};
|
|
111
|
+
const isUpdate = scope === "project" ? detected.projectInstalled === true : detected.globalInstalled === true;
|
|
94
112
|
if (detectLegacyConfig()) {
|
|
95
113
|
p.cancel("Legacy config found at project root wunderkind.config.jsonc — move it to .wunderkind/wunderkind.config.jsonc");
|
|
96
114
|
return 1;
|
|
97
115
|
}
|
|
98
116
|
if (isUpdate) {
|
|
99
|
-
p.log.info(`Existing configuration detected: Region=${
|
|
117
|
+
p.log.info(`Existing configuration detected: Region=${installBase.region}, Industry=${installBase.industry || "(not set)"}`);
|
|
100
118
|
}
|
|
101
119
|
const region = await p.text({
|
|
102
120
|
message: "What region is your product based in?",
|
|
103
121
|
placeholder: "Global",
|
|
104
|
-
initialValue:
|
|
122
|
+
initialValue: installBase.region,
|
|
105
123
|
validate: (v) => (v.trim() ? undefined : "Region is required"),
|
|
106
124
|
});
|
|
107
125
|
if (p.isCancel(region)) {
|
|
@@ -111,16 +129,16 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
111
129
|
const industry = await p.text({
|
|
112
130
|
message: "What industry or vertical is your product in?",
|
|
113
131
|
placeholder: "SaaS",
|
|
114
|
-
initialValue:
|
|
132
|
+
initialValue: installBase.industry,
|
|
115
133
|
});
|
|
116
134
|
if (p.isCancel(industry)) {
|
|
117
135
|
p.cancel("Installation cancelled.");
|
|
118
136
|
return 1;
|
|
119
137
|
}
|
|
120
|
-
const primaryRegulation = await promptRegulation("What is your primary data-protection regulation?",
|
|
138
|
+
const primaryRegulation = await promptRegulation("What is your primary data-protection regulation?", installBase.primaryRegulation, true);
|
|
121
139
|
if (primaryRegulation === null)
|
|
122
140
|
return 1;
|
|
123
|
-
const secondaryRegulation = await promptRegulation("Secondary regulation? (optional)",
|
|
141
|
+
const secondaryRegulation = await promptRegulation("Secondary regulation? (optional)", installBase.secondaryRegulation, false);
|
|
124
142
|
if (secondaryRegulation === null)
|
|
125
143
|
return 1;
|
|
126
144
|
const config = {
|
|
@@ -147,62 +165,58 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
147
165
|
docHistoryMode: detected.docHistoryMode,
|
|
148
166
|
};
|
|
149
167
|
const spinner = p.spinner();
|
|
150
|
-
spinner.start("
|
|
168
|
+
spinner.start("Applying configuration");
|
|
151
169
|
const pluginResult = addPluginToOpenCodeConfig(scope);
|
|
152
170
|
if (!pluginResult.success) {
|
|
153
|
-
spinner.stop(`Failed: ${pluginResult.error}`);
|
|
171
|
+
spinner.stop(color.red(`Failed to add plugin: ${pluginResult.error}`));
|
|
154
172
|
p.outro(color.red("Installation failed."));
|
|
155
173
|
return 1;
|
|
156
174
|
}
|
|
157
|
-
spinner.stop(`Plugin added to ${color.cyan(pluginResult.configPath)}`);
|
|
158
|
-
spinner.start("Writing wunderkind configuration");
|
|
159
175
|
const configResult = writeWunderkindConfig(config, scope);
|
|
160
176
|
if (!configResult.success) {
|
|
161
|
-
spinner.stop(`Failed: ${configResult.error}`);
|
|
177
|
+
spinner.stop(color.red(`Failed to write config: ${configResult.error}`));
|
|
162
178
|
p.outro(color.red("Installation failed."));
|
|
163
179
|
return 1;
|
|
164
180
|
}
|
|
165
|
-
spinner.stop(
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
181
|
+
spinner.stop("Configuration applied successfully");
|
|
182
|
+
if (scope === "project" && !shouldInitProjectNow) {
|
|
183
|
+
const omoResult = writeOmoAgentConfig(process.cwd());
|
|
184
|
+
if (!omoResult.success) {
|
|
185
|
+
spinner.stop(color.red(`Failed to write OMO agent config: ${omoResult.error}`));
|
|
186
|
+
p.outro(color.red("Installation failed."));
|
|
187
|
+
return 1;
|
|
188
|
+
}
|
|
189
|
+
p.log.success(`OMO agent config written to ${color.cyan(omoResult.configPath)}`);
|
|
169
190
|
}
|
|
170
|
-
|
|
171
|
-
|
|
191
|
+
p.log.success(`Plugin added to ${color.cyan(pluginResult.configPath)}`);
|
|
192
|
+
p.log.success(`Config written to ${color.cyan(configResult.configPath)}`);
|
|
193
|
+
if (shouldUpdateGitignore) {
|
|
194
|
+
const gitignoreResult = addAiTracesToGitignore();
|
|
195
|
+
if (gitignoreResult.added.length > 0) {
|
|
196
|
+
p.log.success(`Added ${gitignoreResult.added.length} entries to ${color.cyan(".gitignore")}`);
|
|
197
|
+
}
|
|
198
|
+
else if (!gitignoreResult.error) {
|
|
199
|
+
p.log.info(color.dim(".gitignore already contains AI tooling traces"));
|
|
200
|
+
}
|
|
201
|
+
if (gitignoreResult.error) {
|
|
202
|
+
p.log.warn(`Could not update .gitignore: ${gitignoreResult.error}`);
|
|
203
|
+
}
|
|
172
204
|
}
|
|
173
205
|
p.note([
|
|
206
|
+
`Scope: ${color.cyan(scope)}`,
|
|
174
207
|
`Region: ${color.cyan(config.region)}`,
|
|
175
208
|
`Industry: ${color.cyan(config.industry || color.dim("(not set)"))}`,
|
|
176
209
|
`Primary regulation: ${color.cyan(config.primaryRegulation)}`,
|
|
177
210
|
config.secondaryRegulation ? `Secondary: ${color.cyan(config.secondaryRegulation)}` : "",
|
|
178
211
|
``,
|
|
179
|
-
|
|
180
|
-
`Org structure: ${color.cyan(config.orgStructure)}`,
|
|
181
|
-
``,
|
|
182
|
-
`CISO: ${color.cyan(config.cisoPersonality)}`,
|
|
183
|
-
`CTO/Fullstack: ${color.cyan(config.ctoPersonality)}`,
|
|
184
|
-
`CMO/Marketing: ${color.cyan(config.cmoPersonality)}`,
|
|
185
|
-
`QA: ${color.cyan(config.qaPersonality)}`,
|
|
186
|
-
`Product: ${color.cyan(config.productPersonality)}`,
|
|
187
|
-
`Ops: ${color.cyan(config.opsPersonality)}`,
|
|
188
|
-
`Creative: ${color.cyan(config.creativePersonality)}`,
|
|
189
|
-
`Brand: ${color.cyan(config.brandPersonality)}`,
|
|
190
|
-
`DevRel: ${color.cyan(config.devrelPersonality)}`,
|
|
191
|
-
`Legal: ${color.cyan(config.legalPersonality)}`,
|
|
192
|
-
`Support: ${color.cyan(config.supportPersonality)}`,
|
|
193
|
-
`Data Analyst: ${color.cyan(config.dataAnalystPersonality)}`,
|
|
212
|
+
`${color.dim("Advanced team/personality and docs settings are managed via 'wunderkind init'.")}`,
|
|
194
213
|
]
|
|
195
214
|
.filter(Boolean)
|
|
196
|
-
.join("\n"), isUpdate ? "Updated
|
|
197
|
-
p.log.success(color.bold(isUpdate ? "Configuration updated!" : "Installation complete!"));
|
|
198
|
-
p.log.message(`Run ${color.cyan("opencode")} to start!`);
|
|
215
|
+
.join("\n"), isUpdate ? "Updated Setup" : "Installation Setup");
|
|
199
216
|
if (shouldInitProjectNow) {
|
|
217
|
+
p.log.message(`\n${color.bold("→ Handoff to Project Initialization")}`);
|
|
200
218
|
const initExitCode = await runInit({
|
|
201
|
-
noTui:
|
|
202
|
-
region: config.region,
|
|
203
|
-
industry: config.industry,
|
|
204
|
-
primaryRegulation: config.primaryRegulation,
|
|
205
|
-
secondaryRegulation: config.secondaryRegulation,
|
|
219
|
+
noTui: false,
|
|
206
220
|
docsEnabled: config.docsEnabled,
|
|
207
221
|
docsPath: config.docsPath,
|
|
208
222
|
docHistoryMode: config.docHistoryMode,
|
|
@@ -214,7 +228,8 @@ export async function runTuiInstaller(scopeHint) {
|
|
|
214
228
|
}
|
|
215
229
|
p.log.success("Current project initialized.");
|
|
216
230
|
}
|
|
217
|
-
p.outro(color.green("Wunderkind... Enjoy!")
|
|
231
|
+
p.outro(`${color.green("✔ Wunderkind... Enjoy!")}\n\n` +
|
|
232
|
+
` Run ${color.cyan("opencode")} to start your session.`);
|
|
218
233
|
return 0;
|
|
219
234
|
}
|
|
220
235
|
//# sourceMappingURL=tui-installer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-installer.js","sourceRoot":"","sources":["../../src/cli/tui-installer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tui-installer.js","sourceRoot":"","sources":["../../src/cli/tui-installer.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export type BooleanArg = "no" | "yes";
|
|
2
2
|
export type InstallScope = "global" | "project";
|
|
3
|
+
export type InstallRegistrationScope = InstallScope | "both" | "none";
|
|
3
4
|
export type DocHistoryMode = "overwrite" | "append-dated" | "new-dated-file" | "overwrite-archive";
|
|
4
5
|
export type TeamCulture = "formal-strict" | "pragmatic-balanced" | "experimental-informal";
|
|
5
6
|
export type OrgStructure = "flat" | "hierarchical";
|
|
@@ -15,6 +16,31 @@ export type DevrelPersonality = "community-champion" | "docs-perfectionist" | "d
|
|
|
15
16
|
export type LegalPersonality = "cautious-gatekeeper" | "pragmatic-advisor" | "plain-english-counselor";
|
|
16
17
|
export type SupportPersonality = "empathetic-resolver" | "systematic-triage" | "knowledge-builder";
|
|
17
18
|
export type DataAnalystPersonality = "rigorous-statistician" | "insight-storyteller" | "pragmatic-quant";
|
|
19
|
+
export interface GlobalConfig {
|
|
20
|
+
region: string;
|
|
21
|
+
industry: string;
|
|
22
|
+
primaryRegulation: string;
|
|
23
|
+
secondaryRegulation: string;
|
|
24
|
+
}
|
|
25
|
+
export interface ProjectConfig {
|
|
26
|
+
teamCulture: TeamCulture;
|
|
27
|
+
orgStructure: OrgStructure;
|
|
28
|
+
cisoPersonality: CisoPersonality;
|
|
29
|
+
ctoPersonality: CtoPersonality;
|
|
30
|
+
cmoPersonality: CmoPersonality;
|
|
31
|
+
qaPersonality: QaPersonality;
|
|
32
|
+
productPersonality: ProductPersonality;
|
|
33
|
+
opsPersonality: OpsPersonality;
|
|
34
|
+
creativePersonality: CreativePersonality;
|
|
35
|
+
brandPersonality: BrandPersonality;
|
|
36
|
+
devrelPersonality: DevrelPersonality;
|
|
37
|
+
legalPersonality: LegalPersonality;
|
|
38
|
+
supportPersonality: SupportPersonality;
|
|
39
|
+
dataAnalystPersonality: DataAnalystPersonality;
|
|
40
|
+
docsEnabled: boolean;
|
|
41
|
+
docsPath: string;
|
|
42
|
+
docHistoryMode: DocHistoryMode;
|
|
43
|
+
}
|
|
18
44
|
export interface InstallArgs {
|
|
19
45
|
tui: boolean;
|
|
20
46
|
scope: InstallScope;
|
|
@@ -40,37 +66,23 @@ export interface InstallArgs {
|
|
|
40
66
|
docsPath?: string | undefined;
|
|
41
67
|
docHistoryMode?: string | undefined;
|
|
42
68
|
}
|
|
43
|
-
export interface InstallConfig {
|
|
44
|
-
region: string;
|
|
45
|
-
industry: string;
|
|
46
|
-
primaryRegulation: string;
|
|
47
|
-
secondaryRegulation: string;
|
|
48
|
-
teamCulture: TeamCulture;
|
|
49
|
-
orgStructure: OrgStructure;
|
|
50
|
-
cisoPersonality: CisoPersonality;
|
|
51
|
-
ctoPersonality: CtoPersonality;
|
|
52
|
-
cmoPersonality: CmoPersonality;
|
|
53
|
-
qaPersonality: QaPersonality;
|
|
54
|
-
productPersonality: ProductPersonality;
|
|
55
|
-
opsPersonality: OpsPersonality;
|
|
56
|
-
creativePersonality: CreativePersonality;
|
|
57
|
-
brandPersonality: BrandPersonality;
|
|
58
|
-
devrelPersonality: DevrelPersonality;
|
|
59
|
-
legalPersonality: LegalPersonality;
|
|
60
|
-
supportPersonality: SupportPersonality;
|
|
61
|
-
dataAnalystPersonality: DataAnalystPersonality;
|
|
62
|
-
docsEnabled: boolean;
|
|
63
|
-
docsPath: string;
|
|
64
|
-
docHistoryMode: DocHistoryMode;
|
|
69
|
+
export interface InstallConfig extends GlobalConfig, ProjectConfig {
|
|
65
70
|
}
|
|
66
71
|
export interface ConfigMergeResult {
|
|
67
72
|
success: boolean;
|
|
68
73
|
configPath: string;
|
|
74
|
+
changed?: boolean;
|
|
69
75
|
error?: string;
|
|
70
76
|
}
|
|
71
77
|
export interface DetectedConfig {
|
|
72
78
|
isInstalled: boolean;
|
|
73
79
|
scope: InstallScope;
|
|
80
|
+
projectInstalled?: boolean;
|
|
81
|
+
globalInstalled?: boolean;
|
|
82
|
+
registrationScope?: InstallRegistrationScope;
|
|
83
|
+
projectOpenCodeConfigPath?: string;
|
|
84
|
+
globalOpenCodeConfigPath?: string;
|
|
85
|
+
legacyGlobalProjectFields?: string[];
|
|
74
86
|
region: string;
|
|
75
87
|
industry: string;
|
|
76
88
|
primaryRegulation: string;
|
package/dist/cli/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cli/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,KAAK,CAAA;AACrC,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,CAAA;AAC/C,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,CAAA;AAElG,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,oBAAoB,GAAG,uBAAuB,CAAA;AAC1F,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,cAAc,CAAA;AAClD,MAAM,MAAM,eAAe,GAAG,mBAAmB,GAAG,wBAAwB,GAAG,uBAAuB,CAAA;AACtG,MAAM,MAAM,cAAc,GAAG,mBAAmB,GAAG,aAAa,GAAG,oBAAoB,CAAA;AACvF,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,mBAAmB,GAAG,eAAe,CAAA;AAClF,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,uBAAuB,GAAG,aAAa,CAAA;AACrF,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,oBAAoB,GAAG,kBAAkB,CAAA;AAC5F,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,sBAAsB,GAAG,gBAAgB,CAAA;AAC1F,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,GAAG,kBAAkB,GAAG,0BAA0B,CAAA;AAChH,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,YAAY,GAAG,mBAAmB,CAAA;AAC1F,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,aAAa,CAAA;AAC3F,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GAAG,mBAAmB,GAAG,yBAAyB,CAAA;AACtG,MAAM,MAAM,kBAAkB,GAAG,qBAAqB,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAClG,MAAM,MAAM,sBAAsB,GAAG,uBAAuB,GAAG,qBAAqB,GAAG,iBAAiB,CAAA;AAExG,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,OAAO,CAAA;IACZ,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACrC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACrC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3C,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cli/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/cli/uninstall.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAA4B,YAAY,EAAE,MAAM,YAAY,CAAA;AAExE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB;AAWD,wBAAsB,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmD7E"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import color from "picocolors";
|
|
2
|
+
import { detectCurrentConfig, removeGlobalWunderkindConfig, removePluginFromOpenCodeConfig, } from "./config-manager/index.js";
|
|
3
|
+
function resolveScopes(scope, detectedScope) {
|
|
4
|
+
if (scope === "global")
|
|
5
|
+
return ["global"];
|
|
6
|
+
if (scope === "project")
|
|
7
|
+
return ["project"];
|
|
8
|
+
if (detectedScope === "both")
|
|
9
|
+
return ["project"];
|
|
10
|
+
if (detectedScope === "project")
|
|
11
|
+
return ["project"];
|
|
12
|
+
if (detectedScope === "global")
|
|
13
|
+
return ["global"];
|
|
14
|
+
return [];
|
|
15
|
+
}
|
|
16
|
+
export async function runUninstall(options) {
|
|
17
|
+
try {
|
|
18
|
+
const detected = detectCurrentConfig();
|
|
19
|
+
const targets = resolveScopes(options.scope, detected.registrationScope ?? "none");
|
|
20
|
+
if (targets.length === 0) {
|
|
21
|
+
console.log("Wunderkind plugin is not currently registered in OpenCode config.");
|
|
22
|
+
console.log("No changes made.");
|
|
23
|
+
return 0;
|
|
24
|
+
}
|
|
25
|
+
for (const target of targets) {
|
|
26
|
+
const result = removePluginFromOpenCodeConfig(target);
|
|
27
|
+
if (!result.success) {
|
|
28
|
+
console.error(`Failed to remove plugin from ${target} OpenCode config: ${result.error}`);
|
|
29
|
+
return 1;
|
|
30
|
+
}
|
|
31
|
+
if (result.changed === true) {
|
|
32
|
+
console.log(`${color.green("✓")} Removed plugin registration from ${target} config (${color.dim(result.configPath)})`);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
console.log(`${color.dim("- ")}Plugin registration already absent in ${target} config (${color.dim(result.configPath)})`);
|
|
36
|
+
}
|
|
37
|
+
if (target === "global") {
|
|
38
|
+
const globalConfigResult = removeGlobalWunderkindConfig();
|
|
39
|
+
if (!globalConfigResult.success) {
|
|
40
|
+
console.error(`Failed to remove global Wunderkind config: ${globalConfigResult.error}`);
|
|
41
|
+
return 1;
|
|
42
|
+
}
|
|
43
|
+
if (globalConfigResult.changed === true) {
|
|
44
|
+
console.log(`${color.green("✓")} Removed global Wunderkind config (${color.dim(globalConfigResult.configPath)})`);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
console.log(`${color.dim("- ")}Global Wunderkind config already absent (${color.dim(globalConfigResult.configPath)})`);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
console.log();
|
|
52
|
+
console.log(color.bold("Safety note"));
|
|
53
|
+
console.log("Project-local customization files are intentionally left untouched for safety:");
|
|
54
|
+
console.log("- Project-local: .wunderkind/, AGENTS.md, .sisyphus/, docs output folders");
|
|
55
|
+
console.log("- Global config is removed only during global uninstall");
|
|
56
|
+
console.log("If you want project-local artifacts removed, delete those files manually.");
|
|
57
|
+
return 0;
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
console.error(`Error: ${String(error)}`);
|
|
61
|
+
return 1;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=uninstall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/cli/uninstall.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,CAAC;AAKlD,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,CAAC;AAKlD,QAAA,MAAM,gBAAgB,EAAE,MAsGvB,CAAC;AAEF,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { readProjectWunderkindConfig } from "./cli/config-manager/index.js";
|
|
2
2
|
const DOCS_OUTPUT_SENTINEL = "<!-- wunderkind:docs-output-start -->";
|
|
3
3
|
const WunderkindPlugin = async (_input) => {
|
|
4
4
|
return {
|
|
5
5
|
"experimental.chat.system.transform": async (_input, output) => {
|
|
6
|
-
const wunderkindConfig =
|
|
6
|
+
const wunderkindConfig = readProjectWunderkindConfig();
|
|
7
7
|
const hasDocsOutputSentinel = output.system.join("").includes(DOCS_OUTPUT_SENTINEL);
|
|
8
8
|
if (wunderkindConfig?.docsEnabled === true && !hasDocsOutputSentinel) {
|
|
9
9
|
const docsPath = wunderkindConfig.docsPath ?? "./docs";
|
|
@@ -87,16 +87,14 @@ The following specialist agents are available. Delegate to them when their domai
|
|
|
87
87
|
|
|
88
88
|
### Project Configuration
|
|
89
89
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
- \`
|
|
93
|
-
- \`primaryRegulation\` — the main data protection regulation to apply (defaults to GDPR)
|
|
94
|
-
- \`secondaryRegulation\` — additional regulation to layer on top
|
|
90
|
+
Global config defines shared region, industry, and regulation context.
|
|
91
|
+
|
|
92
|
+
Project-local \`.wunderkind/wunderkind.config.jsonc\` defines:
|
|
95
93
|
- \`teamCulture\` — communication style baseline: \`formal-strict\` | \`pragmatic-balanced\` | \`experimental-informal\`
|
|
96
94
|
- \`orgStructure\` — \`flat\` (peer escalation) | \`hierarchical\` (CISO has hard veto on security)
|
|
97
95
|
- \`cisoPersonality\`, \`ctoPersonality\`, \`cmoPersonality\`, \`qaPersonality\`, \`productPersonality\`, \`opsPersonality\`, \`creativePersonality\`, \`brandPersonality\`, \`devrelPersonality\`, \`legalPersonality\`, \`supportPersonality\`, \`dataAnalystPersonality\` — character archetypes per agent
|
|
98
96
|
|
|
99
|
-
If
|
|
97
|
+
If project-local soul fields are absent, agents default to packaged sane defaults.
|
|
100
98
|
|
|
101
99
|
`.trim());
|
|
102
100
|
},
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,MAAM,oBAAoB,GAAG,uCAAuC,CAAC;AAErE,MAAM,gBAAgB,GAAW,KAAK,EAAE,MAAM,EAAE,EAAE;IAChD,OAAO;QACL,oCAAoC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC7D,MAAM,gBAAgB,GAAG,2BAA2B,EAAE,CAAC;YACvD,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;YAEpF,IAAI,gBAAgB,EAAE,WAAW,KAAK,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACrE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,IAAI,QAAQ,CAAC;gBACvD,MAAM,cAAc,GAAG,gBAAgB,CAAC,cAAc,IAAI,WAAW,CAAC;gBAEtE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;EACzB,oBAAoB;;;;;gBAKN,QAAQ;sBACF,cAAc;CACnC,CAAC,IAAI,EAAE,CAAC,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8ExB,CAAC,IAAI,EAAE,CAAC,CAAC;QACN,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grant-vine/wunderkind",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.2",
|
|
4
4
|
"description": "Wunderkind \u2014 specialist AI agent addon for oh-my-openagent with 12 professional agents for any software product team",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -17,6 +17,8 @@
|
|
|
17
17
|
"files": [
|
|
18
18
|
"dist/",
|
|
19
19
|
"agents/",
|
|
20
|
+
"commands/",
|
|
21
|
+
"schemas/",
|
|
20
22
|
"skills/",
|
|
21
23
|
".claude-plugin/",
|
|
22
24
|
"bin/",
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/grant-vine/wunderkind/main/schemas/wunderkind.config.schema.json",
|
|
4
|
+
"title": "Wunderkind Config",
|
|
5
|
+
"description": "Schema for Wunderkind global and project configuration files.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"oneOf": [
|
|
8
|
+
{
|
|
9
|
+
"title": "Global Wunderkind Config",
|
|
10
|
+
"type": "object",
|
|
11
|
+
"properties": {
|
|
12
|
+
"$schema": { "type": "string" },
|
|
13
|
+
"region": { "type": "string" },
|
|
14
|
+
"industry": { "type": "string" },
|
|
15
|
+
"primaryRegulation": { "type": "string" },
|
|
16
|
+
"secondaryRegulation": { "type": "string" }
|
|
17
|
+
},
|
|
18
|
+
"required": ["$schema", "region", "industry", "primaryRegulation", "secondaryRegulation"],
|
|
19
|
+
"additionalProperties": false
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"title": "Project Wunderkind Config",
|
|
23
|
+
"type": "object",
|
|
24
|
+
"properties": {
|
|
25
|
+
"$schema": { "type": "string" },
|
|
26
|
+
"teamCulture": { "enum": ["formal-strict", "pragmatic-balanced", "experimental-informal"] },
|
|
27
|
+
"orgStructure": { "enum": ["flat", "hierarchical"] },
|
|
28
|
+
"cisoPersonality": { "enum": ["paranoid-enforcer", "pragmatic-risk-manager", "educator-collaborator"] },
|
|
29
|
+
"ctoPersonality": { "enum": ["grizzled-sysadmin", "startup-bro", "code-archaeologist"] },
|
|
30
|
+
"cmoPersonality": { "enum": ["data-driven", "brand-storyteller", "growth-hacker"] },
|
|
31
|
+
"qaPersonality": { "enum": ["rule-enforcer", "risk-based-pragmatist", "rubber-duck"] },
|
|
32
|
+
"productPersonality": { "enum": ["user-advocate", "velocity-optimizer", "outcome-obsessed"] },
|
|
33
|
+
"opsPersonality": { "enum": ["on-call-veteran", "efficiency-maximiser", "process-purist"] },
|
|
34
|
+
"creativePersonality": { "enum": ["perfectionist-craftsperson", "bold-provocateur", "pragmatic-problem-solver"] },
|
|
35
|
+
"brandPersonality": { "enum": ["community-evangelist", "pr-spinner", "authentic-builder"] },
|
|
36
|
+
"devrelPersonality": { "enum": ["community-champion", "docs-perfectionist", "dx-engineer"] },
|
|
37
|
+
"legalPersonality": { "enum": ["cautious-gatekeeper", "pragmatic-advisor", "plain-english-counselor"] },
|
|
38
|
+
"supportPersonality": { "enum": ["empathetic-resolver", "systematic-triage", "knowledge-builder"] },
|
|
39
|
+
"dataAnalystPersonality": { "enum": ["rigorous-statistician", "insight-storyteller", "pragmatic-quant"] },
|
|
40
|
+
"docsEnabled": { "type": "boolean" },
|
|
41
|
+
"docsPath": { "type": "string" },
|
|
42
|
+
"docHistoryMode": { "enum": ["overwrite", "append-dated", "new-dated-file", "overwrite-archive"] }
|
|
43
|
+
},
|
|
44
|
+
"required": [
|
|
45
|
+
"$schema",
|
|
46
|
+
"teamCulture",
|
|
47
|
+
"orgStructure",
|
|
48
|
+
"cisoPersonality",
|
|
49
|
+
"ctoPersonality",
|
|
50
|
+
"cmoPersonality",
|
|
51
|
+
"qaPersonality",
|
|
52
|
+
"productPersonality",
|
|
53
|
+
"opsPersonality",
|
|
54
|
+
"creativePersonality",
|
|
55
|
+
"brandPersonality",
|
|
56
|
+
"devrelPersonality",
|
|
57
|
+
"legalPersonality",
|
|
58
|
+
"supportPersonality",
|
|
59
|
+
"dataAnalystPersonality",
|
|
60
|
+
"docsEnabled",
|
|
61
|
+
"docsPath",
|
|
62
|
+
"docHistoryMode"
|
|
63
|
+
],
|
|
64
|
+
"additionalProperties": false
|
|
65
|
+
}
|
|
66
|
+
]
|
|
67
|
+
}
|