@osovv/vv-opencode 1.7.0 → 2.0.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/CHANGELOG.md +25 -0
- package/README.md +22 -2
- package/dist/commands/preset.js +1 -1
- package/dist/commands/preset.js.map +1 -1
- package/dist/index.d.ts +7 -11
- package/dist/index.js +53 -20
- package/dist/index.js.map +1 -1
- package/dist/plugins/analytics/index.d.ts +2 -0
- package/dist/plugins/analytics/index.js +13 -2
- package/dist/plugins/analytics/index.js.map +1 -1
- package/dist/plugins/analytics/v2.d.ts +21 -0
- package/dist/plugins/analytics/v2.js +133 -0
- package/dist/plugins/analytics/v2.js.map +1 -0
- package/dist/plugins/guardian/index.d.ts +46 -0
- package/dist/plugins/guardian/index.js +21 -6
- package/dist/plugins/guardian/index.js.map +1 -1
- package/dist/plugins/guardian/v2.d.ts +13 -0
- package/dist/plugins/guardian/v2.js +161 -0
- package/dist/plugins/guardian/v2.js.map +1 -0
- package/dist/plugins/hashline-edit/index.d.ts +33 -1
- package/dist/plugins/hashline-edit/index.js +38 -14
- package/dist/plugins/hashline-edit/index.js.map +1 -1
- package/dist/plugins/hashline-edit/schemas.d.ts +7 -7
- package/dist/plugins/hashline-edit/v2.d.ts +12 -0
- package/dist/plugins/hashline-edit/v2.js +145 -0
- package/dist/plugins/hashline-edit/v2.js.map +1 -0
- package/dist/plugins/model-roles/index.d.ts +2 -0
- package/dist/plugins/model-roles/index.js +13 -2
- package/dist/plugins/model-roles/index.js.map +1 -1
- package/dist/plugins/model-roles/v2.d.ts +24 -0
- package/dist/plugins/model-roles/v2.js +274 -0
- package/dist/plugins/model-roles/v2.js.map +1 -0
- package/dist/plugins/peak-hours/index.d.ts +2 -0
- package/dist/plugins/peak-hours/index.js +13 -2
- package/dist/plugins/peak-hours/index.js.map +1 -1
- package/dist/plugins/peak-hours/v2.d.ts +12 -0
- package/dist/plugins/peak-hours/v2.js +95 -0
- package/dist/plugins/peak-hours/v2.js.map +1 -0
- package/dist/plugins/secrets-redaction/index.d.ts +7 -0
- package/dist/plugins/secrets-redaction/index.js +17 -4
- package/dist/plugins/secrets-redaction/index.js.map +1 -1
- package/dist/plugins/secrets-redaction/v2.d.ts +14 -0
- package/dist/plugins/secrets-redaction/v2.js +100 -0
- package/dist/plugins/secrets-redaction/v2.js.map +1 -0
- package/dist/plugins/spec-guard/index.d.ts +2 -0
- package/dist/plugins/spec-guard/index.js +13 -2
- package/dist/plugins/spec-guard/index.js.map +1 -1
- package/dist/plugins/spec-guard/v2.d.ts +12 -0
- package/dist/plugins/spec-guard/v2.js +139 -0
- package/dist/plugins/spec-guard/v2.js.map +1 -0
- package/dist/plugins/system-context-injection/agent-contexts.d.ts +5 -0
- package/dist/plugins/system-context-injection/agent-contexts.js +164 -0
- package/dist/plugins/system-context-injection/agent-contexts.js.map +1 -0
- package/dist/plugins/system-context-injection/index.d.ts +2 -0
- package/dist/plugins/system-context-injection/index.js +16 -146
- package/dist/plugins/system-context-injection/index.js.map +1 -1
- package/dist/plugins/system-context-injection/v2.d.ts +13 -0
- package/dist/plugins/system-context-injection/v2.js +60 -0
- package/dist/plugins/system-context-injection/v2.js.map +1 -0
- package/dist/plugins/tool-history-compaction/index.d.ts +2 -0
- package/dist/plugins/tool-history-compaction/index.js +13 -2
- package/dist/plugins/tool-history-compaction/index.js.map +1 -1
- package/dist/plugins/tool-history-compaction/v2.d.ts +11 -0
- package/dist/plugins/tool-history-compaction/v2.js +56 -0
- package/dist/plugins/tool-history-compaction/v2.js.map +1 -0
- package/dist/plugins/v2-runtime/config-watcher.d.ts +26 -0
- package/dist/plugins/v2-runtime/config-watcher.js +111 -0
- package/dist/plugins/v2-runtime/config-watcher.js.map +1 -0
- package/dist/plugins/v2-runtime/index.d.ts +50 -0
- package/dist/plugins/v2-runtime/index.js +114 -0
- package/dist/plugins/v2-runtime/index.js.map +1 -0
- package/dist/plugins/v2-runtime/location-config.d.ts +51 -0
- package/dist/plugins/v2-runtime/location-config.js +91 -0
- package/dist/plugins/v2-runtime/location-config.js.map +1 -0
- package/dist/plugins/v2-runtime/setup.d.ts +48 -0
- package/dist/plugins/v2-runtime/setup.js +174 -0
- package/dist/plugins/v2-runtime/setup.js.map +1 -0
- package/dist/plugins/web-tools/index.d.ts +2 -0
- package/dist/plugins/web-tools/index.js +13 -2
- package/dist/plugins/web-tools/index.js.map +1 -1
- package/dist/plugins/web-tools/v2.d.ts +11 -0
- package/dist/plugins/web-tools/v2.js +99 -0
- package/dist/plugins/web-tools/v2.js.map +1 -0
- package/dist/plugins/workflow/index.d.ts +2 -0
- package/dist/plugins/workflow/index.js +13 -2
- package/dist/plugins/workflow/index.js.map +1 -1
- package/dist/plugins/workflow/results.d.ts +16 -16
- package/dist/plugins/workflow/v2.d.ts +58 -0
- package/dist/plugins/workflow/v2.js +181 -0
- package/dist/plugins/workflow/v2.js.map +1 -0
- package/dist/tui.d.ts +1 -0
- package/dist/tui.js +41 -6
- package/dist/tui.js.map +1 -1
- package/package.json +13 -5
- package/schemas/vvoc/v3.json +1 -1
- package/server.js +7 -0
- package/templates/skills/vv-execute/references/tool-contracts.md +1 -1
- package/tui.js +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/guardian/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/guardian/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Plugin as V2Plugin } from "@opencode/plugin";
|
|
2
|
+
import type { V2AdapterContext } from "../v2-runtime/setup.js";
|
|
3
|
+
/**
|
|
4
|
+
* Register the Guardian review flow on the v2 runtime.
|
|
5
|
+
*
|
|
6
|
+
* The v2 permission.asked and permission.replied events carry the same
|
|
7
|
+
* request fields the v1 events did, so the review flow itself is reused
|
|
8
|
+
* unchanged through the client shim. Tool intents keep flowing from the
|
|
9
|
+
* execute.before hook; the guardian agent definition itself comes from the
|
|
10
|
+
* managed agent files vvoc sync installs, replacing the v1 runtime config
|
|
11
|
+
* hook installation.
|
|
12
|
+
*/
|
|
13
|
+
export declare function setupGuardianV2(adapter: V2AdapterContext): Promise<V2Plugin.Cleanup | void>;
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
// FILE: src/plugins/guardian/v2.ts
|
|
2
|
+
// VERSION: 1.0.0
|
|
3
|
+
// START_MODULE_CONTRACT
|
|
4
|
+
// PURPOSE: Review OpenCode v2 permission requests with the constrained Guardian agent through a v1-shaped client shim over the v2 plugin domains.
|
|
5
|
+
// SCOPE: v2 setup only: subscribe to permission.asked and permission.replied events, track tool intents on the execute.before hook, adapt the four client surfaces the shared review flow needs (logging, toast no-op, session transcript, permission reply) onto v2 domains, and keep the nested-review auto-deny and cancellation semantics unchanged.
|
|
6
|
+
// DEPENDS: [@opencode/plugin, src/lib/config-layers.ts, src/lib/managed-agents.ts, src/plugins/guardian/index.ts, src/plugins/v2-runtime/setup.ts]
|
|
7
|
+
// LINKS: [M-PLUGIN-GUARDIAN, V-M-PLUGIN-GUARDIAN, M-PLUGIN-V2-RUNTIME]
|
|
8
|
+
// ROLE: RUNTIME
|
|
9
|
+
// MAP_MODE: EXPORTS
|
|
10
|
+
// END_MODULE_CONTRACT
|
|
11
|
+
//
|
|
12
|
+
// START_MODULE_MAP
|
|
13
|
+
// setupGuardianV2 - Register the permission review flow for one OpenCode v2 plugin context.
|
|
14
|
+
// END_MODULE_MAP
|
|
15
|
+
//
|
|
16
|
+
// START_CHANGE_SUMMARY
|
|
17
|
+
// LAST_CHANGE: [C-OPENCODE-V2-MIGRATION T-003 - Ported the Guardian permission review onto v2 events and domains through a client shim.]
|
|
18
|
+
// END_CHANGE_SUMMARY
|
|
19
|
+
import { loadVvocConfigForRead } from "../../lib/config-layers.js";
|
|
20
|
+
import { loadManagedAgentPromptText } from "../../lib/managed-agents.js";
|
|
21
|
+
import { GUARDIAN_AGENT, GUARDIAN_DISABLED_ENV, reviewPermissionRequest, resolveGuardianRuntimeConfig, } from "./index.js";
|
|
22
|
+
// START_BLOCK_GUARDIAN_V2_CLIENT_SHIM
|
|
23
|
+
/**
|
|
24
|
+
* A v1-shaped client built on v2 domains, providing exactly the four
|
|
25
|
+
* surfaces the shared review flow consumes. Toasts degrade to a no-op
|
|
26
|
+
* because v2 server plugins have no TUI channel; the TUI banner surface
|
|
27
|
+
* belongs to the CLI plugin.
|
|
28
|
+
*/
|
|
29
|
+
function createClientShim(adapter, directory) {
|
|
30
|
+
return {
|
|
31
|
+
app: {
|
|
32
|
+
log: async () => { },
|
|
33
|
+
},
|
|
34
|
+
tui: {
|
|
35
|
+
show: async () => { },
|
|
36
|
+
},
|
|
37
|
+
session: {
|
|
38
|
+
messages: async (input) => {
|
|
39
|
+
try {
|
|
40
|
+
const data = await adapter.ctx.session.context({ sessionID: input.path.id });
|
|
41
|
+
return { data };
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
return { data: undefined, error };
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
permission: {
|
|
49
|
+
reply: async (input) => {
|
|
50
|
+
await adapter.ctx.permission.reply({
|
|
51
|
+
requestID: input.requestID,
|
|
52
|
+
decision: input.reply,
|
|
53
|
+
message: input.message,
|
|
54
|
+
});
|
|
55
|
+
return { data: true };
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
directory,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
// END_BLOCK_GUARDIAN_V2_CLIENT_SHIM
|
|
62
|
+
// START_BLOCK_SETUP_GUARDIAN_V2
|
|
63
|
+
/**
|
|
64
|
+
* Register the Guardian review flow on the v2 runtime.
|
|
65
|
+
*
|
|
66
|
+
* The v2 permission.asked and permission.replied events carry the same
|
|
67
|
+
* request fields the v1 events did, so the review flow itself is reused
|
|
68
|
+
* unchanged through the client shim. Tool intents keep flowing from the
|
|
69
|
+
* execute.before hook; the guardian agent definition itself comes from the
|
|
70
|
+
* managed agent files vvoc sync installs, replacing the v1 runtime config
|
|
71
|
+
* hook installation.
|
|
72
|
+
*/
|
|
73
|
+
export async function setupGuardianV2(adapter) {
|
|
74
|
+
const directory = adapter.ctx.location.directory;
|
|
75
|
+
const read = await loadVvocConfigForRead({
|
|
76
|
+
cwd: directory,
|
|
77
|
+
scope: "effective",
|
|
78
|
+
allowDefault: true,
|
|
79
|
+
});
|
|
80
|
+
const vvoc = {
|
|
81
|
+
config: read.config,
|
|
82
|
+
source: read.source,
|
|
83
|
+
warnings: read.warnings,
|
|
84
|
+
loadedAt: new Date().toISOString(),
|
|
85
|
+
};
|
|
86
|
+
const { isVvocPluginEnabled } = await import("../../lib/plugin-toggle-config.js");
|
|
87
|
+
if (!isVvocPluginEnabled(read.config, "guardian"))
|
|
88
|
+
return undefined;
|
|
89
|
+
if (process.env[GUARDIAN_DISABLED_ENV] === "1") {
|
|
90
|
+
// Nested reviews must never grant permissions: auto-deny stays active.
|
|
91
|
+
const controller = new AbortController();
|
|
92
|
+
void (async () => {
|
|
93
|
+
try {
|
|
94
|
+
for await (const event of adapter.ctx.event.subscribe({ signal: controller.signal })) {
|
|
95
|
+
const typed = event;
|
|
96
|
+
if (typed.type !== "permission.asked" || !typed.data?.id || !typed.data.sessionID)
|
|
97
|
+
continue;
|
|
98
|
+
try {
|
|
99
|
+
await adapter.ctx.permission.reply({
|
|
100
|
+
requestID: typed.data.id,
|
|
101
|
+
decision: "reject",
|
|
102
|
+
message: "Guardian nested reviews do not allow additional permissions.",
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
// Nested deny is best-effort.
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
// Stream failures never break the host.
|
|
112
|
+
}
|
|
113
|
+
})();
|
|
114
|
+
return () => controller.abort();
|
|
115
|
+
}
|
|
116
|
+
const guardianConfig = resolveGuardianRuntimeConfig(vvoc);
|
|
117
|
+
const guardianPrompt = await loadManagedAgentPromptText(directory, GUARDIAN_AGENT);
|
|
118
|
+
const client = createClientShim(adapter, directory);
|
|
119
|
+
const dummyUrl = new URL("http://127.0.0.1:1");
|
|
120
|
+
const toolIntentsByCallID = new Map();
|
|
121
|
+
const latestCommandIntentBySessionID = new Map();
|
|
122
|
+
const activeReviews = new Map();
|
|
123
|
+
const controller = new AbortController();
|
|
124
|
+
void (async () => {
|
|
125
|
+
try {
|
|
126
|
+
for await (const event of adapter.ctx.event.subscribe({ signal: controller.signal })) {
|
|
127
|
+
const typed = event;
|
|
128
|
+
if (typed.type === "permission.asked" &&
|
|
129
|
+
typed.data?.id &&
|
|
130
|
+
!activeReviews.has(typed.data.id)) {
|
|
131
|
+
const activeReview = {
|
|
132
|
+
cancelled: false,
|
|
133
|
+
internalReply: false,
|
|
134
|
+
cancellationNoticeShown: false,
|
|
135
|
+
};
|
|
136
|
+
activeReviews.set(typed.data.id, activeReview);
|
|
137
|
+
void reviewPermissionRequest(client, dummyUrl, directory, guardianPrompt, guardianConfig, typed.data, toolIntentsByCallID, latestCommandIntentBySessionID, activeReviews, activeReview).catch((error) => {
|
|
138
|
+
console.error(`[vvoc][guardian] review failed: ${String(error)}`);
|
|
139
|
+
});
|
|
140
|
+
continue;
|
|
141
|
+
}
|
|
142
|
+
if (typed.type === "permission.replied") {
|
|
143
|
+
const permissionID = typed.data?.requestID;
|
|
144
|
+
if (typeof permissionID !== "string")
|
|
145
|
+
continue;
|
|
146
|
+
const activeReview = activeReviews.get(permissionID);
|
|
147
|
+
if (!activeReview || activeReview.internalReply)
|
|
148
|
+
continue;
|
|
149
|
+
activeReview.cancelled = true;
|
|
150
|
+
activeReview.cancel?.();
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
catch (error) {
|
|
155
|
+
console.error(`[vvoc][guardian] event stream failed: ${String(error)}`);
|
|
156
|
+
}
|
|
157
|
+
})();
|
|
158
|
+
return () => controller.abort();
|
|
159
|
+
}
|
|
160
|
+
// END_BLOCK_SETUP_GUARDIAN_V2
|
|
161
|
+
//# sourceMappingURL=v2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v2.js","sourceRoot":"","sources":["../../../src/plugins/guardian/v2.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,34 @@
|
|
|
1
|
-
import { type Plugin } from "@opencode-ai/plugin";
|
|
1
|
+
import { type Plugin, type ToolContext } from "@opencode-ai/plugin";
|
|
2
|
+
import { type EditMode } from "./routing.js";
|
|
3
|
+
import { type HashlineEditToolArgs } from "./schemas.js";
|
|
4
|
+
import { SessionFileCache, type FileSnapshot } from "./session-state.js";
|
|
5
|
+
import { type StrReplaceEditorArgs } from "./str-replace-editor.js";
|
|
6
|
+
export declare const EDIT_VISIBILITY_TOOLS: readonly ["hashline_edit", "edit", "str_replace_editor"];
|
|
7
|
+
declare const EDIT_TYPE_TOOLS: readonly ["hashline_edit", "str_replace_editor"];
|
|
8
|
+
type EditTypeTool = (typeof EDIT_TYPE_TOOLS)[number];
|
|
9
|
+
export declare function isEditTypeTool(toolName: string): toolName is EditTypeTool;
|
|
10
|
+
export declare function visibleToolsForMode(mode: EditMode): EditTypeTool[];
|
|
11
|
+
/**
|
|
12
|
+
* Shared per-session model visibility guard. Both the tool.execute.before hook
|
|
13
|
+
* and every registered execute entry use it, so a directly invoked registered
|
|
14
|
+
* tool cannot bypass the model routing the hook enforces. It resolves only the
|
|
15
|
+
* session's cached model identity and performs no argument inspection, filesystem
|
|
16
|
+
* access, cache update, or metadata report.
|
|
17
|
+
*/
|
|
18
|
+
export declare function assertEditToolVisible(toolName: EditTypeTool, sessionID: string, resolveMode: (sessionID: string) => EditMode): void;
|
|
19
|
+
interface EditTelemetry {
|
|
20
|
+
editMode: EditMode;
|
|
21
|
+
providerID?: string;
|
|
22
|
+
modelID?: string;
|
|
23
|
+
}
|
|
24
|
+
export declare function statSnapshot(filePath: string): Promise<FileSnapshot | undefined>;
|
|
25
|
+
export declare function isReadTool(toolName: string): boolean;
|
|
26
|
+
export declare function isHashlineEligibleReadOutput(output: string): boolean;
|
|
27
|
+
export declare function readArgFilePath(args: unknown): string | undefined;
|
|
28
|
+
export declare function readSourceLines(args: unknown): Promise<string[] | undefined>;
|
|
29
|
+
export declare function transformReadOutput(output: string, sourceLines?: string[]): string;
|
|
30
|
+
export declare function executeHashlineEdit(args: HashlineEditToolArgs, context: ToolContext, telemetry: EditTelemetry): Promise<string>;
|
|
31
|
+
export declare function executeStrReplaceEditor(args: StrReplaceEditorArgs, context: ToolContext, sessionID: string, fileCache: SessionFileCache, telemetry: EditTelemetry): Promise<string>;
|
|
2
32
|
export declare const HashlineEditPlugin: Plugin;
|
|
33
|
+
declare const _default: import("../v2-runtime/index.js").DualPlugin;
|
|
34
|
+
export default _default;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
4
|
// PURPOSE: Route per-model edit tooling: register hashline_edit and dsh str_replace_editor from the single-source contracts, publish their strict input JSON Schemas, validate owned-tool arguments at the hook and direct entries, resolve the session edit mode from vvoc routing config, expose exactly one edit tool per model (the host built-in edit/apply_patch for their cohorts, the plugin profiles otherwise), and transform read output with anchors for hashline sessions.
|
|
5
5
|
// SCOPE: Routing config loading, session model/file caches, chat.message tool-visibility mutation, a shared per-session model visibility guard applied first by both the tool.execute.before hook and every registered execute entry, owned tool.definition publication plus structural/branch argument guards, routed read transformation, hashline/str_replace_editor execution through the schema validators and normalizer, bounded post-edit diff feedback, and editMode telemetry metadata with a bounded reporting-failure distinction that never echoes the thrown message and never misreports an applied edit as invalid or pristine.
|
|
6
|
-
// DEPENDS: [@opencode-ai/plugin, node:fs/promises, node:path, src/lib/agent-tool-contract.ts, src/lib/config-layers.ts, src/plugins/hashline-edit/diff-summary.ts, src/plugins/hashline-edit/edit-operations.ts, src/plugins/hashline-edit/file-text-canonicalization.ts, src/plugins/hashline-edit/hash-computation.ts, src/plugins/hashline-edit/normalize-edits.ts, src/plugins/hashline-edit/routing.ts, src/plugins/hashline-edit/schemas.ts, src/plugins/hashline-edit/session-state.ts, src/plugins/hashline-edit/str-replace-editor.ts, src/plugins/hashline-edit/validation.ts]
|
|
6
|
+
// DEPENDS: [@opencode-ai/plugin, node:fs/promises, node:path, src/lib/agent-tool-contract.ts, src/lib/config-layers.ts, src/plugins/hashline-edit/diff-summary.ts, src/plugins/hashline-edit/edit-operations.ts, src/plugins/hashline-edit/file-text-canonicalization.ts, src/plugins/hashline-edit/hash-computation.ts, src/plugins/hashline-edit/normalize-edits.ts, src/plugins/hashline-edit/routing.ts, src/plugins/hashline-edit/schemas.ts, src/plugins/hashline-edit/session-state.ts, src/plugins/hashline-edit/str-replace-editor.ts, src/plugins/hashline-edit/validation.ts, src/plugins/v2-runtime/index.ts]
|
|
7
7
|
// LINKS: [M-PLUGIN-HASHLINE-EDIT, M-AGENT-TOOL-CONTRACT]
|
|
8
8
|
// ROLE: RUNTIME
|
|
9
9
|
// MAP_MODE: EXPORTS
|
|
@@ -11,10 +11,24 @@
|
|
|
11
11
|
//
|
|
12
12
|
// START_MODULE_MAP
|
|
13
13
|
// HashlineEditPlugin - Registers routed edit tools (hashline_edit, str_replace_editor), per-model tool visibility, owned contract hooks, and the routed read-output enhancer.
|
|
14
|
+
// default - Dual subpath entrypoint: v2 setup() seam plus v1 server() delegating to the named factory.
|
|
15
|
+
// EDIT_VISIBILITY_TOOLS - Edit tool ids whose visibility routing manages.
|
|
16
|
+
// isEditTypeTool - Type guard for the two owned edit tool ids.
|
|
17
|
+
// visibleToolsForMode - Edit tools visible for one edit mode.
|
|
18
|
+
// assertEditToolVisible - Deny a hidden edit tool for a session before argument detail.
|
|
19
|
+
// statSnapshot - File stat snapshot for the session file cache.
|
|
20
|
+
// isReadTool - Read tool id guard.
|
|
21
|
+
// isHashlineEligibleReadOutput - Guard for read outputs worth transforming.
|
|
22
|
+
// readArgFilePath - FilePath extraction from read tool arguments.
|
|
23
|
+
// readSourceLines - Source lines for read arguments when available.
|
|
24
|
+
// transformReadOutput - Routed read transformation with anchors.
|
|
25
|
+
// executeHashlineEdit - Owned hashline_edit executor.
|
|
26
|
+
// executeStrReplaceEditor - Owned str_replace_editor executor.
|
|
27
|
+
// default - Dual subpath entrypoint: v2 setup() seam plus v1 server() delegating to the named factory.
|
|
14
28
|
// END_MODULE_MAP
|
|
15
29
|
//
|
|
16
30
|
// START_CHANGE_SUMMARY
|
|
17
|
-
// LAST_CHANGE: [C-AGENT-TOOL-CONTRACTS T-005 - Registered both edit tools from schemas.ts, published the strict input JSON Schema through tool.definition, added owned argument validation after the existing visibility denial and at direct entries, and narrowed post-write metadata reporting failures without changing literal edit, routing, or anchor semantics.]
|
|
31
|
+
// LAST_CHANGE: [C-OPENCODE-V2-MIGRATION T-001 - Added the dual subpath entrypoint so the plugin loads under OpenCode v1 via server() and v2 via setup(). Prior: C-AGENT-TOOL-CONTRACTS T-005 - Registered both edit tools from schemas.ts, published the strict input JSON Schema through tool.definition, added owned argument validation after the existing visibility denial and at direct entries, and narrowed post-write metadata reporting failures without changing literal edit, routing, or anchor semantics.]
|
|
18
32
|
// END_CHANGE_SUMMARY
|
|
19
33
|
import { tool } from "@opencode-ai/plugin";
|
|
20
34
|
import { resolve } from "node:path";
|
|
@@ -43,15 +57,15 @@ const PIPE_READ_LINE_PATTERN = /^\s*(\d+)\| ?(.*)$/;
|
|
|
43
57
|
// built-in `edit` so deepseek/hashline cohorts see exactly one edit tool;
|
|
44
58
|
// `apply_patch` is deliberately absent (its visibility is owned by the host
|
|
45
59
|
// gate and never forced by this plugin).
|
|
46
|
-
const EDIT_VISIBILITY_TOOLS = ["hashline_edit", "edit", "str_replace_editor"];
|
|
60
|
+
export const EDIT_VISIBILITY_TOOLS = ["hashline_edit", "edit", "str_replace_editor"];
|
|
47
61
|
// Plugin-owned edit tools only. The host built-in edit/apply_patch are never
|
|
48
62
|
// registered or blocked by this plugin; they serve the `edit`/`apply_patch`
|
|
49
63
|
// routing modes with their native behavior.
|
|
50
64
|
const EDIT_TYPE_TOOLS = ["hashline_edit", "str_replace_editor"];
|
|
51
|
-
function isEditTypeTool(toolName) {
|
|
65
|
+
export function isEditTypeTool(toolName) {
|
|
52
66
|
return EDIT_TYPE_TOOLS.includes(toolName);
|
|
53
67
|
}
|
|
54
|
-
function visibleToolsForMode(mode) {
|
|
68
|
+
export function visibleToolsForMode(mode) {
|
|
55
69
|
switch (mode) {
|
|
56
70
|
case "hashline_edit":
|
|
57
71
|
return ["hashline_edit"];
|
|
@@ -72,7 +86,7 @@ function visibleToolsForMode(mode) {
|
|
|
72
86
|
* session's cached model identity and performs no argument inspection, filesystem
|
|
73
87
|
* access, cache update, or metadata report.
|
|
74
88
|
*/
|
|
75
|
-
function assertEditToolVisible(toolName, sessionID, resolveMode) {
|
|
89
|
+
export function assertEditToolVisible(toolName, sessionID, resolveMode) {
|
|
76
90
|
const mode = resolveMode(sessionID);
|
|
77
91
|
const visible = visibleToolsForMode(mode);
|
|
78
92
|
if (visible.includes(toolName)) {
|
|
@@ -82,7 +96,7 @@ function assertEditToolVisible(toolName, sessionID, resolveMode) {
|
|
|
82
96
|
throw new Error(`${toolName} is not available for this session's model (edit mode: ${mode}). Use ${preferred} instead.`);
|
|
83
97
|
}
|
|
84
98
|
// START_BLOCK_FS_HELPERS
|
|
85
|
-
async function statSnapshot(filePath) {
|
|
99
|
+
export async function statSnapshot(filePath) {
|
|
86
100
|
try {
|
|
87
101
|
const info = await stat(filePath);
|
|
88
102
|
if (!info.isFile()) {
|
|
@@ -167,14 +181,14 @@ function publishSuccessMetadata(args) {
|
|
|
167
181
|
},
|
|
168
182
|
});
|
|
169
183
|
}
|
|
170
|
-
function isReadTool(toolName) {
|
|
184
|
+
export function isReadTool(toolName) {
|
|
171
185
|
return toolName.toLowerCase() === "read";
|
|
172
186
|
}
|
|
173
187
|
function isTextFileOutput(output) {
|
|
174
188
|
const firstLine = output.split("\n")[0] ?? "";
|
|
175
189
|
return COLON_READ_LINE_PATTERN.test(firstLine) || PIPE_READ_LINE_PATTERN.test(firstLine);
|
|
176
190
|
}
|
|
177
|
-
function isHashlineEligibleReadOutput(output) {
|
|
191
|
+
export function isHashlineEligibleReadOutput(output) {
|
|
178
192
|
if (!output) {
|
|
179
193
|
return false;
|
|
180
194
|
}
|
|
@@ -194,7 +208,7 @@ function isHashlineEligibleReadOutput(output) {
|
|
|
194
208
|
}
|
|
195
209
|
return isTextFileOutput(lines[0] ?? "");
|
|
196
210
|
}
|
|
197
|
-
function readArgFilePath(args) {
|
|
211
|
+
export function readArgFilePath(args) {
|
|
198
212
|
if (!args || typeof args !== "object") {
|
|
199
213
|
return undefined;
|
|
200
214
|
}
|
|
@@ -206,7 +220,7 @@ function readArgFilePath(args) {
|
|
|
206
220
|
}
|
|
207
221
|
return undefined;
|
|
208
222
|
}
|
|
209
|
-
async function readSourceLines(args) {
|
|
223
|
+
export async function readSourceLines(args) {
|
|
210
224
|
const filePath = readArgFilePath(args);
|
|
211
225
|
if (!filePath) {
|
|
212
226
|
return undefined;
|
|
@@ -302,7 +316,7 @@ function formatReadLines(parsedLines, rawLines, sourceLines) {
|
|
|
302
316
|
}
|
|
303
317
|
return result;
|
|
304
318
|
}
|
|
305
|
-
function transformReadOutput(output, sourceLines) {
|
|
319
|
+
export function transformReadOutput(output, sourceLines) {
|
|
306
320
|
if (!output) {
|
|
307
321
|
return output;
|
|
308
322
|
}
|
|
@@ -352,7 +366,7 @@ function transformReadOutput(output, sourceLines) {
|
|
|
352
366
|
return result.join("\n");
|
|
353
367
|
}
|
|
354
368
|
// START_BLOCK_HASHLINE_EXECUTE
|
|
355
|
-
async function executeHashlineEdit(args, context, telemetry) {
|
|
369
|
+
export async function executeHashlineEdit(args, context, telemetry) {
|
|
356
370
|
try {
|
|
357
371
|
const validation = validateHashlineEditToolInput(args);
|
|
358
372
|
if (!validation.ok) {
|
|
@@ -447,7 +461,7 @@ async function executeHashlineEdit(args, context, telemetry) {
|
|
|
447
461
|
}
|
|
448
462
|
// END_BLOCK_HASHLINE_EXECUTE
|
|
449
463
|
// START_BLOCK_STR_REPLACE_EXECUTE
|
|
450
|
-
async function executeStrReplaceEditor(args, context, sessionID, fileCache, telemetry) {
|
|
464
|
+
export async function executeStrReplaceEditor(args, context, sessionID, fileCache, telemetry) {
|
|
451
465
|
const editor = new StrReplaceEditor({
|
|
452
466
|
fs: createNodeStrReplaceFs(),
|
|
453
467
|
onViewed: (path, snapshot) => fileCache.record(sessionID, path, snapshot),
|
|
@@ -593,4 +607,14 @@ export const HashlineEditPlugin = async ({ directory }) => {
|
|
|
593
607
|
};
|
|
594
608
|
};
|
|
595
609
|
// END_BLOCK_PLUGIN
|
|
610
|
+
// START_BLOCK_DUAL_SUBPATH_ENTRY
|
|
611
|
+
import { defineDualPlugin } from "../v2-runtime/index.js";
|
|
612
|
+
import { createV2Adapter } from "../v2-runtime/setup.js";
|
|
613
|
+
import { setupHashlineEditV2 } from "./v2.js";
|
|
614
|
+
export default defineDualPlugin({
|
|
615
|
+
id: "vvoc.hashline-edit",
|
|
616
|
+
v1: HashlineEditPlugin,
|
|
617
|
+
v2: (ctx) => setupHashlineEditV2(createV2Adapter(ctx)),
|
|
618
|
+
});
|
|
619
|
+
// END_BLOCK_DUAL_SUBPATH_ENTRY
|
|
596
620
|
//# sourceMappingURL=index.js.map
|