opencode-command-hooks 0.1.4 → 0.1.5
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/dist/config/agent.d.ts +0 -24
- package/dist/config/agent.d.ts.map +1 -1
- package/dist/config/agent.js +0 -34
- package/dist/config/agent.js.map +1 -1
- package/dist/config/global.d.ts.map +1 -1
- package/dist/config/global.js +1 -17
- package/dist/config/global.js.map +1 -1
- package/dist/config/markdown.d.ts +0 -14
- package/dist/config/markdown.d.ts.map +1 -1
- package/dist/config/markdown.js +9 -80
- package/dist/config/markdown.js.map +1 -1
- package/dist/execution/shell.d.ts.map +1 -1
- package/dist/execution/shell.js +1 -7
- package/dist/execution/shell.js.map +1 -1
- package/dist/execution/template.d.ts.map +1 -1
- package/dist/execution/template.js +1 -7
- package/dist/execution/template.js.map +1 -1
- package/dist/executor.d.ts.map +1 -1
- package/dist/executor.js +9 -96
- package/dist/executor.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +83 -151
- package/dist/index.js.map +1 -1
- package/dist/logging.d.ts +8 -4
- package/dist/logging.d.ts.map +1 -1
- package/dist/logging.js +11 -19
- package/dist/logging.js.map +1 -1
- package/dist/schemas.d.ts +16 -12
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +17 -0
- package/dist/schemas.js.map +1 -1
- package/dist/types/hooks.d.ts +75 -487
- package/dist/types/hooks.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/config/agent.d.ts
CHANGED
|
@@ -55,28 +55,4 @@ export declare function resolveAgentPath(agentName: string): Promise<string | nu
|
|
|
55
55
|
* ```
|
|
56
56
|
*/
|
|
57
57
|
export declare function loadAgentConfig(agentName: string): Promise<CommandHooksConfig>;
|
|
58
|
-
/**
|
|
59
|
-
* Load and merge agent-specific configuration with global configuration
|
|
60
|
-
*
|
|
61
|
-
* Combines global command hooks with agent-specific hooks, where agent hooks
|
|
62
|
-
* take precedence for the specific agent context. This is useful when you want
|
|
63
|
-
* to apply both global hooks and agent-specific hooks together.
|
|
64
|
-
*
|
|
65
|
-
* The merge follows the same precedence rules as mergeConfigs:
|
|
66
|
-
* - Agent hooks with the same ID replace global hooks
|
|
67
|
-
* - Agent hooks with unique IDs are added alongside global hooks
|
|
68
|
-
*
|
|
69
|
-
* @param agentName - Name of the agent to load configuration for
|
|
70
|
-
* @returns Promise resolving to merged CommandHooksConfig
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* ```typescript
|
|
74
|
-
* const { config } = await loadAgentConfigWithGlobal("engineer");
|
|
75
|
-
* // Returns merged config with both global and engineer-specific hooks
|
|
76
|
-
* ```
|
|
77
|
-
*/
|
|
78
|
-
export declare function loadAgentConfigWithGlobal(agentName: string): Promise<{
|
|
79
|
-
config: CommandHooksConfig;
|
|
80
|
-
agentPath: string | null;
|
|
81
|
-
}>;
|
|
82
58
|
//# sourceMappingURL=agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/config/agent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAM5D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAqChF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqBpF
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/config/agent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAM5D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAqChF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqBpF"}
|
package/dist/config/agent.js
CHANGED
|
@@ -109,38 +109,4 @@ export async function loadAgentConfig(agentName) {
|
|
|
109
109
|
}
|
|
110
110
|
return config;
|
|
111
111
|
}
|
|
112
|
-
/**
|
|
113
|
-
* Load and merge agent-specific configuration with global configuration
|
|
114
|
-
*
|
|
115
|
-
* Combines global command hooks with agent-specific hooks, where agent hooks
|
|
116
|
-
* take precedence for the specific agent context. This is useful when you want
|
|
117
|
-
* to apply both global hooks and agent-specific hooks together.
|
|
118
|
-
*
|
|
119
|
-
* The merge follows the same precedence rules as mergeConfigs:
|
|
120
|
-
* - Agent hooks with the same ID replace global hooks
|
|
121
|
-
* - Agent hooks with unique IDs are added alongside global hooks
|
|
122
|
-
*
|
|
123
|
-
* @param agentName - Name of the agent to load configuration for
|
|
124
|
-
* @returns Promise resolving to merged CommandHooksConfig
|
|
125
|
-
*
|
|
126
|
-
* @example
|
|
127
|
-
* ```typescript
|
|
128
|
-
* const { config } = await loadAgentConfigWithGlobal("engineer");
|
|
129
|
-
* // Returns merged config with both global and engineer-specific hooks
|
|
130
|
-
* ```
|
|
131
|
-
*/
|
|
132
|
-
export async function loadAgentConfigWithGlobal(agentName) {
|
|
133
|
-
const [globalResult, agentConfig] = await Promise.all([
|
|
134
|
-
import("./global.js").then((m) => m.loadGlobalConfig()),
|
|
135
|
-
loadAgentConfig(agentName),
|
|
136
|
-
]);
|
|
137
|
-
const globalConfig = globalResult.config;
|
|
138
|
-
return {
|
|
139
|
-
config: {
|
|
140
|
-
tool: [...(globalConfig.tool ?? []), ...(agentConfig.tool ?? [])],
|
|
141
|
-
session: [...(globalConfig.session ?? []), ...(agentConfig.session ?? [])],
|
|
142
|
-
},
|
|
143
|
-
agentPath: await resolveAgentPath(agentName),
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
112
|
//# sourceMappingURL=agent.js.map
|
package/dist/config/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/config/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/config/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../../src/config/global.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../../src/config/global.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAK5D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAuIF;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CA2EpE"}
|
package/dist/config/global.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Searches for .opencode/command-hooks.jsonc starting from the current working
|
|
5
5
|
* directory and walking up the directory tree. Parses JSONC format as CommandHooksConfig.
|
|
6
6
|
*/
|
|
7
|
+
import { isValidCommandHooksConfig } from "../schemas.js";
|
|
7
8
|
import { join, dirname } from "path";
|
|
8
9
|
import { logger } from "../logging.js";
|
|
9
10
|
/**
|
|
@@ -89,23 +90,6 @@ function parseJson(content) {
|
|
|
89
90
|
throw new Error(`Failed to parse JSON: ${message}`);
|
|
90
91
|
}
|
|
91
92
|
}
|
|
92
|
-
/**
|
|
93
|
-
* Check if a value is a valid CommandHooksConfig object
|
|
94
|
-
*/
|
|
95
|
-
function isValidCommandHooksConfig(value) {
|
|
96
|
-
if (typeof value !== "object" || value === null) {
|
|
97
|
-
return false;
|
|
98
|
-
}
|
|
99
|
-
const obj = value;
|
|
100
|
-
// Both tool and session are optional
|
|
101
|
-
if (obj.tool !== undefined && !Array.isArray(obj.tool)) {
|
|
102
|
-
return false;
|
|
103
|
-
}
|
|
104
|
-
if (obj.session !== undefined && !Array.isArray(obj.session)) {
|
|
105
|
-
return false;
|
|
106
|
-
}
|
|
107
|
-
return true;
|
|
108
|
-
}
|
|
109
93
|
/**
|
|
110
94
|
* Find command hooks config file by walking up directory tree
|
|
111
95
|
* Looks for .opencode/command-hooks.jsonc
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/config/global.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/config/global.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,10 +85,6 @@ export declare function convertToCommandHooksConfig(agentHooks: AgentHooks, agen
|
|
|
85
85
|
* Reads a markdown file, extracts YAML frontmatter, parses it, and extracts
|
|
86
86
|
* either the new simplified `hooks` format or the legacy `command_hooks` format.
|
|
87
87
|
*
|
|
88
|
-
* **Caching:** This function implements in-memory caching per file path to avoid
|
|
89
|
-
* repeated file reads. The cache is checked first; if not found, the file is read
|
|
90
|
-
* from disk and cached for subsequent calls.
|
|
91
|
-
*
|
|
92
88
|
* Error handling:
|
|
93
89
|
* - If file doesn't exist: returns empty config (not an error)
|
|
94
90
|
* - If no frontmatter found: returns empty config
|
|
@@ -106,14 +102,4 @@ export declare function convertToCommandHooksConfig(agentHooks: AgentHooks, agen
|
|
|
106
102
|
* ```
|
|
107
103
|
*/
|
|
108
104
|
export declare function loadMarkdownConfig(filePath: string): Promise<CommandHooksConfig>;
|
|
109
|
-
/**
|
|
110
|
-
* Clear the markdown config cache for a specific file
|
|
111
|
-
*
|
|
112
|
-
* Forces the next call to loadMarkdownConfig() for this file to reload from disk.
|
|
113
|
-
* Useful for testing or when config files may have changed.
|
|
114
|
-
*
|
|
115
|
-
* @param filePath - Path to clear from cache, or undefined to clear all
|
|
116
|
-
* @internal For testing purposes
|
|
117
|
-
*/
|
|
118
|
-
export declare function clearMarkdownConfigCache(filePath?: string): void;
|
|
119
105
|
//# sourceMappingURL=markdown.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/config/markdown.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAkB,kBAAkB,EAAY,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/config/markdown.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAkB,kBAAkB,EAAY,MAAM,mBAAmB,CAAC;AAOlG;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmBrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAS7D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,GAClB,UAAU,GAAG,IAAI,CA8CnB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,GAChB,kBAAkB,CAqCpB;AAqDD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,kBAAkB,CACpC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAmG7B"}
|
package/dist/config/markdown.js
CHANGED
|
@@ -5,14 +5,9 @@
|
|
|
5
5
|
* Supports both agent markdown files (typically in .opencode/agents/) and slash-command
|
|
6
6
|
* markdown files (typically in .opencode/commands/).
|
|
7
7
|
*/
|
|
8
|
+
import { isValidCommandHooksConfig } from "../schemas.js";
|
|
8
9
|
import { load as parseYaml } from "js-yaml";
|
|
9
10
|
import { logger } from "../logging.js";
|
|
10
|
-
/**
|
|
11
|
-
* In-memory cache for markdown configurations
|
|
12
|
-
* Maps file paths to their parsed CommandHooksConfig to avoid repeated file reads.
|
|
13
|
-
* Entries are cached indefinitely; clear manually if config files change.
|
|
14
|
-
*/
|
|
15
|
-
const markdownConfigCache = new Map();
|
|
16
11
|
/**
|
|
17
12
|
* Extract YAML frontmatter from markdown content
|
|
18
13
|
*
|
|
@@ -193,23 +188,6 @@ function convertAgentHookEntryToToolHook(entry, agentName, phase, index) {
|
|
|
193
188
|
toast: entry.toast,
|
|
194
189
|
};
|
|
195
190
|
}
|
|
196
|
-
/**
|
|
197
|
-
* Check if a value is a valid CommandHooksConfig object
|
|
198
|
-
*/
|
|
199
|
-
function isValidCommandHooksConfig(value) {
|
|
200
|
-
if (typeof value !== "object" || value === null) {
|
|
201
|
-
return false;
|
|
202
|
-
}
|
|
203
|
-
const obj = value;
|
|
204
|
-
// Both tool and session are optional
|
|
205
|
-
if (obj.tool !== undefined && !Array.isArray(obj.tool)) {
|
|
206
|
-
return false;
|
|
207
|
-
}
|
|
208
|
-
if (obj.session !== undefined && !Array.isArray(obj.session)) {
|
|
209
|
-
return false;
|
|
210
|
-
}
|
|
211
|
-
return true;
|
|
212
|
-
}
|
|
213
191
|
/**
|
|
214
192
|
* Extract agent name from file path
|
|
215
193
|
*
|
|
@@ -235,10 +213,6 @@ function extractAgentNameFromPath(filePath) {
|
|
|
235
213
|
* Reads a markdown file, extracts YAML frontmatter, parses it, and extracts
|
|
236
214
|
* either the new simplified `hooks` format or the legacy `command_hooks` format.
|
|
237
215
|
*
|
|
238
|
-
* **Caching:** This function implements in-memory caching per file path to avoid
|
|
239
|
-
* repeated file reads. The cache is checked first; if not found, the file is read
|
|
240
|
-
* from disk and cached for subsequent calls.
|
|
241
|
-
*
|
|
242
216
|
* Error handling:
|
|
243
217
|
* - If file doesn't exist: returns empty config (not an error)
|
|
244
218
|
* - If no frontmatter found: returns empty config
|
|
@@ -256,12 +230,6 @@ function extractAgentNameFromPath(filePath) {
|
|
|
256
230
|
* ```
|
|
257
231
|
*/
|
|
258
232
|
export async function loadMarkdownConfig(filePath) {
|
|
259
|
-
// Check cache first
|
|
260
|
-
if (markdownConfigCache.has(filePath)) {
|
|
261
|
-
const cached = markdownConfigCache.get(filePath);
|
|
262
|
-
logger.debug(`Returning cached markdown config from ${filePath}: ${cached.tool?.length ?? 0} tool hooks, ${cached.session?.length ?? 0} session hooks`);
|
|
263
|
-
return cached;
|
|
264
|
-
}
|
|
265
233
|
try {
|
|
266
234
|
// Try to read the file
|
|
267
235
|
let content;
|
|
@@ -269,41 +237,31 @@ export async function loadMarkdownConfig(filePath) {
|
|
|
269
237
|
const file = Bun.file(filePath);
|
|
270
238
|
if (!(await file.exists())) {
|
|
271
239
|
logger.debug(`Markdown file not found: ${filePath}`);
|
|
272
|
-
|
|
273
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
274
|
-
return emptyConfig;
|
|
240
|
+
return { tool: [], session: [] };
|
|
275
241
|
}
|
|
276
242
|
content = await file.text();
|
|
277
243
|
}
|
|
278
244
|
catch (error) {
|
|
279
245
|
const message = error instanceof Error ? error.message : String(error);
|
|
280
246
|
logger.debug(`Failed to read markdown file ${filePath}: ${message}`);
|
|
281
|
-
|
|
282
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
283
|
-
return emptyConfig;
|
|
247
|
+
return { tool: [], session: [] };
|
|
284
248
|
}
|
|
285
249
|
// Extract YAML frontmatter
|
|
286
250
|
const yamlContent = extractYamlFrontmatter(content);
|
|
287
251
|
if (!yamlContent) {
|
|
288
252
|
logger.debug(`No YAML frontmatter found in ${filePath}`);
|
|
289
|
-
|
|
290
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
291
|
-
return emptyConfig;
|
|
253
|
+
return { tool: [], session: [] };
|
|
292
254
|
}
|
|
293
255
|
// Parse YAML
|
|
294
256
|
const parsed = parseYamlFrontmatter(yamlContent);
|
|
295
257
|
if (parsed === null) {
|
|
296
258
|
logger.info(`Failed to parse YAML frontmatter in ${filePath}`);
|
|
297
|
-
|
|
298
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
299
|
-
return emptyConfig;
|
|
259
|
+
return { tool: [], session: [] };
|
|
300
260
|
}
|
|
301
261
|
// Extract command_hooks field
|
|
302
262
|
if (typeof parsed !== "object" || parsed === null) {
|
|
303
263
|
logger.debug(`Parsed YAML is not an object in ${filePath}`);
|
|
304
|
-
|
|
305
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
306
|
-
return emptyConfig;
|
|
264
|
+
return { tool: [], session: [] };
|
|
307
265
|
}
|
|
308
266
|
const config = parsed;
|
|
309
267
|
// First, try to parse the new simplified hooks format
|
|
@@ -313,24 +271,18 @@ export async function loadMarkdownConfig(filePath) {
|
|
|
313
271
|
// Convert simplified format to internal format
|
|
314
272
|
const result = convertToCommandHooksConfig(agentHooks, agentName);
|
|
315
273
|
logger.debug(`Loaded simplified hooks from ${filePath}: ${result.tool?.length ?? 0} tool hooks`);
|
|
316
|
-
// Cache the result
|
|
317
|
-
markdownConfigCache.set(filePath, result);
|
|
318
274
|
return result;
|
|
319
275
|
}
|
|
320
276
|
// Fall back to old command_hooks format
|
|
321
277
|
const commandHooks = config.command_hooks;
|
|
322
278
|
if (commandHooks === undefined) {
|
|
323
279
|
logger.debug(`No hooks or command_hooks field in ${filePath}`);
|
|
324
|
-
|
|
325
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
326
|
-
return emptyConfig;
|
|
280
|
+
return { tool: [], session: [] };
|
|
327
281
|
}
|
|
328
282
|
// Validate command_hooks structure
|
|
329
283
|
if (!isValidCommandHooksConfig(commandHooks)) {
|
|
330
284
|
logger.info(`command_hooks field is not a valid object in ${filePath} (expected { tool?: [], session?: [] })`);
|
|
331
|
-
|
|
332
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
333
|
-
return emptyConfig;
|
|
285
|
+
return { tool: [], session: [] };
|
|
334
286
|
}
|
|
335
287
|
// Return with defaults for missing arrays
|
|
336
288
|
const result = {
|
|
@@ -338,36 +290,13 @@ export async function loadMarkdownConfig(filePath) {
|
|
|
338
290
|
session: commandHooks.session ?? [],
|
|
339
291
|
};
|
|
340
292
|
logger.debug(`Loaded command_hooks from ${filePath}: ${result.tool?.length ?? 0} tool hooks, ${result.session?.length ?? 0} session hooks`);
|
|
341
|
-
// Cache the result
|
|
342
|
-
markdownConfigCache.set(filePath, result);
|
|
343
293
|
return result;
|
|
344
294
|
}
|
|
345
295
|
catch (error) {
|
|
346
296
|
// Catch-all for unexpected errors
|
|
347
297
|
const message = error instanceof Error ? error.message : String(error);
|
|
348
298
|
logger.info(`Unexpected error loading markdown config from ${filePath}: ${message}`);
|
|
349
|
-
|
|
350
|
-
markdownConfigCache.set(filePath, emptyConfig);
|
|
351
|
-
return emptyConfig;
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
/**
|
|
355
|
-
* Clear the markdown config cache for a specific file
|
|
356
|
-
*
|
|
357
|
-
* Forces the next call to loadMarkdownConfig() for this file to reload from disk.
|
|
358
|
-
* Useful for testing or when config files may have changed.
|
|
359
|
-
*
|
|
360
|
-
* @param filePath - Path to clear from cache, or undefined to clear all
|
|
361
|
-
* @internal For testing purposes
|
|
362
|
-
*/
|
|
363
|
-
export function clearMarkdownConfigCache(filePath) {
|
|
364
|
-
if (filePath) {
|
|
365
|
-
logger.debug(`Clearing markdown config cache for ${filePath}`);
|
|
366
|
-
markdownConfigCache.delete(filePath);
|
|
367
|
-
}
|
|
368
|
-
else {
|
|
369
|
-
logger.debug("Clearing all markdown config cache");
|
|
370
|
-
markdownConfigCache.clear();
|
|
299
|
+
return { tool: [], session: [] };
|
|
371
300
|
}
|
|
372
301
|
}
|
|
373
302
|
//# sourceMappingURL=markdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/config/markdown.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/config/markdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/execution/shell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/execution/shell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAkB5D;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,GACrC,OAAO,CAAC,mBAAmB,CAAC,CAuC9B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,EAC3B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CA+ChC"}
|
package/dist/execution/shell.js
CHANGED
|
@@ -11,14 +11,8 @@
|
|
|
11
11
|
* - Never throw errors - always return results
|
|
12
12
|
* - Support debug logging via OPENCODE_HOOKS_DEBUG
|
|
13
13
|
*/
|
|
14
|
-
import { logger } from "../logging.js";
|
|
14
|
+
import { logger, isDebugEnabled } from "../logging.js";
|
|
15
15
|
const DEFAULT_TRUNCATE_LIMIT = 30000;
|
|
16
|
-
/**
|
|
17
|
-
* Check if debug logging is enabled
|
|
18
|
-
*/
|
|
19
|
-
function isDebugEnabled() {
|
|
20
|
-
return process.env.OPENCODE_HOOKS_DEBUG === "1" || process.env.OPENCODE_HOOKS_DEBUG === "true";
|
|
21
|
-
}
|
|
22
16
|
/**
|
|
23
17
|
* Truncate text to a maximum length, matching OpenCode's bash tool behavior
|
|
24
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/execution/shell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/execution/shell.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/execution/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/execution/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAoBxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAmClG"}
|
|
@@ -14,13 +14,7 @@
|
|
|
14
14
|
* - {stderr} - command stderr (if available)
|
|
15
15
|
* - {exitCode} - command exit code (if available)
|
|
16
16
|
*/
|
|
17
|
-
import { logger } from "../logging.js";
|
|
18
|
-
/**
|
|
19
|
-
* Check if debug logging is enabled
|
|
20
|
-
*/
|
|
21
|
-
function isDebugEnabled() {
|
|
22
|
-
return process.env.OPENCODE_HOOKS_DEBUG === "1" || process.env.OPENCODE_HOOKS_DEBUG === "true";
|
|
23
|
-
}
|
|
17
|
+
import { logger, isDebugEnabled } from "../logging.js";
|
|
24
18
|
/**
|
|
25
19
|
* Replace a placeholder in a template string with a value
|
|
26
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/execution/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/execution/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEtD;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,QAAgB,EAAE,WAAmB,EAAE,KAAc;IAC/E,mDAAmD;IACnD,MAAM,WAAW,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAE9E,+CAA+C;IAC/C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,WAAW,KAAK,EAAE,GAAG,CAAC,CAAA;IACrD,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;AAC7C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAA4B,EAAE,OAAwB;IACxF,iCAAiC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,CAAA;IACX,CAAC;IAEC,IAAI,cAAc,EAAE,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,wCAAwC,IAAI,CAAC,SAAS,CAAC;YAClE,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACnE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC5E,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC5E,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,EAAE,CAAC,CAAA;IACP,CAAC;IAEH,IAAI,MAAM,GAAG,QAAQ,CAAA;IAErB,2BAA2B;IAC3B,wDAAwD;IACxD,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IACrD,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAC3D,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACvD,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7D,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7D,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IAE/D,IAAI,cAAc,EAAE,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,mDAAmD,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;IAClF,CAAC;IAEH,OAAO,MAAM,CAAA;AACf,CAAC"}
|
package/dist/executor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EACT,QAAQ,EACR,WAAW,EAEX,oBAAoB,EACtB,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EACT,QAAQ,EACR,WAAW,EAEX,oBAAoB,EACtB,MAAM,kBAAkB,CAAA;AA+MzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,YAAY,CAC/B,KAAK,EAAE,CAAC,QAAQ,GAAG,WAAW,CAAC,EAAE,EACjC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,cAAc,EACtB,eAAe,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
|