@osovv/vv-opencode 1.3.6-rc.8 → 1.3.7
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/CHANGELOG.md +16 -0
- package/README.md +2 -2
- package/dist/lib/env-substitution.d.ts +16 -0
- package/dist/lib/env-substitution.js +49 -0
- package/dist/lib/env-substitution.js.map +1 -0
- package/dist/lib/vvoc-config.d.ts +2 -0
- package/dist/lib/vvoc-config.js +7 -2
- package/dist/lib/vvoc-config.js.map +1 -1
- package/dist/plugins/peak-hours/index.d.ts +8 -9
- package/dist/plugins/peak-hours/index.js +11 -63
- package/dist/plugins/peak-hours/index.js.map +1 -1
- package/dist/plugins/secrets-redaction/config.d.ts +6 -2
- package/dist/plugins/secrets-redaction/config.js +19 -15
- package/dist/plugins/secrets-redaction/config.js.map +1 -1
- package/dist/plugins/web-tools/config.js +47 -16
- package/dist/plugins/web-tools/config.js.map +1 -1
- package/package.json +1 -1
- package/schemas/vvoc/v3.json +5 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
## <small>1.3.7 (2026-09-09)</small>
|
|
2
|
+
|
|
3
|
+
### Summary
|
|
4
|
+
|
|
5
|
+
Release 1.3.7 fixes environment variable handling for web provider API credentials. Previously, ${VAR} placeholders in the web.search.apiKey or web.fetch.apiKey config values were passed to providers as literal strings, causing authentication failures even when the referenced environment variable contained a valid key. Configured apiKey values now support ${VAR} substitution resolved from the OpenCode process environment at startup, with canonical variables such as ZAI_API_KEY still taking precedence over config values, and a safe startup warning is emitted whenever a placeholder references an unset or empty variable. The new shared substitution helper also feeds the secrets-redaction plugin, so redaction rules are built from the resolved real key value rather than the placeholder text, meaning the actual credential is protected in provider-bound message flows instead of just the literal placeholder.
|
|
6
|
+
|
|
7
|
+
* fix(web-tools): resolve ${VAR} env placeholders in web apiKey credentials ([f9ac6ee](https://github.com/osovv/vv-opencode/commit/f9ac6ee))
|
|
8
|
+
|
|
9
|
+
## <small>1.3.6 (2026-09-02)</small>
|
|
10
|
+
|
|
11
|
+
### Summary
|
|
12
|
+
|
|
13
|
+
This release fixes the peak-hours plugin so its default soft mode no longer injects a cost notice into the system prompt. Previously, requests made during configured peak windows had a soft notice appended to the system prompt to warn about elevated pricing; now soft mode is fully pass-through so the plugin never mutates messages or their system prompts. Users still see the persistent orange TUI banner with the peak window, elevated-pricing warning, and off-peak provider suggestions, and the hard-block behavior that rejects peak-hour requests with a clear error remains unchanged. The result keeps system prompts clean and untouched during peak hours while keeping peak-cost awareness visible in the interface.
|
|
14
|
+
|
|
15
|
+
* fix(peak-hours): stop injecting the soft notice into the system prompt ([d82f99b](https://github.com/osovv/vv-opencode/commit/d82f99b))
|
|
16
|
+
|
|
1
17
|
## <small>1.3.6-rc.8 (2026-08-29)</small>
|
|
2
18
|
|
|
3
19
|
### Summary
|
package/README.md
CHANGED
|
@@ -513,7 +513,7 @@ Several providers (DeepSeek, Z.AI, Qwen) bill higher rates during daily or weekd
|
|
|
513
513
|
|
|
514
514
|
Behavior per mode:
|
|
515
515
|
|
|
516
|
-
- **soft** (default): the message goes through
|
|
516
|
+
- **soft** (default): the message goes through and the TUI shows a persistent orange banner in the bottom slot: `⚠ PEAK deepseek until 10:00 UTC · elevated pricing · off-peak now: z-ai, qwen`.
|
|
517
517
|
- **hard**: the LLM request is rejected with the window end, the wait time, and the connected providers that are currently outside peak (`PEAK_HOURS_BLOCK: provider "deepseek" is in peak hours until 10:00 UTC (about 3 h). … Connected providers outside peak hours right now: z-ai, qwen. …`). The block fires in `chat.params`, after the message is stored: your message stays in the session history and the block renders as a regular error entry, not a dropped message.
|
|
518
518
|
|
|
519
519
|
Nothing already in flight is ever killed:
|
|
@@ -603,7 +603,7 @@ Credentials resolve in this order:
|
|
|
603
603
|
1. `EXA_API_KEY`, `BRAVE_API_KEY`, `SPIDER_API_KEY`, or `ZAI_API_KEY` for the selected provider
|
|
604
604
|
2. `web.search.apiKey` or `web.fetch.apiKey` in the effective `vvoc.json`
|
|
605
605
|
|
|
606
|
-
Environment variables win when both sources exist; config changes take effect after restarting OpenCode.
|
|
606
|
+
Environment variables win when both sources exist; config changes take effect after restarting OpenCode. Config `apiKey` values may be literal or use `${VAR}` placeholders resolved from the OpenCode process environment at startup, matching `secretsRedaction.secret`; a placeholder referencing an unset or empty variable logs a startup warning naming the config field and the missing variable names, never values. Placeholder-resolved `apiKey` values become exact-match SecretsRedactionPlugin rules for provider-bound message flows, and WebToolsPlugin diagnostics report only the credential source (`env` or `config`), never the value. If a project-layer `.vvoc/vvoc.json` containing an `apiKey` is tracked by Git, startup logs warn with the file name only. Prefer environment variables or the global vvoc layer; do not commit credentials.
|
|
607
607
|
|
|
608
608
|
While `web-tools` is enabled, its runtime config hook denies the built-in `webfetch` and `websearch` permission ids in memory, leaving only `web_fetch` and `web_search` in the normal tool surface. It does not rewrite OpenCode files or remove MCP servers. An explicit user permission entry for `webfetch` or `websearch` is respected and may intentionally keep that built-in visible. Disable the plugin and restart to restore stock behavior:
|
|
609
609
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Result of placeholder substitution. Missing names never include env values. */
|
|
2
|
+
export type EnvPlaceholderResolution = {
|
|
3
|
+
/** Value with every ${VAR} occurrence replaced; unset or empty variables become empty strings. */
|
|
4
|
+
value: string;
|
|
5
|
+
/** Referenced variable names that are unset or empty, in first-reference order, deduplicated. */
|
|
6
|
+
missing: string[];
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Substitute every ${VAR} occurrence in value from env.
|
|
10
|
+
* Variables that are unset or set to an empty string substitute as empty strings and are
|
|
11
|
+
* reported by name so callers can emit credential-safe diagnostics.
|
|
12
|
+
* Strings without placeholders are returned unchanged.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveEnvPlaceholders(value: string, env: NodeJS.ProcessEnv): EnvPlaceholderResolution;
|
|
15
|
+
/** String-only convenience wrapper around resolveEnvPlaceholders. */
|
|
16
|
+
export declare function substituteEnvVars(value: string, env: NodeJS.ProcessEnv): string;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// FILE: src/lib/env-substitution.ts
|
|
2
|
+
// VERSION: 1.0.0
|
|
3
|
+
// START_MODULE_CONTRACT
|
|
4
|
+
// PURPOSE: Substitute ${VAR} environment placeholders inside vvoc config string values.
|
|
5
|
+
// SCOPE: Replace every ${VAR} occurrence with the process environment value and report referenced variables that are unset or empty.
|
|
6
|
+
// DEPENDS: none
|
|
7
|
+
// LINKS: [M-ENV-SUBSTITUTION, M-WEB-CONFIG, M-PLUGIN-SECRETS-REDACTION]
|
|
8
|
+
// ROLE: RUNTIME
|
|
9
|
+
// MAP_MODE: EXPORTS
|
|
10
|
+
// END_MODULE_CONTRACT
|
|
11
|
+
//
|
|
12
|
+
// START_MODULE_MAP
|
|
13
|
+
// EnvPlaceholderResolution - Substituted value plus names of referenced variables that resolve to nothing.
|
|
14
|
+
// resolveEnvPlaceholders - Substitute every ${VAR} occurrence and report unset or empty references.
|
|
15
|
+
// substituteEnvVars - Substitute every ${VAR} occurrence and return only the resulting string.
|
|
16
|
+
// END_MODULE_MAP
|
|
17
|
+
//
|
|
18
|
+
// START_CHANGE_SUMMARY
|
|
19
|
+
// LAST_CHANGE: [direct fix - Extracted the secrets-redaction env placeholder substitution into a shared lib helper with missing-reference reporting for web apiKey resolution.]
|
|
20
|
+
// END_CHANGE_SUMMARY
|
|
21
|
+
// START_BLOCK_PLACEHOLDER_RESOLUTION
|
|
22
|
+
/**
|
|
23
|
+
* Substitute every ${VAR} occurrence in value from env.
|
|
24
|
+
* Variables that are unset or set to an empty string substitute as empty strings and are
|
|
25
|
+
* reported by name so callers can emit credential-safe diagnostics.
|
|
26
|
+
* Strings without placeholders are returned unchanged.
|
|
27
|
+
*/
|
|
28
|
+
export function resolveEnvPlaceholders(value, env) {
|
|
29
|
+
const missing = [];
|
|
30
|
+
const seen = new Set();
|
|
31
|
+
const substituted = value.replace(/\$\{([^}]+)\}/g, (_, varName) => {
|
|
32
|
+
const replacement = env[varName];
|
|
33
|
+
if (replacement === undefined || replacement === "") {
|
|
34
|
+
if (!seen.has(varName)) {
|
|
35
|
+
seen.add(varName);
|
|
36
|
+
missing.push(varName);
|
|
37
|
+
}
|
|
38
|
+
return "";
|
|
39
|
+
}
|
|
40
|
+
return replacement;
|
|
41
|
+
});
|
|
42
|
+
return { value: substituted, missing };
|
|
43
|
+
}
|
|
44
|
+
// END_BLOCK_PLACEHOLDER_RESOLUTION
|
|
45
|
+
/** String-only convenience wrapper around resolveEnvPlaceholders. */
|
|
46
|
+
export function substituteEnvVars(value, env) {
|
|
47
|
+
return resolveEnvPlaceholders(value, env).value;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=env-substitution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-substitution.js","sourceRoot":"","sources":["../../src/lib/env-substitution.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,iBAAiB;AACjB,wBAAwB;AACxB,0FAA0F;AAC1F,uIAAuI;AACvI,kBAAkB;AAClB,0EAA0E;AAC1E,kBAAkB;AAClB,sBAAsB;AACtB,sBAAsB;AACtB,EAAE;AACF,mBAAmB;AACnB,6GAA6G;AAC7G,sGAAsG;AACtG,iGAAiG;AACjG,iBAAiB;AACjB,EAAE;AACF,uBAAuB;AACvB,kLAAkL;AAClL,qBAAqB;AAUrB,qCAAqC;AACrC;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAa,EACb,GAAsB;IAEtB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAe,EAAE,EAAE;QACzE,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,EAAE,EAAE,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AACzC,CAAC;AACD,mCAAmC;AAEnC,qEAAqE;AACrE,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,GAAsB;IACrE,OAAO,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;AAClD,CAAC"}
|
|
@@ -485,6 +485,7 @@ export declare const VVOC_CONFIG_SCHEMA: {
|
|
|
485
485
|
apiKey: {
|
|
486
486
|
type: string;
|
|
487
487
|
minLength: number;
|
|
488
|
+
description: string;
|
|
488
489
|
};
|
|
489
490
|
};
|
|
490
491
|
allOf: {
|
|
@@ -516,6 +517,7 @@ export declare const VVOC_CONFIG_SCHEMA: {
|
|
|
516
517
|
apiKey: {
|
|
517
518
|
type: string;
|
|
518
519
|
minLength: number;
|
|
520
|
+
description: string;
|
|
519
521
|
};
|
|
520
522
|
};
|
|
521
523
|
allOf: {
|
package/dist/lib/vvoc-config.js
CHANGED
|
@@ -171,6 +171,11 @@ const ZAI_REGION_REQUIREMENT = Object.fromEntries([
|
|
|
171
171
|
// oxlint-disable-next-line unicorn/no-thenable -- JSON Schema conditional keyword.
|
|
172
172
|
["then", { required: ["region"] }],
|
|
173
173
|
]);
|
|
174
|
+
const WEB_API_KEY_SCHEMA = {
|
|
175
|
+
type: "string",
|
|
176
|
+
minLength: 1,
|
|
177
|
+
description: "Provider API key. Either a literal value or ${VAR} placeholders resolved from the OpenCode process environment at startup.",
|
|
178
|
+
};
|
|
174
179
|
const WEB_CONFIG_SCHEMA = {
|
|
175
180
|
type: "object",
|
|
176
181
|
additionalProperties: false,
|
|
@@ -181,7 +186,7 @@ const WEB_CONFIG_SCHEMA = {
|
|
|
181
186
|
properties: {
|
|
182
187
|
provider: { type: "string", enum: [...WEB_SEARCH_PROVIDERS] },
|
|
183
188
|
region: { type: "string", enum: [...WEB_REGIONS] },
|
|
184
|
-
apiKey:
|
|
189
|
+
apiKey: WEB_API_KEY_SCHEMA,
|
|
185
190
|
},
|
|
186
191
|
allOf: [ZAI_REGION_REQUIREMENT],
|
|
187
192
|
},
|
|
@@ -191,7 +196,7 @@ const WEB_CONFIG_SCHEMA = {
|
|
|
191
196
|
properties: {
|
|
192
197
|
provider: { type: "string", enum: [...WEB_FETCH_PROVIDERS] },
|
|
193
198
|
region: { type: "string", enum: [...WEB_REGIONS] },
|
|
194
|
-
apiKey:
|
|
199
|
+
apiKey: WEB_API_KEY_SCHEMA,
|
|
195
200
|
},
|
|
196
201
|
allOf: [ZAI_REGION_REQUIREMENT],
|
|
197
202
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vvoc-config.js","sourceRoot":"","sources":["../../src/lib/vvoc-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vvoc-config.js","sourceRoot":"","sources":["../../src/lib/vvoc-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,18 +15,17 @@ export type PeakHoursPluginDependencies = {
|
|
|
15
15
|
log: (level: "info" | "warn", message: string, extra?: Record<string, unknown>) => Promise<void>;
|
|
16
16
|
};
|
|
17
17
|
export declare function buildHardBlockMessage(providerID: string, peak: ActivePeak, suggestions: readonly string[]): string;
|
|
18
|
-
export declare function buildSoftSystemNote(providerID: string, peak: ActivePeak): string;
|
|
19
|
-
export declare function appendSystemNote(existingSystem: string | undefined, note: string): string;
|
|
20
18
|
/**
|
|
21
19
|
* Builds the peak-hours OpenCode server plugin.
|
|
22
20
|
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* with
|
|
28
|
-
*
|
|
29
|
-
*
|
|
21
|
+
* Soft mode is pass-through: the server plugin never mutates the message or
|
|
22
|
+
* its system prompt, and peak cost state stays visible only through the TUI
|
|
23
|
+
* banner. chat.params enforces the hard block by throwing after the user
|
|
24
|
+
* message is persisted, so OpenCode renders the block as a standard message
|
|
25
|
+
* error part with dynamic off-peak suggestions instead of dropping the
|
|
26
|
+
* message. Internal agents, subagent agents, sessions with a parentID, and
|
|
27
|
+
* sessions created before the active window start are never hard-blocked.
|
|
28
|
+
* Schedule and lookup failures degrade to soft or no-op and never block.
|
|
30
29
|
*/
|
|
31
30
|
export declare function createPeakHoursPlugin(dependencies?: Partial<PeakHoursPluginDependencies>): Plugin;
|
|
32
31
|
export declare const PeakHoursPlugin: Plugin;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// FILE: src/plugins/peak-hours/index.ts
|
|
2
2
|
// VERSION: 1.0.0
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
|
-
// PURPOSE:
|
|
5
|
-
// SCOPE: Startup vvoc snapshot resolution and peak-hours entry parsing, internal and subagent-like agent exemptions, persisted-session grace lookup, connected provider enumeration with bounded fallback,
|
|
4
|
+
// PURPOSE: Block LLM requests whose model provider is in configured peak hours in hard mode, with dynamic off-peak provider suggestions and session-age plus subagent grace; soft mode never mutates messages.
|
|
5
|
+
// SCOPE: Startup vvoc snapshot resolution and peak-hours entry parsing, internal and subagent-like agent exemptions, persisted-session grace lookup, connected provider enumeration with bounded fallback, hard blocking through a chat.params error raised after the user message is persisted, soft pass-through without any server-side message mutation, and fail-open degradation.
|
|
6
6
|
// DEPENDS: [@opencode-ai/plugin, src/lib/config-layers.ts, src/lib/plugin-toggle-config.ts, src/lib/managed-agents.ts, src/lib/peak-hours.ts]
|
|
7
7
|
// LINKS: [M-PLUGIN-PEAK-HOURS, M-PEAK-HOURS-SCHEDULES, M-PLUGIN-TOGGLE-CONFIG]
|
|
8
8
|
// ROLE: RUNTIME
|
|
@@ -13,14 +13,12 @@
|
|
|
13
13
|
// PeakHoursPluginDependencies - Injectable clock, entry, session, provider, and logging dependencies for focused tests.
|
|
14
14
|
// SessionGraceInfo - Persisted session fields used for grace decisions.
|
|
15
15
|
// buildHardBlockMessage - Composes the blocking error text with window end, wait, and suggestions.
|
|
16
|
-
// buildSoftSystemNote - Composes the bounded model-facing peak notice.
|
|
17
|
-
// appendSystemNote - Appends the notice once without duplicating it.
|
|
18
16
|
// createPeakHoursPlugin - Builds the peak-hours server plugin with injectable dependencies.
|
|
19
17
|
// PeakHoursPlugin - Default production peak-hours server plugin.
|
|
20
18
|
// END_MODULE_MAP
|
|
21
19
|
//
|
|
22
20
|
// START_CHANGE_SUMMARY
|
|
23
|
-
// LAST_CHANGE: [DIRECT-FIX -
|
|
21
|
+
// LAST_CHANGE: [DIRECT-FIX - Removed the soft-mode chat.message system-note injection so soft mode passes messages through untouched; peak cost state stays visible through the TUI banner only.]
|
|
24
22
|
// END_CHANGE_SUMMARY
|
|
25
23
|
import { loadVvocConfig } from "../../lib/config-layers.js";
|
|
26
24
|
import { MANAGED_SUBAGENT_NAMES } from "../../lib/managed-agents.js";
|
|
@@ -32,7 +30,6 @@ const INTERNAL_AGENTS = ["compaction", "title", "summary"];
|
|
|
32
30
|
const BUILT_IN_SUBAGENTS = ["general"];
|
|
33
31
|
const PLUGIN_MANAGED_SUBAGENTS = ["guardian"];
|
|
34
32
|
const PEAK_HOURS_SERVICE = "peak-hours";
|
|
35
|
-
const PEAK_HOURS_NOTE_TAG = "<peak_hours_notice>";
|
|
36
33
|
const PROVIDER_CACHE_TTL_MS = 10 * 60 * 1_000;
|
|
37
34
|
const PROVIDER_FETCH_TIMEOUT_MS = 5_000;
|
|
38
35
|
const MAX_LOG_TEXT_CHARS = 500;
|
|
@@ -79,35 +76,6 @@ export function buildHardBlockMessage(providerID, peak, suggestions) {
|
|
|
79
76
|
}
|
|
80
77
|
return lines.join(" ");
|
|
81
78
|
}
|
|
82
|
-
// START_CONTRACT: buildSoftSystemNote
|
|
83
|
-
// PURPOSE: Compose the bounded model-facing notice for soft mode.
|
|
84
|
-
// INPUTS: { providerID: string - peak provider id; peak: ActivePeak - active window hit }
|
|
85
|
-
// OUTPUTS: { string - single-line tagged system notice }
|
|
86
|
-
// SIDE_EFFECTS: none
|
|
87
|
-
// LINKS: formatPeakEndTime
|
|
88
|
-
// END_CONTRACT: buildSoftSystemNote
|
|
89
|
-
export function buildSoftSystemNote(providerID, peak) {
|
|
90
|
-
const until = formatPeakEndTime(peak.endsAt);
|
|
91
|
-
return `${PEAK_HOURS_NOTE_TAG}Provider "${providerID}" is in peak hours until ${until}; pricing is elevated. Keep responses focused and avoid unnecessary verbosity.</${PEAK_HOURS_NOTE_TAG.slice(1)}`;
|
|
92
|
-
}
|
|
93
|
-
// START_CONTRACT: appendSystemNote
|
|
94
|
-
// PURPOSE: Append the peak notice to an existing system prompt exactly once.
|
|
95
|
-
// INPUTS: { existingSystem: string | undefined - current system prompt; note: string - composed notice }
|
|
96
|
-
// OUTPUTS: { string - system prompt with the notice appended at most once }
|
|
97
|
-
// SIDE_EFFECTS: none
|
|
98
|
-
// LINKS: buildSoftSystemNote
|
|
99
|
-
// END_CONTRACT: appendSystemNote
|
|
100
|
-
export function appendSystemNote(existingSystem, note) {
|
|
101
|
-
if (typeof existingSystem === "string" && existingSystem.includes(PEAK_HOURS_NOTE_TAG)) {
|
|
102
|
-
return existingSystem;
|
|
103
|
-
}
|
|
104
|
-
const parts = [];
|
|
105
|
-
if (typeof existingSystem === "string" && existingSystem.trim()) {
|
|
106
|
-
parts.push(existingSystem.trim());
|
|
107
|
-
}
|
|
108
|
-
parts.push(note);
|
|
109
|
-
return parts.join("\n\n");
|
|
110
|
-
}
|
|
111
79
|
// START_BLOCK_DEFAULT_DEPENDENCIES
|
|
112
80
|
function truncateLogText(value) {
|
|
113
81
|
return value.length > MAX_LOG_TEXT_CHARS ? `${value.slice(0, MAX_LOG_TEXT_CHARS)}...` : value;
|
|
@@ -168,13 +136,14 @@ async function listConnectedProviders(client, serverUrl, directory) {
|
|
|
168
136
|
/**
|
|
169
137
|
* Builds the peak-hours OpenCode server plugin.
|
|
170
138
|
*
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
*
|
|
174
|
-
*
|
|
175
|
-
* with
|
|
176
|
-
*
|
|
177
|
-
*
|
|
139
|
+
* Soft mode is pass-through: the server plugin never mutates the message or
|
|
140
|
+
* its system prompt, and peak cost state stays visible only through the TUI
|
|
141
|
+
* banner. chat.params enforces the hard block by throwing after the user
|
|
142
|
+
* message is persisted, so OpenCode renders the block as a standard message
|
|
143
|
+
* error part with dynamic off-peak suggestions instead of dropping the
|
|
144
|
+
* message. Internal agents, subagent agents, sessions with a parentID, and
|
|
145
|
+
* sessions created before the active window start are never hard-blocked.
|
|
146
|
+
* Schedule and lookup failures degrade to soft or no-op and never block.
|
|
178
147
|
*/
|
|
179
148
|
export function createPeakHoursPlugin(dependencies = {}) {
|
|
180
149
|
return async ({ client, directory, serverUrl }) => {
|
|
@@ -270,27 +239,6 @@ export function createPeakHoursPlugin(dependencies = {}) {
|
|
|
270
239
|
config: async (config) => {
|
|
271
240
|
syncConfiguredSubagents((config.agent ?? {}), knownSubagents);
|
|
272
241
|
},
|
|
273
|
-
"chat.message": async (input, output) => {
|
|
274
|
-
const agent = output.message.agent ?? input.agent;
|
|
275
|
-
const providerID = input.model?.providerID ?? output.message.model?.providerID;
|
|
276
|
-
if (!providerID)
|
|
277
|
-
return;
|
|
278
|
-
const decision = await resolvePeakDecision({
|
|
279
|
-
agent,
|
|
280
|
-
providerID,
|
|
281
|
-
sessionID: input.sessionID,
|
|
282
|
-
});
|
|
283
|
-
// Hard mode blocks later in chat.params, after the message is persisted.
|
|
284
|
-
if (!decision || decision.mode !== "soft")
|
|
285
|
-
return;
|
|
286
|
-
output.message.system = appendSystemNote(output.message.system, buildSoftSystemNote(providerID, decision.peak));
|
|
287
|
-
await deps.log("info", "peak-hours soft notice applied", {
|
|
288
|
-
providerID,
|
|
289
|
-
providerKey: decision.peak.providerKey,
|
|
290
|
-
until: formatPeakEndTime(decision.peak.endsAt),
|
|
291
|
-
sessionID: input.sessionID,
|
|
292
|
-
});
|
|
293
|
-
},
|
|
294
242
|
"chat.params": async (input) => {
|
|
295
243
|
const providerID = input.model?.providerID;
|
|
296
244
|
if (!providerID)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/peak-hours/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/peak-hours/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,12 @@ import { type VvocConfigSnapshot } from "../../lib/config-layers.js";
|
|
|
2
2
|
import { type SecretsRedactionConfig, type VvocConfig } from "../../lib/vvoc-config.js";
|
|
3
3
|
export type { SecretsRedactionConfig };
|
|
4
4
|
export declare const DEFAULT_CONFIG: SecretsRedactionConfig;
|
|
5
|
-
/**
|
|
6
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Exact-value keyword rules for configured web apiKey fields with ${VAR} placeholders
|
|
7
|
+
* resolved from env. Canonical environment credentials are excluded because they never
|
|
8
|
+
* appear in config. Values that resolve to an empty string are skipped.
|
|
9
|
+
*/
|
|
10
|
+
export declare function webApiKeyKeywordRules(config: VvocConfig, env?: NodeJS.ProcessEnv): Array<{
|
|
7
11
|
value: string;
|
|
8
12
|
category: "WEB_API_KEY";
|
|
9
13
|
}>;
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
// VERSION: 1.4.0
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
4
|
// PURPOSE: Resolve secrets-redaction settings from the shared startup vvoc config snapshot with environment variable substitution.
|
|
5
|
-
// SCOPE: startup vvoc config snapshot consumption, env substitution, fallback defaults, and exact-value web apiKey keyword rules
|
|
6
|
-
// DEPENDS: src/lib/config-layers.ts, src/lib/vvoc-config.ts
|
|
7
|
-
// LINKS: [M-PLUGIN-SECRETS-REDACTION]
|
|
5
|
+
// SCOPE: startup vvoc config snapshot consumption, env substitution, fallback defaults, and exact-value web apiKey keyword rules built from placeholder-resolved values
|
|
6
|
+
// DEPENDS: src/lib/config-layers.ts, src/lib/vvoc-config.ts, src/lib/env-substitution.ts
|
|
7
|
+
// LINKS: [M-PLUGIN-SECRETS-REDACTION, M-ENV-SUBSTITUTION]
|
|
8
8
|
// ROLE: RUNTIME
|
|
9
9
|
// MAP_MODE: EXPORTS
|
|
10
10
|
// END_MODULE_CONTRACT
|
|
11
11
|
//
|
|
12
12
|
// START_MODULE_MAP
|
|
13
13
|
// DEFAULT_CONFIG - Default secrets-redaction section used when vvoc.json is missing or incomplete
|
|
14
|
-
// webApiKeyKeywordRules - returns deduplicated exact-value rules for configured web apiKey fields
|
|
14
|
+
// webApiKeyKeywordRules - returns deduplicated exact-value rules for configured web apiKey fields with ${VAR} placeholders resolved
|
|
15
15
|
// resolveSecretsRedactionRuntimeConfig - returns normalized config from a loaded vvoc config snapshot
|
|
16
16
|
// loadConfig - backward-compatible wrapper around loadVvocConfig plus resolveSecretsRedactionRuntimeConfig
|
|
17
17
|
// getConfigCandidates - returns the effective vvoc.json path candidate when one is selected
|
|
@@ -19,18 +19,27 @@
|
|
|
19
19
|
// END_MODULE_MAP
|
|
20
20
|
//
|
|
21
21
|
// START_CHANGE_SUMMARY
|
|
22
|
-
// LAST_CHANGE: [
|
|
22
|
+
// LAST_CHANGE: [direct fix - Built web apiKey redaction rules from placeholder-resolved values via the shared env substitution helper.]
|
|
23
23
|
// END_CHANGE_SUMMARY
|
|
24
24
|
import { loadVvocConfig, resolveVvocConfigSource, } from "../../lib/config-layers.js";
|
|
25
|
+
import { substituteEnvVars } from "../../lib/env-substitution.js";
|
|
25
26
|
import { createDefaultSecretsRedactionConfig, } from "../../lib/vvoc-config.js";
|
|
26
27
|
import { generateFallbackSecret } from "./session.js";
|
|
27
28
|
export const DEFAULT_CONFIG = createDefaultSecretsRedactionConfig();
|
|
28
|
-
/**
|
|
29
|
-
|
|
29
|
+
/**
|
|
30
|
+
* Exact-value keyword rules for configured web apiKey fields with ${VAR} placeholders
|
|
31
|
+
* resolved from env. Canonical environment credentials are excluded because they never
|
|
32
|
+
* appear in config. Values that resolve to an empty string are skipped.
|
|
33
|
+
*/
|
|
34
|
+
export function webApiKeyKeywordRules(config, env = process.env) {
|
|
30
35
|
const rules = [];
|
|
31
36
|
const seen = new Set();
|
|
32
|
-
for (const
|
|
33
|
-
if (typeof
|
|
37
|
+
for (const rawValue of [config.web?.search?.apiKey, config.web?.fetch?.apiKey]) {
|
|
38
|
+
if (typeof rawValue !== "string" || rawValue.length === 0) {
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
const value = substituteEnvVars(rawValue, env);
|
|
42
|
+
if (value.length === 0 || seen.has(value)) {
|
|
34
43
|
continue;
|
|
35
44
|
}
|
|
36
45
|
seen.add(value);
|
|
@@ -38,11 +47,6 @@ export function webApiKeyKeywordRules(config) {
|
|
|
38
47
|
}
|
|
39
48
|
return rules;
|
|
40
49
|
}
|
|
41
|
-
function substituteEnvVars(value, env) {
|
|
42
|
-
return value.replace(/\$\{([^}]+)\}/g, (_, varName) => {
|
|
43
|
-
return env[varName] ?? "";
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
50
|
export async function getConfigCandidates(directory) {
|
|
47
51
|
const source = await resolveVvocConfigSource({
|
|
48
52
|
scope: "effective",
|
|
@@ -56,7 +60,7 @@ export function resolveSecretsRedactionRuntimeConfig(loaded, env = process.env)
|
|
|
56
60
|
let finalSecret = substituteEnvVars(loaded.config.secretsRedaction.secret, env);
|
|
57
61
|
const configured = loaded.config.secretsRedaction;
|
|
58
62
|
const keywordValues = new Set(configured.patterns.keywords.map((rule) => rule.value));
|
|
59
|
-
const webKeywords = webApiKeyKeywordRules(loaded.config).filter((rule) => !keywordValues.has(rule.value));
|
|
63
|
+
const webKeywords = webApiKeyKeywordRules(loaded.config, env).filter((rule) => !keywordValues.has(rule.value));
|
|
60
64
|
const configWithWebKeys = {
|
|
61
65
|
...configured,
|
|
62
66
|
patterns: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/plugins/secrets-redaction/config.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,iBAAiB;AACjB,wBAAwB;AACxB,qIAAqI;AACrI,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/plugins/secrets-redaction/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
// VERSION: 1.0.0
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
4
|
// PURPOSE: Resolve the optional vvoc web section into concrete provider choices, explicit Z.AI regions, and credentials for the web tools plugin.
|
|
5
|
-
// SCOPE: Provider defaults, fail-closed Z.AI region resolution, credential resolution with environment precedence over config apiKey fields, credential source reporting, and a best-effort git-tracked project-config warning helper.
|
|
6
|
-
// DEPENDS: [src/lib/config-layers.ts, src/lib/vvoc-config.ts, node:path]
|
|
7
|
-
// LINKS: [M-WEB-CONFIG, M-PLUGIN-WEB-TOOLS, M-CLI-CONFIG]
|
|
5
|
+
// SCOPE: Provider defaults, fail-closed Z.AI region resolution, credential resolution with environment precedence over config apiKey fields including ${VAR} placeholder substitution with unset-reference warnings, credential source reporting, and a best-effort git-tracked project-config warning helper.
|
|
6
|
+
// DEPENDS: [src/lib/config-layers.ts, src/lib/vvoc-config.ts, src/lib/env-substitution.ts, node:path]
|
|
7
|
+
// LINKS: [M-WEB-CONFIG, M-PLUGIN-WEB-TOOLS, M-CLI-CONFIG, M-ENV-SUBSTITUTION]
|
|
8
8
|
// ROLE: RUNTIME
|
|
9
9
|
// MAP_MODE: EXPORTS
|
|
10
10
|
// END_MODULE_CONTRACT
|
|
@@ -20,23 +20,43 @@
|
|
|
20
20
|
// END_MODULE_MAP
|
|
21
21
|
//
|
|
22
22
|
// START_CHANGE_SUMMARY
|
|
23
|
-
// LAST_CHANGE: [
|
|
23
|
+
// LAST_CHANGE: [direct fix - Resolved ${VAR} env placeholders in web apiKey fields and warned on unset references instead of sending literal placeholder credentials.]
|
|
24
24
|
// END_CHANGE_SUMMARY
|
|
25
25
|
import { basename, dirname } from "node:path";
|
|
26
|
+
import { resolveEnvPlaceholders } from "../../lib/env-substitution.js";
|
|
26
27
|
const SEARCH_ENV_VARS = {
|
|
27
28
|
exa: "EXA_API_KEY",
|
|
28
29
|
brave: "BRAVE_API_KEY",
|
|
29
30
|
zai: "ZAI_API_KEY",
|
|
30
31
|
};
|
|
31
32
|
// START_BLOCK_CREDENTIAL_RESOLUTION
|
|
32
|
-
|
|
33
|
+
/**
|
|
34
|
+
* Resolve one credential with canonical-env-over-config precedence.
|
|
35
|
+
* Config values support ${VAR} placeholders resolved from env; placeholders referencing
|
|
36
|
+
* unset or empty variables produce a value-free warning naming the config field and the
|
|
37
|
+
* missing variable names. A config value that substitutes to an empty string yields no
|
|
38
|
+
* credential. The warning never contains credential values.
|
|
39
|
+
*/
|
|
40
|
+
function resolveCredential(envValue, configValue, env, configField) {
|
|
33
41
|
if (typeof envValue === "string" && envValue.length > 0) {
|
|
34
|
-
return { value: envValue, source: "env" };
|
|
42
|
+
return { credential: { value: envValue, source: "env" } };
|
|
35
43
|
}
|
|
36
|
-
if (typeof configValue
|
|
37
|
-
return {
|
|
44
|
+
if (typeof configValue !== "string" || configValue.length === 0) {
|
|
45
|
+
return {};
|
|
46
|
+
}
|
|
47
|
+
const resolved = resolveEnvPlaceholders(configValue, env);
|
|
48
|
+
if (resolved.missing.length > 0) {
|
|
49
|
+
return {
|
|
50
|
+
credential: resolved.value.length > 0 ? { value: resolved.value, source: "config" } : undefined,
|
|
51
|
+
warning: `${configField} references unset or empty environment variable(s): ` +
|
|
52
|
+
`${resolved.missing.join(", ")}; set them in the OpenCode process environment ` +
|
|
53
|
+
"or provide a literal apiKey",
|
|
54
|
+
};
|
|
38
55
|
}
|
|
39
|
-
|
|
56
|
+
if (resolved.value.length === 0) {
|
|
57
|
+
return {};
|
|
58
|
+
}
|
|
59
|
+
return { credential: { value: resolved.value, source: "config" } };
|
|
40
60
|
}
|
|
41
61
|
function requireZaiRegion(value, field) {
|
|
42
62
|
if (value === "international" || value === "china") {
|
|
@@ -48,45 +68,56 @@ function requireZaiRegion(value, field) {
|
|
|
48
68
|
// START_CONTRACT: resolveWebRuntimeConfig
|
|
49
69
|
// PURPOSE: Resolve providers and credentials from the startup vvoc snapshot.
|
|
50
70
|
// INPUTS: { loaded: vvoc snapshot subset with config, source, warnings; env: process environment override }
|
|
51
|
-
// OUTPUTS: { ResolvedWebConfig - providers default to exa and native; environment wins over config apiKey }
|
|
71
|
+
// OUTPUTS: { ResolvedWebConfig - providers default to exa and native; environment wins over config apiKey; config apiKey ${VAR} placeholders substitute from env and unset references add value-free warnings }
|
|
52
72
|
// SIDE_EFFECTS: none; missing credentials are not resolution-time errors
|
|
53
|
-
// LINKS: M-PLUGIN-WEB-TOOLS
|
|
73
|
+
// LINKS: M-PLUGIN-WEB-TOOLS, M-ENV-SUBSTITUTION
|
|
54
74
|
// END_CONTRACT: resolveWebRuntimeConfig
|
|
55
75
|
export function resolveWebRuntimeConfig(loaded, env = process.env) {
|
|
56
76
|
const web = loaded.config.web;
|
|
57
77
|
const searchProvider = web?.search?.provider ?? "exa";
|
|
58
78
|
const fetchProvider = web?.fetch?.provider ?? "native";
|
|
79
|
+
const warnings = [...loaded.warnings];
|
|
80
|
+
const searchCredential = resolveCredential(env[SEARCH_ENV_VARS[searchProvider]], web?.search?.apiKey, env, "web.search.apiKey");
|
|
81
|
+
if (searchCredential.warning) {
|
|
82
|
+
warnings.push(searchCredential.warning);
|
|
83
|
+
}
|
|
59
84
|
const search = searchProvider === "zai"
|
|
60
85
|
? {
|
|
61
86
|
provider: "zai",
|
|
62
87
|
region: requireZaiRegion(web?.search?.region, "web.search.region"),
|
|
63
88
|
envVar: "ZAI_API_KEY",
|
|
64
89
|
configField: "web.search.apiKey",
|
|
65
|
-
credential:
|
|
90
|
+
credential: searchCredential.credential,
|
|
66
91
|
}
|
|
67
92
|
: {
|
|
68
93
|
provider: searchProvider,
|
|
69
94
|
envVar: SEARCH_ENV_VARS[searchProvider],
|
|
70
95
|
configField: "web.search.apiKey",
|
|
71
|
-
credential:
|
|
96
|
+
credential: searchCredential.credential,
|
|
72
97
|
};
|
|
98
|
+
const fetchCredential = fetchProvider === "native"
|
|
99
|
+
? {}
|
|
100
|
+
: resolveCredential(env[fetchProvider === "zai" ? "ZAI_API_KEY" : "SPIDER_API_KEY"], web?.fetch?.apiKey, env, "web.fetch.apiKey");
|
|
101
|
+
if (fetchCredential.warning) {
|
|
102
|
+
warnings.push(fetchCredential.warning);
|
|
103
|
+
}
|
|
73
104
|
const fetch = fetchProvider === "zai"
|
|
74
105
|
? {
|
|
75
106
|
provider: "zai",
|
|
76
107
|
region: requireZaiRegion(web?.fetch?.region, "web.fetch.region"),
|
|
77
108
|
envVar: "ZAI_API_KEY",
|
|
78
109
|
configField: "web.fetch.apiKey",
|
|
79
|
-
credential:
|
|
110
|
+
credential: fetchCredential.credential,
|
|
80
111
|
}
|
|
81
112
|
: fetchProvider === "spider"
|
|
82
113
|
? {
|
|
83
114
|
provider: "spider",
|
|
84
115
|
envVar: "SPIDER_API_KEY",
|
|
85
116
|
configField: "web.fetch.apiKey",
|
|
86
|
-
credential:
|
|
117
|
+
credential: fetchCredential.credential,
|
|
87
118
|
}
|
|
88
119
|
: { provider: "native" };
|
|
89
|
-
return { search, fetch, warnings
|
|
120
|
+
return { search, fetch, warnings };
|
|
90
121
|
}
|
|
91
122
|
// START_BLOCK_GIT_TRACKED_WARNING
|
|
92
123
|
function defaultCommandRunner(cmd, cwd) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/plugins/web-tools/config.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,iBAAiB;AACjB,wBAAwB;AACxB,oJAAoJ;AACpJ,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/plugins/web-tools/config.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osovv/vv-opencode",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.7",
|
|
4
4
|
"description": "An opinionated agentic development layer for OpenCode — spec-first when it matters, review-driven execution, portable model roles, safer tools, and long-run safety.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
package/schemas/vvoc/v3.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://cdn.jsdelivr.net/npm/@osovv/vv-opencode@1.3.
|
|
3
|
+
"$id": "https://cdn.jsdelivr.net/npm/@osovv/vv-opencode@1.3.7/schemas/vvoc/v3.json",
|
|
4
4
|
"title": "vvoc config",
|
|
5
5
|
"description": "Canonical vvoc configuration document.",
|
|
6
6
|
"type": "object",
|
|
@@ -447,7 +447,8 @@
|
|
|
447
447
|
},
|
|
448
448
|
"apiKey": {
|
|
449
449
|
"type": "string",
|
|
450
|
-
"minLength": 1
|
|
450
|
+
"minLength": 1,
|
|
451
|
+
"description": "Provider API key. Either a literal value or ${VAR} placeholders resolved from the OpenCode process environment at startup."
|
|
451
452
|
}
|
|
452
453
|
},
|
|
453
454
|
"allOf": [
|
|
@@ -491,7 +492,8 @@
|
|
|
491
492
|
},
|
|
492
493
|
"apiKey": {
|
|
493
494
|
"type": "string",
|
|
494
|
-
"minLength": 1
|
|
495
|
+
"minLength": 1,
|
|
496
|
+
"description": "Provider API key. Either a literal value or ${VAR} placeholders resolved from the OpenCode process environment at startup."
|
|
495
497
|
}
|
|
496
498
|
},
|
|
497
499
|
"allOf": [
|