attocode 0.2.1 → 0.2.2

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.
Files changed (148) hide show
  1. package/CHANGELOG.md +91 -1
  2. package/README.md +7 -0
  3. package/dist/src/adapters.d.ts +6 -1
  4. package/dist/src/adapters.d.ts.map +1 -1
  5. package/dist/src/adapters.js +8 -1
  6. package/dist/src/adapters.js.map +1 -1
  7. package/dist/src/agent.d.ts +35 -4
  8. package/dist/src/agent.d.ts.map +1 -1
  9. package/dist/src/agent.js +361 -45
  10. package/dist/src/agent.js.map +1 -1
  11. package/dist/src/defaults.d.ts +1 -1
  12. package/dist/src/defaults.d.ts.map +1 -1
  13. package/dist/src/defaults.js +2 -0
  14. package/dist/src/defaults.js.map +1 -1
  15. package/dist/src/integrations/agent-registry.d.ts +2 -0
  16. package/dist/src/integrations/agent-registry.d.ts.map +1 -1
  17. package/dist/src/integrations/agent-registry.js.map +1 -1
  18. package/dist/src/integrations/async-subagent.d.ts +135 -0
  19. package/dist/src/integrations/async-subagent.d.ts.map +1 -0
  20. package/dist/src/integrations/async-subagent.js +213 -0
  21. package/dist/src/integrations/async-subagent.js.map +1 -0
  22. package/dist/src/integrations/auto-checkpoint.d.ts +98 -0
  23. package/dist/src/integrations/auto-checkpoint.d.ts.map +1 -0
  24. package/dist/src/integrations/auto-checkpoint.js +252 -0
  25. package/dist/src/integrations/auto-checkpoint.js.map +1 -0
  26. package/dist/src/integrations/complexity-classifier.d.ts +86 -0
  27. package/dist/src/integrations/complexity-classifier.d.ts.map +1 -0
  28. package/dist/src/integrations/complexity-classifier.js +233 -0
  29. package/dist/src/integrations/complexity-classifier.js.map +1 -0
  30. package/dist/src/integrations/delegation-protocol.d.ts +86 -0
  31. package/dist/src/integrations/delegation-protocol.d.ts.map +1 -0
  32. package/dist/src/integrations/delegation-protocol.js +127 -0
  33. package/dist/src/integrations/delegation-protocol.js.map +1 -0
  34. package/dist/src/integrations/dynamic-budget.d.ts +81 -0
  35. package/dist/src/integrations/dynamic-budget.d.ts.map +1 -0
  36. package/dist/src/integrations/dynamic-budget.js +151 -0
  37. package/dist/src/integrations/dynamic-budget.js.map +1 -0
  38. package/dist/src/integrations/economics.d.ts +44 -1
  39. package/dist/src/integrations/economics.d.ts.map +1 -1
  40. package/dist/src/integrations/economics.js +182 -3
  41. package/dist/src/integrations/economics.js.map +1 -1
  42. package/dist/src/integrations/environment-facts.d.ts +52 -0
  43. package/dist/src/integrations/environment-facts.d.ts.map +1 -0
  44. package/dist/src/integrations/environment-facts.js +84 -0
  45. package/dist/src/integrations/environment-facts.js.map +1 -0
  46. package/dist/src/integrations/index.d.ts +16 -1
  47. package/dist/src/integrations/index.d.ts.map +1 -1
  48. package/dist/src/integrations/index.js +31 -1
  49. package/dist/src/integrations/index.js.map +1 -1
  50. package/dist/src/integrations/injection-budget.d.ts +71 -0
  51. package/dist/src/integrations/injection-budget.d.ts.map +1 -0
  52. package/dist/src/integrations/injection-budget.js +136 -0
  53. package/dist/src/integrations/injection-budget.js.map +1 -0
  54. package/dist/src/integrations/mcp-client.d.ts.map +1 -1
  55. package/dist/src/integrations/mcp-client.js +14 -0
  56. package/dist/src/integrations/mcp-client.js.map +1 -1
  57. package/dist/src/integrations/mcp-custom-tools.d.ts +102 -0
  58. package/dist/src/integrations/mcp-custom-tools.d.ts.map +1 -0
  59. package/dist/src/integrations/mcp-custom-tools.js +232 -0
  60. package/dist/src/integrations/mcp-custom-tools.js.map +1 -0
  61. package/dist/src/integrations/mcp-tool-validator.d.ts +60 -0
  62. package/dist/src/integrations/mcp-tool-validator.d.ts.map +1 -0
  63. package/dist/src/integrations/mcp-tool-validator.js +141 -0
  64. package/dist/src/integrations/mcp-tool-validator.js.map +1 -0
  65. package/dist/src/integrations/self-improvement.d.ts +90 -0
  66. package/dist/src/integrations/self-improvement.d.ts.map +1 -0
  67. package/dist/src/integrations/self-improvement.js +217 -0
  68. package/dist/src/integrations/self-improvement.js.map +1 -0
  69. package/dist/src/integrations/smart-decomposer.d.ts +4 -0
  70. package/dist/src/integrations/smart-decomposer.d.ts.map +1 -1
  71. package/dist/src/integrations/smart-decomposer.js +55 -28
  72. package/dist/src/integrations/smart-decomposer.js.map +1 -1
  73. package/dist/src/integrations/subagent-output-store.d.ts +91 -0
  74. package/dist/src/integrations/subagent-output-store.d.ts.map +1 -0
  75. package/dist/src/integrations/subagent-output-store.js +257 -0
  76. package/dist/src/integrations/subagent-output-store.js.map +1 -0
  77. package/dist/src/integrations/swarm/index.d.ts +1 -1
  78. package/dist/src/integrations/swarm/index.d.ts.map +1 -1
  79. package/dist/src/integrations/swarm/index.js +1 -1
  80. package/dist/src/integrations/swarm/index.js.map +1 -1
  81. package/dist/src/integrations/swarm/model-selector.d.ts +1 -0
  82. package/dist/src/integrations/swarm/model-selector.d.ts.map +1 -1
  83. package/dist/src/integrations/swarm/model-selector.js +37 -3
  84. package/dist/src/integrations/swarm/model-selector.js.map +1 -1
  85. package/dist/src/integrations/swarm/swarm-config-loader.d.ts +10 -1
  86. package/dist/src/integrations/swarm/swarm-config-loader.d.ts.map +1 -1
  87. package/dist/src/integrations/swarm/swarm-config-loader.js +72 -6
  88. package/dist/src/integrations/swarm/swarm-config-loader.js.map +1 -1
  89. package/dist/src/integrations/swarm/swarm-event-bridge.d.ts.map +1 -1
  90. package/dist/src/integrations/swarm/swarm-event-bridge.js +26 -4
  91. package/dist/src/integrations/swarm/swarm-event-bridge.js.map +1 -1
  92. package/dist/src/integrations/swarm/swarm-events.d.ts +11 -0
  93. package/dist/src/integrations/swarm/swarm-events.d.ts.map +1 -1
  94. package/dist/src/integrations/swarm/swarm-events.js +4 -0
  95. package/dist/src/integrations/swarm/swarm-events.js.map +1 -1
  96. package/dist/src/integrations/swarm/swarm-orchestrator.d.ts +11 -0
  97. package/dist/src/integrations/swarm/swarm-orchestrator.d.ts.map +1 -1
  98. package/dist/src/integrations/swarm/swarm-orchestrator.js +233 -10
  99. package/dist/src/integrations/swarm/swarm-orchestrator.js.map +1 -1
  100. package/dist/src/integrations/swarm/swarm-quality-gate.d.ts +9 -2
  101. package/dist/src/integrations/swarm/swarm-quality-gate.d.ts.map +1 -1
  102. package/dist/src/integrations/swarm/swarm-quality-gate.js +128 -11
  103. package/dist/src/integrations/swarm/swarm-quality-gate.js.map +1 -1
  104. package/dist/src/integrations/swarm/task-queue.d.ts +11 -1
  105. package/dist/src/integrations/swarm/task-queue.d.ts.map +1 -1
  106. package/dist/src/integrations/swarm/task-queue.js +125 -15
  107. package/dist/src/integrations/swarm/task-queue.js.map +1 -1
  108. package/dist/src/integrations/swarm/types.d.ts +40 -1
  109. package/dist/src/integrations/swarm/types.d.ts.map +1 -1
  110. package/dist/src/integrations/swarm/types.js +6 -1
  111. package/dist/src/integrations/swarm/types.js.map +1 -1
  112. package/dist/src/integrations/swarm/worker-pool.d.ts +9 -3
  113. package/dist/src/integrations/swarm/worker-pool.d.ts.map +1 -1
  114. package/dist/src/integrations/swarm/worker-pool.js +89 -17
  115. package/dist/src/integrations/swarm/worker-pool.js.map +1 -1
  116. package/dist/src/integrations/thinking-strategy.d.ts +52 -0
  117. package/dist/src/integrations/thinking-strategy.d.ts.map +1 -0
  118. package/dist/src/integrations/thinking-strategy.js +129 -0
  119. package/dist/src/integrations/thinking-strategy.js.map +1 -0
  120. package/dist/src/integrations/tool-recommendation.d.ts +58 -0
  121. package/dist/src/integrations/tool-recommendation.d.ts.map +1 -0
  122. package/dist/src/integrations/tool-recommendation.js +215 -0
  123. package/dist/src/integrations/tool-recommendation.js.map +1 -0
  124. package/dist/src/integrations/verification-gate.d.ts +80 -0
  125. package/dist/src/integrations/verification-gate.d.ts.map +1 -0
  126. package/dist/src/integrations/verification-gate.js +146 -0
  127. package/dist/src/integrations/verification-gate.js.map +1 -0
  128. package/dist/src/integrations/work-log.d.ts +87 -0
  129. package/dist/src/integrations/work-log.d.ts.map +1 -0
  130. package/dist/src/integrations/work-log.js +275 -0
  131. package/dist/src/integrations/work-log.js.map +1 -0
  132. package/dist/src/main.js +5 -4
  133. package/dist/src/main.js.map +1 -1
  134. package/dist/src/modes.d.ts +6 -0
  135. package/dist/src/modes.d.ts.map +1 -1
  136. package/dist/src/modes.js +73 -2
  137. package/dist/src/modes.js.map +1 -1
  138. package/dist/src/tools/bash.d.ts +6 -0
  139. package/dist/src/tools/bash.d.ts.map +1 -1
  140. package/dist/src/tools/bash.js +12 -0
  141. package/dist/src/tools/bash.js.map +1 -1
  142. package/dist/src/tools/standard.d.ts +17 -1
  143. package/dist/src/tools/standard.d.ts.map +1 -1
  144. package/dist/src/tools/standard.js +64 -11
  145. package/dist/src/tools/standard.js.map +1 -1
  146. package/dist/src/types.d.ts +18 -0
  147. package/dist/src/types.d.ts.map +1 -1
  148. package/package.json +6 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-custom-tools.js","sourceRoot":"","sources":["../../../src/integrations/mcp-custom-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * MCP Tool Description Validator
3
+ *
4
+ * Validates MCP tool descriptions for quality, helping ensure
5
+ * that LLMs can understand and correctly use the tools.
6
+ *
7
+ * Quality checks:
8
+ * 1. Description length (minimum useful length)
9
+ * 2. Input schema has property descriptions
10
+ * 3. Required parameters are marked
11
+ * 4. Description contains usage patterns
12
+ * 5. Naming conventions (snake_case, prefixed)
13
+ */
14
+ export interface ToolValidationResult {
15
+ /** Tool name */
16
+ toolName: string;
17
+ /** Quality score (0-100) */
18
+ score: number;
19
+ /** Specific problems found */
20
+ issues: string[];
21
+ /** Improvement suggestions */
22
+ suggestions: string[];
23
+ }
24
+ export interface ToolValidationConfig {
25
+ /** Minimum description length (default: 20) */
26
+ minDescriptionLength: number;
27
+ /** Require input schema property descriptions (default: true) */
28
+ requirePropertyDescriptions: boolean;
29
+ /** Require at least one example in description (default: false) */
30
+ requireExamples: boolean;
31
+ /** Minimum quality score to pass (default: 40) */
32
+ minimumPassScore: number;
33
+ }
34
+ interface ValidatableToolInfo {
35
+ name: string;
36
+ description?: string;
37
+ inputSchema?: Record<string, unknown>;
38
+ }
39
+ /**
40
+ * Validate a single tool's description quality.
41
+ */
42
+ export declare function validateToolDescription(tool: ValidatableToolInfo, config?: Partial<ToolValidationConfig>): ToolValidationResult;
43
+ /**
44
+ * Validate all tools and return results sorted by score (worst first).
45
+ */
46
+ export declare function validateAllTools(tools: ValidatableToolInfo[], config?: Partial<ToolValidationConfig>): ToolValidationResult[];
47
+ /**
48
+ * Get a summary of validation results.
49
+ */
50
+ export declare function formatValidationSummary(results: ToolValidationResult[]): string;
51
+ /**
52
+ * Create a tool validator.
53
+ */
54
+ export declare function createToolValidator(config?: Partial<ToolValidationConfig>): {
55
+ validate: (tool: ValidatableToolInfo) => ToolValidationResult;
56
+ validateAll: (tools: ValidatableToolInfo[]) => ToolValidationResult[];
57
+ formatSummary: typeof formatValidationSummary;
58
+ };
59
+ export {};
60
+ //# sourceMappingURL=mcp-tool-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool-validator.d.ts","sourceRoot":"","sources":["../../../src/integrations/mcp-tool-validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,MAAM,WAAW,oBAAoB;IACnC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,+CAA+C;IAC/C,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iEAAiE;IACjE,2BAA2B,EAAE,OAAO,CAAC;IACrC,mEAAmE;IACnE,eAAe,EAAE,OAAO,CAAC;IACzB,kDAAkD;IAClD,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAiBD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,mBAAmB,EACzB,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACrC,oBAAoB,CAmFtB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,mBAAmB,EAAE,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACrC,oBAAoB,EAAE,CAIxB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAgB/E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC;qBAErD,mBAAmB;yBACf,mBAAmB,EAAE;;EAG7C"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * MCP Tool Description Validator
3
+ *
4
+ * Validates MCP tool descriptions for quality, helping ensure
5
+ * that LLMs can understand and correctly use the tools.
6
+ *
7
+ * Quality checks:
8
+ * 1. Description length (minimum useful length)
9
+ * 2. Input schema has property descriptions
10
+ * 3. Required parameters are marked
11
+ * 4. Description contains usage patterns
12
+ * 5. Naming conventions (snake_case, prefixed)
13
+ */
14
+ // =============================================================================
15
+ // CONSTANTS
16
+ // =============================================================================
17
+ const DEFAULT_CONFIG = {
18
+ minDescriptionLength: 20,
19
+ requirePropertyDescriptions: true,
20
+ requireExamples: false,
21
+ minimumPassScore: 40,
22
+ };
23
+ // =============================================================================
24
+ // VALIDATOR
25
+ // =============================================================================
26
+ /**
27
+ * Validate a single tool's description quality.
28
+ */
29
+ export function validateToolDescription(tool, config) {
30
+ const cfg = { ...DEFAULT_CONFIG, ...config };
31
+ const issues = [];
32
+ const suggestions = [];
33
+ let score = 100;
34
+ const description = tool.description || '';
35
+ // Check 1: Description exists and has minimum length
36
+ if (!description) {
37
+ issues.push('No description provided');
38
+ score -= 40;
39
+ }
40
+ else if (description.length < cfg.minDescriptionLength) {
41
+ issues.push(`Description too short (${description.length} chars, min: ${cfg.minDescriptionLength})`);
42
+ suggestions.push('Add more detail about what this tool does and when to use it');
43
+ score -= 20;
44
+ }
45
+ // Check 2: Description is informative (not just tool name restated)
46
+ if (description && tool.name) {
47
+ const nameWords = tool.name.replace(/[_-]/g, ' ').toLowerCase().split(/\s+/);
48
+ const descWords = description.toLowerCase().split(/\s+/);
49
+ const overlap = nameWords.filter(w => descWords.includes(w)).length;
50
+ if (overlap === nameWords.length && description.split(/\s+/).length < 5) {
51
+ issues.push('Description merely restates the tool name');
52
+ suggestions.push('Explain what the tool does, its purpose, and any important behavior');
53
+ score -= 15;
54
+ }
55
+ }
56
+ // Check 3: Input schema has property descriptions
57
+ if (cfg.requirePropertyDescriptions && tool.inputSchema) {
58
+ const properties = tool.inputSchema.properties;
59
+ if (properties) {
60
+ const undocumented = [];
61
+ for (const [propName, propSchema] of Object.entries(properties)) {
62
+ if (!propSchema.description) {
63
+ undocumented.push(propName);
64
+ }
65
+ }
66
+ if (undocumented.length > 0) {
67
+ issues.push(`Properties missing descriptions: ${undocumented.join(', ')}`);
68
+ suggestions.push('Add "description" to each property in the input schema');
69
+ score -= Math.min(undocumented.length * 5, 20);
70
+ }
71
+ }
72
+ }
73
+ // Check 4: Required parameters are specified
74
+ if (tool.inputSchema) {
75
+ const required = tool.inputSchema.required;
76
+ const properties = tool.inputSchema.properties;
77
+ if (properties && Object.keys(properties).length > 0 && (!required || required.length === 0)) {
78
+ suggestions.push('Consider marking required parameters in the schema');
79
+ score -= 5;
80
+ }
81
+ }
82
+ // Check 5: Description mentions examples or usage patterns
83
+ if (cfg.requireExamples && description) {
84
+ const hasExample = /example|e\.g\.|for instance|usage:|such as/i.test(description);
85
+ if (!hasExample) {
86
+ suggestions.push('Add a usage example to the description');
87
+ score -= 10;
88
+ }
89
+ }
90
+ // Check 6: Naming conventions
91
+ if (tool.name) {
92
+ const isSnakeCase = /^[a-z][a-z0-9_]*$/.test(tool.name);
93
+ const hasMCPPrefix = tool.name.startsWith('mcp_');
94
+ if (!isSnakeCase && !hasMCPPrefix) {
95
+ suggestions.push('Consider using snake_case for tool names');
96
+ score -= 5;
97
+ }
98
+ }
99
+ return {
100
+ toolName: tool.name,
101
+ score: Math.max(0, score),
102
+ issues,
103
+ suggestions,
104
+ };
105
+ }
106
+ /**
107
+ * Validate all tools and return results sorted by score (worst first).
108
+ */
109
+ export function validateAllTools(tools, config) {
110
+ return tools
111
+ .map(tool => validateToolDescription(tool, config))
112
+ .sort((a, b) => a.score - b.score);
113
+ }
114
+ /**
115
+ * Get a summary of validation results.
116
+ */
117
+ export function formatValidationSummary(results) {
118
+ const passed = results.filter(r => r.score >= (DEFAULT_CONFIG.minimumPassScore));
119
+ const failed = results.filter(r => r.score < (DEFAULT_CONFIG.minimumPassScore));
120
+ const lines = [
121
+ `Tool Description Quality: ${passed.length}/${results.length} passed`,
122
+ ];
123
+ if (failed.length > 0) {
124
+ lines.push('', 'Failed:');
125
+ for (const r of failed) {
126
+ lines.push(` ${r.toolName} (score: ${r.score}): ${r.issues.join('; ')}`);
127
+ }
128
+ }
129
+ return lines.join('\n');
130
+ }
131
+ /**
132
+ * Create a tool validator.
133
+ */
134
+ export function createToolValidator(config) {
135
+ return {
136
+ validate: (tool) => validateToolDescription(tool, config),
137
+ validateAll: (tools) => validateAllTools(tools, config),
138
+ formatSummary: formatValidationSummary,
139
+ };
140
+ }
141
+ //# sourceMappingURL=mcp-tool-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool-validator.js","sourceRoot":"","sources":["../../../src/integrations/mcp-tool-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Self-Improvement Protocol
3
+ *
4
+ * Diagnoses tool call failures, proposes description improvements,
5
+ * and connects to the existing FailureTracker and LearningStore
6
+ * for cross-session persistence.
7
+ *
8
+ * Key features:
9
+ * - Tool failure diagnosis (why did this fail?)
10
+ * - Improved arguments suggestion (how to fix the call)
11
+ * - Tool description improvements (better docs for the LLM)
12
+ * - Success pattern tracking
13
+ */
14
+ import type { LearningStore } from './learning-store.js';
15
+ export interface ToolCallDiagnosis {
16
+ /** Tool that was called */
17
+ toolName: string;
18
+ /** Original arguments that failed */
19
+ originalArgs: Record<string, unknown>;
20
+ /** The error message */
21
+ error: string;
22
+ /** Why it failed */
23
+ diagnosis: string;
24
+ /** How to fix the call */
25
+ suggestedFix: string;
26
+ /** Fixed arguments (if determinable) */
27
+ improvedArgs?: Record<string, unknown>;
28
+ /** Better tool description (if applicable) */
29
+ descriptionImprovement?: string;
30
+ /** Error category */
31
+ category: FailureCategory;
32
+ }
33
+ export type FailureCategory = 'wrong_args' | 'missing_args' | 'file_not_found' | 'permission' | 'timeout' | 'syntax_error' | 'state_error' | 'unknown';
34
+ export interface SelfImprovementConfig {
35
+ /** Enable tool call diagnosis (default: true) */
36
+ enableDiagnosis: boolean;
37
+ /** Enable description improvement proposals (default: false) */
38
+ enableDescriptionImprovement: boolean;
39
+ /** Maximum diagnoses to cache (default: 50) */
40
+ maxDiagnosisCache: number;
41
+ }
42
+ export interface SuccessPattern {
43
+ toolName: string;
44
+ argPattern: Record<string, string>;
45
+ context: string;
46
+ count: number;
47
+ }
48
+ export declare class SelfImprovementProtocol {
49
+ private config;
50
+ private learningStore;
51
+ private diagnosisCache;
52
+ private successPatterns;
53
+ private failureCounts;
54
+ constructor(config?: Partial<SelfImprovementConfig>, learningStore?: LearningStore | null);
55
+ /**
56
+ * Diagnose why a tool call failed.
57
+ * Uses error pattern matching for fast diagnosis.
58
+ */
59
+ diagnoseToolFailure(toolName: string, args: Record<string, unknown>, error: string, _toolDescription?: string): ToolCallDiagnosis;
60
+ /**
61
+ * Record a successful tool call pattern.
62
+ */
63
+ recordSuccess(toolName: string, args: Record<string, unknown>, context: string): void;
64
+ /**
65
+ * Get failure count for a tool.
66
+ */
67
+ getFailureCount(toolName: string): number;
68
+ /**
69
+ * Check if a tool has been failing repeatedly (3+ times).
70
+ */
71
+ isRepeatedlyFailing(toolName: string): boolean;
72
+ /**
73
+ * Get a diagnosis-enhanced error message for the LLM.
74
+ * Includes the diagnosis and suggested fix alongside the error.
75
+ */
76
+ enhanceErrorMessage(toolName: string, error: string, args: Record<string, unknown>): string;
77
+ /**
78
+ * Get success patterns for a tool (useful for prompt context).
79
+ */
80
+ getSuccessPatterns(toolName: string): SuccessPattern[];
81
+ /**
82
+ * Persist a failure learning to the learning store.
83
+ */
84
+ private persistFailureLearning;
85
+ }
86
+ /**
87
+ * Create a self-improvement protocol.
88
+ */
89
+ export declare function createSelfImprovementProtocol(config?: Partial<SelfImprovementConfig>, learningStore?: LearningStore | null): SelfImprovementProtocol;
90
+ //# sourceMappingURL=self-improvement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self-improvement.d.ts","sourceRoot":"","sources":["../../../src/integrations/self-improvement.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOzD,MAAM,WAAW,iBAAiB;IAChC,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,8CAA8C;IAC9C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB;IACrB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,MAAM,eAAe,GACvB,YAAY,GACZ,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,SAAS,GACT,cAAc,GACd,aAAa,GACb,SAAS,CAAC;AAEd,MAAM,WAAW,qBAAqB;IACpC,iDAAiD;IACjD,eAAe,EAAE,OAAO,CAAC;IACzB,gEAAgE;IAChE,4BAA4B,EAAE,OAAO,CAAC;IACtC,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAqED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,eAAe,CAA0C;IACjE,OAAO,CAAC,aAAa,CAAkC;gBAGrD,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI;IAMtC;;;OAGG;IACH,mBAAmB,CACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,EAAE,MAAM,EACb,gBAAgB,CAAC,EAAE,MAAM,GACxB,iBAAiB;IA2DpB;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAqBrF;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIzC;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9C;;;OAGG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM;IAkB3F;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE;IAItD;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAiB/B;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,GACnC,uBAAuB,CAEzB"}
@@ -0,0 +1,217 @@
1
+ /**
2
+ * Self-Improvement Protocol
3
+ *
4
+ * Diagnoses tool call failures, proposes description improvements,
5
+ * and connects to the existing FailureTracker and LearningStore
6
+ * for cross-session persistence.
7
+ *
8
+ * Key features:
9
+ * - Tool failure diagnosis (why did this fail?)
10
+ * - Improved arguments suggestion (how to fix the call)
11
+ * - Tool description improvements (better docs for the LLM)
12
+ * - Success pattern tracking
13
+ */
14
+ // =============================================================================
15
+ // CONSTANTS
16
+ // =============================================================================
17
+ const DEFAULT_CONFIG = {
18
+ enableDiagnosis: true,
19
+ enableDescriptionImprovement: false,
20
+ maxDiagnosisCache: 50,
21
+ };
22
+ /**
23
+ * Common error patterns and their diagnoses.
24
+ */
25
+ const ERROR_PATTERNS = [
26
+ {
27
+ pattern: /ENOENT|no such file|file not found|does not exist/i,
28
+ category: 'file_not_found',
29
+ diagnosis: 'The target file or directory does not exist',
30
+ fix: 'Use glob or list_files to verify the path before accessing it',
31
+ },
32
+ {
33
+ pattern: /EACCES|permission denied|not permitted/i,
34
+ category: 'permission',
35
+ diagnosis: 'Insufficient permissions to perform this operation',
36
+ fix: 'Check file permissions or try a different approach',
37
+ },
38
+ {
39
+ pattern: /timeout|timed out|ETIMEDOUT/i,
40
+ category: 'timeout',
41
+ diagnosis: 'The operation timed out',
42
+ fix: 'Try with a shorter command or increase timeout',
43
+ },
44
+ {
45
+ pattern: /syntax error|unexpected token|parse error/i,
46
+ category: 'syntax_error',
47
+ diagnosis: 'The command or arguments contain a syntax error',
48
+ fix: 'Check command syntax and argument formatting',
49
+ },
50
+ {
51
+ pattern: /required|missing|undefined is not/i,
52
+ category: 'missing_args',
53
+ diagnosis: 'One or more required arguments were not provided',
54
+ fix: 'Review the tool schema and provide all required arguments',
55
+ },
56
+ {
57
+ pattern: /invalid|not a valid|type error|expected.*got/i,
58
+ category: 'wrong_args',
59
+ diagnosis: 'The arguments were of the wrong type or format',
60
+ fix: 'Check the argument types against the tool schema',
61
+ },
62
+ {
63
+ pattern: /not found in file|no match|unique match/i,
64
+ category: 'state_error',
65
+ diagnosis: 'The expected content was not found (file may have changed)',
66
+ fix: 'Re-read the file to get current content before editing',
67
+ },
68
+ ];
69
+ // =============================================================================
70
+ // PROTOCOL
71
+ // =============================================================================
72
+ export class SelfImprovementProtocol {
73
+ config;
74
+ learningStore;
75
+ diagnosisCache = new Map();
76
+ successPatterns = new Map();
77
+ failureCounts = new Map();
78
+ constructor(config, learningStore) {
79
+ this.config = { ...DEFAULT_CONFIG, ...config };
80
+ this.learningStore = learningStore ?? null;
81
+ }
82
+ /**
83
+ * Diagnose why a tool call failed.
84
+ * Uses error pattern matching for fast diagnosis.
85
+ */
86
+ diagnoseToolFailure(toolName, args, error, _toolDescription) {
87
+ // Track failure count
88
+ const failKey = toolName;
89
+ const count = (this.failureCounts.get(failKey) ?? 0) + 1;
90
+ this.failureCounts.set(failKey, count);
91
+ // Match against known patterns
92
+ let category = 'unknown';
93
+ let diagnosis = 'Unable to determine the exact cause of failure';
94
+ let suggestedFix = 'Try a different approach or tool';
95
+ for (const pattern of ERROR_PATTERNS) {
96
+ if (pattern.pattern.test(error)) {
97
+ category = pattern.category;
98
+ diagnosis = pattern.diagnosis;
99
+ suggestedFix = pattern.fix;
100
+ break;
101
+ }
102
+ }
103
+ // Build improved args for specific categories
104
+ let improvedArgs;
105
+ if (category === 'file_not_found' && args.path) {
106
+ // Suggest using glob to find the file
107
+ suggestedFix = `File "${args.path}" not found. Use glob to search for similar files.`;
108
+ }
109
+ if (category === 'state_error' && toolName === 'edit_file') {
110
+ suggestedFix = 'Re-read the file to get current content, then retry the edit.';
111
+ }
112
+ const result = {
113
+ toolName,
114
+ originalArgs: args,
115
+ error,
116
+ diagnosis,
117
+ suggestedFix,
118
+ improvedArgs,
119
+ category,
120
+ };
121
+ // Cache the diagnosis
122
+ const cacheKey = `${toolName}:${error.slice(0, 100)}`;
123
+ this.diagnosisCache.set(cacheKey, result);
124
+ if (this.diagnosisCache.size > this.config.maxDiagnosisCache) {
125
+ // Remove oldest entries
126
+ const keys = [...this.diagnosisCache.keys()];
127
+ for (let i = 0; i < 10; i++) {
128
+ this.diagnosisCache.delete(keys[i]);
129
+ }
130
+ }
131
+ // Persist to learning store for cross-session learning
132
+ if (this.learningStore && count >= 3) {
133
+ this.persistFailureLearning(toolName, diagnosis, suggestedFix);
134
+ }
135
+ return result;
136
+ }
137
+ /**
138
+ * Record a successful tool call pattern.
139
+ */
140
+ recordSuccess(toolName, args, context) {
141
+ const key = `${toolName}:${Object.keys(args).sort().join(',')}`;
142
+ const existing = this.successPatterns.get(key);
143
+ if (existing) {
144
+ existing.count++;
145
+ }
146
+ else {
147
+ this.successPatterns.set(key, {
148
+ toolName,
149
+ argPattern: Object.fromEntries(Object.entries(args).map(([k, v]) => [k, typeof v])),
150
+ context,
151
+ count: 1,
152
+ });
153
+ }
154
+ // Reset failure count on success
155
+ this.failureCounts.set(toolName, 0);
156
+ }
157
+ /**
158
+ * Get failure count for a tool.
159
+ */
160
+ getFailureCount(toolName) {
161
+ return this.failureCounts.get(toolName) ?? 0;
162
+ }
163
+ /**
164
+ * Check if a tool has been failing repeatedly (3+ times).
165
+ */
166
+ isRepeatedlyFailing(toolName) {
167
+ return (this.failureCounts.get(toolName) ?? 0) >= 3;
168
+ }
169
+ /**
170
+ * Get a diagnosis-enhanced error message for the LLM.
171
+ * Includes the diagnosis and suggested fix alongside the error.
172
+ */
173
+ enhanceErrorMessage(toolName, error, args) {
174
+ if (!this.config.enableDiagnosis)
175
+ return error;
176
+ const diagnosis = this.diagnoseToolFailure(toolName, args, error);
177
+ const parts = [error];
178
+ if (diagnosis.diagnosis !== 'Unable to determine the exact cause of failure') {
179
+ parts.push(`\n[Diagnosis: ${diagnosis.diagnosis}]`);
180
+ parts.push(`[Suggested fix: ${diagnosis.suggestedFix}]`);
181
+ }
182
+ if (this.isRepeatedlyFailing(toolName)) {
183
+ parts.push(`\n[Warning: "${toolName}" has failed ${this.getFailureCount(toolName)} times. Consider using a different tool or approach.]`);
184
+ }
185
+ return parts.join('');
186
+ }
187
+ /**
188
+ * Get success patterns for a tool (useful for prompt context).
189
+ */
190
+ getSuccessPatterns(toolName) {
191
+ return [...this.successPatterns.values()].filter(p => p.toolName === toolName);
192
+ }
193
+ /**
194
+ * Persist a failure learning to the learning store.
195
+ */
196
+ persistFailureLearning(toolName, diagnosis, fix) {
197
+ try {
198
+ this.learningStore?.proposeLearning({
199
+ type: 'best_practice',
200
+ description: `Tool "${toolName}" failure pattern: ${diagnosis}`,
201
+ details: `Fix: ${fix}`,
202
+ categories: ['runtime'],
203
+ actions: [toolName],
204
+ });
205
+ }
206
+ catch {
207
+ // Learning store errors are not critical
208
+ }
209
+ }
210
+ }
211
+ /**
212
+ * Create a self-improvement protocol.
213
+ */
214
+ export function createSelfImprovementProtocol(config, learningStore) {
215
+ return new SelfImprovementProtocol(config, learningStore);
216
+ }
217
+ //# sourceMappingURL=self-improvement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self-improvement.js","sourceRoot":"","sources":["../../../src/integrations/self-improvement.ts"],"names":[],"mappings":"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"}
@@ -170,6 +170,10 @@ export type SmartDecomposerEvent = {
170
170
  } | {
171
171
  type: 'llm.called';
172
172
  task: string;
173
+ } | {
174
+ type: 'llm.fallback';
175
+ reason: string;
176
+ task: string;
173
177
  } | {
174
178
  type: 'conflict.detected';
175
179
  conflict: ResourceConflict;
@@ -1 +1 @@
1
- {"version":3,"file":"smart-decomposer.d.ts","sourceRoot":"","sources":["../../../src/integrations/smart-decomposer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-decomposer.d.ts","sourceRoot":"","sources":["../../../src/integrations/smart-decomposer.ts"],"names":[],"mappings":"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"}