attocode 0.1.6 → 0.1.7

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 (101) hide show
  1. package/CHANGELOG.md +10 -1
  2. package/README.md +47 -0
  3. package/dist/src/adapters.d.ts +21 -1
  4. package/dist/src/adapters.d.ts.map +1 -1
  5. package/dist/src/adapters.js +29 -1
  6. package/dist/src/adapters.js.map +1 -1
  7. package/dist/src/agent.d.ts +29 -2
  8. package/dist/src/agent.d.ts.map +1 -1
  9. package/dist/src/agent.js +266 -34
  10. package/dist/src/agent.js.map +1 -1
  11. package/dist/src/commands/agents-commands.d.ts.map +1 -1
  12. package/dist/src/commands/agents-commands.js +18 -4
  13. package/dist/src/commands/agents-commands.js.map +1 -1
  14. package/dist/src/commands/handler.d.ts.map +1 -1
  15. package/dist/src/commands/handler.js +120 -5
  16. package/dist/src/commands/handler.js.map +1 -1
  17. package/dist/src/defaults.d.ts +30 -0
  18. package/dist/src/defaults.d.ts.map +1 -1
  19. package/dist/src/defaults.js +52 -2
  20. package/dist/src/defaults.js.map +1 -1
  21. package/dist/src/integrations/agent-registry.js +4 -4
  22. package/dist/src/integrations/agent-registry.js.map +1 -1
  23. package/dist/src/integrations/index.d.ts +1 -0
  24. package/dist/src/integrations/index.d.ts.map +1 -1
  25. package/dist/src/integrations/index.js +2 -0
  26. package/dist/src/integrations/index.js.map +1 -1
  27. package/dist/src/integrations/sqlite-store.d.ts.map +1 -1
  28. package/dist/src/integrations/sqlite-store.js +17 -1
  29. package/dist/src/integrations/sqlite-store.js.map +1 -1
  30. package/dist/src/integrations/task-manager.d.ts +132 -0
  31. package/dist/src/integrations/task-manager.d.ts.map +1 -0
  32. package/dist/src/integrations/task-manager.js +309 -0
  33. package/dist/src/integrations/task-manager.js.map +1 -0
  34. package/dist/src/modes/tui.d.ts.map +1 -1
  35. package/dist/src/modes/tui.js +9 -0
  36. package/dist/src/modes/tui.js.map +1 -1
  37. package/dist/src/modes.d.ts +23 -0
  38. package/dist/src/modes.d.ts.map +1 -1
  39. package/dist/src/modes.js +61 -0
  40. package/dist/src/modes.js.map +1 -1
  41. package/dist/src/providers/adapters/openai.d.ts +46 -2
  42. package/dist/src/providers/adapters/openai.d.ts.map +1 -1
  43. package/dist/src/providers/adapters/openai.js +221 -21
  44. package/dist/src/providers/adapters/openai.js.map +1 -1
  45. package/dist/src/tools/agent.d.ts +18 -1
  46. package/dist/src/tools/agent.d.ts.map +1 -1
  47. package/dist/src/tools/agent.js +38 -2
  48. package/dist/src/tools/agent.js.map +1 -1
  49. package/dist/src/tools/tasks.d.ts +32 -0
  50. package/dist/src/tools/tasks.d.ts.map +1 -0
  51. package/dist/src/tools/tasks.js +334 -0
  52. package/dist/src/tools/tasks.js.map +1 -0
  53. package/dist/src/tracing/trace-collector.d.ts +81 -0
  54. package/dist/src/tracing/trace-collector.d.ts.map +1 -1
  55. package/dist/src/tracing/trace-collector.js +216 -4
  56. package/dist/src/tracing/trace-collector.js.map +1 -1
  57. package/dist/src/tracing/types.d.ts +8 -0
  58. package/dist/src/tracing/types.d.ts.map +1 -1
  59. package/dist/src/tracing/types.js.map +1 -1
  60. package/dist/src/tui/app.d.ts.map +1 -1
  61. package/dist/src/tui/app.js +264 -29
  62. package/dist/src/tui/app.js.map +1 -1
  63. package/dist/src/tui/components/ActiveAgentsPanel.d.ts +45 -0
  64. package/dist/src/tui/components/ActiveAgentsPanel.d.ts.map +1 -0
  65. package/dist/src/tui/components/ActiveAgentsPanel.js +121 -0
  66. package/dist/src/tui/components/ActiveAgentsPanel.js.map +1 -0
  67. package/dist/src/tui/components/ErrorBoundary.d.ts +63 -0
  68. package/dist/src/tui/components/ErrorBoundary.d.ts.map +1 -0
  69. package/dist/src/tui/components/ErrorBoundary.js +88 -0
  70. package/dist/src/tui/components/ErrorBoundary.js.map +1 -0
  71. package/dist/src/tui/components/TasksPanel.d.ts +25 -0
  72. package/dist/src/tui/components/TasksPanel.d.ts.map +1 -0
  73. package/dist/src/tui/components/TasksPanel.js +101 -0
  74. package/dist/src/tui/components/TasksPanel.js.map +1 -0
  75. package/dist/src/tui/components/index.d.ts +3 -0
  76. package/dist/src/tui/components/index.d.ts.map +1 -1
  77. package/dist/src/tui/components/index.js +6 -0
  78. package/dist/src/tui/components/index.js.map +1 -1
  79. package/dist/src/tui/hooks/index.d.ts +7 -0
  80. package/dist/src/tui/hooks/index.d.ts.map +1 -0
  81. package/dist/src/tui/hooks/index.js +7 -0
  82. package/dist/src/tui/hooks/index.js.map +1 -0
  83. package/dist/src/tui/hooks/useMessagePruning.d.ts +114 -0
  84. package/dist/src/tui/hooks/useMessagePruning.d.ts.map +1 -0
  85. package/dist/src/tui/hooks/useMessagePruning.js +127 -0
  86. package/dist/src/tui/hooks/useMessagePruning.js.map +1 -0
  87. package/dist/src/tui/index.d.ts +3 -0
  88. package/dist/src/tui/index.d.ts.map +1 -1
  89. package/dist/src/tui/index.js +9 -0
  90. package/dist/src/tui/index.js.map +1 -1
  91. package/dist/src/tui/utils/index.d.ts +7 -0
  92. package/dist/src/tui/utils/index.d.ts.map +1 -0
  93. package/dist/src/tui/utils/index.js +7 -0
  94. package/dist/src/tui/utils/index.js.map +1 -0
  95. package/dist/src/tui/utils/keyboard.d.ts +123 -0
  96. package/dist/src/tui/utils/keyboard.d.ts.map +1 -0
  97. package/dist/src/tui/utils/keyboard.js +185 -0
  98. package/dist/src/tui/utils/keyboard.js.map +1 -0
  99. package/dist/src/types.d.ts +17 -0
  100. package/dist/src/types.d.ts.map +1 -1
  101. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-manager.js","sourceRoot":"","sources":["../../../src/integrations/task-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../src/modes/tui.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA+BxD,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CACnC;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CA0Tf"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../src/modes/tui.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA+BxD,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CACnC;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAmUf"}
@@ -140,6 +140,15 @@ export async function startTUIMode(provider, options = {}) {
140
140
  maxIterations,
141
141
  memory: { enabled: true, types: { episodic: true, semantic: true, working: true } },
142
142
  planning: { enabled: true, autoplan: true, complexityThreshold: 6 },
143
+ // Thread management with auto-checkpoints (same as REPL mode)
144
+ threads: {
145
+ enabled: true,
146
+ autoCheckpoint: true,
147
+ checkpointFrequency: 5,
148
+ maxCheckpoints: 10,
149
+ enableRollback: true,
150
+ enableForking: true,
151
+ },
143
152
  humanInLoop: permissionMode === 'interactive'
144
153
  ? {
145
154
  enabled: true,
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/modes/tui.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/modes/tui.tsx"],"names":[],"mappings":"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"}
@@ -175,6 +175,29 @@ export declare class ModeManager {
175
175
  * Create a mode manager.
176
176
  */
177
177
  export declare function createModeManager(tools?: ToolDefinition[]): ModeManager;
178
+ /**
179
+ * Subagent-specific plan mode prompt addition.
180
+ *
181
+ * This is a SHORTER version of the plan mode prompt specifically for subagents.
182
+ * It removes parent-only sections (like "SUBAGENT BEHAVIOR" which tells the parent
183
+ * how to manage subagents - irrelevant when you ARE the subagent).
184
+ *
185
+ * Key differences from parent plan mode prompt:
186
+ * - No "SUBAGENT BEHAVIOR" section (subagents don't spawn more subagents)
187
+ * - Focused on immediate task completion
188
+ * - Clearer about what happens to queued writes
189
+ */
190
+ export declare const SUBAGENT_PLAN_MODE_ADDITION = "\nYou are a SUBAGENT operating in PLAN MODE.\n\n**YOUR TASK:**\n- Complete the specific task you were given\n- Your writes are queued to the PARENT's pending plan\n- Once you queue a change, your task for that file is DONE\n\n**RULES:**\n1. When you see \"Change queued for approval\", the change is in the parent's plan - DO NOT retry\n2. You CANNOT verify queued files (they don't exist yet)\n3. Focus on your assigned task only - don't explore beyond scope\n4. Report your findings clearly so the parent knows what you did\n\n**READ THE BLACKBOARD:**\nIf context was provided from the parent or sibling agents, use it to avoid duplicate work.\n";
191
+ /**
192
+ * Calculate task similarity using Jaccard index.
193
+ * Returns a value between 0 and 1, where 1 means identical.
194
+ */
195
+ export declare function calculateTaskSimilarity(taskA: string, taskB: string): number;
196
+ /**
197
+ * Check if two tasks are semantically similar.
198
+ * Uses Jaccard similarity with a default threshold of 0.75 (75%).
199
+ */
200
+ export declare function areTasksSimilar(taskA: string, taskB: string, threshold?: number): boolean;
178
201
  /**
179
202
  * Format all modes for display.
180
203
  */
@@ -1 +1 @@
1
- {"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/modes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/modes.ts"],"names":[],"mappings":"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"}
package/dist/src/modes.js CHANGED
@@ -421,6 +421,67 @@ export class ModeManager {
421
421
  export function createModeManager(tools) {
422
422
  return new ModeManager(tools);
423
423
  }
424
+ /**
425
+ * Subagent-specific plan mode prompt addition.
426
+ *
427
+ * This is a SHORTER version of the plan mode prompt specifically for subagents.
428
+ * It removes parent-only sections (like "SUBAGENT BEHAVIOR" which tells the parent
429
+ * how to manage subagents - irrelevant when you ARE the subagent).
430
+ *
431
+ * Key differences from parent plan mode prompt:
432
+ * - No "SUBAGENT BEHAVIOR" section (subagents don't spawn more subagents)
433
+ * - Focused on immediate task completion
434
+ * - Clearer about what happens to queued writes
435
+ */
436
+ export const SUBAGENT_PLAN_MODE_ADDITION = `
437
+ You are a SUBAGENT operating in PLAN MODE.
438
+
439
+ **YOUR TASK:**
440
+ - Complete the specific task you were given
441
+ - Your writes are queued to the PARENT's pending plan
442
+ - Once you queue a change, your task for that file is DONE
443
+
444
+ **RULES:**
445
+ 1. When you see "Change queued for approval", the change is in the parent's plan - DO NOT retry
446
+ 2. You CANNOT verify queued files (they don't exist yet)
447
+ 3. Focus on your assigned task only - don't explore beyond scope
448
+ 4. Report your findings clearly so the parent knows what you did
449
+
450
+ **READ THE BLACKBOARD:**
451
+ If context was provided from the parent or sibling agents, use it to avoid duplicate work.
452
+ `;
453
+ /**
454
+ * Calculate task similarity using Jaccard index.
455
+ * Returns a value between 0 and 1, where 1 means identical.
456
+ */
457
+ export function calculateTaskSimilarity(taskA, taskB) {
458
+ // Normalize both tasks
459
+ const normalize = (s) => {
460
+ const words = s
461
+ .toLowerCase()
462
+ .replace(/[^a-z0-9\s]/g, ' ') // Remove punctuation
463
+ .split(/\s+/)
464
+ .filter(w => w.length > 2); // Filter short words
465
+ return new Set(words);
466
+ };
467
+ const wordsA = normalize(taskA);
468
+ const wordsB = normalize(taskB);
469
+ if (wordsA.size === 0 && wordsB.size === 0)
470
+ return 1;
471
+ if (wordsA.size === 0 || wordsB.size === 0)
472
+ return 0;
473
+ // Calculate Jaccard index: |intersection| / |union|
474
+ const intersection = new Set([...wordsA].filter(x => wordsB.has(x)));
475
+ const union = new Set([...wordsA, ...wordsB]);
476
+ return intersection.size / union.size;
477
+ }
478
+ /**
479
+ * Check if two tasks are semantically similar.
480
+ * Uses Jaccard similarity with a default threshold of 0.75 (75%).
481
+ */
482
+ export function areTasksSimilar(taskA, taskB, threshold = 0.75) {
483
+ return calculateTaskSimilarity(taskA, taskB) >= threshold;
484
+ }
424
485
  /**
425
486
  * Format all modes for display.
426
487
  */
@@ -1 +1 @@
1
- {"version":3,"file":"modes.js","sourceRoot":"","sources":["../../src/modes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modes.js","sourceRoot":"","sources":["../../src/modes.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,10 @@
2
2
  * OpenAI Provider Adapter
3
3
  *
4
4
  * Adapts the OpenAI API to our LLMProvider interface.
5
+ * Supports native tool use via the chatWithTools method.
5
6
  */
6
- import type { LLMProvider, Message, ChatOptions, ChatResponse, OpenAIConfig } from '../types.js';
7
- export declare class OpenAIProvider implements LLMProvider {
7
+ import type { LLMProvider, LLMProviderWithTools, Message, MessageWithContent, ChatOptions, ChatOptionsWithTools, ChatResponse, ChatResponseWithTools, OpenAIConfig } from '../types.js';
8
+ export declare class OpenAIProvider implements LLMProvider, LLMProviderWithTools {
8
9
  readonly name = "openai";
9
10
  readonly defaultModel = "gpt-4-turbo-preview";
10
11
  private apiKey;
@@ -14,8 +15,51 @@ export declare class OpenAIProvider implements LLMProvider {
14
15
  private networkConfig;
15
16
  constructor(config?: OpenAIConfig);
16
17
  isConfigured(): boolean;
18
+ /**
19
+ * Basic chat without tool support.
20
+ */
17
21
  chat(messages: Message[], options?: ChatOptions): Promise<ChatResponse>;
22
+ /**
23
+ * Chat with native tool use support.
24
+ * OpenAI's tool format is our standard format, so minimal conversion needed.
25
+ */
26
+ chatWithTools(messages: (Message | MessageWithContent)[], options?: ChatOptionsWithTools): Promise<ChatResponseWithTools>;
27
+ /**
28
+ * Convert basic messages to OpenAI format.
29
+ */
30
+ private convertMessagesToOpenAIFormat;
31
+ /**
32
+ * Convert messages with potential tool calls to OpenAI format.
33
+ */
34
+ private convertMessagesWithToolsToOpenAIFormat;
35
+ /**
36
+ * Convert tool definition to OpenAI format.
37
+ * Our standard format is already OpenAI-compatible.
38
+ */
39
+ private convertToolDefinition;
40
+ /**
41
+ * Convert tool_choice to OpenAI format.
42
+ */
43
+ private convertToolChoice;
44
+ /**
45
+ * Parse basic response without tools.
46
+ */
47
+ private parseResponse;
48
+ /**
49
+ * Parse response that may include tool calls.
50
+ */
51
+ private parseResponseWithTools;
52
+ /**
53
+ * Build request headers.
54
+ */
55
+ private buildHeaders;
56
+ /**
57
+ * Handle API errors.
58
+ */
18
59
  private handleError;
60
+ /**
61
+ * Map OpenAI stop reasons to our format.
62
+ */
19
63
  private mapStopReason;
20
64
  }
21
65
  //# sourceMappingURL=openai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/providers/adapters/openai.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACP,WAAW,EACX,YAAY,EACZ,YAAY,EACb,MAAM,aAAa,CAAC;AASrB,qBAAa,cAAe,YAAW,WAAW;IAChD,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,YAAY,yBAAyB;IAE9C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAgB;gBAEzB,MAAM,CAAC,EAAE,YAAY;IAYjC,YAAY,IAAI,OAAO;IAIjB,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+E7E,OAAO,CAAC,WAAW;IAqBnB,OAAO,CAAC,aAAa;CAQtB"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/providers/adapters/openai.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACpB,OAAO,EACP,kBAAkB,EAClB,WAAW,EACX,oBAAoB,EACpB,YAAY,EACZ,qBAAqB,EAGrB,YAAY,EACb,MAAM,aAAa,CAAC;AAiErB,qBAAa,cAAe,YAAW,WAAW,EAAE,oBAAoB;IACtE,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,YAAY,yBAAyB;IAE9C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAgB;gBAEzB,MAAM,CAAC,EAAE,YAAY;IAYjC,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAkD7E;;;OAGG;IACG,aAAa,CACjB,QAAQ,EAAE,CAAC,OAAO,GAAG,kBAAkB,CAAC,EAAE,EAC1C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,qBAAqB,CAAC;IAmEjC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAOrC;;OAEG;IACH,OAAO,CAAC,sCAAsC;IA0D9C;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAY7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsBnB;;OAEG;IACH,OAAO,CAAC,aAAa;CAStB"}
@@ -2,6 +2,7 @@
2
2
  * OpenAI Provider Adapter
3
3
  *
4
4
  * Adapts the OpenAI API to our LLMProvider interface.
5
+ * Supports native tool use via the chatWithTools method.
5
6
  */
6
7
  import { ProviderError } from '../types.js';
7
8
  import { registerProvider, hasEnv, requireEnv } from '../provider.js';
@@ -31,13 +32,13 @@ export class OpenAIProvider {
31
32
  isConfigured() {
32
33
  return hasEnv('OPENAI_API_KEY');
33
34
  }
35
+ /**
36
+ * Basic chat without tool support.
37
+ */
34
38
  async chat(messages, options) {
35
39
  const model = options?.model ?? this.model;
36
- // OpenAI uses the same message format, just need to type it correctly
37
- const openaiMessages = messages.map(m => ({
38
- role: m.role,
39
- content: m.content,
40
- }));
40
+ // Convert to OpenAI message format
41
+ const openaiMessages = this.convertMessagesToOpenAIFormat(messages);
41
42
  // Build request body
42
43
  const body = {
43
44
  model,
@@ -46,13 +47,61 @@ export class OpenAIProvider {
46
47
  temperature: options?.temperature ?? 0.7,
47
48
  ...(options?.stopSequences && { stop: options.stopSequences }),
48
49
  };
49
- const headers = {
50
- 'Content-Type': 'application/json',
51
- 'Authorization': `Bearer ${this.apiKey}`,
50
+ const headers = this.buildHeaders();
51
+ try {
52
+ const { response } = await resilientFetch({
53
+ url: `${this.baseUrl}/v1/chat/completions`,
54
+ init: {
55
+ method: 'POST',
56
+ headers,
57
+ body: JSON.stringify(body),
58
+ },
59
+ providerName: this.name,
60
+ networkConfig: this.networkConfig,
61
+ onRetry: (attempt, delay, error) => {
62
+ console.warn(`[OpenAI] Retry attempt ${attempt} after ${delay}ms: ${error.message}`);
63
+ },
64
+ });
65
+ if (!response.ok) {
66
+ const error = await response.text();
67
+ throw this.handleError(response.status, error);
68
+ }
69
+ const data = await response.json();
70
+ return this.parseResponse(data);
71
+ }
72
+ catch (error) {
73
+ if (error instanceof ProviderError)
74
+ throw error;
75
+ throw new ProviderError(`OpenAI request failed: ${error.message}`, this.name, 'NETWORK_ERROR', error);
76
+ }
77
+ }
78
+ /**
79
+ * Chat with native tool use support.
80
+ * OpenAI's tool format is our standard format, so minimal conversion needed.
81
+ */
82
+ async chatWithTools(messages, options) {
83
+ const model = options?.model ?? this.model;
84
+ // Convert messages to OpenAI format
85
+ const openaiMessages = this.convertMessagesWithToolsToOpenAIFormat(messages);
86
+ // Convert tool definitions (already in OpenAI format, just ensure structure)
87
+ const tools = options?.tools?.map(this.convertToolDefinition.bind(this));
88
+ // Build request body
89
+ const body = {
90
+ model,
91
+ messages: openaiMessages,
92
+ max_tokens: options?.maxTokens ?? 4096,
93
+ temperature: options?.temperature ?? 0.7,
94
+ ...(options?.stopSequences && { stop: options.stopSequences }),
52
95
  };
53
- if (this.organization) {
54
- headers['OpenAI-Organization'] = this.organization;
96
+ // Add tools if provided
97
+ if (tools && tools.length > 0) {
98
+ body.tools = tools;
99
+ // Convert tool_choice
100
+ if (options?.tool_choice) {
101
+ body.tool_choice = this.convertToolChoice(options.tool_choice);
102
+ }
55
103
  }
104
+ const headers = this.buildHeaders();
56
105
  try {
57
106
  const { response } = await resilientFetch({
58
107
  url: `${this.baseUrl}/v1/chat/completions`,
@@ -72,15 +121,7 @@ export class OpenAIProvider {
72
121
  throw this.handleError(response.status, error);
73
122
  }
74
123
  const data = await response.json();
75
- const choice = data.choices[0];
76
- return {
77
- content: choice.message.content,
78
- stopReason: this.mapStopReason(choice.finish_reason),
79
- usage: {
80
- inputTokens: data.usage.prompt_tokens,
81
- outputTokens: data.usage.completion_tokens,
82
- },
83
- };
124
+ return this.parseResponseWithTools(data);
84
125
  }
85
126
  catch (error) {
86
127
  if (error instanceof ProviderError)
@@ -88,6 +129,159 @@ export class OpenAIProvider {
88
129
  throw new ProviderError(`OpenAI request failed: ${error.message}`, this.name, 'NETWORK_ERROR', error);
89
130
  }
90
131
  }
132
+ // ===========================================================================
133
+ // MESSAGE CONVERSION
134
+ // ===========================================================================
135
+ /**
136
+ * Convert basic messages to OpenAI format.
137
+ */
138
+ convertMessagesToOpenAIFormat(messages) {
139
+ return messages.map(m => ({
140
+ role: m.role,
141
+ content: m.content,
142
+ }));
143
+ }
144
+ /**
145
+ * Convert messages with potential tool calls to OpenAI format.
146
+ */
147
+ convertMessagesWithToolsToOpenAIFormat(messages) {
148
+ const result = [];
149
+ for (const msg of messages) {
150
+ // Handle tool result messages
151
+ if ('tool_call_id' in msg && msg.role === 'tool') {
152
+ result.push({
153
+ role: 'tool',
154
+ content: typeof msg.content === 'string'
155
+ ? msg.content
156
+ : msg.content?.map(c => c.text).join('') || '',
157
+ tool_call_id: msg.tool_call_id,
158
+ name: msg.name,
159
+ });
160
+ continue;
161
+ }
162
+ // Handle assistant messages with tool calls
163
+ if ('tool_calls' in msg && msg.tool_calls && msg.tool_calls.length > 0) {
164
+ const content = typeof msg.content === 'string'
165
+ ? msg.content
166
+ : msg.content?.map(c => c.text).join('') || null;
167
+ result.push({
168
+ role: 'assistant',
169
+ content,
170
+ tool_calls: msg.tool_calls.map(tc => ({
171
+ id: tc.id,
172
+ type: 'function',
173
+ function: {
174
+ name: tc.function.name,
175
+ arguments: tc.function.arguments,
176
+ },
177
+ })),
178
+ });
179
+ continue;
180
+ }
181
+ // Regular message
182
+ const content = typeof msg.content === 'string'
183
+ ? msg.content
184
+ : msg.content?.map(c => c.text).join('') || '';
185
+ result.push({
186
+ role: msg.role,
187
+ content,
188
+ });
189
+ }
190
+ return result;
191
+ }
192
+ // ===========================================================================
193
+ // TOOL CONVERSION
194
+ // ===========================================================================
195
+ /**
196
+ * Convert tool definition to OpenAI format.
197
+ * Our standard format is already OpenAI-compatible.
198
+ */
199
+ convertToolDefinition(tool) {
200
+ return {
201
+ type: 'function',
202
+ function: {
203
+ name: tool.function.name,
204
+ description: tool.function.description,
205
+ parameters: tool.function.parameters,
206
+ strict: tool.function.strict,
207
+ },
208
+ };
209
+ }
210
+ /**
211
+ * Convert tool_choice to OpenAI format.
212
+ */
213
+ convertToolChoice(choice) {
214
+ if (choice === 'auto')
215
+ return 'auto';
216
+ if (choice === 'required')
217
+ return 'required';
218
+ if (choice === 'none')
219
+ return 'none';
220
+ if (typeof choice === 'object' && choice.function?.name) {
221
+ return { type: 'function', function: { name: choice.function.name } };
222
+ }
223
+ return 'auto';
224
+ }
225
+ // ===========================================================================
226
+ // RESPONSE PARSING
227
+ // ===========================================================================
228
+ /**
229
+ * Parse basic response without tools.
230
+ */
231
+ parseResponse(data) {
232
+ const choice = data.choices[0];
233
+ return {
234
+ content: choice.message.content || '',
235
+ stopReason: this.mapStopReason(choice.finish_reason),
236
+ usage: {
237
+ inputTokens: data.usage.prompt_tokens,
238
+ outputTokens: data.usage.completion_tokens,
239
+ },
240
+ };
241
+ }
242
+ /**
243
+ * Parse response that may include tool calls.
244
+ */
245
+ parseResponseWithTools(data) {
246
+ const choice = data.choices[0];
247
+ // Convert OpenAI tool_calls to our format
248
+ const toolCalls = choice.message.tool_calls?.map(tc => ({
249
+ id: tc.id,
250
+ type: 'function',
251
+ function: {
252
+ name: tc.function.name,
253
+ arguments: tc.function.arguments,
254
+ },
255
+ }));
256
+ return {
257
+ content: choice.message.content || '',
258
+ stopReason: this.mapStopReason(choice.finish_reason),
259
+ usage: {
260
+ inputTokens: data.usage.prompt_tokens,
261
+ outputTokens: data.usage.completion_tokens,
262
+ },
263
+ toolCalls: toolCalls && toolCalls.length > 0 ? toolCalls : undefined,
264
+ };
265
+ }
266
+ // ===========================================================================
267
+ // UTILITIES
268
+ // ===========================================================================
269
+ /**
270
+ * Build request headers.
271
+ */
272
+ buildHeaders() {
273
+ const headers = {
274
+ 'Content-Type': 'application/json',
275
+ 'Authorization': `Bearer ${this.apiKey}`,
276
+ };
277
+ if (this.organization) {
278
+ headers['OpenAI-Organization'] = this.organization;
279
+ }
280
+ return headers;
281
+ }
282
+ /**
283
+ * Handle API errors.
284
+ */
91
285
  handleError(status, body) {
92
286
  let code = 'UNKNOWN';
93
287
  if (status === 401)
@@ -95,22 +289,28 @@ export class OpenAIProvider {
95
289
  else if (status === 429)
96
290
  code = 'RATE_LIMITED';
97
291
  else if (status === 400) {
98
- if (body.includes('context_length')) {
292
+ if (body.includes('context_length') || body.includes('maximum context length')) {
99
293
  code = 'CONTEXT_LENGTH_EXCEEDED';
100
294
  }
101
295
  else {
102
296
  code = 'INVALID_REQUEST';
103
297
  }
104
298
  }
299
+ else if (status === 404)
300
+ code = 'INVALID_REQUEST';
105
301
  else if (status >= 500)
106
302
  code = 'SERVER_ERROR';
107
303
  return new ProviderError(`OpenAI API error (${status}): ${body}`, this.name, code);
108
304
  }
305
+ /**
306
+ * Map OpenAI stop reasons to our format.
307
+ */
109
308
  mapStopReason(reason) {
110
309
  switch (reason) {
111
310
  case 'stop': return 'end_turn';
112
311
  case 'length': return 'max_tokens';
113
- case 'stop_sequence': return 'stop_sequence';
312
+ case 'tool_calls': return 'end_turn'; // Tool calls treated as end_turn
313
+ case 'content_filter': return 'end_turn';
114
314
  default: return 'end_turn';
115
315
  }
116
316
  }