@osovv/vv-opencode 0.17.2 → 0.17.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/README.md +123 -332
- package/dist/cli.js +7 -5
- package/dist/cli.js.map +1 -1
- package/dist/commands/completion.js +14 -12
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/patch-provider.d.ts +59 -0
- package/dist/commands/patch-provider.js +101 -0
- package/dist/commands/patch-provider.js.map +1 -0
- package/dist/lib/opencode.d.ts +2 -0
- package/dist/lib/opencode.js +59 -3
- package/dist/lib/opencode.js.map +1 -1
- package/dist/lib/vvoc-config.js +3 -3
- package/dist/lib/vvoc-config.js.map +1 -1
- package/package.json +1 -1
- package/schemas/vvoc/v2.json +1 -1
- package/dist/commands/path-provider.d.ts +0 -31
- package/dist/commands/path-provider.js +0 -77
- package/dist/commands/path-provider.js.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
// FILE: src/cli.ts
|
|
3
|
-
// VERSION: 0.2.
|
|
3
|
+
// VERSION: 0.2.8
|
|
4
4
|
// START_MODULE_CONTRACT
|
|
5
5
|
// PURPOSE: Assemble and run the vvoc CLI entrypoint.
|
|
6
6
|
// SCOPE: Package version lookup, top-level command registration, and main command execution.
|
|
7
|
-
//
|
|
7
|
+
// INPUTS: Process argv plus command metadata from registered subcommands.
|
|
8
|
+
// OUTPUTS: The executed vvoc command tree.
|
|
9
|
+
// DEPENDS: [citty, src/commands/install.ts, src/commands/preset.ts, src/commands/sync.ts, src/commands/status.ts, src/commands/doctor.ts, src/commands/guardian.ts, src/commands/patch-provider.ts, src/commands/version.ts, src/lib/package.ts]
|
|
8
10
|
// LINKS: [M-CLI-COMMANDS]
|
|
9
11
|
// ROLE: SCRIPT
|
|
10
12
|
// MAP_MODE: LOCALS
|
|
@@ -16,7 +18,7 @@
|
|
|
16
18
|
// END_MODULE_MAP
|
|
17
19
|
//
|
|
18
20
|
// START_CHANGE_SUMMARY
|
|
19
|
-
// LAST_CHANGE: [v0.2.
|
|
21
|
+
// LAST_CHANGE: [v0.2.8 - Renamed the OpenCode patch command to patch-provider.]
|
|
20
22
|
// END_CHANGE_SUMMARY
|
|
21
23
|
import { defineCommand, runMain } from "citty";
|
|
22
24
|
import agent from "./commands/agent.js";
|
|
@@ -26,7 +28,7 @@ import doctor from "./commands/doctor.js";
|
|
|
26
28
|
import guardian from "./commands/guardian.js";
|
|
27
29
|
import init from "./commands/init.js";
|
|
28
30
|
import install from "./commands/install.js";
|
|
29
|
-
import
|
|
31
|
+
import patchProvider from "./commands/patch-provider.js";
|
|
30
32
|
import preset from "./commands/preset.js";
|
|
31
33
|
import plugin from "./commands/plugin.js";
|
|
32
34
|
import status from "./commands/status.js";
|
|
@@ -50,7 +52,7 @@ const main = defineCommand({
|
|
|
50
52
|
guardian,
|
|
51
53
|
init,
|
|
52
54
|
install,
|
|
53
|
-
"
|
|
55
|
+
"patch-provider": patchProvider,
|
|
54
56
|
preset,
|
|
55
57
|
plugin,
|
|
56
58
|
status,
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,mBAAmB;AACnB,iBAAiB;AACjB,wBAAwB;AACxB,uDAAuD;AACvD,+FAA+F;AAC/F,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,mBAAmB;AACnB,iBAAiB;AACjB,wBAAwB;AACxB,uDAAuD;AACvD,+FAA+F;AAC/F,4EAA4E;AAC5E,6CAA6C;AAC7C,mPAAmP;AACnP,4BAA4B;AAC5B,iBAAiB;AACjB,qBAAqB;AACrB,sBAAsB;AACtB,EAAE;AACF,mBAAmB;AACnB,oEAAoE;AACpE,wCAAwC;AACxC,iBAAiB;AACjB,EAAE;AACF,uBAAuB;AACvB,kFAAkF;AAClF,qBAAqB;AAErB,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,IAAI,MAAM,oBAAoB,CAAC;AACtC,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,IAAI,MAAM,oBAAoB,CAAC;AACtC,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,iCAAiC;AACjC,MAAM,cAAc,GAAG,MAAM,iBAAiB,EAAE,CAAC;AAEjD,MAAM,IAAI,GAAG,aAAa,CAAC;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,cAAc;QACvB,WAAW,EAAE,oDAAoD;KAClE;IACD,WAAW,EAAE;QACX,KAAK;QACL,UAAU;QACV,MAAM;QACN,MAAM;QACN,QAAQ;QACR,IAAI;QACJ,OAAO;QACP,gBAAgB,EAAE,aAAa;QAC/B,MAAM;QACN,MAAM;QACN,MAAM;QACN,IAAI;QACJ,OAAO;QACP,OAAO;KACR;CACF,CAAC,CAAC;AACH,+BAA+B;AAE/B,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
// FILE: src/commands/completion.ts
|
|
2
|
-
// VERSION: 0.5.
|
|
2
|
+
// VERSION: 0.5.9
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
4
|
// PURPOSE: Auto-detect shell and install vvoc completions idempotently.
|
|
5
|
-
// SCOPE: Shell detection, completion file writing, nested command and preset completion generation for config/plugin/
|
|
5
|
+
// SCOPE: Shell detection, completion file writing, nested command and preset completion generation for config/plugin/patch-provider/preset and the `agent set|unset <target-id>` flow, and rc file patching.
|
|
6
|
+
// INPUTS: Current shell environment plus built-in vvoc command and preset names.
|
|
7
|
+
// OUTPUTS: Shell-specific completion scripts and idempotent rc/config patches.
|
|
6
8
|
// DEPENDS: [citty, node:fs/promises, node:path, node:os]
|
|
7
9
|
// LINKS: [M-CLI-COMPLETION, M-CLI-COMMANDS]
|
|
8
10
|
// ROLE: RUNTIME
|
|
@@ -18,7 +20,7 @@
|
|
|
18
20
|
// END_MODULE_MAP
|
|
19
21
|
//
|
|
20
22
|
// START_CHANGE_SUMMARY
|
|
21
|
-
// LAST_CHANGE: [v0.5.
|
|
23
|
+
// LAST_CHANGE: [v0.5.9 - Renamed the patch command completions and added the zai patch preset.]
|
|
22
24
|
// END_CHANGE_SUMMARY
|
|
23
25
|
import { defineCommand } from "citty";
|
|
24
26
|
import { appendFile, mkdir, readFile, writeFile } from "node:fs/promises";
|
|
@@ -33,7 +35,7 @@ const VVOC_TOP_LEVEL_COMMANDS = [
|
|
|
33
35
|
"guardian",
|
|
34
36
|
"init",
|
|
35
37
|
"install",
|
|
36
|
-
"
|
|
38
|
+
"patch-provider",
|
|
37
39
|
"preset",
|
|
38
40
|
"plugin",
|
|
39
41
|
"status",
|
|
@@ -42,7 +44,7 @@ const VVOC_TOP_LEVEL_COMMANDS = [
|
|
|
42
44
|
"version",
|
|
43
45
|
];
|
|
44
46
|
const VVOC_CONFIG_COMMANDS = ["validate"];
|
|
45
|
-
const
|
|
47
|
+
const VVOC_PATCH_PROVIDER_PRESETS = ["stepfun-ai", "zai"];
|
|
46
48
|
const VVOC_PRESET_COMMANDS = ["list", "show"];
|
|
47
49
|
const VVOC_PRESET_NAMES = ["openai", "zai", "minimax"];
|
|
48
50
|
const VVOC_PLUGIN_COMMANDS = ["list"];
|
|
@@ -145,7 +147,7 @@ async function installFishCompletion() {
|
|
|
145
147
|
export function generateBashCompletion() {
|
|
146
148
|
const topLevelCommands = VVOC_TOP_LEVEL_COMMANDS.join(" ");
|
|
147
149
|
const configCommands = VVOC_CONFIG_COMMANDS.join(" ");
|
|
148
|
-
const
|
|
150
|
+
const patchProviderPresets = VVOC_PATCH_PROVIDER_PRESETS.join(" ");
|
|
149
151
|
const presetCommands = [...VVOC_PRESET_COMMANDS, ...VVOC_PRESET_NAMES].join(" ");
|
|
150
152
|
const presetNames = VVOC_PRESET_NAMES.join(" ");
|
|
151
153
|
const pluginCommands = VVOC_PLUGIN_COMMANDS.join(" ");
|
|
@@ -168,8 +170,8 @@ export function generateBashCompletion() {
|
|
|
168
170
|
" config)\n" +
|
|
169
171
|
" _vvoc_config_commands\n" +
|
|
170
172
|
" ;;\n" +
|
|
171
|
-
"
|
|
172
|
-
"
|
|
173
|
+
" patch-provider)\n" +
|
|
174
|
+
" _vvoc_patch_provider_presets\n" +
|
|
173
175
|
" ;;\n" +
|
|
174
176
|
" preset)\n" +
|
|
175
177
|
" _vvoc_preset_commands\n" +
|
|
@@ -206,9 +208,9 @@ export function generateBashCompletion() {
|
|
|
206
208
|
' COMPREPLY=($(compgen -W "$commands" -- "$cur"))\n' +
|
|
207
209
|
"}\n" +
|
|
208
210
|
"\n" +
|
|
209
|
-
"
|
|
211
|
+
"_vvoc_patch_provider_presets() {\n" +
|
|
210
212
|
' local commands="' +
|
|
211
|
-
|
|
213
|
+
patchProviderPresets +
|
|
212
214
|
'"\n' +
|
|
213
215
|
' COMPREPLY=($(compgen -W "$commands" -- "$cur"))\n' +
|
|
214
216
|
"}\n" +
|
|
@@ -262,7 +264,7 @@ export function generateZshCompletion() {
|
|
|
262
264
|
for (const cmd of VVOC_TOP_LEVEL_COMMANDS) {
|
|
263
265
|
lines.push(' "' + cmd + '"');
|
|
264
266
|
}
|
|
265
|
-
lines.push(" )", "", ' _arguments -C "1: :(' + VVOC_TOP_LEVEL_COMMANDS.join(" ") + ')" "*::arg:->args"', "", " case $line[1] in", " agent)", " _vvoc_agent_cmds", " ;;", " config)", " _vvoc_config_cmds", " ;;", "
|
|
267
|
+
lines.push(" )", "", ' _arguments -C "1: :(' + VVOC_TOP_LEVEL_COMMANDS.join(" ") + ')" "*::arg:->args"', "", " case $line[1] in", " agent)", " _vvoc_agent_cmds", " ;;", " config)", " _vvoc_config_cmds", " ;;", " patch-provider)", " _vvoc_patch_provider_cmds", " ;;", " preset)", " _vvoc_preset_cmds", " ;;", " plugin)", " _vvoc_plugin_cmds", " ;;", " esac", "}", "", "_vvoc_config_cmds() {", " local -a config_commands", " config_commands=(" + VVOC_CONFIG_COMMANDS.join(" ") + ")", ' _arguments "1: :(' + VVOC_CONFIG_COMMANDS.join(" ") + ')"', "}", "", "_vvoc_patch_provider_cmds() {", ' _arguments "1: :(' + VVOC_PATCH_PROVIDER_PRESETS.join(" ") + ')"', "}", "", "_vvoc_preset_cmds() {", " case $words[2] in", " show)", ' _arguments "1: :(' + VVOC_PRESET_NAMES.join(" ") + ')"', " ;;", " *)", ' _arguments "1: :(' + [...VVOC_PRESET_COMMANDS, ...VVOC_PRESET_NAMES].join(" ") + ')"', " ;;", " esac", "}", "", "_vvoc_agent_cmds() {", " case $words[2] in", " set|unset)", ' _arguments "1: :(' + VVOC_AGENT_TARGETS.join(" ") + ')"', " ;;", " *)", ' _arguments "1: :(' + VVOC_AGENT_COMMANDS.join(" ") + ')"', " ;;", " esac", "}", "", "_vvoc_plugin_cmds() {", " local -a plugin_commands", " plugin_commands=(" + VVOC_PLUGIN_COMMANDS.join(" ") + ")", ' _arguments "1: :(' + VVOC_PLUGIN_COMMANDS.join(" ") + ')"', "}", "", "compdef _vvoc vvoc");
|
|
266
268
|
return lines.join("\n") + "\n";
|
|
267
269
|
}
|
|
268
270
|
export function generateFishCompletion() {
|
|
@@ -270,7 +272,7 @@ export function generateFishCompletion() {
|
|
|
270
272
|
for (const cmd of VVOC_TOP_LEVEL_COMMANDS) {
|
|
271
273
|
lines.push(" echo " + cmd);
|
|
272
274
|
}
|
|
273
|
-
lines.push("end", "", "function __vvoc_config_cmds", " echo " + VVOC_CONFIG_COMMANDS.join(" "), "end", "", "function
|
|
275
|
+
lines.push("end", "", "function __vvoc_config_cmds", " echo " + VVOC_CONFIG_COMMANDS.join(" "), "end", "", "function __vvoc_patch_provider_cmds", " echo " + VVOC_PATCH_PROVIDER_PRESETS.join(" "), "end", "", "function __vvoc_preset_cmds", " echo " + [...VVOC_PRESET_COMMANDS, ...VVOC_PRESET_NAMES].join(" "), "end", "", "function __vvoc_preset_names", " echo " + VVOC_PRESET_NAMES.join(" "), "end", "", "function __vvoc_agent_cmds", " echo " + VVOC_AGENT_COMMANDS.join(" "), "end", "", "function __vvoc_agent_target_cmds", " echo " + VVOC_AGENT_TARGETS.join(" "), "end", "", "function __vvoc_plugin_cmds", " echo " + VVOC_PLUGIN_COMMANDS.join(" "), "end", "", 'complete -c vvoc -f -a "(__vvoc_commands)"', 'complete -c vvoc -n "__fish_seen_subcommand_from agent; and not __fish_seen_subcommand_from set unset list" -f -a "(__vvoc_agent_cmds)"', 'complete -c vvoc -n "__fish_seen_subcommand_from agent; and __fish_seen_subcommand_from set unset" -f -a "(__vvoc_agent_target_cmds)"', 'complete -c vvoc -n "__fish_seen_subcommand_from config" -f -a "(__vvoc_config_cmds)"', 'complete -c vvoc -n "__fish_seen_subcommand_from patch-provider" -f -a "(__vvoc_patch_provider_cmds)"', 'complete -c vvoc -n "__fish_seen_subcommand_from preset; and not __fish_seen_subcommand_from list show openai zai" -f -a "(__vvoc_preset_cmds)"', 'complete -c vvoc -n "__fish_seen_subcommand_from preset; and __fish_seen_subcommand_from show" -f -a "(__vvoc_preset_names)"', 'complete -c vvoc -n "__fish_seen_subcommand_from plugin" -f -a "(__vvoc_plugin_cmds)"');
|
|
274
276
|
return lines.join("\n") + "\n";
|
|
275
277
|
}
|
|
276
278
|
//# sourceMappingURL=completion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,iBAAiB;AACjB,wBAAwB;AACxB,0EAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
type ProviderBaseUrlPatchPreset = {
|
|
2
|
+
kind: "provider-base-url";
|
|
3
|
+
providerID: string;
|
|
4
|
+
baseURL: string;
|
|
5
|
+
summary: string;
|
|
6
|
+
};
|
|
7
|
+
type ProviderObjectPatchPreset = {
|
|
8
|
+
kind: "provider-object";
|
|
9
|
+
providerID: string;
|
|
10
|
+
value: Record<string, unknown>;
|
|
11
|
+
summary: string;
|
|
12
|
+
};
|
|
13
|
+
type PatchPreset = ProviderBaseUrlPatchPreset | ProviderObjectPatchPreset;
|
|
14
|
+
declare const PATCH_PROVIDER_PRESETS: {
|
|
15
|
+
readonly "stepfun-ai": {
|
|
16
|
+
readonly kind: "provider-base-url";
|
|
17
|
+
readonly providerID: "stepfun";
|
|
18
|
+
readonly baseURL: "https://api.stepfun.ai/v1";
|
|
19
|
+
readonly summary: "provider.stepfun.options.baseURL=https://api.stepfun.ai/v1";
|
|
20
|
+
};
|
|
21
|
+
readonly zai: {
|
|
22
|
+
readonly kind: "provider-object";
|
|
23
|
+
readonly providerID: "zai-coding-plan";
|
|
24
|
+
readonly value: {
|
|
25
|
+
readonly models: {
|
|
26
|
+
readonly "glm-4.5-airx": {
|
|
27
|
+
readonly "name: glm-4.5-airx": {
|
|
28
|
+
readonly limit: {
|
|
29
|
+
readonly context: 128000;
|
|
30
|
+
readonly output: 96000;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
readonly summary: "provider.zai-coding-plan.models.glm-4.5-airx patched";
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
export type PatchProviderPresetName = keyof typeof PATCH_PROVIDER_PRESETS;
|
|
40
|
+
export declare function resolvePatchProviderPreset(name: string): PatchPreset;
|
|
41
|
+
export declare function applyPatchProviderPreset(presetName: string, options?: {
|
|
42
|
+
cwd?: string;
|
|
43
|
+
configDir?: string;
|
|
44
|
+
}): Promise<{
|
|
45
|
+
preset: PatchPreset;
|
|
46
|
+
result: import("../lib/opencode.js").WriteResult;
|
|
47
|
+
}>;
|
|
48
|
+
declare const _default: import("citty").CommandDef<{
|
|
49
|
+
readonly preset: {
|
|
50
|
+
type: "positional";
|
|
51
|
+
required: boolean;
|
|
52
|
+
description: string;
|
|
53
|
+
};
|
|
54
|
+
readonly "config-dir": {
|
|
55
|
+
type: "string";
|
|
56
|
+
description: string;
|
|
57
|
+
};
|
|
58
|
+
}>;
|
|
59
|
+
export default _default;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
// FILE: src/commands/patch-provider.ts
|
|
2
|
+
// VERSION: 0.2.1
|
|
3
|
+
// START_MODULE_CONTRACT
|
|
4
|
+
// PURPOSE: Apply global OpenCode patch presets.
|
|
5
|
+
// SCOPE: Patch preset validation, global OpenCode config path resolution, provider/baseURL patch writes, provider-specific object patch writes under `provider`, and CLI output.
|
|
6
|
+
// INPUTS: CLI preset name plus optional config directory override.
|
|
7
|
+
// OUTPUTS: Global OpenCode config mutations and a one-line write summary.
|
|
8
|
+
// DEPENDS: [citty, src/lib/opencode.ts]
|
|
9
|
+
// LINKS: [M-CLI-PATCH-PROVIDER, M-CLI-CONFIG]
|
|
10
|
+
// ROLE: RUNTIME
|
|
11
|
+
// MAP_MODE: EXPORTS
|
|
12
|
+
// END_MODULE_CONTRACT
|
|
13
|
+
//
|
|
14
|
+
// START_MODULE_MAP
|
|
15
|
+
// default - PatchProvider command definition for vvoc.
|
|
16
|
+
// resolvePatchProviderPreset - Validate an OpenCode patch preset name and return its config.
|
|
17
|
+
// applyPatchProviderPreset - Apply the selected OpenCode patch preset to global OpenCode config.
|
|
18
|
+
// END_MODULE_MAP
|
|
19
|
+
//
|
|
20
|
+
// START_CHANGE_SUMMARY
|
|
21
|
+
// LAST_CHANGE: [v0.2.0 - Renamed the OpenCode patch command and added the zai preset.]
|
|
22
|
+
// END_CHANGE_SUMMARY
|
|
23
|
+
import { defineCommand } from "citty";
|
|
24
|
+
import { describeWriteResult, resolvePaths, writeOpenCodeProviderObject, writeProviderBaseUrl, } from "../lib/opencode.js";
|
|
25
|
+
const ZAI_CODING_PLAN_PATCH = {
|
|
26
|
+
models: {
|
|
27
|
+
"glm-4.5-airx": {
|
|
28
|
+
"name: glm-4.5-airx": {
|
|
29
|
+
limit: {
|
|
30
|
+
context: 128000,
|
|
31
|
+
output: 96000,
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
const PATCH_PROVIDER_PRESETS = {
|
|
38
|
+
"stepfun-ai": {
|
|
39
|
+
kind: "provider-base-url",
|
|
40
|
+
providerID: "stepfun",
|
|
41
|
+
baseURL: "https://api.stepfun.ai/v1",
|
|
42
|
+
summary: "provider.stepfun.options.baseURL=https://api.stepfun.ai/v1",
|
|
43
|
+
},
|
|
44
|
+
zai: {
|
|
45
|
+
kind: "provider-object",
|
|
46
|
+
providerID: "zai-coding-plan",
|
|
47
|
+
value: ZAI_CODING_PLAN_PATCH,
|
|
48
|
+
summary: "provider.zai-coding-plan.models.glm-4.5-airx patched",
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
const presetArg = {
|
|
52
|
+
type: "positional",
|
|
53
|
+
required: true,
|
|
54
|
+
description: "OpenCode patch preset to apply.",
|
|
55
|
+
};
|
|
56
|
+
const configDirArg = {
|
|
57
|
+
type: "string",
|
|
58
|
+
description: "Override the global config home used for opencode/.",
|
|
59
|
+
};
|
|
60
|
+
// START_BLOCK_PROVIDER_PRESET_RESOLUTION
|
|
61
|
+
export function resolvePatchProviderPreset(name) {
|
|
62
|
+
const presetName = name.trim();
|
|
63
|
+
if (presetName in PATCH_PROVIDER_PRESETS) {
|
|
64
|
+
return PATCH_PROVIDER_PRESETS[presetName];
|
|
65
|
+
}
|
|
66
|
+
const supported = Object.keys(PATCH_PROVIDER_PRESETS).join(", ");
|
|
67
|
+
throw new Error(`Unsupported OpenCode patch preset: ${name}. Supported presets: ${supported}`);
|
|
68
|
+
}
|
|
69
|
+
export async function applyPatchProviderPreset(presetName, options = {}) {
|
|
70
|
+
const preset = resolvePatchProviderPreset(presetName);
|
|
71
|
+
const paths = await resolvePaths({
|
|
72
|
+
scope: "global",
|
|
73
|
+
cwd: options.cwd ?? process.cwd(),
|
|
74
|
+
configDir: options.configDir,
|
|
75
|
+
});
|
|
76
|
+
const result = preset.kind === "provider-base-url"
|
|
77
|
+
? await writeProviderBaseUrl(paths, preset.providerID, preset.baseURL)
|
|
78
|
+
: await writeOpenCodeProviderObject(paths, preset.providerID, preset.value);
|
|
79
|
+
return { preset, result };
|
|
80
|
+
}
|
|
81
|
+
// END_BLOCK_PROVIDER_PRESET_RESOLUTION
|
|
82
|
+
export default defineCommand({
|
|
83
|
+
meta: {
|
|
84
|
+
name: "patch-provider",
|
|
85
|
+
description: "Apply a global OpenCode patch preset.",
|
|
86
|
+
},
|
|
87
|
+
args: {
|
|
88
|
+
preset: presetArg,
|
|
89
|
+
"config-dir": configDirArg,
|
|
90
|
+
},
|
|
91
|
+
async run({ args }) {
|
|
92
|
+
const presetName = typeof args.preset === "string" ? args.preset : "";
|
|
93
|
+
const configDir = typeof args["config-dir"] === "string" ? args["config-dir"] : undefined;
|
|
94
|
+
const { preset, result } = await applyPatchProviderPreset(presetName, {
|
|
95
|
+
cwd: process.cwd(),
|
|
96
|
+
configDir,
|
|
97
|
+
});
|
|
98
|
+
console.log(`${describeWriteResult(result)} (${preset.summary})`);
|
|
99
|
+
},
|
|
100
|
+
});
|
|
101
|
+
//# sourceMappingURL=patch-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"patch-provider.js","sourceRoot":"","sources":["../../src/commands/patch-provider.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/opencode.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { PACKAGE_NAME } from "./package.js";
|
|
|
4
4
|
export declare const CLI_NAME = "vvoc";
|
|
5
5
|
export { PACKAGE_NAME };
|
|
6
6
|
export declare const OPENCODE_SCHEMA_URL = "https://opencode.ai/config.json";
|
|
7
|
+
type JsonObject = Record<string, unknown>;
|
|
7
8
|
export type OpenCodeDefaultModelKey = "model" | "small_model";
|
|
8
9
|
export type Scope = "global" | "project";
|
|
9
10
|
export type ResolvedPaths = {
|
|
@@ -80,6 +81,7 @@ export declare function writeOpenCodeDefaultModel(paths: Pick<ResolvedPaths, "op
|
|
|
80
81
|
model?: string;
|
|
81
82
|
ensureEntry: boolean;
|
|
82
83
|
}): Promise<WriteResult>;
|
|
84
|
+
export declare function writeOpenCodeProviderObject(paths: Pick<ResolvedPaths, "opencodeConfigPath">, providerID: string, value: JsonObject): Promise<WriteResult>;
|
|
83
85
|
export declare function writeManagedAgentModel(paths: Pick<ResolvedPaths, "managedAgentsDirPath" | "opencodeConfigPath">, agentName: ManagedOpenCodeAgentName, options: {
|
|
84
86
|
model?: string;
|
|
85
87
|
ensureEntry: boolean;
|
package/dist/lib/opencode.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
// FILE: src/lib/opencode.ts
|
|
2
|
-
// VERSION: 0.8.
|
|
2
|
+
// VERSION: 0.8.2
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
4
|
// PURPOSE: Manage OpenCode config mutation, provider patching, and the canonical vvoc.json config file.
|
|
5
|
-
// SCOPE: Scope-aware path resolution, pinned plugin writes, top-level OpenCode model/default writes, provider baseURL patching, managed OpenCode agent registration/model overrides, managed agent prompt sync, version-aware canonical vvoc config rendering and sync, and installation inspection.
|
|
5
|
+
// SCOPE: Scope-aware path resolution, pinned plugin writes, top-level OpenCode model/default writes, provider baseURL patching, provider object patching, managed OpenCode agent registration/model overrides, managed agent prompt sync, version-aware canonical vvoc config rendering and sync, and installation inspection.
|
|
6
|
+
// INPUTS: Scope-aware filesystem paths, current OpenCode/vvoc config text, and validated config override values.
|
|
7
|
+
// OUTPUTS: Normalized OpenCode/vvoc config text, persisted config writes, and installation inspection snapshots.
|
|
6
8
|
// DEPENDS: [jsonc-parser, node:fs/promises, node:path, src/lib/managed-agents.ts, src/lib/package.ts, src/lib/vvoc-config.ts, src/lib/vvoc-paths.ts]
|
|
7
9
|
// LINKS: [M-CLI-CONFIG]
|
|
8
10
|
// ROLE: RUNTIME
|
|
@@ -22,6 +24,7 @@
|
|
|
22
24
|
// ensurePackageConfigText - Ensures OpenCode config contains the pinned vvoc plugin specifier.
|
|
23
25
|
// readOpenCodeDefaultModel - Reads a top-level OpenCode model or small_model override.
|
|
24
26
|
// writeOpenCodeDefaultModel - Writes or removes a top-level OpenCode model or small_model override.
|
|
27
|
+
// writeOpenCodeProviderObject - Writes or merges a provider.<id> object override.
|
|
25
28
|
// ensureProviderBaseUrlConfigText - Ensures OpenCode config contains the requested provider options.baseURL override.
|
|
26
29
|
// ensureManagedAgentRegistrationsConfigText - Ensures OpenCode config contains the vvoc-managed OpenCode agent registrations.
|
|
27
30
|
// readVvocConfig - Loads the canonical vvoc.json document when present.
|
|
@@ -43,7 +46,7 @@
|
|
|
43
46
|
// END_MODULE_MAP
|
|
44
47
|
//
|
|
45
48
|
// START_CHANGE_SUMMARY
|
|
46
|
-
// LAST_CHANGE: [v0.8.
|
|
49
|
+
// LAST_CHANGE: [v0.8.2 - Added a reusable provider object writer for patch-provider presets.]
|
|
47
50
|
// END_CHANGE_SUMMARY
|
|
48
51
|
import { applyEdits, format, modify, parse } from "jsonc-parser";
|
|
49
52
|
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
@@ -280,6 +283,18 @@ export async function writeOpenCodeDefaultModel(paths, key, options) {
|
|
|
280
283
|
path: paths.opencodeConfigPath,
|
|
281
284
|
};
|
|
282
285
|
}
|
|
286
|
+
export async function writeOpenCodeProviderObject(paths, providerID, value) {
|
|
287
|
+
const currentText = await readOptionalText(paths.opencodeConfigPath);
|
|
288
|
+
const nextText = ensureProviderObjectConfigText(currentText, providerID, value);
|
|
289
|
+
if ((currentText ?? "") === nextText) {
|
|
290
|
+
return { action: "kept", path: paths.opencodeConfigPath };
|
|
291
|
+
}
|
|
292
|
+
await writeText(paths.opencodeConfigPath, nextText);
|
|
293
|
+
return {
|
|
294
|
+
action: currentText ? "updated" : "created",
|
|
295
|
+
path: paths.opencodeConfigPath,
|
|
296
|
+
};
|
|
297
|
+
}
|
|
283
298
|
export async function writeManagedAgentModel(paths, agentName, options) {
|
|
284
299
|
const currentText = await readOptionalText(paths.opencodeConfigPath);
|
|
285
300
|
if (!currentText && !options.ensureEntry) {
|
|
@@ -685,6 +700,33 @@ function ensureOpenCodeConfigText(text) {
|
|
|
685
700
|
}
|
|
686
701
|
return ensureTrailingNewline(applyEdits(nextText, format(nextText, undefined, JSON_FORMAT)));
|
|
687
702
|
}
|
|
703
|
+
function ensureProviderObjectConfigText(text, providerID, value) {
|
|
704
|
+
if (!text?.trim()) {
|
|
705
|
+
return renderJson({
|
|
706
|
+
$schema: OPENCODE_SCHEMA_URL,
|
|
707
|
+
provider: {
|
|
708
|
+
[providerID]: value,
|
|
709
|
+
},
|
|
710
|
+
});
|
|
711
|
+
}
|
|
712
|
+
const document = parseObjectDocument(text, "OpenCode config");
|
|
713
|
+
const currentProviders = readProviderMap(document, "OpenCode config");
|
|
714
|
+
const currentValue = currentProviders[providerID];
|
|
715
|
+
const nextValue = currentValue ? mergeJsonObjects(currentValue, value) : value;
|
|
716
|
+
let nextText = text;
|
|
717
|
+
if (!Object.hasOwn(document, "$schema")) {
|
|
718
|
+
nextText = applyEdits(nextText, modify(nextText, ["$schema"], OPENCODE_SCHEMA_URL, {
|
|
719
|
+
formattingOptions: JSON_FORMAT,
|
|
720
|
+
getInsertionIndex: () => 0,
|
|
721
|
+
}));
|
|
722
|
+
}
|
|
723
|
+
if (JSON.stringify(currentValue) !== JSON.stringify(nextValue)) {
|
|
724
|
+
nextText = applyEdits(nextText, modify(nextText, ["provider", providerID], nextValue, {
|
|
725
|
+
formattingOptions: JSON_FORMAT,
|
|
726
|
+
}));
|
|
727
|
+
}
|
|
728
|
+
return ensureTrailingNewline(applyEdits(nextText, format(nextText, undefined, JSON_FORMAT)));
|
|
729
|
+
}
|
|
688
730
|
function updateTopLevelStringFieldText(text, key, value) {
|
|
689
731
|
const nextText = applyEdits(text, modify(text, [key], value, {
|
|
690
732
|
formattingOptions: JSON_FORMAT,
|
|
@@ -698,6 +740,20 @@ function readNonEmptyString(value, label) {
|
|
|
698
740
|
}
|
|
699
741
|
return value.trim();
|
|
700
742
|
}
|
|
743
|
+
function isJsonObject(value) {
|
|
744
|
+
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
745
|
+
}
|
|
746
|
+
function mergeJsonObjects(current, patch) {
|
|
747
|
+
const merged = { ...current };
|
|
748
|
+
for (const [key, patchValue] of Object.entries(patch)) {
|
|
749
|
+
const currentValue = merged[key];
|
|
750
|
+
merged[key] =
|
|
751
|
+
isJsonObject(currentValue) && isJsonObject(patchValue)
|
|
752
|
+
? mergeJsonObjects(currentValue, patchValue)
|
|
753
|
+
: patchValue;
|
|
754
|
+
}
|
|
755
|
+
return merged;
|
|
756
|
+
}
|
|
701
757
|
function readOptionalObject(document, key, label) {
|
|
702
758
|
const value = document[key];
|
|
703
759
|
if (value === undefined) {
|
package/dist/lib/opencode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../src/lib/opencode.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../src/lib/opencode.ts"],"names":[],"mappings":"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"}
|