cmdr-agent 2.2.0 → 2.4.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/dist/package.json +1 -1
- package/dist/src/cli/commands.js +1 -1
- package/dist/src/cli/commands.js.map +1 -1
- package/dist/src/cli/ink/App.d.ts +2 -0
- package/dist/src/cli/ink/App.d.ts.map +1 -1
- package/dist/src/cli/ink/App.js +56 -7
- package/dist/src/cli/ink/App.js.map +1 -1
- package/dist/src/cli/repl.d.ts.map +1 -1
- package/dist/src/cli/repl.js +91 -1
- package/dist/src/cli/repl.js.map +1 -1
- package/dist/src/config/mcp-config.d.ts +41 -0
- package/dist/src/config/mcp-config.d.ts.map +1 -0
- package/dist/src/config/mcp-config.js +55 -0
- package/dist/src/config/mcp-config.js.map +1 -0
- package/dist/src/config/mcp-registry.d.ts +45 -0
- package/dist/src/config/mcp-registry.d.ts.map +1 -0
- package/dist/src/config/mcp-registry.js +156 -0
- package/dist/src/config/mcp-registry.js.map +1 -0
- package/dist/src/config/schema.d.ts +8 -8
- package/dist/src/core/agent-runner.d.ts +4 -0
- package/dist/src/core/agent-runner.d.ts.map +1 -1
- package/dist/src/core/agent-runner.js +60 -1
- package/dist/src/core/agent-runner.js.map +1 -1
- package/dist/src/core/agent.d.ts +4 -0
- package/dist/src/core/agent.d.ts.map +1 -1
- package/dist/src/core/agent.js +6 -0
- package/dist/src/core/agent.js.map +1 -1
- package/dist/src/core/graph-context.d.ts +83 -0
- package/dist/src/core/graph-context.d.ts.map +1 -0
- package/dist/src/core/graph-context.js +370 -0
- package/dist/src/core/graph-context.js.map +1 -0
- package/dist/src/core/hooks.d.ts +61 -0
- package/dist/src/core/hooks.d.ts.map +1 -0
- package/dist/src/core/hooks.js +140 -0
- package/dist/src/core/hooks.js.map +1 -0
- package/dist/src/core/intent.d.ts.map +1 -1
- package/dist/src/core/intent.js +3 -0
- package/dist/src/core/intent.js.map +1 -1
- package/dist/src/core/permissions.d.ts +43 -0
- package/dist/src/core/permissions.d.ts.map +1 -1
- package/dist/src/core/permissions.js +108 -0
- package/dist/src/core/permissions.js.map +1 -1
- package/dist/src/core/presets.d.ts.map +1 -1
- package/dist/src/core/presets.js +6 -2
- package/dist/src/core/presets.js.map +1 -1
- package/dist/src/core/types.d.ts +7 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/tools/built-in/bash.d.ts +1 -1
- package/dist/src/tools/built-in/cron-tools.d.ts +19 -0
- package/dist/src/tools/built-in/cron-tools.d.ts.map +1 -0
- package/dist/src/tools/built-in/cron-tools.js +86 -0
- package/dist/src/tools/built-in/cron-tools.js.map +1 -0
- package/dist/src/tools/built-in/graph-tools.d.ts +31 -0
- package/dist/src/tools/built-in/graph-tools.d.ts.map +1 -0
- package/dist/src/tools/built-in/graph-tools.js +103 -0
- package/dist/src/tools/built-in/graph-tools.js.map +1 -0
- package/dist/src/tools/built-in/index.d.ts +8 -1
- package/dist/src/tools/built-in/index.d.ts.map +1 -1
- package/dist/src/tools/built-in/index.js +15 -2
- package/dist/src/tools/built-in/index.js.map +1 -1
- package/dist/src/tools/built-in/mcp-resource-tools.d.ts +16 -0
- package/dist/src/tools/built-in/mcp-resource-tools.d.ts.map +1 -0
- package/dist/src/tools/built-in/mcp-resource-tools.js +73 -0
- package/dist/src/tools/built-in/mcp-resource-tools.js.map +1 -0
- package/dist/src/tools/built-in/plan-tools.d.ts +13 -0
- package/dist/src/tools/built-in/plan-tools.d.ts.map +1 -0
- package/dist/src/tools/built-in/plan-tools.js +42 -0
- package/dist/src/tools/built-in/plan-tools.js.map +1 -0
- package/dist/src/tools/built-in/task-tools.d.ts +22 -0
- package/dist/src/tools/built-in/task-tools.d.ts.map +1 -0
- package/dist/src/tools/built-in/task-tools.js +113 -0
- package/dist/src/tools/built-in/task-tools.js.map +1 -0
- package/dist/src/tools/built-in/todo-tool.d.ts +21 -0
- package/dist/src/tools/built-in/todo-tool.d.ts.map +1 -0
- package/dist/src/tools/built-in/todo-tool.js +52 -0
- package/dist/src/tools/built-in/todo-tool.js.map +1 -0
- package/dist/src/tools/built-in/web-fetch.d.ts +1 -1
- package/dist/src/tools/built-in/web-search.d.ts +9 -0
- package/dist/src/tools/built-in/web-search.d.ts.map +1 -0
- package/dist/src/tools/built-in/web-search.js +89 -0
- package/dist/src/tools/built-in/web-search.js.map +1 -0
- package/package.json +1 -1
|
@@ -9,6 +9,27 @@
|
|
|
9
9
|
* - Prefix matching for bash commands (e.g. "npm test" allows "npm test --watch")
|
|
10
10
|
*/
|
|
11
11
|
import type { PermissionMode, ToolRiskLevel, ApprovalCallback } from './types.js';
|
|
12
|
+
/**
|
|
13
|
+
* Pattern rule: "Tool(specifier)" format.
|
|
14
|
+
* Examples:
|
|
15
|
+
* allow: ["bash(npm run *)", "file_read(src/**)"]
|
|
16
|
+
* deny: ["bash(curl *)", "file_read(.env)"]
|
|
17
|
+
* ask: ["bash(git push *)"]
|
|
18
|
+
*
|
|
19
|
+
* Priority: deny > ask > allow (most restrictive wins).
|
|
20
|
+
*/
|
|
21
|
+
export interface PermissionRule {
|
|
22
|
+
/** 'allow' auto-approves, 'deny' auto-blocks, 'ask' always prompts. */
|
|
23
|
+
action: 'allow' | 'deny' | 'ask';
|
|
24
|
+
/** Tool name to match. */
|
|
25
|
+
tool: string;
|
|
26
|
+
/** Optional glob pattern for the tool's primary argument. */
|
|
27
|
+
pattern?: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Parse a permission rule string like "bash(npm run *)" into structured form.
|
|
31
|
+
*/
|
|
32
|
+
export declare function parsePermissionRule(rule: string, action: 'allow' | 'deny' | 'ask'): PermissionRule;
|
|
12
33
|
export declare function classifyTool(toolName: string): ToolRiskLevel;
|
|
13
34
|
export declare class PermissionManager {
|
|
14
35
|
private mode;
|
|
@@ -20,6 +41,8 @@ export declare class PermissionManager {
|
|
|
20
41
|
private pathRules;
|
|
21
42
|
/** Command-prefix rules for bash tool. */
|
|
22
43
|
private bashRules;
|
|
44
|
+
/** Pattern-based permission rules (Tool(pattern) syntax). */
|
|
45
|
+
private permissionRules;
|
|
23
46
|
/** Project root for resolving relative paths in rules. */
|
|
24
47
|
private projectRoot;
|
|
25
48
|
constructor(mode?: PermissionMode);
|
|
@@ -34,6 +57,14 @@ export declare class PermissionManager {
|
|
|
34
57
|
addPathRule(pattern: string, allow?: boolean): void;
|
|
35
58
|
/** Add a bash command rule (e.g. allow "npm test"). */
|
|
36
59
|
addBashRule(prefix: string, allow?: boolean): void;
|
|
60
|
+
/** Add a pattern permission rule (e.g. "bash(npm run *)" with action "allow"). */
|
|
61
|
+
addPermissionRule(ruleString: string, action: 'allow' | 'deny' | 'ask'): void;
|
|
62
|
+
/** Load permission rules from config format: { allow: [...], deny: [...], ask: [...] } */
|
|
63
|
+
loadPermissionRules(config: {
|
|
64
|
+
allow?: string[];
|
|
65
|
+
deny?: string[];
|
|
66
|
+
ask?: string[];
|
|
67
|
+
}): void;
|
|
37
68
|
/**
|
|
38
69
|
* Check if a specific file path is allowed by path rules.
|
|
39
70
|
* Returns true (allowed), false (denied), or undefined (no matching rule).
|
|
@@ -49,6 +80,17 @@ export declare class PermissionManager {
|
|
|
49
80
|
* Returns true if auto-approved by rules, false otherwise.
|
|
50
81
|
*/
|
|
51
82
|
private checkFineGrainedRules;
|
|
83
|
+
/**
|
|
84
|
+
* Check pattern-based permission rules.
|
|
85
|
+
* Priority: deny > ask > allow (most restrictive wins).
|
|
86
|
+
* Returns 'allow', 'deny', 'ask', or undefined if no matching rule.
|
|
87
|
+
*/
|
|
88
|
+
private checkPermissionRules;
|
|
89
|
+
/**
|
|
90
|
+
* Extract the primary argument from tool input for pattern matching.
|
|
91
|
+
* Each tool type uses a different "primary" argument.
|
|
92
|
+
*/
|
|
93
|
+
private getPrimaryArg;
|
|
52
94
|
/**
|
|
53
95
|
* Decide whether a tool call should proceed.
|
|
54
96
|
*/
|
|
@@ -56,6 +98,7 @@ export declare class PermissionManager {
|
|
|
56
98
|
/**
|
|
57
99
|
* Gate a tool call. If approval is needed, calls the approvalCallback.
|
|
58
100
|
* Returns the decision (allow/deny). Handles 'allow-always' by recording it.
|
|
101
|
+
* Pattern deny rules auto-block without prompting.
|
|
59
102
|
*/
|
|
60
103
|
gate(toolName: string, input: Record<string, unknown>, approvalCallback: ApprovalCallback): Promise<'allow' | 'deny'>;
|
|
61
104
|
/** Reset session-allowed set (e.g. on /clear). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../src/core/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAoB,gBAAgB,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../src/core/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAoB,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAiCnG;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAA;IAChC,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,cAAc,CAUlG;AAkCD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAI5D;AAyBD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,IAAI,CAAgB;IAC5B,+DAA+D;IAC/D,OAAO,CAAC,cAAc,CAAoB;IAC1C,gDAAgD;IAChD,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,uCAAuC;IACvC,OAAO,CAAC,SAAS,CAAiB;IAClC,0CAA0C;IAC1C,OAAO,CAAC,SAAS,CAAiB;IAClC,6DAA6D;IAC7D,OAAO,CAAC,eAAe,CAAuB;IAC9C,0DAA0D;IAC1D,OAAO,CAAC,WAAW,CAAwB;gBAE/B,IAAI,GAAE,cAAyB;IAI3C,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIlC,0DAA0D;IACpD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BnC,iDAAiD;YACnC,YAAY;IAgB1B,OAAO,IAAI,cAAc;IAIzB,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAKnC,uDAAuD;IACvD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,IAAI;IAIzD,uDAAuD;IACvD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,IAAI;IAIxD,kFAAkF;IAClF,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI;IAI7E,0FAA0F;IAC1F,mBAAmB,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI;IAYxF;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAWtB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA4B7B;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAmC5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;IAsBzE;;;;OAIG;IACG,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC;IAsB5B,kDAAkD;IAClD,YAAY,IAAI,IAAI;CAGrB"}
|
|
@@ -12,6 +12,26 @@ import { readFile, writeFile, mkdir } from 'fs/promises';
|
|
|
12
12
|
import { join, resolve, relative, isAbsolute } from 'path';
|
|
13
13
|
import { homedir } from 'os';
|
|
14
14
|
const SETTINGS_PATH = join(homedir(), '.cmdr', 'settings.json');
|
|
15
|
+
/**
|
|
16
|
+
* Parse a permission rule string like "bash(npm run *)" into structured form.
|
|
17
|
+
*/
|
|
18
|
+
export function parsePermissionRule(rule, action) {
|
|
19
|
+
const match = rule.match(/^(\w+)(?:\((.+)\))?$/);
|
|
20
|
+
if (!match) {
|
|
21
|
+
return { action, tool: rule.trim() };
|
|
22
|
+
}
|
|
23
|
+
return {
|
|
24
|
+
action,
|
|
25
|
+
tool: match[1],
|
|
26
|
+
pattern: match[2],
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Check if a permission rule's pattern matches a given value.
|
|
31
|
+
*/
|
|
32
|
+
function matchesPattern(pattern, value) {
|
|
33
|
+
return globMatch(pattern, value);
|
|
34
|
+
}
|
|
15
35
|
// ---------------------------------------------------------------------------
|
|
16
36
|
// Tool classification
|
|
17
37
|
// ---------------------------------------------------------------------------
|
|
@@ -69,6 +89,8 @@ export class PermissionManager {
|
|
|
69
89
|
pathRules = [];
|
|
70
90
|
/** Command-prefix rules for bash tool. */
|
|
71
91
|
bashRules = [];
|
|
92
|
+
/** Pattern-based permission rules (Tool(pattern) syntax). */
|
|
93
|
+
permissionRules = [];
|
|
72
94
|
/** Project root for resolving relative paths in rules. */
|
|
73
95
|
projectRoot = process.cwd();
|
|
74
96
|
constructor(mode = 'normal') {
|
|
@@ -96,6 +118,9 @@ export class PermissionManager {
|
|
|
96
118
|
if (settings.bashRules) {
|
|
97
119
|
this.bashRules = settings.bashRules;
|
|
98
120
|
}
|
|
121
|
+
if (settings.permissionRules) {
|
|
122
|
+
this.permissionRules = settings.permissionRules;
|
|
123
|
+
}
|
|
99
124
|
}
|
|
100
125
|
catch {
|
|
101
126
|
// no settings file yet — that's fine
|
|
@@ -110,6 +135,7 @@ export class PermissionManager {
|
|
|
110
135
|
permissionMode: this.mode,
|
|
111
136
|
pathRules: this.pathRules.length > 0 ? this.pathRules : undefined,
|
|
112
137
|
bashRules: this.bashRules.length > 0 ? this.bashRules : undefined,
|
|
138
|
+
permissionRules: this.permissionRules.length > 0 ? this.permissionRules : undefined,
|
|
113
139
|
};
|
|
114
140
|
await writeFile(SETTINGS_PATH, JSON.stringify(settings, null, 2), 'utf-8');
|
|
115
141
|
}
|
|
@@ -132,6 +158,22 @@ export class PermissionManager {
|
|
|
132
158
|
addBashRule(prefix, allow = true) {
|
|
133
159
|
this.bashRules.push({ prefix, allow });
|
|
134
160
|
}
|
|
161
|
+
/** Add a pattern permission rule (e.g. "bash(npm run *)" with action "allow"). */
|
|
162
|
+
addPermissionRule(ruleString, action) {
|
|
163
|
+
this.permissionRules.push(parsePermissionRule(ruleString, action));
|
|
164
|
+
}
|
|
165
|
+
/** Load permission rules from config format: { allow: [...], deny: [...], ask: [...] } */
|
|
166
|
+
loadPermissionRules(config) {
|
|
167
|
+
for (const rule of config.allow ?? []) {
|
|
168
|
+
this.permissionRules.push(parsePermissionRule(rule, 'allow'));
|
|
169
|
+
}
|
|
170
|
+
for (const rule of config.deny ?? []) {
|
|
171
|
+
this.permissionRules.push(parsePermissionRule(rule, 'deny'));
|
|
172
|
+
}
|
|
173
|
+
for (const rule of config.ask ?? []) {
|
|
174
|
+
this.permissionRules.push(parsePermissionRule(rule, 'ask'));
|
|
175
|
+
}
|
|
176
|
+
}
|
|
135
177
|
/**
|
|
136
178
|
* Check if a specific file path is allowed by path rules.
|
|
137
179
|
* Returns true (allowed), false (denied), or undefined (no matching rule).
|
|
@@ -169,6 +211,13 @@ export class PermissionManager {
|
|
|
169
211
|
* Returns true if auto-approved by rules, false otherwise.
|
|
170
212
|
*/
|
|
171
213
|
checkFineGrainedRules(toolName, input) {
|
|
214
|
+
// Check pattern-based permission rules first (highest priority system)
|
|
215
|
+
const patternResult = this.checkPermissionRules(toolName, input);
|
|
216
|
+
if (patternResult === 'deny')
|
|
217
|
+
return false;
|
|
218
|
+
if (patternResult === 'allow')
|
|
219
|
+
return true;
|
|
220
|
+
// 'ask' falls through to normal flow
|
|
172
221
|
// File tool path checks
|
|
173
222
|
if (FILE_TOOLS.has(toolName)) {
|
|
174
223
|
const path = (input.path ?? input.filePath ?? input.file);
|
|
@@ -189,6 +238,60 @@ export class PermissionManager {
|
|
|
189
238
|
}
|
|
190
239
|
return false;
|
|
191
240
|
}
|
|
241
|
+
/**
|
|
242
|
+
* Check pattern-based permission rules.
|
|
243
|
+
* Priority: deny > ask > allow (most restrictive wins).
|
|
244
|
+
* Returns 'allow', 'deny', 'ask', or undefined if no matching rule.
|
|
245
|
+
*/
|
|
246
|
+
checkPermissionRules(toolName, input) {
|
|
247
|
+
// Collect matching rules
|
|
248
|
+
const matches = [];
|
|
249
|
+
// Get the primary argument for pattern matching
|
|
250
|
+
const primaryArg = this.getPrimaryArg(toolName, input);
|
|
251
|
+
for (const rule of this.permissionRules) {
|
|
252
|
+
if (rule.tool !== toolName)
|
|
253
|
+
continue;
|
|
254
|
+
// If rule has no pattern, it matches all invocations of this tool
|
|
255
|
+
if (!rule.pattern) {
|
|
256
|
+
matches.push(rule);
|
|
257
|
+
continue;
|
|
258
|
+
}
|
|
259
|
+
// If rule has a pattern, check against primary arg
|
|
260
|
+
if (primaryArg && matchesPattern(rule.pattern, primaryArg)) {
|
|
261
|
+
matches.push(rule);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
if (matches.length === 0)
|
|
265
|
+
return undefined;
|
|
266
|
+
// Priority: deny > ask > allow
|
|
267
|
+
if (matches.some(r => r.action === 'deny'))
|
|
268
|
+
return 'deny';
|
|
269
|
+
if (matches.some(r => r.action === 'ask'))
|
|
270
|
+
return 'ask';
|
|
271
|
+
if (matches.some(r => r.action === 'allow'))
|
|
272
|
+
return 'allow';
|
|
273
|
+
return undefined;
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Extract the primary argument from tool input for pattern matching.
|
|
277
|
+
* Each tool type uses a different "primary" argument.
|
|
278
|
+
*/
|
|
279
|
+
getPrimaryArg(toolName, input) {
|
|
280
|
+
switch (toolName) {
|
|
281
|
+
case 'bash':
|
|
282
|
+
return (input.command ?? input.cmd);
|
|
283
|
+
case 'file_read':
|
|
284
|
+
case 'file_write':
|
|
285
|
+
case 'file_edit':
|
|
286
|
+
return (input.path ?? input.filePath ?? input.file);
|
|
287
|
+
case 'web_fetch':
|
|
288
|
+
case 'web_search':
|
|
289
|
+
return (input.url ?? input.query);
|
|
290
|
+
default:
|
|
291
|
+
// Try common argument names
|
|
292
|
+
return (input.path ?? input.command ?? input.url ?? input.query);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
192
295
|
/**
|
|
193
296
|
* Decide whether a tool call should proceed.
|
|
194
297
|
*/
|
|
@@ -217,8 +320,13 @@ export class PermissionManager {
|
|
|
217
320
|
/**
|
|
218
321
|
* Gate a tool call. If approval is needed, calls the approvalCallback.
|
|
219
322
|
* Returns the decision (allow/deny). Handles 'allow-always' by recording it.
|
|
323
|
+
* Pattern deny rules auto-block without prompting.
|
|
220
324
|
*/
|
|
221
325
|
async gate(toolName, input, approvalCallback) {
|
|
326
|
+
// Check for auto-deny from pattern rules (bypass everything)
|
|
327
|
+
const patternResult = this.checkPermissionRules(toolName, input);
|
|
328
|
+
if (patternResult === 'deny')
|
|
329
|
+
return 'deny';
|
|
222
330
|
if (!this.needsApproval(toolName, input)) {
|
|
223
331
|
return 'allow';
|
|
224
332
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/core/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,eAAe,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/core/permissions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAMzD,eAAO,MAAM,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAMzD,eAAO,MAAM,UAAU,EAAE,WA4DxB,CAAA;AAgFD,eAAO,MAAM,gBAAgB,EAAE,UAM9B,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,UAM7B,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,UAMjC,CAAA;AAeD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAS/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAElE;AAED,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
|
package/dist/src/core/presets.js
CHANGED
|
@@ -45,6 +45,7 @@ When a task involves multiple files:
|
|
|
45
45
|
- EXPLORE a codebase: glob for structure, grep for patterns, file_read for details.
|
|
46
46
|
- RUN commands: use bash. Always check exit code. If it fails, analyze the error output and fix.
|
|
47
47
|
- SEARCH for code: use grep with a focused pattern. Do not read entire files when grep can find what you need.
|
|
48
|
+
- GRAPH CONTEXT: If a [Graph Context] block is provided in the conversation, use it directly for understanding code structure and impact. Only call graph_impact/graph_query/graph_review tools when you need deeper analysis beyond what the context already shows.
|
|
48
49
|
|
|
49
50
|
# Project Instructions
|
|
50
51
|
|
|
@@ -60,6 +61,7 @@ If a CMDR.md file exists in the project root, follow its instructions. It contai
|
|
|
60
61
|
'bash', 'file_read', 'file_write', 'file_edit',
|
|
61
62
|
'grep', 'glob', 'git_diff', 'git_log', 'think',
|
|
62
63
|
'memory_read', 'memory_write',
|
|
64
|
+
'graph_impact', 'graph_query', 'graph_review',
|
|
63
65
|
],
|
|
64
66
|
maxTurns: 30,
|
|
65
67
|
};
|
|
@@ -82,8 +84,10 @@ const REVIEWER_AGENT = {
|
|
|
82
84
|
- Performance issues (N+1 queries, unnecessary allocations)
|
|
83
85
|
- Missing error handling
|
|
84
86
|
- Test coverage gaps
|
|
85
|
-
Be specific: cite line numbers, suggest concrete fixes.
|
|
86
|
-
|
|
87
|
+
Be specific: cite line numbers, suggest concrete fixes.
|
|
88
|
+
Prefer graph_review for impact-aware reviews over manually reading all files.
|
|
89
|
+
Use graph_impact to understand the blast radius of changes before reviewing.`,
|
|
90
|
+
tools: ['file_read', 'grep', 'glob', 'git_diff', 'think', 'graph_impact', 'graph_query', 'graph_review'],
|
|
87
91
|
maxTurns: 10,
|
|
88
92
|
};
|
|
89
93
|
const PLANNER_AGENT = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,UAAU,GAAgB;IACrC,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"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"}
|
package/dist/src/core/types.d.ts
CHANGED
|
@@ -156,6 +156,8 @@ export interface ProjectContext {
|
|
|
156
156
|
instructions: string;
|
|
157
157
|
scripts: string[];
|
|
158
158
|
}[];
|
|
159
|
+
/** Whether code-review-graph is available and initialized. */
|
|
160
|
+
graphAvailable?: boolean;
|
|
159
161
|
}
|
|
160
162
|
export interface CmdrPlugin {
|
|
161
163
|
name: string;
|
|
@@ -217,11 +219,16 @@ export interface CmdrConfig {
|
|
|
217
219
|
allowFileWrite: boolean;
|
|
218
220
|
allowNetwork: boolean;
|
|
219
221
|
sandboxDir?: string;
|
|
222
|
+
/** Pattern-based rules: "Tool(pattern)" syntax. */
|
|
223
|
+
allow?: string[];
|
|
224
|
+
deny?: string[];
|
|
225
|
+
ask?: string[];
|
|
220
226
|
};
|
|
221
227
|
mcp: {
|
|
222
228
|
servers: McpServerConfig[];
|
|
223
229
|
};
|
|
224
230
|
plugins: string[];
|
|
231
|
+
hooks?: Record<string, string>;
|
|
225
232
|
}
|
|
226
233
|
export interface McpServerConfig {
|
|
227
234
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cron/scheduling tools — interval-based task management via CLI.
|
|
3
|
+
*
|
|
4
|
+
* Provides cron_create, cron_list, cron_delete for the LLM.
|
|
5
|
+
* These are higher-level aliases that translate human-friendly intervals
|
|
6
|
+
* (e.g. "every 5 minutes") into TaskScheduler calls.
|
|
7
|
+
*/
|
|
8
|
+
import type { TaskScheduler } from '../../scheduling/task-scheduler.js';
|
|
9
|
+
export declare function setCronScheduler(ts: TaskScheduler): void;
|
|
10
|
+
export declare const cronCreateTool: import("../registry.js").ToolDefinition<{
|
|
11
|
+
command: string;
|
|
12
|
+
name: string;
|
|
13
|
+
interval: string;
|
|
14
|
+
}>;
|
|
15
|
+
export declare const cronListTool: import("../registry.js").ToolDefinition<{}>;
|
|
16
|
+
export declare const cronDeleteTool: import("../registry.js").ToolDefinition<{
|
|
17
|
+
id: string;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=cron-tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron-tools.d.ts","sourceRoot":"","sources":["../../../../src/tools/built-in/cron-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAIvE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAExD;AAaD,eAAO,MAAM,cAAc;;;;EA0BzB,CAAA;AAEF,eAAO,MAAM,YAAY,6CAqBvB,CAAA;AAEF,eAAO,MAAM,cAAc;;EAkBzB,CAAA"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cron/scheduling tools — interval-based task management via CLI.
|
|
3
|
+
*
|
|
4
|
+
* Provides cron_create, cron_list, cron_delete for the LLM.
|
|
5
|
+
* These are higher-level aliases that translate human-friendly intervals
|
|
6
|
+
* (e.g. "every 5 minutes") into TaskScheduler calls.
|
|
7
|
+
*/
|
|
8
|
+
import { z } from 'zod';
|
|
9
|
+
import { defineTool } from '../registry.js';
|
|
10
|
+
let scheduler = null;
|
|
11
|
+
export function setCronScheduler(ts) {
|
|
12
|
+
scheduler = ts;
|
|
13
|
+
}
|
|
14
|
+
function parseInterval(interval) {
|
|
15
|
+
const match = interval.match(/^(\d+)\s*(s|sec|second|seconds|m|min|minute|minutes|h|hr|hour|hours)$/i);
|
|
16
|
+
if (!match)
|
|
17
|
+
return null;
|
|
18
|
+
const value = parseInt(match[1], 10);
|
|
19
|
+
const unit = match[2].toLowerCase();
|
|
20
|
+
if (unit.startsWith('s'))
|
|
21
|
+
return value * 1000;
|
|
22
|
+
if (unit.startsWith('m'))
|
|
23
|
+
return value * 60 * 1000;
|
|
24
|
+
if (unit.startsWith('h'))
|
|
25
|
+
return value * 60 * 60 * 1000;
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
export const cronCreateTool = defineTool({
|
|
29
|
+
name: 'cron_create',
|
|
30
|
+
description: 'Create a recurring scheduled job. Specify interval in human-readable format (e.g. "30s", "5m", "1h").',
|
|
31
|
+
inputSchema: z.object({
|
|
32
|
+
name: z.string().describe('Name of the cron job'),
|
|
33
|
+
command: z.string().describe('Shell command to execute on each interval'),
|
|
34
|
+
interval: z.string().describe('How often to run: "30s", "5m", "1h", etc.'),
|
|
35
|
+
}),
|
|
36
|
+
execute: async (input) => {
|
|
37
|
+
if (!scheduler) {
|
|
38
|
+
return { data: 'TaskScheduler is not initialized', isError: true };
|
|
39
|
+
}
|
|
40
|
+
const ms = parseInterval(input.interval);
|
|
41
|
+
if (!ms) {
|
|
42
|
+
return { data: `Invalid interval: "${input.interval}". Use formats like "30s", "5m", "1h".`, isError: true };
|
|
43
|
+
}
|
|
44
|
+
const { execSync } = await import('node:child_process');
|
|
45
|
+
const handler = async () => {
|
|
46
|
+
execSync(input.command, { timeout: 30000, stdio: 'pipe' });
|
|
47
|
+
};
|
|
48
|
+
const id = scheduler.scheduleInterval(input.name, ms, handler);
|
|
49
|
+
return { data: `Cron job created: "${input.name}" running every ${input.interval}\nID: ${id}` };
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
export const cronListTool = defineTool({
|
|
53
|
+
name: 'cron_list',
|
|
54
|
+
description: 'List all active cron/scheduled jobs.',
|
|
55
|
+
inputSchema: z.object({}),
|
|
56
|
+
execute: async () => {
|
|
57
|
+
if (!scheduler) {
|
|
58
|
+
return { data: 'TaskScheduler is not initialized', isError: true };
|
|
59
|
+
}
|
|
60
|
+
const tasks = scheduler.list();
|
|
61
|
+
// Filter to only recurring tasks (those with intervalMs would be in the schedule)
|
|
62
|
+
if (tasks.length === 0) {
|
|
63
|
+
return { data: 'No scheduled cron jobs.' };
|
|
64
|
+
}
|
|
65
|
+
const lines = tasks.map(t => ` ${t.name} [${t.status}] — ${t.runCount} runs${t.error ? ` (error: ${t.error})` : ''}`);
|
|
66
|
+
return { data: `Cron jobs:\n${lines.join('\n')}` };
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
export const cronDeleteTool = defineTool({
|
|
70
|
+
name: 'cron_delete',
|
|
71
|
+
description: 'Delete/cancel a cron job by ID.',
|
|
72
|
+
inputSchema: z.object({
|
|
73
|
+
id: z.string().describe('The cron job ID to delete'),
|
|
74
|
+
}),
|
|
75
|
+
execute: async (input) => {
|
|
76
|
+
if (!scheduler) {
|
|
77
|
+
return { data: 'TaskScheduler is not initialized', isError: true };
|
|
78
|
+
}
|
|
79
|
+
const success = scheduler.cancel(input.id);
|
|
80
|
+
if (!success) {
|
|
81
|
+
return { data: `Cron job not found: ${input.id}`, isError: true };
|
|
82
|
+
}
|
|
83
|
+
return { data: `Cron job ${input.id} deleted.` };
|
|
84
|
+
},
|
|
85
|
+
});
|
|
86
|
+
//# sourceMappingURL=cron-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron-tools.js","sourceRoot":"","sources":["../../../../src/tools/built-in/cron-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph tools — curated wrappers around code-review-graph MCP tools.
|
|
3
|
+
*
|
|
4
|
+
* Three tools exposed to the LLM:
|
|
5
|
+
* - graph_impact: blast radius analysis
|
|
6
|
+
* - graph_query: dependency queries (callers, callees, imports, tests)
|
|
7
|
+
* - graph_review: risk-scored review context
|
|
8
|
+
*
|
|
9
|
+
* These are for deep analysis mid-reasoning. Initial grounding is handled
|
|
10
|
+
* by GraphContextProvider's context injection — no duplication.
|
|
11
|
+
*
|
|
12
|
+
* All three are read-only and added to SAFE_PARALLEL_TOOLS.
|
|
13
|
+
*/
|
|
14
|
+
import type { McpClient } from '../../plugins/mcp-client.js';
|
|
15
|
+
export declare function setGraphToolsClient(client: McpClient, projectRoot: string): void;
|
|
16
|
+
export declare function setGraphToolsAvailable(available: boolean): void;
|
|
17
|
+
export declare const graphImpactTool: import("../registry.js").ToolDefinition<{
|
|
18
|
+
base?: string | undefined;
|
|
19
|
+
max_depth?: number | undefined;
|
|
20
|
+
changed_files?: string[] | undefined;
|
|
21
|
+
}>;
|
|
22
|
+
export declare const graphQueryTool: import("../registry.js").ToolDefinition<{
|
|
23
|
+
pattern: "callers_of" | "file_summary" | "callees_of" | "imports_of" | "importers_of" | "children_of" | "tests_for" | "inheritors_of";
|
|
24
|
+
target: string;
|
|
25
|
+
}>;
|
|
26
|
+
export declare const graphReviewTool: import("../registry.js").ToolDefinition<{
|
|
27
|
+
base?: string | undefined;
|
|
28
|
+
changed_files?: string[] | undefined;
|
|
29
|
+
include_source?: boolean | undefined;
|
|
30
|
+
}>;
|
|
31
|
+
//# sourceMappingURL=graph-tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-tools.d.ts","sourceRoot":"","sources":["../../../../src/tools/built-in/graph-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAO5D,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAIhF;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAE/D;AAgBD,eAAO,MAAM,eAAe;;;;EAiB1B,CAAA;AAMF,eAAO,MAAM,cAAc;;;EAiBzB,CAAA;AAMF,eAAO,MAAM,eAAe;;;;EAkB1B,CAAA"}
|