erosolar-cli 1.7.172 → 1.7.174

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 (62) hide show
  1. package/dist/capabilities/index.d.ts +1 -0
  2. package/dist/capabilities/index.d.ts.map +1 -1
  3. package/dist/capabilities/index.js +1 -0
  4. package/dist/capabilities/index.js.map +1 -1
  5. package/dist/capabilities/validationCapability.d.ts +13 -0
  6. package/dist/capabilities/validationCapability.d.ts.map +1 -0
  7. package/dist/capabilities/validationCapability.js +24 -0
  8. package/dist/capabilities/validationCapability.js.map +1 -0
  9. package/dist/core/agent.d.ts +11 -0
  10. package/dist/core/agent.d.ts.map +1 -1
  11. package/dist/core/agent.js +18 -2
  12. package/dist/core/agent.js.map +1 -1
  13. package/dist/core/contextManager.d.ts +36 -1
  14. package/dist/core/contextManager.d.ts.map +1 -1
  15. package/dist/core/contextManager.js +54 -0
  16. package/dist/core/contextManager.js.map +1 -1
  17. package/dist/core/errors/errorTypes.d.ts +20 -16
  18. package/dist/core/errors/errorTypes.d.ts.map +1 -1
  19. package/dist/core/errors/errorTypes.js +1 -1
  20. package/dist/core/errors/errorTypes.js.map +1 -1
  21. package/dist/core/performanceMonitor.d.ts +33 -20
  22. package/dist/core/performanceMonitor.d.ts.map +1 -1
  23. package/dist/core/performanceMonitor.js.map +1 -1
  24. package/dist/core/preferences.d.ts +1 -0
  25. package/dist/core/preferences.d.ts.map +1 -1
  26. package/dist/core/preferences.js +7 -0
  27. package/dist/core/preferences.js.map +1 -1
  28. package/dist/core/toolPreconditions.d.ts +23 -4
  29. package/dist/core/toolPreconditions.d.ts.map +1 -1
  30. package/dist/core/toolPreconditions.js +90 -0
  31. package/dist/core/toolPreconditions.js.map +1 -1
  32. package/dist/core/toolRuntime.d.ts +27 -18
  33. package/dist/core/toolRuntime.d.ts.map +1 -1
  34. package/dist/core/toolRuntime.js +24 -1
  35. package/dist/core/toolRuntime.js.map +1 -1
  36. package/dist/core/validationRunner.d.ts +93 -0
  37. package/dist/core/validationRunner.d.ts.map +1 -0
  38. package/dist/core/validationRunner.js +740 -0
  39. package/dist/core/validationRunner.js.map +1 -0
  40. package/dist/plugins/tools/nodeDefaults.d.ts.map +1 -1
  41. package/dist/plugins/tools/nodeDefaults.js +2 -0
  42. package/dist/plugins/tools/nodeDefaults.js.map +1 -1
  43. package/dist/plugins/tools/validation/validationPlugin.d.ts +3 -0
  44. package/dist/plugins/tools/validation/validationPlugin.d.ts.map +1 -0
  45. package/dist/plugins/tools/validation/validationPlugin.js +14 -0
  46. package/dist/plugins/tools/validation/validationPlugin.js.map +1 -0
  47. package/dist/runtime/agentSession.d.ts.map +1 -1
  48. package/dist/runtime/agentSession.js +11 -3
  49. package/dist/runtime/agentSession.js.map +1 -1
  50. package/dist/shell/chatBox.d.ts +228 -0
  51. package/dist/shell/chatBox.d.ts.map +1 -0
  52. package/dist/shell/chatBox.js +811 -0
  53. package/dist/shell/chatBox.js.map +1 -0
  54. package/dist/shell/interactiveShell.d.ts +13 -0
  55. package/dist/shell/interactiveShell.d.ts.map +1 -1
  56. package/dist/shell/interactiveShell.js +120 -11
  57. package/dist/shell/interactiveShell.js.map +1 -1
  58. package/dist/tools/validationTools.d.ts +7 -0
  59. package/dist/tools/validationTools.d.ts.map +1 -0
  60. package/dist/tools/validationTools.js +278 -0
  61. package/dist/tools/validationTools.js.map +1 -0
  62. package/package.json +1 -1
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Validation tools for AI software engineering - validates all changes and provides
3
+ * intelligent error parsing with actionable fix suggestions.
4
+ */
5
+ import type { ToolDefinition } from '../core/toolRuntime.js';
6
+ export declare function createValidationTools(workingDir: string): ToolDefinition[];
7
+ //# sourceMappingURL=validationTools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validationTools.d.ts","sourceRoot":"","sources":["../../src/tools/validationTools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAS7D,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,EAAE,CAqT1E"}
@@ -0,0 +1,278 @@
1
+ /**
2
+ * Validation tools for AI software engineering - validates all changes and provides
3
+ * intelligent error parsing with actionable fix suggestions.
4
+ */
5
+ import { ValidationRunner, formatValidationResult, formatErrorsForAI, } from '../core/validationRunner.js';
6
+ export function createValidationTools(workingDir) {
7
+ // Keep track of last validation result for follow-up operations
8
+ let lastValidationResult = null;
9
+ return [
10
+ {
11
+ name: 'validate_all_changes',
12
+ description: `Comprehensive validation of all code changes - runs TypeScript type checking, build, and tests.
13
+ This is the Claude Code-style validation flow that should be run after making changes.
14
+ Returns structured errors with file locations, error codes, and suggested fixes.
15
+ Use this AFTER completing implementation work to verify everything compiles and tests pass.`,
16
+ parameters: {
17
+ type: 'object',
18
+ properties: {
19
+ phases: {
20
+ type: 'array',
21
+ items: {
22
+ type: 'string',
23
+ enum: ['typescript', 'build', 'test', 'lint'],
24
+ },
25
+ description: 'Validation phases to run (default: typescript, build, test)',
26
+ },
27
+ stopOnFirstFailure: {
28
+ type: 'boolean',
29
+ description: 'Stop after first failing phase (default: false)',
30
+ },
31
+ verbose: {
32
+ type: 'boolean',
33
+ description: 'Include raw output in results (default: false)',
34
+ },
35
+ },
36
+ additionalProperties: false,
37
+ },
38
+ handler: async (args) => {
39
+ const rawPhases = Array.isArray(args['phases']) ? args['phases'] : null;
40
+ const phases = rawPhases
41
+ ? rawPhases.filter((p) => ['typescript', 'build', 'test', 'lint'].includes(p))
42
+ : ['typescript', 'build', 'test'];
43
+ const stopOnFirstFailure = args['stopOnFirstFailure'] === true;
44
+ const verbose = args['verbose'] === true;
45
+ const runner = new ValidationRunner({
46
+ workingDir,
47
+ phases,
48
+ stopOnFirstFailure,
49
+ verbose,
50
+ });
51
+ const result = await runner.runAll();
52
+ lastValidationResult = result;
53
+ return formatValidationResult(result);
54
+ },
55
+ },
56
+ {
57
+ name: 'get_validation_errors_for_fixing',
58
+ description: `Get the last validation errors in a format optimized for AI fixing.
59
+ Returns structured error information grouped by file, with specific line numbers,
60
+ error codes, and step-by-step fix instructions.
61
+ Use this after validate_all_changes fails to get detailed fix guidance.`,
62
+ parameters: {
63
+ type: 'object',
64
+ properties: {
65
+ includeWarnings: {
66
+ type: 'boolean',
67
+ description: 'Include warnings in addition to errors (default: false)',
68
+ },
69
+ maxErrors: {
70
+ type: 'number',
71
+ description: 'Maximum number of errors to return (default: 50)',
72
+ },
73
+ },
74
+ additionalProperties: false,
75
+ },
76
+ handler: async (args) => {
77
+ if (!lastValidationResult) {
78
+ return 'No validation has been run yet. Use validate_all_changes first.';
79
+ }
80
+ const includeWarnings = args['includeWarnings'] === true;
81
+ const maxErrorsArg = args['maxErrors'];
82
+ const maxErrors = typeof maxErrorsArg === 'number' && maxErrorsArg > 0 ? maxErrorsArg : 50;
83
+ let errors = lastValidationResult.errors.slice(0, maxErrors);
84
+ if (includeWarnings) {
85
+ errors = [...errors, ...lastValidationResult.warnings.slice(0, maxErrors - errors.length)];
86
+ }
87
+ if (errors.length === 0) {
88
+ return 'No errors to fix. Last validation passed.';
89
+ }
90
+ return formatErrorsForAI(errors);
91
+ },
92
+ },
93
+ {
94
+ name: 'validate_typescript',
95
+ description: `Run TypeScript type checking only (npx tsc --noEmit).
96
+ Faster than full validation when you only need to check types.
97
+ Returns structured TypeScript errors with file locations and fix suggestions.`,
98
+ parameters: {
99
+ type: 'object',
100
+ properties: {},
101
+ additionalProperties: false,
102
+ },
103
+ handler: async () => {
104
+ const runner = new ValidationRunner({
105
+ workingDir,
106
+ phases: ['typescript'],
107
+ });
108
+ const result = await runner.runPhase('typescript');
109
+ lastValidationResult = result;
110
+ return formatValidationResult(result);
111
+ },
112
+ },
113
+ {
114
+ name: 'suggest_fixes',
115
+ description: `Analyze validation errors and suggest specific fixes.
116
+ Provides detailed fix suggestions for each error type including:
117
+ - TypeScript errors: Type fixes, import suggestions, property additions
118
+ - Test failures: Assertion fixes, test updates
119
+ - Lint errors: Code style fixes, unused variable handling
120
+
121
+ This tool analyzes errors and provides actionable fix suggestions without making changes.`,
122
+ parameters: {
123
+ type: 'object',
124
+ properties: {
125
+ errorType: {
126
+ type: 'string',
127
+ enum: ['typescript', 'test', 'lint', 'build', 'all'],
128
+ description: 'Filter by error type (default: all)',
129
+ },
130
+ autoFixableOnly: {
131
+ type: 'boolean',
132
+ description: 'Only show auto-fixable errors (default: false)',
133
+ },
134
+ },
135
+ additionalProperties: false,
136
+ },
137
+ handler: async (args) => {
138
+ if (!lastValidationResult) {
139
+ return 'No validation has been run yet. Use validate_all_changes first.';
140
+ }
141
+ const errorTypeArg = args['errorType'];
142
+ const errorType = typeof errorTypeArg === 'string' ? errorTypeArg : 'all';
143
+ const autoFixableOnly = args['autoFixableOnly'] === true;
144
+ let errors = lastValidationResult.errors;
145
+ if (errorType !== 'all') {
146
+ errors = errors.filter(e => e.type === errorType);
147
+ }
148
+ if (autoFixableOnly) {
149
+ errors = errors.filter(e => e.suggestedFix?.autoFixable);
150
+ }
151
+ if (errors.length === 0) {
152
+ return autoFixableOnly
153
+ ? 'No auto-fixable errors found.'
154
+ : 'No errors found matching the criteria.';
155
+ }
156
+ const lines = [];
157
+ lines.push('# Fix Suggestions');
158
+ lines.push('');
159
+ lines.push(`Found ${errors.length} error(s) to fix.`);
160
+ lines.push('');
161
+ // Group by file for easier fixing
162
+ const byFile = new Map();
163
+ for (const error of errors) {
164
+ const key = error.file || 'general';
165
+ if (!byFile.has(key)) {
166
+ byFile.set(key, []);
167
+ }
168
+ byFile.get(key).push(error);
169
+ }
170
+ for (const [file, fileErrors] of byFile) {
171
+ lines.push(`## ${file}`);
172
+ lines.push('');
173
+ for (const error of fileErrors) {
174
+ lines.push(`### ${error.code || error.type.toUpperCase()} at line ${error.line || '?'}`);
175
+ lines.push(`**Error:** ${error.message}`);
176
+ lines.push('');
177
+ if (error.suggestedFix) {
178
+ lines.push(`**Fix Strategy:** ${error.suggestedFix.description}`);
179
+ lines.push(`**Auto-fixable:** ${error.suggestedFix.autoFixable ? 'Yes ✓' : 'No - Manual fix required'}`);
180
+ lines.push(`**Fix Type:** ${error.suggestedFix.fixType}`);
181
+ lines.push('');
182
+ if (error.suggestedFix.fixDetails.command) {
183
+ lines.push('**Command to run:**');
184
+ lines.push('```bash');
185
+ lines.push(error.suggestedFix.fixDetails.command);
186
+ lines.push('```');
187
+ lines.push('');
188
+ }
189
+ if (error.suggestedFix.fixDetails.manualSteps) {
190
+ lines.push('**Manual steps:**');
191
+ for (let i = 0; i < error.suggestedFix.fixDetails.manualSteps.length; i++) {
192
+ lines.push(`${i + 1}. ${error.suggestedFix.fixDetails.manualSteps[i]}`);
193
+ }
194
+ lines.push('');
195
+ }
196
+ }
197
+ else {
198
+ lines.push('**Fix Strategy:** Manual investigation required');
199
+ lines.push('');
200
+ }
201
+ lines.push('---');
202
+ lines.push('');
203
+ }
204
+ }
205
+ // Summary
206
+ lines.push('## Summary');
207
+ lines.push('');
208
+ const autoFixable = errors.filter(e => e.suggestedFix?.autoFixable).length;
209
+ const manual = errors.length - autoFixable;
210
+ lines.push(`- **Auto-fixable:** ${autoFixable}`);
211
+ lines.push(`- **Manual fix required:** ${manual}`);
212
+ lines.push('');
213
+ if (autoFixable > 0) {
214
+ lines.push('### Recommended Approach');
215
+ lines.push('1. Fix auto-fixable issues first using the suggested commands');
216
+ lines.push('2. Then address manual fixes file by file');
217
+ lines.push('3. Re-run validate_all_changes to verify all fixes');
218
+ }
219
+ return lines.join('\n');
220
+ },
221
+ },
222
+ {
223
+ name: 'quick_typecheck',
224
+ description: `Ultra-fast TypeScript type check for iterative development.
225
+ Use this for quick feedback while fixing errors one at a time.
226
+ Much faster than full validation since it only runs tsc --noEmit.`,
227
+ parameters: {
228
+ type: 'object',
229
+ properties: {
230
+ file: {
231
+ type: 'string',
232
+ description: 'Optional: Check only errors in this specific file',
233
+ },
234
+ },
235
+ additionalProperties: false,
236
+ },
237
+ handler: async (args) => {
238
+ const runner = new ValidationRunner({
239
+ workingDir,
240
+ phases: ['typescript'],
241
+ });
242
+ const result = await runner.runPhase('typescript');
243
+ lastValidationResult = result;
244
+ const fileFilter = typeof args['file'] === 'string' ? args['file'] : null;
245
+ if (fileFilter) {
246
+ const filteredErrors = result.errors.filter(e => e.file?.includes(fileFilter));
247
+ const filteredWarnings = result.warnings.filter(e => e.file?.includes(fileFilter));
248
+ if (filteredErrors.length === 0 && filteredWarnings.length === 0) {
249
+ return `✓ No TypeScript errors in files matching "${fileFilter}"`;
250
+ }
251
+ const lines = [];
252
+ lines.push(`TypeScript errors in "${fileFilter}":`);
253
+ lines.push('');
254
+ for (const error of filteredErrors) {
255
+ lines.push(`${error.file}:${error.line}:${error.column} - ${error.code}: ${error.message}`);
256
+ }
257
+ return lines.join('\n');
258
+ }
259
+ if (result.success) {
260
+ return `✓ TypeScript: No errors (${(result.durationMs / 1000).toFixed(1)}s)`;
261
+ }
262
+ const lines = [];
263
+ lines.push(`✗ TypeScript: ${result.errors.length} error(s) (${(result.durationMs / 1000).toFixed(1)}s)`);
264
+ lines.push('');
265
+ // Show first 10 errors for quick review
266
+ for (const error of result.errors.slice(0, 10)) {
267
+ lines.push(`${error.file}:${error.line}:${error.column} - ${error.code}: ${error.message}`);
268
+ }
269
+ if (result.errors.length > 10) {
270
+ lines.push(`... and ${result.errors.length - 10} more errors`);
271
+ lines.push('Use get_validation_errors_for_fixing for full list with fix suggestions.');
272
+ }
273
+ return lines.join('\n');
274
+ },
275
+ },
276
+ ];
277
+ }
278
+ //# sourceMappingURL=validationTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validationTools.js","sourceRoot":"","sources":["../../src/tools/validationTools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "erosolar-cli",
3
- "version": "1.7.172",
3
+ "version": "1.7.174",
4
4
  "description": "Unified AI agent framework for the command line - Multi-provider support with schema-driven tools, code intelligence, and transparent reasoning",
5
5
  "main": "dist/bin/erosolar.js",
6
6
  "type": "module",