@grant-vine/wunderkind 0.14.1 → 0.15.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 +5 -1
- package/agents/ciso.md +1 -1
- package/agents/creative-director.md +1 -1
- package/agents/fullstack-wunderkind.md +1 -1
- package/agents/legal-counsel.md +1 -1
- package/agents/marketing-wunderkind.md +1 -1
- package/agents/product-wunderkind.md +1 -1
- package/commands/design-md.md +1 -1
- package/commands/dream.md +1 -1
- package/dist/agents/docs-config.js +1 -1
- package/dist/agents/shared-prompt-sections.js +1 -1
- package/dist/agents/shared-prompt-sections.js.map +1 -1
- package/dist/artifact-writer.d.ts +1 -5
- package/dist/artifact-writer.d.ts.map +1 -1
- package/dist/artifact-writer.js +15 -129
- package/dist/artifact-writer.js.map +1 -1
- package/dist/cli/cli-installer.d.ts +12 -0
- package/dist/cli/cli-installer.d.ts.map +1 -1
- package/dist/cli/cli-installer.js +73 -1
- package/dist/cli/cli-installer.js.map +1 -1
- package/dist/cli/config-manager/index.d.ts +3 -1
- package/dist/cli/config-manager/index.d.ts.map +1 -1
- package/dist/cli/config-manager/index.js +82 -13
- package/dist/cli/config-manager/index.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +22 -42
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/tui-installer.d.ts.map +1 -1
- package/dist/cli/tui-installer.js +6 -0
- package/dist/cli/tui-installer.js.map +1 -1
- package/dist/cli/types.d.ts +17 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -16
- package/dist/index.js.map +1 -1
- package/oh-my-openagent.jsonc +77 -0
- package/oh-my-opencode.jsonc +81 -0
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -72,12 +72,14 @@ bunx @grant-vine/wunderkind install
|
|
|
72
72
|
or
|
|
73
73
|
|
|
74
74
|
The TUI will guide you through:
|
|
75
|
-
1.
|
|
75
|
+
1. Checking for oh-my-openagent first, then auto-running `bunx oh-my-opencode install` when the upstream CLI is available and OMO is missing.
|
|
76
76
|
2. Selecting the install scope (Global vs Project).
|
|
77
77
|
3. Optionally configuring shared baseline defaults: region, industry, and data-protection regulations.
|
|
78
78
|
4. Optionally initializing the current project immediately.
|
|
79
79
|
|
|
80
80
|
> Note: upstream now prefers `oh-my-openagent` for plugin entries and OMO config basenames, while the npm package and CLI command still remain `oh-my-opencode`.
|
|
81
|
+
>
|
|
82
|
+
> Wunderkind now ships both `oh-my-openagent.jsonc` (canonical) and `oh-my-opencode.jsonc` (legacy compatibility) template assets. Prefer the canonical file for new setups.
|
|
81
83
|
|
|
82
84
|
### Non-interactive install
|
|
83
85
|
|
|
@@ -87,6 +89,8 @@ For CI/CD or scripted environments, use the `install` command with the `--no-tui
|
|
|
87
89
|
> ```bash
|
|
88
90
|
> bunx oh-my-opencode install --no-tui --claude=yes --gemini=no --copilot=yes
|
|
89
91
|
> ```
|
|
92
|
+
> Wunderkind now performs this OMO readiness check up front during non-interactive `install` and `upgrade`, and exits early with the upstream install command when OMO is missing.
|
|
93
|
+
>
|
|
90
94
|
> See the [oh-my-openagent docs](https://github.com/code-yeongyu/oh-my-openagent) for all available options.
|
|
91
95
|
|
|
92
96
|
```bash
|
package/agents/ciso.md
CHANGED
|
@@ -221,7 +221,7 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
221
221
|
- Blockers (unresolved High/Critical findings awaiting engineering action): `.sisyphus/notepads/<plan-name>/issues.md`
|
|
222
222
|
- Evidence (when the command or workflow explicitly asks for durable proof): `.sisyphus/evidence/<topic>.md`
|
|
223
223
|
|
|
224
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
224
|
+
**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 `.sisyphus/notepads/` and `.sisyphus/evidence/` paths so append-only guarantees are preserved. Never use the Edit tool directly on notepad or evidence files.
|
|
225
225
|
|
|
226
226
|
|
|
227
227
|
## Hard Rules
|
|
@@ -179,4 +179,4 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
179
179
|
- Blockers (missing brand assets, unresolved accessibility failures, design reviews pending): `.sisyphus/notepads/<plan-name>/issues.md`
|
|
180
180
|
- Evidence (when the command or workflow explicitly asks for durable proof): `.sisyphus/evidence/<topic>.md`
|
|
181
181
|
|
|
182
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
182
|
+
**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 `.sisyphus/notepads/` and `.sisyphus/evidence/` paths so append-only guarantees are preserved. Never use the Edit tool directly on notepad or evidence files.
|
|
@@ -284,7 +284,7 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
284
284
|
- Blockers (build failures, type errors not yet resolved, external blockers): `.sisyphus/notepads/<plan-name>/issues.md`
|
|
285
285
|
- Evidence (when the command or workflow explicitly asks for durable proof): `.sisyphus/evidence/<topic>.md`
|
|
286
286
|
|
|
287
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
287
|
+
**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 `.sisyphus/notepads/` and `.sisyphus/evidence/` paths so append-only guarantees are preserved. Never use the Edit tool directly on notepad or evidence files.
|
|
288
288
|
|
|
289
289
|
---
|
|
290
290
|
|
package/agents/legal-counsel.md
CHANGED
|
@@ -152,7 +152,7 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
152
152
|
- Blockers (ambiguous license terms requiring external counsel, missing regulatory clarity, unresolved IP questions): `.sisyphus/notepads/<plan-name>/issues.md`
|
|
153
153
|
- Evidence (when the command or workflow explicitly asks for durable proof): `.sisyphus/evidence/<topic>.md`
|
|
154
154
|
|
|
155
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
155
|
+
**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 `.sisyphus/notepads/` and `.sisyphus/evidence/` paths so append-only guarantees are preserved. Never use the Edit tool directly on notepad or evidence files.
|
|
156
156
|
|
|
157
157
|
## Hard Rules
|
|
158
158
|
|
|
@@ -182,6 +182,6 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
182
182
|
- Blockers (approval bottlenecks, missing assets, unclear product details, access gaps for live audits): `.sisyphus/notepads/<plan-name>/issues.md`
|
|
183
183
|
- Evidence (when the command or workflow explicitly asks for durable proof): `.sisyphus/evidence/<topic>.md`
|
|
184
184
|
|
|
185
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
185
|
+
**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 `.sisyphus/notepads/` and `.sisyphus/evidence/` paths so append-only guarantees are preserved. Never use the Edit tool directly on notepad or evidence files.
|
|
186
186
|
|
|
187
187
|
---
|
|
@@ -275,6 +275,6 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
275
275
|
- Blockers (dependency blocks, missing research, stakeholder misalignment): `.sisyphus/notepads/<plan-name>/issues.md`
|
|
276
276
|
- Evidence (when the command or workflow explicitly asks for durable proof): `.sisyphus/evidence/<topic>.md`
|
|
277
277
|
|
|
278
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
278
|
+
**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 `.sisyphus/notepads/` and `.sisyphus/evidence/` paths so append-only guarantees are preserved. Never use the Edit tool directly on notepad or evidence files.
|
|
279
279
|
|
|
280
280
|
---
|
package/commands/design-md.md
CHANGED
|
@@ -16,7 +16,7 @@ This command is invoked as `/design-md`.
|
|
|
16
16
|
2. Treat `DESIGN.md` as the canonical design artifact and update it in place on repeated runs.
|
|
17
17
|
3. Keep the `DESIGN.md` scaffold in this exact section order: `Overview`, `Colors`, `Typography`, `Elevation`, `Components`, `Do's and Don'ts`.
|
|
18
18
|
4. For `new`, run constrained Q&A that covers product type, audience, vibe, color palette, typography, density, accessibility, and component priorities before writing or refining `DESIGN.md`.
|
|
19
|
-
5. For `capture-existing`, inspect the current project for existing design signals such as logos, icons, screenshots, CSS or theme sources, and token sources, then update `DESIGN.md` from that evidence
|
|
19
|
+
5. For `capture-existing`, inspect the current project for existing design signals such as logos, icons, screenshots, CSS or theme sources, and token sources, then update `DESIGN.md` from that evidence using normal Write/Edit flows.
|
|
20
20
|
6. For `capture-existing`, write or update `.wunderkind/stitch/source-assets.md` with project-relative paths to the discovered source assets.
|
|
21
21
|
7. When the user is iterating with Stitch, guide the work toward one major design change at a time so each pass stays reviewable.
|
|
22
22
|
8. Summarize what was created, updated, inferred, and left unresolved.
|
package/commands/dream.md
CHANGED
|
@@ -24,7 +24,7 @@ This command is invoked as `/dream`.
|
|
|
24
24
|
## Constraints
|
|
25
25
|
|
|
26
26
|
- **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: `.sisyphus/notepads/` and `.sisyphus/evidence/`, written via Wunderkind's bounded durable-artifact writer.
|
|
27
|
+
- **Save Only on Request**: Save output ONLY when the user explicitly asks. Permitted targets: `.sisyphus/notepads/` and `.sisyphus/evidence/`, written via Wunderkind's bounded durable-artifact writer so append-only guarantees are preserved.
|
|
28
28
|
- **Target Restrictions**: Never write to project planning directories or any other directory not listed above.
|
|
29
29
|
- **No Mutation**: Do not mutate, update, or change SOUL files in `.wunderkind/souls/`. These are read-only for this workflow.
|
|
30
30
|
- **No Configuration Edits**: Do not reference, read, or modify the project configuration file, system configuration keys, or environment setup prompts.
|
|
@@ -44,7 +44,7 @@ export function buildDocsInstruction(agentKey, docsPath, docHistoryMode) {
|
|
|
44
44
|
: "Within `/docs-index`, treat this file as your managed home file. Refresh its contents if it already exists, or create it if missing.";
|
|
45
45
|
return `When docs output is enabled, write to: ${docsPath}/${config.canonicalFilename}
|
|
46
46
|
|
|
47
|
-
Use
|
|
47
|
+
Use normal Write/Edit tools for this managed docs lane. Do not use shell-based file mutation for docs-output.
|
|
48
48
|
|
|
49
49
|
History mode: ${docHistoryMode}
|
|
50
50
|
- overwrite: Replace the file contents each time.
|
|
@@ -13,7 +13,7 @@ When operating as a subagent inside an OpenCode orchestrated workflow (Atlas/Sis
|
|
|
13
13
|
- Blockers (${options.blockers}): \`.sisyphus/notepads/<plan-name>/issues.md\`
|
|
14
14
|
- Evidence (when the command or workflow explicitly asks for durable proof): \`.sisyphus/evidence/<topic>.md\`
|
|
15
15
|
|
|
16
|
-
**APPEND ONLY** — never overwrite notepad or evidence files. Use Wunderkind's bounded durable-artifact writer for
|
|
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 \`.sisyphus/notepads/\` and \`.sisyphus/evidence/\` paths so append-only guarantees are preserved. 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/)
|
|
@@ -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;;;kVAGoT,CAAA;AAClV,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BF,CAAA;AACP,CAAC"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
export declare const DURABLE_ARTIFACT_TOOL_NAME: "wunderkind_write_artifact";
|
|
2
|
-
export type DurableArtifactAgentKey = "marketing-wunderkind" | "creative-director" | "product-wunderkind" | "fullstack-wunderkind" | "ciso" | "legal-counsel";
|
|
3
|
-
export type DurableArtifactKind = "prd" | "plan" | "issue" | "draft" | "docs-output" | "design-md" | "notepad" | "evidence";
|
|
4
2
|
export interface DurableArtifactWriteRequest {
|
|
5
|
-
agentKey: DurableArtifactAgentKey;
|
|
6
|
-
kind: DurableArtifactKind;
|
|
7
3
|
relativePath: string;
|
|
8
4
|
content: string;
|
|
9
5
|
}
|
|
@@ -15,6 +11,6 @@ export interface DurableArtifactWriteResult {
|
|
|
15
11
|
export interface DurableArtifactWriteOptions {
|
|
16
12
|
docsPath?: string;
|
|
17
13
|
}
|
|
18
|
-
export declare function writeDurableArtifact(request: DurableArtifactWriteRequest, cwd: string,
|
|
14
|
+
export declare function writeDurableArtifact(request: DurableArtifactWriteRequest, cwd: string, _options?: DurableArtifactWriteOptions): DurableArtifactWriteResult;
|
|
19
15
|
export declare function readDurableArtifact(filePath: string): string | null;
|
|
20
16
|
//# sourceMappingURL=artifact-writer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact-writer.d.ts","sourceRoot":"","sources":["../src/artifact-writer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"artifact-writer.d.ts","sourceRoot":"","sources":["../src/artifact-writer.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,0BAA0B,EAAG,2BAAoC,CAAA;AAE9E,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,0BAA0B;IACzC,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAkGD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,2BAA2B,EACpC,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,2BAA2B,GACrC,0BAA0B,CAoD5B;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEnE"}
|
package/dist/artifact-writer.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { existsSync, lstatSync, mkdirSync, readFileSync, realpathSync, statSync, writeFileSync } from "node:fs";
|
|
2
2
|
import { dirname, isAbsolute, join, normalize, relative } from "node:path";
|
|
3
|
-
import { getDocsEligibleAgentKeys } from "./agents/docs-config.js";
|
|
4
|
-
import { resolveProjectLocalDocsPath } from "./cli/docs-output-helper.js";
|
|
5
3
|
export const DURABLE_ARTIFACT_TOOL_NAME = "wunderkind_write_artifact";
|
|
6
|
-
const DOCS_OUTPUT_ELIGIBLE_AGENT_KEYS = new Set(getDocsEligibleAgentKeys());
|
|
7
4
|
function normalizeRelativePath(input) {
|
|
8
5
|
const trimmed = input.trim();
|
|
9
6
|
const normalized = normalize(trimmed).replaceAll("\\", "/");
|
|
@@ -20,19 +17,6 @@ function isPathWithin(parentPath, candidatePath) {
|
|
|
20
17
|
const normalizedSegments = rel.replaceAll("\\", "/").split("/").filter((segment) => segment.length > 0);
|
|
21
18
|
return !normalizedSegments.includes("..");
|
|
22
19
|
}
|
|
23
|
-
function ensurePathHasNoSymlinkSegments(cwd, normalizedRelativePath, errorMessage) {
|
|
24
|
-
const segments = normalizedRelativePath.split("/").filter((segment) => segment.length > 0);
|
|
25
|
-
let lexicalCurrentPath = cwd;
|
|
26
|
-
for (const segment of segments) {
|
|
27
|
-
lexicalCurrentPath = join(lexicalCurrentPath, segment);
|
|
28
|
-
if (!existsSync(lexicalCurrentPath)) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
if (lstatSync(lexicalCurrentPath).isSymbolicLink()) {
|
|
32
|
-
throw new Error(errorMessage);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
20
|
function ensureSafeRelativePath(relativePath) {
|
|
37
21
|
const normalized = normalizeRelativePath(relativePath);
|
|
38
22
|
if (normalized === "" || normalized === ".") {
|
|
@@ -43,67 +27,11 @@ function ensureSafeRelativePath(relativePath) {
|
|
|
43
27
|
}
|
|
44
28
|
return normalized;
|
|
45
29
|
}
|
|
46
|
-
function
|
|
47
|
-
return
|
|
30
|
+
function isAppendOnlyPath(normalizedRelativePath) {
|
|
31
|
+
return normalizedRelativePath.startsWith(".sisyphus/notepads/") || normalizedRelativePath.startsWith(".sisyphus/evidence/");
|
|
48
32
|
}
|
|
49
|
-
function
|
|
50
|
-
return
|
|
51
|
-
}
|
|
52
|
-
function directoryLane(path) {
|
|
53
|
-
return { path, exactFile: false };
|
|
54
|
-
}
|
|
55
|
-
function exactFileLane(path) {
|
|
56
|
-
return { path, exactFile: true };
|
|
57
|
-
}
|
|
58
|
-
function getAllowedArtifactRoots(agentKey, docsOutputRoot) {
|
|
59
|
-
switch (agentKey) {
|
|
60
|
-
case "product-wunderkind":
|
|
61
|
-
return [
|
|
62
|
-
directoryLane(".sisyphus/prds"),
|
|
63
|
-
directoryLane(".sisyphus/plans"),
|
|
64
|
-
directoryLane(".sisyphus/issues"),
|
|
65
|
-
directoryLane(".sisyphus/drafts"),
|
|
66
|
-
directoryLane(".sisyphus/notepads"),
|
|
67
|
-
directoryLane(".sisyphus/evidence"),
|
|
68
|
-
directoryLane(docsOutputRoot),
|
|
69
|
-
];
|
|
70
|
-
case "creative-director":
|
|
71
|
-
return [
|
|
72
|
-
exactFileLane("DESIGN.md"),
|
|
73
|
-
directoryLane(".wunderkind/stitch"),
|
|
74
|
-
directoryLane(".sisyphus/notepads"),
|
|
75
|
-
directoryLane(".sisyphus/evidence"),
|
|
76
|
-
directoryLane(docsOutputRoot),
|
|
77
|
-
];
|
|
78
|
-
case "marketing-wunderkind":
|
|
79
|
-
return [directoryLane(docsOutputRoot), directoryLane(".sisyphus/notepads"), directoryLane(".sisyphus/evidence")];
|
|
80
|
-
case "ciso":
|
|
81
|
-
return [directoryLane(docsOutputRoot), directoryLane(".sisyphus/notepads"), directoryLane(".sisyphus/evidence")];
|
|
82
|
-
case "fullstack-wunderkind":
|
|
83
|
-
return [
|
|
84
|
-
directoryLane(docsOutputRoot),
|
|
85
|
-
directoryLane(".sisyphus/notepads"),
|
|
86
|
-
directoryLane(".sisyphus/evidence"),
|
|
87
|
-
directoryLane(".sisyphus/prds"),
|
|
88
|
-
directoryLane(".sisyphus/plans"),
|
|
89
|
-
directoryLane(".sisyphus/issues"),
|
|
90
|
-
exactFileLane("DESIGN.md"),
|
|
91
|
-
directoryLane(".wunderkind/stitch"),
|
|
92
|
-
];
|
|
93
|
-
case "legal-counsel":
|
|
94
|
-
return [directoryLane(".sisyphus/notepads"), directoryLane(".sisyphus/evidence")];
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
function appendOnlyArtifactKinds(kind) {
|
|
98
|
-
return kind === "notepad" || kind === "evidence";
|
|
99
|
-
}
|
|
100
|
-
function isAllowedArtifactPath(agentKey, normalizedRelativePath, docsOutputRoot) {
|
|
101
|
-
return getAllowedArtifactRoots(agentKey, docsOutputRoot).some((allowedLane) => {
|
|
102
|
-
if (allowedLane.exactFile) {
|
|
103
|
-
return normalizedRelativePath === allowedLane.path;
|
|
104
|
-
}
|
|
105
|
-
return normalizedRelativePath === allowedLane.path || normalizedRelativePath.startsWith(`${allowedLane.path}/`);
|
|
106
|
-
});
|
|
33
|
+
function isAllowedArtifactPath(normalizedRelativePath) {
|
|
34
|
+
return isAppendOnlyPath(normalizedRelativePath);
|
|
107
35
|
}
|
|
108
36
|
function resolveWritableParentPath(rootRealPath, cwd, normalizedRelativePath) {
|
|
109
37
|
const parentRelativePath = normalizeRelativePath(dirname(normalizedRelativePath));
|
|
@@ -136,63 +64,21 @@ function resolveWritableParentPath(rootRealPath, cwd, normalizedRelativePath) {
|
|
|
136
64
|
}
|
|
137
65
|
return resolvedCurrentPath;
|
|
138
66
|
}
|
|
139
|
-
function
|
|
140
|
-
if (
|
|
141
|
-
|
|
67
|
+
function validateProtectedArtifactPath(normalizedRelativePath) {
|
|
68
|
+
if (normalizedRelativePath.startsWith(".sisyphus/notepads/")) {
|
|
69
|
+
return;
|
|
142
70
|
}
|
|
143
|
-
if (
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
if (kind === "plan" && (agentKey !== "product-wunderkind" && agentKey !== "fullstack-wunderkind")) {
|
|
147
|
-
throw new Error(`${agentKey} may not write plan artifacts`);
|
|
148
|
-
}
|
|
149
|
-
if (kind === "plan" && !normalizedRelativePath.startsWith(".sisyphus/plans/")) {
|
|
150
|
-
throw new Error("plan artifacts must stay under .sisyphus/plans/");
|
|
151
|
-
}
|
|
152
|
-
if (kind === "issue" && (agentKey !== "product-wunderkind" && agentKey !== "fullstack-wunderkind")) {
|
|
153
|
-
throw new Error(`${agentKey} may not write issue artifacts`);
|
|
154
|
-
}
|
|
155
|
-
if (kind === "issue" && !normalizedRelativePath.startsWith(".sisyphus/issues/")) {
|
|
156
|
-
throw new Error("issue artifacts must stay under .sisyphus/issues/");
|
|
157
|
-
}
|
|
158
|
-
if (kind === "design-md" && agentKey !== "creative-director" && agentKey !== "fullstack-wunderkind") {
|
|
159
|
-
throw new Error(`${agentKey} may not write design artifacts`);
|
|
160
|
-
}
|
|
161
|
-
if (kind === "design-md" && normalizedRelativePath !== "DESIGN.md") {
|
|
162
|
-
throw new Error("design-md artifacts must write exactly to DESIGN.md");
|
|
163
|
-
}
|
|
164
|
-
if (kind === "draft" && !normalizedRelativePath.startsWith(".sisyphus/drafts/")) {
|
|
165
|
-
throw new Error("draft artifacts must stay under .sisyphus/drafts/");
|
|
166
|
-
}
|
|
167
|
-
if (kind === "docs-output" && !DOCS_OUTPUT_ELIGIBLE_AGENT_KEYS.has(agentKey)) {
|
|
168
|
-
throw new Error(`${agentKey} may not write docs-output artifacts`);
|
|
169
|
-
}
|
|
170
|
-
if (kind === "docs-output" && !normalizedRelativePath.startsWith(`${docsOutputRoot}/`)) {
|
|
171
|
-
throw new Error(`docs-output artifacts must stay under ${docsOutputRoot}/`);
|
|
172
|
-
}
|
|
173
|
-
if (kind === "notepad" && !normalizedRelativePath.startsWith(".sisyphus/notepads/")) {
|
|
174
|
-
throw new Error("notepad artifacts must stay under .sisyphus/notepads/");
|
|
175
|
-
}
|
|
176
|
-
if (kind === "evidence" && !normalizedRelativePath.startsWith(".sisyphus/evidence/")) {
|
|
177
|
-
throw new Error("evidence artifacts must stay under .sisyphus/evidence/");
|
|
71
|
+
if (normalizedRelativePath.startsWith(".sisyphus/evidence/")) {
|
|
72
|
+
return;
|
|
178
73
|
}
|
|
74
|
+
throw new Error("durable artifacts must stay inside append-only Wunderkind memory lanes");
|
|
179
75
|
}
|
|
180
|
-
export function writeDurableArtifact(request, cwd,
|
|
76
|
+
export function writeDurableArtifact(request, cwd, _options) {
|
|
181
77
|
const normalizedRelativePath = ensureSafeRelativePath(request.relativePath);
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
if (docsOutputRoot === null) {
|
|
185
|
-
throw new Error("docs-output artifacts require a resolved docsPath");
|
|
186
|
-
}
|
|
187
|
-
if (isReservedDesignMdPath(docsOutputRoot)) {
|
|
188
|
-
throw new Error("docs-output artifacts may not use DESIGN.md as docsPath because that path is reserved for design-md");
|
|
189
|
-
}
|
|
190
|
-
ensurePathHasNoSymlinkSegments(cwd, docsOutputRoot, "docs-output lane must not include symlinked segments");
|
|
191
|
-
}
|
|
192
|
-
if (!isAllowedArtifactPath(request.agentKey, normalizedRelativePath, docsOutputRoot ?? "__docs-output-disabled__")) {
|
|
193
|
-
throw new Error(`${request.agentKey} may not write outside its bounded durable-artifact lanes`);
|
|
78
|
+
if (!isAllowedArtifactPath(normalizedRelativePath)) {
|
|
79
|
+
throw new Error("durable artifacts must stay inside append-only Wunderkind memory lanes");
|
|
194
80
|
}
|
|
195
|
-
|
|
81
|
+
validateProtectedArtifactPath(normalizedRelativePath);
|
|
196
82
|
const rootRealPath = realpathSync(cwd);
|
|
197
83
|
const resolvedAbsolutePath = resolveWritableParentPath(rootRealPath, cwd, normalizedRelativePath);
|
|
198
84
|
if (!isPathWithin(rootRealPath, resolvedAbsolutePath)) {
|
|
@@ -221,7 +107,7 @@ export function writeDurableArtifact(request, cwd, options) {
|
|
|
221
107
|
throw new Error("durable artifact path must point to a file, not a directory");
|
|
222
108
|
}
|
|
223
109
|
const created = !existsSync(finalAbsolutePath);
|
|
224
|
-
const nextContent =
|
|
110
|
+
const nextContent = existsSync(finalAbsolutePath)
|
|
225
111
|
? `${readFileSync(finalAbsolutePath, "utf-8")}${request.content}`
|
|
226
112
|
: request.content;
|
|
227
113
|
writeFileSync(finalAbsolutePath, nextContent, "utf-8");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact-writer.js","sourceRoot":"","sources":["../src/artifact-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC/G,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"artifact-writer.js","sourceRoot":"","sources":["../src/artifact-writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,18 @@ export interface UpgradeArgs {
|
|
|
28
28
|
primaryRegulation?: string;
|
|
29
29
|
secondaryRegulation?: string;
|
|
30
30
|
}
|
|
31
|
+
export declare function runOmoInstallerForTui(): {
|
|
32
|
+
success: boolean;
|
|
33
|
+
error?: string;
|
|
34
|
+
};
|
|
35
|
+
export declare function validateOmoPreflightForCli(): {
|
|
36
|
+
valid: boolean;
|
|
37
|
+
message?: string;
|
|
38
|
+
};
|
|
39
|
+
export declare function ensureOmoPreflightForTui(): {
|
|
40
|
+
ok: boolean;
|
|
41
|
+
message?: string;
|
|
42
|
+
};
|
|
31
43
|
export declare function runCliInstaller(args: InstallArgs): Promise<number>;
|
|
32
44
|
export declare function runCliUpgrade(args: UpgradeArgs): Promise<number>;
|
|
33
45
|
//# sourceMappingURL=cli-installer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-installer.d.ts","sourceRoot":"","sources":["../../src/cli/cli-installer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli-installer.d.ts","sourceRoot":"","sources":["../../src/cli/cli-installer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAiB,YAAY,EAAE,MAAM,YAAY,CAAA;AAe1E,eAAO,MAAM,OAAO;;;;;;;;CAQnB,CAAA;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAKnD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAE5E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEhD;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE/C;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CA8B9D;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAE3F;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAYD,wBAAgB,qBAAqB,IAAI;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAc5E;AAED,wBAAgB,0BAA0B,IAAI;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAYjF;AAED,wBAAgB,wBAAwB,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAoC5E;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAmHxE;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CA6HtE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import color from "picocolors";
|
|
2
|
-
import {
|
|
2
|
+
import { spawnSync } from "node:child_process";
|
|
3
|
+
import { addPluginToOpenCodeConfig, detectCurrentConfig, detectLegacyConfig, detectOmoInstallReadiness, getDefaultGlobalConfig, readWunderkindConfigForScope, writeNativeAgentFiles, writeNativeCommandFiles, writeNativeSkillFiles, writeWunderkindConfig, } from "./config-manager/index.js";
|
|
3
4
|
import { addAiTracesToGitignore } from "./gitignore-manager.js";
|
|
4
5
|
export const SYMBOLS = {
|
|
5
6
|
check: color.green("[OK]"),
|
|
@@ -57,6 +58,67 @@ export function printBox(content, title) {
|
|
|
57
58
|
export function validateNonTuiArgs(_args) {
|
|
58
59
|
return { valid: true, errors: [] };
|
|
59
60
|
}
|
|
61
|
+
function canAutoBootstrapOmoInTui() {
|
|
62
|
+
const result = spawnSync("bunx", ["oh-my-opencode", "--help"], {
|
|
63
|
+
encoding: "utf8",
|
|
64
|
+
timeout: 1500,
|
|
65
|
+
maxBuffer: 1024 * 32,
|
|
66
|
+
});
|
|
67
|
+
return !result.error && result.status === 0;
|
|
68
|
+
}
|
|
69
|
+
export function runOmoInstallerForTui() {
|
|
70
|
+
const result = spawnSync("bunx", ["oh-my-opencode", "install"], {
|
|
71
|
+
stdio: "inherit",
|
|
72
|
+
});
|
|
73
|
+
if (result.error) {
|
|
74
|
+
return { success: false, error: String(result.error) };
|
|
75
|
+
}
|
|
76
|
+
if (result.status !== 0) {
|
|
77
|
+
return { success: false, error: `oh-my-opencode install exited with status ${result.status ?? "unknown"}` };
|
|
78
|
+
}
|
|
79
|
+
return { success: true };
|
|
80
|
+
}
|
|
81
|
+
export function validateOmoPreflightForCli() {
|
|
82
|
+
const readiness = detectOmoInstallReadiness();
|
|
83
|
+
if (readiness.installed) {
|
|
84
|
+
return { valid: true };
|
|
85
|
+
}
|
|
86
|
+
return {
|
|
87
|
+
valid: false,
|
|
88
|
+
message: `oh-my-openagent must already be installed before running non-interactive mode. ` +
|
|
89
|
+
`${readiness.guidance}. Install it first with:\n ${readiness.nonTuiInstallCommand}`,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
export function ensureOmoPreflightForTui() {
|
|
93
|
+
const readiness = detectOmoInstallReadiness();
|
|
94
|
+
if (readiness.installed) {
|
|
95
|
+
return { ok: true };
|
|
96
|
+
}
|
|
97
|
+
if (!canAutoBootstrapOmoInTui()) {
|
|
98
|
+
return {
|
|
99
|
+
ok: false,
|
|
100
|
+
message: `oh-my-openagent is required before installing Wunderkind. ${readiness.guidance}. ` +
|
|
101
|
+
`Run ${readiness.interactiveInstallCommand} first, then rerun this installer.`,
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
const result = runOmoInstallerForTui();
|
|
105
|
+
if (!result.success) {
|
|
106
|
+
return {
|
|
107
|
+
ok: false,
|
|
108
|
+
message: `Could not auto-install oh-my-openagent. ${readiness.guidance}. ` +
|
|
109
|
+
`${result.error ?? `Run ${readiness.interactiveInstallCommand} manually and retry.`}`,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
const refreshedReadiness = detectOmoInstallReadiness();
|
|
113
|
+
if (!refreshedReadiness.installed) {
|
|
114
|
+
return {
|
|
115
|
+
ok: false,
|
|
116
|
+
message: `oh-my-openagent still was not detected after the upstream installer ran. ` +
|
|
117
|
+
`Run ${refreshedReadiness.interactiveInstallCommand} manually and retry.`,
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
return { ok: true };
|
|
121
|
+
}
|
|
60
122
|
export async function runCliInstaller(args) {
|
|
61
123
|
const validation = validateNonTuiArgs(args);
|
|
62
124
|
if (!validation.valid) {
|
|
@@ -75,6 +137,11 @@ export async function runCliInstaller(args) {
|
|
|
75
137
|
printError("Legacy config found at project root wunderkind.config.jsonc — move it to .wunderkind/wunderkind.config.jsonc");
|
|
76
138
|
return 1;
|
|
77
139
|
}
|
|
140
|
+
const omoPreflight = validateOmoPreflightForCli();
|
|
141
|
+
if (!omoPreflight.valid) {
|
|
142
|
+
printError(omoPreflight.message ?? "oh-my-openagent must be installed before running wunderkind install --no-tui");
|
|
143
|
+
return 1;
|
|
144
|
+
}
|
|
78
145
|
const isUpdate = args.scope === "project" ? detected.projectInstalled === true : detected.globalInstalled === true;
|
|
79
146
|
printHeader(isUpdate);
|
|
80
147
|
const totalSteps = 3;
|
|
@@ -156,6 +223,11 @@ export async function runCliUpgrade(args) {
|
|
|
156
223
|
printError("Legacy config found at project root wunderkind.config.jsonc — move it to .wunderkind/wunderkind.config.jsonc");
|
|
157
224
|
return 1;
|
|
158
225
|
}
|
|
226
|
+
const omoPreflight = validateOmoPreflightForCli();
|
|
227
|
+
if (!omoPreflight.valid) {
|
|
228
|
+
printError(omoPreflight.message ?? "oh-my-openagent must be installed before running wunderkind upgrade");
|
|
229
|
+
return 1;
|
|
230
|
+
}
|
|
159
231
|
const installedInScope = args.scope === "project" ? detected.projectInstalled === true : detected.globalInstalled === true;
|
|
160
232
|
if (!installedInScope) {
|
|
161
233
|
printHeader(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-installer.js","sourceRoot":"","sources":["../../src/cli/cli-installer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B,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;AAE/D,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;IACtB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;IACvB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;IACzB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;CACxB,CAAA;AAED,MAAM,UAAU,WAAW,CAAC,QAAiB;IAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IAC5C,OAAO,CAAC,GAAG,EAAE,CAAA;IACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;IACpE,OAAO,CAAC,GAAG,EAAE,CAAA;AACf,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,KAAa,EAAE,OAAe;IACpE,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAA;AAC9D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACvD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC,CAAA;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAE,KAAc;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IACzD,MAAM,QAAQ,GACZ,IAAI,CAAC,GAAG,CACN,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAC5D,KAAK,EAAE,MAAM,IAAI,CAAC,CACnB,GAAG,CAAC,CAAA;IACP,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;IAE9C,OAAO,CAAC,GAAG,EAAE,CAAA;IACb,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YACb,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC;YACxB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAClD,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CACjB,CAAA;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAA;QAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACrF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACrD,OAAO,CAAC,GAAG,EAAE,CAAA;AACf,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAkB;IACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;AACpC,CAAC;AAYD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAiB;IACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,WAAW,CAAC,KAAK,CAAC,CAAA;QAClB,UAAU,CAAC,oBAAoB,CAAC,CAAA;QAChC,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,CAAA;QAC3C,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,SAAS,CACP,kHAAkH,CACnH,CAAA;QACD,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAA;IACtC,IAAI,kBAAkB,EAAE,EAAE,CAAC;QACzB,UAAU,CAAC,8GAA8G,CAAC,CAAA;QAC1H,OAAO,CAAC,CAAA;IACV,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAA;IAElH,WAAW,CAAC,QAAQ,CAAC,CAAA;IAErB,MAAM,UAAU,GAAG,CAAC,CAAA;IACpB,IAAI,IAAI,GAAG,CAAC,CAAA;IAEZ,MAAM,MAAM,GAAkB;QAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ;QAClD,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,IAAI,EAAE;QAClD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,QAAQ,CAAC,iBAAiB,IAAI,EAAE;QAC7E,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,IAAI,QAAQ,CAAC,mBAAmB,IAAI,EAAE;QACnF,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,eAAe,EAAE,QAAQ,CAAC,eAAe;QACzC,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;QAC/C,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;QACjD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;QAC3C,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,eAAe,EAAE,QAAQ,CAAC,eAAe;KAC1C,CAAA;IAED,SAAS,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,yCAAyC,CAAC,CAAA;IACxE,MAAM,YAAY,GAAG,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1D,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,UAAU,CAAC,WAAW,YAAY,CAAC,KAAK,EAAE,CAAC,CAAA;QAC3C,OAAO,CAAC,CAAA;IACV,CAAC;IACD,YAAY,CAAC,UAAU,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAEhH,SAAS,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,qCAAqC,CAAC,CAAA;IACpE,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC9D,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,UAAU,CAAC,WAAW,YAAY,CAAC,KAAK,EAAE,CAAC,CAAA;QAC3C,OAAO,CAAC,CAAA;IACV,CAAC;IACD,YAAY,CAAC,kBAAkB,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAErF,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5D,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAChC,UAAU,CAAC,uCAAuC,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAA;QAC7E,OAAO,CAAC,CAAA;IACV,CAAC;IACD,YAAY,CAAC,yBAAyB,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAElG,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAA;IACtD,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAClC,UAAU,CAAC,yCAAyC,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAA;QACjF,OAAO,CAAC,CAAA;IACV,CAAC;IACD,YAAY,CAAC,kCAAkC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAE7G,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5D,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAChC,UAAU,CAAC,uCAAuC,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAA;QAC7E,OAAO,CAAC,CAAA;IACV,CAAC;IACD,YAAY,CAAC,yBAAyB,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAElG,SAAS,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,+CAA+C,CAAC,CAAA;IAC9E,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAA;IAChD,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,YAAY,CAAC,wBAAwB,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC1E,CAAC;IACD,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC;QAC1B,YAAY,CAAC,gCAAgC,eAAe,CAAC,KAAK,EAAE,CAAC,CAAA;IACvE,CAAC;IAED,QAAQ,CACN;QACE,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QACtE,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE;QAClG,KAAK,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE;QAC1G,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;KACtH;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,EACb,QAAQ,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,CAC7D,CAAA;IAED,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAA;IACzH,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IACxD,OAAO,CAAC,GAAG,EAAE,CAAA;IAEb,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAiB;IACnD,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAA;IACtC,IAAI,kBAAkB,EAAE,EAAE,CAAC;QACzB,UAAU,CAAC,8GAA8G,CAAC,CAAA;QAC1H,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAA;IAC1H,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,WAAW,CAAC,KAAK,CAAC,CAAA;QAClB,UAAU,CACR,IAAI,CAAC,KAAK,KAAK,SAAS;YACtB,CAAC,CAAC,sGAAsG;YACxG,CAAC,CAAC,oGAAoG,CACzG,CAAA;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,CAAA;IAEjB,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAA;IACzC,MAAM,SAAS,GAAG,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;IAChE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS;QAChD,CAAC,CAAC;YACE,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;SAClD;QACH,CAAC,CAAC;YACE,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM;YAC3C,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;YACjD,iBAAiB,EAAE,SAAS,CAAC,iBAAiB,IAAI,QAAQ,CAAC,iBAAiB;YAC5E,mBAAmB,EAAE,SAAS,CAAC,mBAAmB,IAAI,QAAQ,CAAC,mBAAmB;SACnF,CAAA;IACL,MAAM,UAAU,GAAG;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,iBAAiB,CAAC,MAAM;QAC/C,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,iBAAiB,CAAC,QAAQ;QACrD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,iBAAiB;QAChF,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,IAAI,iBAAiB,CAAC,mBAAmB;KACvF,CAAA;IAED,MAAM,MAAM,GACV,UAAU,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM;QAC9C,UAAU,CAAC,QAAQ,KAAK,iBAAiB,CAAC,QAAQ;QAClD,UAAU,CAAC,iBAAiB,KAAK,iBAAiB,CAAC,iBAAiB;QACpE,UAAU,CAAC,mBAAmB,KAAK,iBAAiB,CAAC,mBAAmB,CAAA;IAE1E,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACzB,SAAS,CAAC,2CAA2C,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAA;QACxE,SAAS,CAAC,+CAA+C,CAAC,CAAA;QAC1D,SAAS,CAAC,2CAA2C,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAA;QACxE,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3C,SAAS,CAAC,+CAA+C,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAA;QAC9E,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3C,MAAM,cAAc,GAAkB;YACpC,GAAG,SAAS;YACZ,GAAG,QAAQ;YACX,GAAG,UAAU;SACd,CAAA;QAED,MAAM,YAAY,GAAG,qBAAqB,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAEtE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YAC1B,UAAU,CAAC,WAAW,YAAY,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3C,OAAO,CAAC,CAAA;QACV,CAAC;QAED,YAAY,CAAC,GAAG,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,YAAY,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAClJ,CAAC;IAED,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5D,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAChC,UAAU,CAAC,yCAAyC,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAA;QAC/E,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAA;IACtD,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAClC,UAAU,CAAC,2CAA2C,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAA;QACnF,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5D,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAChC,UAAU,CAAC,yCAAyC,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAA;QAC/E,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,kBAAkB,KAAK,oBAAoB,EAAE,CAAC;QAErF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxE,mBAAmB,CAAC,YAAY,CAAC,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;QAC/D,MAAM,EAAE,oBAAoB,EAAE,GAAG,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAqB,CAAA;QAC7F,MAAM,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,YAAY,CAAC,2BAA2B,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACpG,YAAY,CAAC,oCAAoC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAC/G,YAAY,CAAC,2BAA2B,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACpG,QAAQ,CACN;QACE,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACnE,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC1E,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE;QACtG,KAAK,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE;QAC9G,UAAU,CAAC,mBAAmB;YAC5B,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE;YACzF,CAAC,CAAC,EAAE;KACP;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,EACb,kBAAkB,CACnB,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli-installer.js","sourceRoot":"","sources":["../../src/cli/cli-installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ConfigMergeResult, DetectedConfig, GlobalConfig, InstallConfig, InstallScope, BaselineConfigKey, PluginVersionInfo, ProjectConfig } from "../types.js";
|
|
1
|
+
import type { ConfigMergeResult, DetectedConfig, GlobalConfig, InstallConfig, InstallScope, BaselineConfigKey, OmoInstallReadiness, OmoFreshnessSummary, PluginVersionInfo, ProjectConfig } from "../types.js";
|
|
2
2
|
interface ConfigManagerPathOverride {
|
|
3
3
|
cwd?: string;
|
|
4
4
|
home?: string;
|
|
@@ -16,6 +16,8 @@ export declare function resolveOpenCodeConfigPath(scope: InstallScope): {
|
|
|
16
16
|
export declare function detectPluginVersionInfo(packageName: string): PluginVersionInfo;
|
|
17
17
|
export declare function detectWunderkindVersionInfo(): PluginVersionInfo;
|
|
18
18
|
export declare function detectOmoVersionInfo(): PluginVersionInfo;
|
|
19
|
+
export declare function detectOmoInstallReadiness(): OmoInstallReadiness;
|
|
20
|
+
export declare function summarizeOmoFreshness(versionInfo: PluginVersionInfo): OmoFreshnessSummary;
|
|
19
21
|
export interface ConfigSourceMarker {
|
|
20
22
|
marker: "●" | "○";
|
|
21
23
|
sourceLabel: "project override" | "inherited default";
|