claude-chrome-parallel 3.5.1 → 3.6.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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * HintEngine — evaluates rules against tool results to produce anti-삽질 hints.
2
+ * HintEngine — evaluates rules against tool results to produce proactive hints.
3
3
  *
4
4
  * Rules are sorted by priority (lower = higher priority) and evaluated first-match-wins.
5
5
  * Uses ActivityTracker's recent calls for sequence/pattern detection.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * HintEngine — evaluates rules against tool results to produce anti-삽질 hints.
3
+ * HintEngine — evaluates rules against tool results to produce proactive hints.
4
4
  *
5
5
  * Rules are sorted by priority (lower = higher priority) and evaluated first-match-wins.
6
6
  * Uses ActivityTracker's recent calls for sequence/pattern detection.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Hints module — Anti-삽질 hint system
2
+ * Hints module — Proactive hint system
3
3
  */
4
4
  export { HintEngine } from './hint-engine';
5
5
  export type { HintContext, HintRule, HintLogEntry } from './hint-engine';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Hints module — Anti-삽질 hint system
3
+ * Hints module — Proactive hint system
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.PatternLearner = exports.HintEngine = void 0;
@@ -5,6 +5,7 @@ import { MCPRequest, MCPResponse, MCPToolDefinition, ToolHandler } from './types
5
5
  import { SessionManager } from './session-manager';
6
6
  import { Dashboard } from './dashboard/index.js';
7
7
  import { MCPResourceDefinition } from './resources/usage-guide';
8
+ import { ToolManifest } from './types/tool-manifest';
8
9
  export interface MCPServerOptions {
9
10
  dashboard?: boolean;
10
11
  dashboardRefreshInterval?: number;
@@ -12,6 +13,7 @@ export interface MCPServerOptions {
12
13
  export declare class MCPServer {
13
14
  private tools;
14
15
  private resources;
16
+ private manifestVersion;
15
17
  private sessionManager;
16
18
  private rl;
17
19
  private dashboard;
@@ -88,6 +90,23 @@ export declare class MCPServer {
88
90
  * Get registered tool names
89
91
  */
90
92
  getToolNames(): string[];
93
+ /**
94
+ * Get a tool handler by name (for internal server-side plan execution).
95
+ * Returns null if the tool is not registered.
96
+ */
97
+ getToolHandler(toolName: string): ToolHandler | null;
98
+ /**
99
+ * Get the full tool manifest with metadata
100
+ */
101
+ getToolManifest(): ToolManifest;
102
+ /**
103
+ * Increment the manifest version (call when tools are dynamically added/removed)
104
+ */
105
+ incrementManifestVersion(): void;
106
+ /**
107
+ * Infer the category of a tool from its name
108
+ */
109
+ private inferToolCategory;
91
110
  /**
92
111
  * Stop the server and clean up all Chrome resources
93
112
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,UAAU,EACV,WAAW,EAGX,iBAAiB,EACjB,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,SAAS,EAA0E,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAA4C,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAM1G,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAwC;IACrD,OAAO,CAAC,SAAS,CAAiD;IAClE,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,EAAE,CAAmC;IAC7C,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAAmB;gBAEtB,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,GAAE,gBAAqB;IA2B3E;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAIvD;;OAEG;IACH,OAAO,CAAC,aAAa;IA2BrB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,iBAAiB,GAC5B,IAAI;IAIP;;OAEG;IACH,KAAK,IAAI,IAAI;IA+Db;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IA4D9D;;OAEG;YACW,gBAAgB;IAsC9B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,mBAAmB;IAQjC;;OAEG;YACW,mBAAmB;IAkCjC;;OAEG;YACW,eAAe;IA4F7B;;OAEG;YACW,kBAAkB;IAYhC;;OAEG;YACW,oBAAoB;IA2BlC;;OAEG;YACW,oBAAoB;IAkBlC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,IAAI,IAAI,IAAI;IAiBZ;;OAEG;YACW,OAAO;IAkCrB;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;CAGjC;AAMD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAEnE;AAED,wBAAgB,YAAY,IAAI,SAAS,CAKxC"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,UAAU,EACV,WAAW,EAGX,iBAAiB,EACjB,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,SAAS,EAA0E,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAA4C,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAK1G,OAAO,EAAE,YAAY,EAA2B,MAAM,uBAAuB,CAAC;AAE9E,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAwC;IACrD,OAAO,CAAC,SAAS,CAAiD;IAClE,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,EAAE,CAAmC;IAC7C,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAAmB;gBAEtB,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,GAAE,gBAAqB;IA2B3E;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAIvD;;OAEG;IACH,OAAO,CAAC,aAAa;IA2BrB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,iBAAiB,GAC5B,IAAI;IAKP;;OAEG;IACH,KAAK,IAAI,IAAI;IA+Db;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IA4D9D;;OAEG;YACW,gBAAgB;IAsC9B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,mBAAmB;IAQjC;;OAEG;YACW,mBAAmB;IAkCjC;;OAEG;YACW,eAAe;IA4F7B;;OAEG;YACW,kBAAkB;IAYhC;;OAEG;YACW,oBAAoB;IA2BlC;;OAEG;YACW,oBAAoB;IAkBlC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;;OAGG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAKpD;;OAEG;IACH,eAAe,IAAI,YAAY;IAkB/B;;OAEG;IACH,wBAAwB,IAAI,IAAI;IAIhC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;OAEG;IACH,IAAI,IAAI,IAAI;IAiBZ;;OAEG;YACW,OAAO;IAkCrB;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;CAGjC;AAMD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAEnE;AAED,wBAAgB,YAAY,IAAI,SAAS,CAKxC"}
@@ -52,6 +52,7 @@ const launcher_1 = require("./chrome/launcher");
52
52
  class MCPServer {
53
53
  tools = new Map();
54
54
  resources = new Map();
55
+ manifestVersion = 1;
55
56
  sessionManager;
56
57
  rl = null;
57
58
  dashboard = null;
@@ -118,6 +119,7 @@ class MCPServer {
118
119
  */
119
120
  registerTool(name, handler, definition) {
120
121
  this.tools.set(name, { name, handler, definition });
122
+ this.manifestVersion++;
121
123
  }
122
124
  /**
123
125
  * Start the stdio server
@@ -372,7 +374,7 @@ class MCPServer {
372
374
  };
373
375
  }
374
376
  }
375
- // Inject anti-삽질 hint
377
+ // Inject proactive hint
376
378
  if (this.hintEngine) {
377
379
  const hint = this.hintEngine.getHint(toolName, result, false);
378
380
  if (hint) {
@@ -399,7 +401,7 @@ class MCPServer {
399
401
  };
400
402
  }
401
403
  }
402
- // Inject anti-삽질 hint for errors
404
+ // Inject proactive hint for errors
403
405
  if (this.hintEngine) {
404
406
  const hint = this.hintEngine.getHint(toolName, errResult, true);
405
407
  if (hint) {
@@ -490,6 +492,72 @@ class MCPServer {
490
492
  getToolNames() {
491
493
  return Array.from(this.tools.keys());
492
494
  }
495
+ /**
496
+ * Get a tool handler by name (for internal server-side plan execution).
497
+ * Returns null if the tool is not registered.
498
+ */
499
+ getToolHandler(toolName) {
500
+ const registry = this.tools.get(toolName);
501
+ return registry ? registry.handler : null;
502
+ }
503
+ /**
504
+ * Get the full tool manifest with metadata
505
+ */
506
+ getToolManifest() {
507
+ const tools = [];
508
+ for (const registry of this.tools.values()) {
509
+ tools.push({
510
+ name: registry.definition.name,
511
+ description: registry.definition.description,
512
+ inputSchema: registry.definition.inputSchema,
513
+ category: this.inferToolCategory(registry.definition.name),
514
+ });
515
+ }
516
+ return {
517
+ version: `${this.manifestVersion}`,
518
+ generatedAt: Date.now(),
519
+ tools,
520
+ toolCount: tools.length,
521
+ };
522
+ }
523
+ /**
524
+ * Increment the manifest version (call when tools are dynamically added/removed)
525
+ */
526
+ incrementManifestVersion() {
527
+ this.manifestVersion++;
528
+ }
529
+ /**
530
+ * Infer the category of a tool from its name
531
+ */
532
+ inferToolCategory(toolName) {
533
+ if (['navigate', 'page_reload'].includes(toolName))
534
+ return 'navigation';
535
+ if (['computer', 'form_input', 'drag_drop'].includes(toolName))
536
+ return 'interaction';
537
+ if (['read_page', 'find', 'page_content', 'selector_query', 'xpath_query'].includes(toolName))
538
+ return 'content';
539
+ if (toolName === 'javascript_tool')
540
+ return 'javascript';
541
+ if (['network', 'cookies', 'storage', 'request_intercept', 'http_auth'].includes(toolName))
542
+ return 'network';
543
+ if (['tabs_context', 'tabs_create', 'tabs_close'].includes(toolName))
544
+ return 'tabs';
545
+ if (['page_pdf', 'console_capture', 'performance_metrics', 'file_upload'].includes(toolName))
546
+ return 'media';
547
+ if (['user_agent', 'geolocation', 'emulate_device'].includes(toolName))
548
+ return 'emulation';
549
+ if (['workflow_init', 'workflow_status', 'workflow_collect', 'workflow_collect_partial', 'workflow_cleanup', 'execute_plan'].includes(toolName))
550
+ return 'orchestration';
551
+ if (['worker_create', 'worker_list', 'worker_delete', 'worker_update', 'worker_complete'].includes(toolName))
552
+ return 'worker';
553
+ if (['click_element', 'fill_form', 'wait_and_click', 'wait_for'].includes(toolName))
554
+ return 'composite';
555
+ if (['batch_execute', 'lightweight_scroll'].includes(toolName))
556
+ return 'performance';
557
+ if (toolName === 'ccp_stop')
558
+ return 'lifecycle';
559
+ return 'interaction';
560
+ }
493
561
  /**
494
562
  * Stop the server and clean up all Chrome resources
495
563
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * PlanExecutor - Executes compiled plans by chaining tool handlers internally.
3
+ *
4
+ * Bypasses per-step agent LLM round-trips by resolving and calling tool handlers
5
+ * directly from the MCP server's internal registry.
6
+ */
7
+ import { ToolHandler } from '../types/mcp';
8
+ import { CompiledPlan, PlanExecutionResult } from '../types/plan-cache';
9
+ export declare class PlanExecutor {
10
+ private toolResolver;
11
+ constructor(toolResolver: (toolName: string) => ToolHandler | null);
12
+ execute(plan: CompiledPlan, sessionId: string, runtimeParams: Record<string, unknown>): Promise<PlanExecutionResult>;
13
+ /**
14
+ * Attempt to find and run a recovery handler for a given condition.
15
+ * Returns updated stepsExecuted + params snapshot on success, null if no handler.
16
+ */
17
+ private tryRecovery;
18
+ }
19
+ //# sourceMappingURL=plan-executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-executor.d.ts","sourceRoot":"","sources":["../../src/orchestration/plan-executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAa,WAAW,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,YAAY,EAGZ,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAiI7B,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAA2C;gBAEnD,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,WAAW,GAAG,IAAI;IAI5D,OAAO,CACX,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,mBAAmB,CAAC;IAsJ/B;;;OAGG;YACW,WAAW;CAqE1B"}
@@ -0,0 +1,284 @@
1
+ "use strict";
2
+ /**
3
+ * PlanExecutor - Executes compiled plans by chaining tool handlers internally.
4
+ *
5
+ * Bypasses per-step agent LLM round-trips by resolving and calling tool handlers
6
+ * directly from the MCP server's internal registry.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.PlanExecutor = void 0;
10
+ /**
11
+ * Recursively substitute ${varName} templates in a value using the params map.
12
+ * Handles strings, objects, and arrays. Non-string primitives are returned as-is.
13
+ * Missing vars are left as-is (no crash).
14
+ */
15
+ function substituteParams(value, params) {
16
+ if (typeof value === 'string') {
17
+ return value.replace(/\$\{([^}]+)\}/g, (match, varName) => {
18
+ const resolved = params[varName];
19
+ if (resolved === undefined)
20
+ return match;
21
+ if (typeof resolved === 'string')
22
+ return resolved;
23
+ return JSON.stringify(resolved);
24
+ });
25
+ }
26
+ if (Array.isArray(value)) {
27
+ return value.map((item) => substituteParams(item, params));
28
+ }
29
+ if (value !== null && typeof value === 'object') {
30
+ const result = {};
31
+ for (const [k, v] of Object.entries(value)) {
32
+ result[k] = substituteParams(v, params);
33
+ }
34
+ return result;
35
+ }
36
+ return value;
37
+ }
38
+ /**
39
+ * Apply a timeout to a promise via Promise.race.
40
+ */
41
+ function withTimeout(promise, timeoutMs, label) {
42
+ return Promise.race([
43
+ promise,
44
+ new Promise((_, reject) => setTimeout(() => reject(new Error(`Timeout after ${timeoutMs}ms (${label})`)), timeoutMs)),
45
+ ]);
46
+ }
47
+ /**
48
+ * Extract result data from an MCPResult according to parseResult spec.
49
+ * Returns the extracted value (raw text, parsed JSON, or a specific field).
50
+ */
51
+ function extractResult(mcpResult, parseResult) {
52
+ const content = mcpResult.content;
53
+ const text = content && content.length > 0 ? content[0].text ?? '' : '';
54
+ if (parseResult.format === 'text') {
55
+ return text;
56
+ }
57
+ // format === 'json'
58
+ let parsed;
59
+ try {
60
+ parsed = JSON.parse(text);
61
+ }
62
+ catch {
63
+ parsed = text;
64
+ }
65
+ if (parseResult.extractField) {
66
+ const obj = parsed;
67
+ parsed = obj?.[parseResult.extractField];
68
+ }
69
+ return parsed;
70
+ }
71
+ /**
72
+ * Check whether an MCPResult represents an empty/no-data result.
73
+ */
74
+ function isEmptyResult(mcpResult) {
75
+ if (mcpResult.isError)
76
+ return false; // errors are not "empty"
77
+ const content = mcpResult.content;
78
+ if (!content || content.length === 0)
79
+ return true;
80
+ const text = content[0].text ?? '';
81
+ if (text.trim() === '' || text.trim() === 'null' || text.trim() === '[]' || text.trim() === '{}') {
82
+ return true;
83
+ }
84
+ return false;
85
+ }
86
+ /**
87
+ * Validate final params against the plan's success criteria.
88
+ * Returns null if valid, or an error string describing the violation.
89
+ */
90
+ function validateSuccessCriteria(criteria, params) {
91
+ if (criteria.minDataItems !== undefined) {
92
+ // Find the first array or object in params that could represent "data items"
93
+ let found = false;
94
+ for (const val of Object.values(params)) {
95
+ if (Array.isArray(val)) {
96
+ if (val.length < criteria.minDataItems) {
97
+ return `minDataItems requirement not met: got ${val.length}, need ${criteria.minDataItems}`;
98
+ }
99
+ found = true;
100
+ break;
101
+ }
102
+ else if (val !== null && typeof val === 'object') {
103
+ const count = Object.keys(val).length;
104
+ if (count < criteria.minDataItems) {
105
+ return `minDataItems requirement not met: got ${count}, need ${criteria.minDataItems}`;
106
+ }
107
+ found = true;
108
+ break;
109
+ }
110
+ }
111
+ if (!found && criteria.minDataItems > 0) {
112
+ return `minDataItems requirement not met: no collection found in params`;
113
+ }
114
+ }
115
+ if (criteria.requiredFields && criteria.requiredFields.length > 0) {
116
+ for (const field of criteria.requiredFields) {
117
+ if (!(field in params) || params[field] === undefined) {
118
+ return `Required field missing from params: ${field}`;
119
+ }
120
+ }
121
+ }
122
+ return null;
123
+ }
124
+ class PlanExecutor {
125
+ toolResolver;
126
+ constructor(toolResolver) {
127
+ this.toolResolver = toolResolver;
128
+ }
129
+ async execute(plan, sessionId, runtimeParams) {
130
+ const startTime = Date.now();
131
+ let stepsExecuted = 0;
132
+ // 1. Build params map: plan defaults first, runtime overrides on top
133
+ const params = {};
134
+ for (const [key, spec] of Object.entries(plan.parameters)) {
135
+ if (spec.default !== undefined) {
136
+ params[key] = spec.default;
137
+ }
138
+ }
139
+ Object.assign(params, runtimeParams);
140
+ const failure = (error) => ({
141
+ success: false,
142
+ planId: plan.id,
143
+ error,
144
+ durationMs: Date.now() - startTime,
145
+ stepsExecuted,
146
+ totalSteps: plan.steps.length,
147
+ });
148
+ // 2. Execute each step sequentially
149
+ for (const step of plan.steps) {
150
+ const stepLabel = `plan=${plan.id} step=${step.order} tool=${step.tool}`;
151
+ // a. Resolve handler
152
+ const handler = this.toolResolver(step.tool);
153
+ if (!handler) {
154
+ const msg = `No handler found for tool "${step.tool}" at ${stepLabel}`;
155
+ console.error(`[PlanExecutor] ${msg}`);
156
+ return failure(msg);
157
+ }
158
+ // b. Substitute template variables in args
159
+ const substitutedArgs = substituteParams(step.args, params);
160
+ // c. Call handler with timeout
161
+ let mcpResult;
162
+ try {
163
+ mcpResult = await withTimeout(handler(sessionId, substitutedArgs), step.timeout, stepLabel);
164
+ stepsExecuted++;
165
+ }
166
+ catch (err) {
167
+ const errMsg = err instanceof Error ? err.message : String(err);
168
+ console.error(`[PlanExecutor] Step failed at ${stepLabel}: ${errMsg}`);
169
+ // Check for a matching error handler
170
+ const conditionKey = `step${step.order}_error`;
171
+ const recovered = await this.tryRecovery(conditionKey, plan.errorHandlers, sessionId, params, stepsExecuted);
172
+ if (recovered !== null) {
173
+ stepsExecuted = recovered.stepsExecuted;
174
+ // Merge any params updates from recovery into our params
175
+ Object.assign(params, recovered.params);
176
+ continue;
177
+ }
178
+ return failure(`Step ${step.order} (${step.tool}) failed: ${errMsg}`);
179
+ }
180
+ // d. Check for error result
181
+ if (mcpResult.isError) {
182
+ const errMsg = mcpResult.content?.[0]?.text ?? 'Unknown tool error';
183
+ console.error(`[PlanExecutor] Tool returned error at ${stepLabel}: ${errMsg}`);
184
+ const conditionKey = `step${step.order}_error`;
185
+ const recovered = await this.tryRecovery(conditionKey, plan.errorHandlers, sessionId, params, stepsExecuted);
186
+ if (recovered !== null) {
187
+ stepsExecuted = recovered.stepsExecuted;
188
+ Object.assign(params, recovered.params);
189
+ continue;
190
+ }
191
+ return failure(`Step ${step.order} (${step.tool}) returned error: ${errMsg}`);
192
+ }
193
+ // e. Check for empty result (before storing) — may trigger empty_result handler
194
+ if (isEmptyResult(mcpResult)) {
195
+ const conditionKey = `step${step.order}_empty_result`;
196
+ const recovered = await this.tryRecovery(conditionKey, plan.errorHandlers, sessionId, params, stepsExecuted);
197
+ if (recovered !== null) {
198
+ stepsExecuted = recovered.stepsExecuted;
199
+ Object.assign(params, recovered.params);
200
+ continue;
201
+ }
202
+ // No handler for empty — treat as non-fatal, just skip storing
203
+ }
204
+ // f. Parse and store result if requested
205
+ if (step.parseResult && step.parseResult.storeAs) {
206
+ try {
207
+ const extracted = extractResult(mcpResult, step.parseResult);
208
+ params[step.parseResult.storeAs] = extracted;
209
+ }
210
+ catch (err) {
211
+ console.error(`[PlanExecutor] Failed to extract result at ${stepLabel}: ${err instanceof Error ? err.message : String(err)}`);
212
+ // Non-fatal: continue without storing
213
+ }
214
+ }
215
+ }
216
+ // 3. Validate success criteria
217
+ const criteriaError = validateSuccessCriteria(plan.successCriteria, params);
218
+ if (criteriaError) {
219
+ console.error(`[PlanExecutor] Success criteria failed for plan=${plan.id}: ${criteriaError}`);
220
+ return {
221
+ success: false,
222
+ planId: plan.id,
223
+ error: `Success criteria not met: ${criteriaError}`,
224
+ durationMs: Date.now() - startTime,
225
+ stepsExecuted,
226
+ totalSteps: plan.steps.length,
227
+ };
228
+ }
229
+ // 4. Return success with all collected params as data
230
+ return {
231
+ success: true,
232
+ planId: plan.id,
233
+ data: params,
234
+ durationMs: Date.now() - startTime,
235
+ stepsExecuted,
236
+ totalSteps: plan.steps.length,
237
+ };
238
+ }
239
+ /**
240
+ * Attempt to find and run a recovery handler for a given condition.
241
+ * Returns updated stepsExecuted + params snapshot on success, null if no handler.
242
+ */
243
+ async tryRecovery(conditionKey, errorHandlers, sessionId, params, currentStepsExecuted) {
244
+ const handler = errorHandlers.find((h) => h.condition === conditionKey);
245
+ if (!handler)
246
+ return null;
247
+ console.error(`[PlanExecutor] Running error handler "${handler.action}" for condition "${conditionKey}"`);
248
+ let stepsExecuted = currentStepsExecuted;
249
+ for (const step of handler.steps) {
250
+ const stepLabel = `recovery action=${handler.action} step=${step.order} tool=${step.tool}`;
251
+ const toolHandler = this.toolResolver(step.tool);
252
+ if (!toolHandler) {
253
+ console.error(`[PlanExecutor] Recovery: no handler for tool "${step.tool}" at ${stepLabel}`);
254
+ continue;
255
+ }
256
+ const substitutedArgs = substituteParams(step.args, params);
257
+ let mcpResult;
258
+ try {
259
+ mcpResult = await withTimeout(toolHandler(sessionId, substitutedArgs), step.timeout, stepLabel);
260
+ stepsExecuted++;
261
+ }
262
+ catch (err) {
263
+ console.error(`[PlanExecutor] Recovery step failed at ${stepLabel}: ${err instanceof Error ? err.message : String(err)}`);
264
+ continue;
265
+ }
266
+ if (mcpResult.isError) {
267
+ console.error(`[PlanExecutor] Recovery step returned error at ${stepLabel}: ${mcpResult.content?.[0]?.text ?? 'unknown'}`);
268
+ continue;
269
+ }
270
+ if (step.parseResult && step.parseResult.storeAs) {
271
+ try {
272
+ const extracted = extractResult(mcpResult, step.parseResult);
273
+ params[step.parseResult.storeAs] = extracted;
274
+ }
275
+ catch (err) {
276
+ console.error(`[PlanExecutor] Recovery: failed to extract result at ${stepLabel}: ${err instanceof Error ? err.message : String(err)}`);
277
+ }
278
+ }
279
+ }
280
+ return { stepsExecuted, params };
281
+ }
282
+ }
283
+ exports.PlanExecutor = PlanExecutor;
284
+ //# sourceMappingURL=plan-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-executor.js","sourceRoot":"","sources":["../../src/orchestration/plan-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * PlanRegistry — Manages compiled plan storage, loading, matching, and stats tracking.
3
+ *
4
+ * Plans are stored at {basePath}/plan-registry.json (index) and
5
+ * {basePath}/plans/{planId}.json (individual plan files).
6
+ */
7
+ import type { CompiledPlan, PlanEntry, TaskPattern } from '../types/plan-cache';
8
+ export declare class PlanRegistry {
9
+ private basePath;
10
+ private registryPath;
11
+ private plansDir;
12
+ private data;
13
+ constructor(basePath?: string);
14
+ /**
15
+ * Load plan registry from disk.
16
+ */
17
+ load(): void;
18
+ /**
19
+ * Persist plan registry to disk.
20
+ */
21
+ save(): void;
22
+ /**
23
+ * Find the best matching plan entry for a given task and URL.
24
+ * Filters by urlPattern, taskKeywords, and confidence threshold.
25
+ * Returns the highest-confidence match, or null if none found.
26
+ */
27
+ matchTask(task: string, url: string): PlanEntry | null;
28
+ /**
29
+ * Load a compiled plan from disk by its registry entry.
30
+ */
31
+ loadPlan(entry: PlanEntry): CompiledPlan | null;
32
+ /**
33
+ * Update execution stats for a plan and recalculate confidence.
34
+ */
35
+ updateStats(planId: string, success: boolean, durationMs: number): void;
36
+ /**
37
+ * Register a new compiled plan with the given task pattern.
38
+ * Saves plan JSON to disk and adds entry to the registry.
39
+ */
40
+ registerPlan(plan: CompiledPlan, pattern: TaskPattern): PlanEntry;
41
+ /**
42
+ * Get all plan entries.
43
+ */
44
+ getEntries(): PlanEntry[];
45
+ /**
46
+ * Get a single plan entry by ID.
47
+ */
48
+ getEntry(planId: string): PlanEntry | null;
49
+ }
50
+ /**
51
+ * Get a singleton PlanRegistry instance.
52
+ * Pass basePath to create/replace the singleton with a new base path.
53
+ */
54
+ export declare function getPlanRegistry(basePath?: string): PlanRegistry;
55
+ //# sourceMappingURL=plan-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-registry.d.ts","sourceRoot":"","sources":["../../src/orchestration/plan-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EAET,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAO7B,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAmB;gBAEnB,QAAQ,GAAE,MAA0B;IAWhD;;OAEG;IACH,IAAI,IAAI,IAAI;IAeZ;;OAEG;IACH,IAAI,IAAI,IAAI;IAUZ;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAgDtD;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,GAAG,IAAI;IAY/C;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IA+BvE;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,SAAS;IAyCjE;;OAEG;IACH,UAAU,IAAI,SAAS,EAAE;IAIzB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;CAI3C;AAMD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,CAQ/D"}