erosolar-cli 1.7.192 → 1.7.194

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 (54) hide show
  1. package/dist/bin/selfTest.d.ts.map +1 -1
  2. package/dist/bin/selfTest.js +3 -105
  3. package/dist/bin/selfTest.js.map +1 -1
  4. package/dist/contracts/module-schema.json +1 -1
  5. package/dist/core/performanceMonitor.d.ts +18 -0
  6. package/dist/core/performanceMonitor.d.ts.map +1 -1
  7. package/dist/core/performanceMonitor.js.map +1 -1
  8. package/dist/core/schemaValidator.d.ts +38 -0
  9. package/dist/core/schemaValidator.d.ts.map +1 -1
  10. package/dist/core/schemaValidator.js +62 -0
  11. package/dist/core/schemaValidator.js.map +1 -1
  12. package/dist/core/testUtils.d.ts +121 -0
  13. package/dist/core/testUtils.d.ts.map +1 -0
  14. package/dist/core/testUtils.js +235 -0
  15. package/dist/core/testUtils.js.map +1 -0
  16. package/dist/core/toolPreconditions.d.ts.map +1 -1
  17. package/dist/core/toolPreconditions.js +55 -3
  18. package/dist/core/toolPreconditions.js.map +1 -1
  19. package/dist/core/toolRuntime.d.ts +46 -0
  20. package/dist/core/toolRuntime.d.ts.map +1 -1
  21. package/dist/core/toolRuntime.js +37 -12
  22. package/dist/core/toolRuntime.js.map +1 -1
  23. package/dist/core/types.d.ts +233 -68
  24. package/dist/core/types.d.ts.map +1 -1
  25. package/dist/core/types.js +75 -1
  26. package/dist/core/types.js.map +1 -1
  27. package/dist/core/unified/tools.js +1 -1
  28. package/dist/core/unified/tools.js.map +1 -1
  29. package/dist/providers/anthropicProvider.js +2 -2
  30. package/dist/providers/anthropicProvider.js.map +1 -1
  31. package/dist/providers/openaiChatCompletionsProvider.js +4 -5
  32. package/dist/providers/openaiChatCompletionsProvider.js.map +1 -1
  33. package/dist/shell/interactiveShell.d.ts +15 -3
  34. package/dist/shell/interactiveShell.d.ts.map +1 -1
  35. package/dist/shell/interactiveShell.js +95 -11
  36. package/dist/shell/interactiveShell.js.map +1 -1
  37. package/dist/shell/shellApp.d.ts.map +1 -1
  38. package/dist/shell/shellApp.js +16 -0
  39. package/dist/shell/shellApp.js.map +1 -1
  40. package/dist/shell/terminalInput.d.ts +36 -1
  41. package/dist/shell/terminalInput.d.ts.map +1 -1
  42. package/dist/shell/terminalInput.js +248 -21
  43. package/dist/shell/terminalInput.js.map +1 -1
  44. package/dist/shell/terminalInputAdapter.d.ts +27 -4
  45. package/dist/shell/terminalInputAdapter.d.ts.map +1 -1
  46. package/dist/shell/terminalInputAdapter.js +28 -3
  47. package/dist/shell/terminalInputAdapter.js.map +1 -1
  48. package/dist/tools/editTools.js +2 -2
  49. package/dist/tools/editTools.js.map +1 -1
  50. package/dist/ui/display.d.ts +6 -21
  51. package/dist/ui/display.d.ts.map +1 -1
  52. package/dist/ui/display.js +88 -177
  53. package/dist/ui/display.js.map +1 -1
  54. package/package.json +1 -1
@@ -1,6 +1,18 @@
1
+ /**
2
+ * AI Provider identifier for multi-provider support
3
+ */
1
4
  export type ProviderId = string;
5
+ /**
6
+ * Reasoning effort levels for AI model optimization
7
+ */
2
8
  export type ReasoningEffortLevel = 'low' | 'medium' | 'high';
9
+ /**
10
+ * Text verbosity levels for output control
11
+ */
3
12
  export type TextVerbosityLevel = 'low' | 'medium' | 'high';
13
+ /**
14
+ * Conversation roles in AI message flow
15
+ */
4
16
  export type ConversationRole = 'system' | 'user' | 'assistant' | 'tool';
5
17
  export interface SystemMessage {
6
18
  role: 'system';
@@ -29,99 +41,201 @@ export interface ToolMessage {
29
41
  content: string;
30
42
  toolCallId: string;
31
43
  }
32
- interface ToolSuccessResponse {
33
- type: 'success';
34
- content: string;
35
- metadata?: {
36
- linesRead?: number;
37
- fileSize?: number;
38
- executionTime?: number;
39
- cacheHit?: boolean;
44
+ /**
45
+ * Enhanced discriminated union for type-safe tool responses
46
+ * Provides comprehensive error handling and metadata tracking
47
+ */
48
+ export interface ToolSuccessResponse {
49
+ readonly type: 'success';
50
+ readonly content: string;
51
+ readonly metadata?: {
52
+ readonly linesRead?: number;
53
+ readonly fileSize?: number;
54
+ readonly executionTime?: number;
55
+ readonly cacheHit?: boolean;
56
+ readonly toolName?: string;
57
+ readonly timestamp?: number;
40
58
  };
41
59
  }
42
- interface ToolErrorResponse {
43
- type: 'error';
44
- error: {
45
- code: string;
46
- message: string;
47
- details?: Record<string, unknown>;
48
- suggestion?: string;
49
- recoverable: boolean;
60
+ /**
61
+ * Structured error response with recovery guidance
62
+ */
63
+ export interface ToolErrorResponse {
64
+ readonly type: 'error';
65
+ readonly error: {
66
+ readonly code: string;
67
+ readonly message: string;
68
+ readonly details?: Readonly<Record<string, unknown>>;
69
+ readonly suggestion?: string;
70
+ readonly recoverable: boolean;
71
+ readonly toolName?: string;
50
72
  };
51
73
  }
52
- interface ToolWarningResponse {
53
- type: 'warning';
54
- content: string;
55
- warnings: Array<{
56
- code: string;
57
- message: string;
58
- severity: 'critical' | 'warning' | 'info';
59
- suggestion: string;
74
+ /**
75
+ * Warning response with actionable suggestions
76
+ */
77
+ export interface ToolWarningResponse {
78
+ readonly type: 'warning';
79
+ readonly content: string;
80
+ readonly warnings: ReadonlyArray<{
81
+ readonly code: string;
82
+ readonly message: string;
83
+ readonly severity: 'critical' | 'warning' | 'info';
84
+ readonly suggestion: string;
60
85
  }>;
61
86
  }
62
- export type ToolResponse = ToolSuccessResponse | ToolErrorResponse | ToolWarningResponse;
87
+ /**
88
+ * Progress update for long-running operations
89
+ */
90
+ export interface ToolProgressResponse {
91
+ readonly type: 'progress';
92
+ readonly progress: number;
93
+ readonly message: string;
94
+ readonly metadata?: {
95
+ readonly estimatedRemaining?: number;
96
+ readonly currentStep?: string;
97
+ };
98
+ }
99
+ /**
100
+ * Comprehensive tool response union for AI flow control
101
+ */
102
+ export type ToolResponse = ToolSuccessResponse | ToolErrorResponse | ToolWarningResponse | ToolProgressResponse;
103
+ /**
104
+ * Type guard for successful tool responses
105
+ */
106
+ export declare function isToolSuccess(response: ToolResponse): response is ToolSuccessResponse;
107
+ /**
108
+ * Type guard for error tool responses
109
+ */
110
+ export declare function isToolError(response: ToolResponse): response is ToolErrorResponse;
111
+ /**
112
+ * Type guard for warning tool responses
113
+ */
114
+ export declare function isToolWarning(response: ToolResponse): response is ToolWarningResponse;
115
+ /**
116
+ * Type guard for progress tool responses
117
+ */
118
+ export declare function isToolProgress(response: ToolResponse): response is ToolProgressResponse;
63
119
  export type ConversationMessage = SystemMessage | UserMessage | AssistantMessage | ToolMessage;
120
+ /**
121
+ * Base interface for all JSON Schema property definitions
122
+ */
64
123
  export interface JSONSchemaPropertyBase {
65
- description?: string;
124
+ readonly description?: string;
125
+ readonly nullable?: boolean;
126
+ readonly deprecated?: boolean;
127
+ readonly readOnly?: boolean;
128
+ readonly writeOnly?: boolean;
66
129
  }
130
+ /**
131
+ * String schema with validation constraints
132
+ */
67
133
  export interface JSONSchemaString extends JSONSchemaPropertyBase {
68
- type: 'string';
69
- enum?: string[];
70
- minLength?: number;
71
- default?: string;
134
+ readonly type: 'string';
135
+ readonly enum?: ReadonlyArray<string>;
136
+ readonly minLength?: number;
137
+ readonly maxLength?: number;
138
+ readonly pattern?: string;
139
+ readonly format?: 'date-time' | 'email' | 'uri' | 'uuid' | 'hostname';
140
+ readonly default?: string;
72
141
  }
142
+ /**
143
+ * Number schema with validation constraints
144
+ */
73
145
  export interface JSONSchemaNumber extends JSONSchemaPropertyBase {
74
- type: 'number';
146
+ readonly type: 'number';
147
+ readonly minimum?: number;
148
+ readonly maximum?: number;
149
+ readonly exclusiveMinimum?: number;
150
+ readonly exclusiveMaximum?: number;
151
+ readonly multipleOf?: number;
152
+ readonly default?: number;
75
153
  }
154
+ /**
155
+ * Boolean schema
156
+ */
76
157
  export interface JSONSchemaBoolean extends JSONSchemaPropertyBase {
77
- type: 'boolean';
158
+ readonly type: 'boolean';
159
+ readonly default?: boolean;
78
160
  }
161
+ /**
162
+ * Array schema with item validation
163
+ */
79
164
  export interface JSONSchemaArray extends JSONSchemaPropertyBase {
80
- type: 'array';
81
- items: JSONSchemaProperty;
165
+ readonly type: 'array';
166
+ readonly items: JSONSchemaProperty;
167
+ readonly minItems?: number;
168
+ readonly maxItems?: number;
169
+ readonly uniqueItems?: boolean;
82
170
  }
171
+ /**
172
+ * Union type for all JSON Schema property types
173
+ */
83
174
  export type JSONSchemaProperty = JSONSchemaString | JSONSchemaNumber | JSONSchemaBoolean | JSONSchemaArray | JSONSchemaObject;
84
- export interface JSONSchemaObject {
85
- type: 'object';
86
- description?: string;
87
- properties?: Record<string, JSONSchemaProperty>;
88
- required?: string[];
89
- additionalProperties?: boolean;
90
- [key: string]: unknown;
175
+ /**
176
+ * Object schema with property validation
177
+ */
178
+ export interface JSONSchemaObject extends JSONSchemaPropertyBase {
179
+ readonly type: 'object';
180
+ readonly properties?: Readonly<Record<string, JSONSchemaProperty>>;
181
+ readonly required?: ReadonlyArray<string>;
182
+ readonly additionalProperties?: boolean;
183
+ readonly minProperties?: number;
184
+ readonly maxProperties?: number;
91
185
  }
186
+ /**
187
+ * Definition of a tool available to AI providers
188
+ */
92
189
  export interface ProviderToolDefinition {
93
- name: string;
94
- description: string;
95
- parameters?: JSONSchemaObject;
190
+ readonly name: string;
191
+ readonly description: string;
192
+ readonly parameters?: JSONSchemaObject;
96
193
  }
194
+ /**
195
+ * Token usage statistics from AI provider
196
+ */
97
197
  export interface ProviderUsage {
98
- inputTokens?: number;
99
- outputTokens?: number;
100
- totalTokens?: number;
198
+ readonly inputTokens?: number;
199
+ readonly outputTokens?: number;
200
+ readonly totalTokens?: number;
101
201
  }
102
- /** Why the model stopped generating - critical for agentic loop control */
202
+ /**
203
+ * Why the model stopped generating - critical for agentic loop control
204
+ */
103
205
  export type StopReason = 'end_turn' | 'tool_use' | 'max_tokens' | 'stop_sequence';
206
+ /**
207
+ * Base interface for all provider responses
208
+ */
104
209
  export interface ProviderResponseBase {
105
- usage?: ProviderUsage | null;
210
+ readonly usage?: ProviderUsage | null;
106
211
  /** Why the model stopped - determines if auto-continuation is needed */
107
- stopReason?: StopReason;
212
+ readonly stopReason?: StopReason;
108
213
  }
214
+ /**
215
+ * Discriminated union for provider responses
216
+ */
109
217
  export type ProviderResponse = (ProviderResponseBase & {
110
- type: 'message';
111
- content: string;
218
+ readonly type: 'message';
219
+ readonly content: string;
112
220
  }) | (ProviderResponseBase & {
113
- type: 'tool_calls';
114
- toolCalls: ToolCallRequest[];
115
- content?: string;
221
+ readonly type: 'tool_calls';
222
+ readonly toolCalls: ToolCallRequest[];
223
+ readonly content?: string;
116
224
  });
225
+ /**
226
+ * Streaming chunk for real-time AI responses
227
+ */
117
228
  export interface StreamChunk {
118
- type: 'content' | 'tool_call' | 'usage' | 'done';
119
- content?: string;
120
- toolCall?: ToolCallRequest;
121
- usage?: ProviderUsage;
229
+ readonly type: 'content' | 'tool_call' | 'usage' | 'done';
230
+ readonly content?: string;
231
+ readonly toolCall?: ToolCallRequest;
232
+ readonly usage?: ProviderUsage;
122
233
  /** Stop reason from the final message - included with 'done' chunk */
123
- stopReason?: StopReason;
234
+ readonly stopReason?: StopReason;
124
235
  }
236
+ /**
237
+ * AI Provider interface for multi-provider support
238
+ */
125
239
  export interface LLMProvider {
126
240
  readonly id: ProviderId;
127
241
  readonly model: string;
@@ -129,13 +243,64 @@ export interface LLMProvider {
129
243
  generateStream?(messages: ConversationMessage[], tools: ProviderToolDefinition[]): AsyncIterableIterator<StreamChunk>;
130
244
  getCapabilities?(): ProviderCapabilities;
131
245
  }
246
+ /**
247
+ * Capabilities of an AI provider
248
+ */
132
249
  export interface ProviderCapabilities {
133
- streaming: boolean;
134
- toolCalling: boolean;
135
- vision: boolean;
136
- functionCalling: boolean;
137
- maxTokens: number;
138
- supportedModalities: ('text' | 'image' | 'audio')[];
139
- }
140
- export {};
250
+ readonly streaming: boolean;
251
+ readonly toolCalling: boolean;
252
+ readonly vision: boolean;
253
+ readonly functionCalling: boolean;
254
+ readonly maxTokens: number;
255
+ readonly supportedModalities: ReadonlyArray<'text' | 'image' | 'audio'>;
256
+ }
257
+ /**
258
+ * Type-safe Result pattern for error handling
259
+ * Eliminates the need for try-catch blocks and provides compile-time safety
260
+ */
261
+ export type Result<T, E = Error> = {
262
+ readonly ok: true;
263
+ readonly value: T;
264
+ } | {
265
+ readonly ok: false;
266
+ readonly error: E;
267
+ };
268
+ /**
269
+ * Type guard for successful Result
270
+ */
271
+ export declare function isOk<T, E>(result: Result<T, E>): result is {
272
+ readonly ok: true;
273
+ readonly value: T;
274
+ };
275
+ /**
276
+ * Type guard for failed Result
277
+ */
278
+ export declare function isErr<T, E>(result: Result<T, E>): result is {
279
+ readonly ok: false;
280
+ readonly error: E;
281
+ };
282
+ /**
283
+ * Creates a successful Result
284
+ */
285
+ export declare function ok<T>(value: T): Result<T, never>;
286
+ /**
287
+ * Creates a failed Result
288
+ */
289
+ export declare function err<E>(error: E): Result<never, E>;
290
+ /**
291
+ * Unwraps a Result, throwing if it's an error
292
+ */
293
+ export declare function unwrap<T, E>(result: Result<T, E>): T;
294
+ /**
295
+ * Unwraps a Result, returning a default value if it's an error
296
+ */
297
+ export declare function unwrapOr<T, E>(result: Result<T, E>, defaultValue: T): T;
298
+ /**
299
+ * Maps a successful Result to a new value
300
+ */
301
+ export declare function map<T, U, E>(result: Result<T, E>, fn: (value: T) => U): Result<U, E>;
302
+ /**
303
+ * Maps an error Result to a new error
304
+ */
305
+ export declare function mapErr<T, E, F>(result: Result<T, E>, fn: (error: E) => F): Result<T, F>;
141
306
  //# sourceMappingURL=types.d.ts.map
@@ -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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"}
@@ -1,2 +1,76 @@
1
- export {};
1
+ /**
2
+ * Type guard for successful tool responses
3
+ */
4
+ export function isToolSuccess(response) {
5
+ return response.type === 'success';
6
+ }
7
+ /**
8
+ * Type guard for error tool responses
9
+ */
10
+ export function isToolError(response) {
11
+ return response.type === 'error';
12
+ }
13
+ /**
14
+ * Type guard for warning tool responses
15
+ */
16
+ export function isToolWarning(response) {
17
+ return response.type === 'warning';
18
+ }
19
+ /**
20
+ * Type guard for progress tool responses
21
+ */
22
+ export function isToolProgress(response) {
23
+ return response.type === 'progress';
24
+ }
25
+ /**
26
+ * Type guard for successful Result
27
+ */
28
+ export function isOk(result) {
29
+ return result.ok;
30
+ }
31
+ /**
32
+ * Type guard for failed Result
33
+ */
34
+ export function isErr(result) {
35
+ return !result.ok;
36
+ }
37
+ /**
38
+ * Creates a successful Result
39
+ */
40
+ export function ok(value) {
41
+ return { ok: true, value };
42
+ }
43
+ /**
44
+ * Creates a failed Result
45
+ */
46
+ export function err(error) {
47
+ return { ok: false, error };
48
+ }
49
+ /**
50
+ * Unwraps a Result, throwing if it's an error
51
+ */
52
+ export function unwrap(result) {
53
+ if (result.ok) {
54
+ return result.value;
55
+ }
56
+ throw result.error;
57
+ }
58
+ /**
59
+ * Unwraps a Result, returning a default value if it's an error
60
+ */
61
+ export function unwrapOr(result, defaultValue) {
62
+ return result.ok ? result.value : defaultValue;
63
+ }
64
+ /**
65
+ * Maps a successful Result to a new value
66
+ */
67
+ export function map(result, fn) {
68
+ return result.ok ? { ok: true, value: fn(result.value) } : result;
69
+ }
70
+ /**
71
+ * Maps an error Result to a new error
72
+ */
73
+ export function mapErr(result, fn) {
74
+ return result.ok ? result : { ok: false, error: fn(result.error) };
75
+ }
2
76
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAyHA;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAsB;IAClD,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,QAAsB;IAChD,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAsB;IAClD,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAsB;IACnD,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC;AACtC,CAAC;AA2KD;;GAEG;AACH,MAAM,UAAU,IAAI,CAAO,MAAoB;IAC7C,OAAO,MAAM,CAAC,EAAE,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAO,MAAoB;IAC9C,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAI,KAAQ;IAC7B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,MAAM,CAAO,MAAoB;IAC/C,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IACD,MAAM,MAAM,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAO,MAAoB,EAAE,YAAe;IAClE,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAU,MAAoB,EAAE,EAAmB;IACpE,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,MAAM,CAAU,MAAoB,EAAE,EAAmB;IACvE,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACrE,CAAC"}
@@ -127,7 +127,7 @@ export function createWriteTool(workingDir) {
127
127
  export function createEditTool(workingDir) {
128
128
  return {
129
129
  name: 'Edit',
130
- description: 'Performs exact string replacements in files. CRITICAL: ALWAYS use Read tool FIRST to get exact text. Copy text from Read output (excluding line numbers) directly to old_string. Use Edit for small changes - faster than Write and shows diffs. To CREATE new file, use empty old_string. To DELETE text, use empty new_string. Edit FAILS if old_string not unique unless replace_all is true.',
130
+ description: 'Performs exact string replacements in files. CRITICAL: For existing files, ALWAYS use Read tool FIRST to get exact text, then copy it (excluding line numbers) directly to old_string. Use Edit for small changes - faster than Write and shows diffs. To CREATE new file, use empty old_string (no prior read needed). To DELETE text, use empty new_string. Edit FAILS if old_string not unique unless replace_all is true.',
131
131
  category: 'core',
132
132
  cacheable: false,
133
133
  parameters: {