@nanocollective/nanocoder 1.19.1 → 1.19.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 (97) hide show
  1. package/assets/nanocoder-vscode.vsix +0 -0
  2. package/dist/ai-sdk-client-preparestep.spec.d.ts +2 -0
  3. package/dist/ai-sdk-client-preparestep.spec.d.ts.map +1 -0
  4. package/dist/ai-sdk-client-preparestep.spec.js +246 -0
  5. package/dist/ai-sdk-client-preparestep.spec.js.map +1 -0
  6. package/dist/ai-sdk-client.d.ts.map +1 -1
  7. package/dist/ai-sdk-client.js +108 -16
  8. package/dist/ai-sdk-client.js.map +1 -1
  9. package/dist/app.d.ts.map +1 -1
  10. package/dist/app.js +6 -6
  11. package/dist/app.js.map +1 -1
  12. package/dist/components/development-mode-indicator.d.ts +15 -0
  13. package/dist/components/development-mode-indicator.d.ts.map +1 -0
  14. package/dist/components/development-mode-indicator.js +18 -0
  15. package/dist/components/development-mode-indicator.js.map +1 -0
  16. package/dist/components/user-input.d.ts +1 -1
  17. package/dist/components/user-input.d.ts.map +1 -1
  18. package/dist/components/user-input.js +7 -7
  19. package/dist/components/user-input.js.map +1 -1
  20. package/dist/hooks/useAppState.d.ts +12 -1
  21. package/dist/hooks/useAppState.d.ts.map +1 -1
  22. package/dist/hooks/useAppState.js.map +1 -1
  23. package/dist/hooks/useChatHandler.d.ts +2 -1
  24. package/dist/hooks/useChatHandler.d.ts.map +1 -1
  25. package/dist/hooks/useChatHandler.js +61 -58
  26. package/dist/hooks/useChatHandler.js.map +1 -1
  27. package/dist/hooks/useToolHandler.d.ts +1 -1
  28. package/dist/hooks/useToolHandler.d.ts.map +1 -1
  29. package/dist/hooks/useToolHandler.js +18 -48
  30. package/dist/hooks/useToolHandler.js.map +1 -1
  31. package/dist/hooks/useVSCodeServer.d.ts +1 -1
  32. package/dist/hooks/useVSCodeServer.d.ts.map +1 -1
  33. package/dist/hooks/useVSCodeServer.js +2 -2
  34. package/dist/hooks/useVSCodeServer.js.map +1 -1
  35. package/dist/tools/execute-function.spec.js +1 -49
  36. package/dist/tools/execute-function.spec.js.map +1 -1
  37. package/dist/tools/index.d.ts.map +1 -1
  38. package/dist/tools/index.js +4 -8
  39. package/dist/tools/index.js.map +1 -1
  40. package/dist/tools/needs-approval.spec.js +22 -83
  41. package/dist/tools/needs-approval.spec.js.map +1 -1
  42. package/dist/tools/read-file.d.ts.map +1 -1
  43. package/dist/tools/read-file.js +5 -3
  44. package/dist/tools/read-file.js.map +1 -1
  45. package/dist/tools/string-replace.d.ts +19 -0
  46. package/dist/tools/string-replace.d.ts.map +1 -0
  47. package/dist/tools/string-replace.js +279 -0
  48. package/dist/tools/string-replace.js.map +1 -0
  49. package/dist/tools/string-replace.spec.d.ts +2 -0
  50. package/dist/tools/string-replace.spec.d.ts.map +1 -0
  51. package/dist/tools/string-replace.spec.js +315 -0
  52. package/dist/tools/string-replace.spec.js.map +1 -0
  53. package/dist/tools/{create-file.d.ts → write-file.d.ts} +5 -5
  54. package/dist/tools/write-file.d.ts.map +1 -0
  55. package/dist/tools/{create-file.js → write-file.js} +34 -39
  56. package/dist/tools/write-file.js.map +1 -0
  57. package/dist/tools/write-file.spec.d.ts +2 -0
  58. package/dist/tools/write-file.spec.d.ts.map +1 -0
  59. package/dist/tools/write-file.spec.js +263 -0
  60. package/dist/tools/write-file.spec.js.map +1 -0
  61. package/dist/types/core.d.ts +1 -0
  62. package/dist/types/core.d.ts.map +1 -1
  63. package/dist/types/core.js.map +1 -1
  64. package/dist/utils/message-builder.d.ts +48 -0
  65. package/dist/utils/message-builder.d.ts.map +1 -0
  66. package/dist/utils/message-builder.js +88 -0
  67. package/dist/utils/message-builder.js.map +1 -0
  68. package/dist/utils/message-builder.spec.d.ts +2 -0
  69. package/dist/utils/message-builder.spec.d.ts.map +1 -0
  70. package/dist/utils/message-builder.spec.js +142 -0
  71. package/dist/utils/message-builder.spec.js.map +1 -0
  72. package/dist/vscode/protocol.d.ts +1 -1
  73. package/dist/vscode/protocol.d.ts.map +1 -1
  74. package/dist/vscode/protocol.spec.js +5 -5
  75. package/dist/vscode/protocol.spec.js.map +1 -1
  76. package/dist/vscode/vscode-server.d.ts +1 -1
  77. package/dist/vscode/vscode-server.d.ts.map +1 -1
  78. package/dist/vscode/vscode-server.js +2 -2
  79. package/dist/vscode/vscode-server.js.map +1 -1
  80. package/dist/vscode/vscode-server.spec.js +2 -2
  81. package/dist/vscode/vscode-server.spec.js.map +1 -1
  82. package/package.json +1 -1
  83. package/source/app/prompts/main-prompt.md +84 -530
  84. package/dist/tools/create-file.d.ts.map +0 -1
  85. package/dist/tools/create-file.js.map +0 -1
  86. package/dist/tools/delete-lines.d.ts +0 -19
  87. package/dist/tools/delete-lines.d.ts.map +0 -1
  88. package/dist/tools/delete-lines.js +0 -328
  89. package/dist/tools/delete-lines.js.map +0 -1
  90. package/dist/tools/insert-lines.d.ts +0 -19
  91. package/dist/tools/insert-lines.d.ts.map +0 -1
  92. package/dist/tools/insert-lines.js +0 -275
  93. package/dist/tools/insert-lines.js.map +0 -1
  94. package/dist/tools/replace-lines.d.ts +0 -20
  95. package/dist/tools/replace-lines.d.ts.map +0 -1
  96. package/dist/tools/replace-lines.js +0 -330
  97. package/dist/tools/replace-lines.js.map +0 -1
Binary file
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ai-sdk-client-preparestep.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-client-preparestep.spec.d.ts","sourceRoot":"","sources":["../source/ai-sdk-client-preparestep.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,246 @@
1
+ import test from 'ava';
2
+ import { isEmptyAssistantMessage } from './ai-sdk-client.js';
3
+ // Tests for prepareStep message filtering logic
4
+ // This simulates the filtering logic used in AISDKClient.chat() to prevent:
5
+ // 1. "400 Bad Request: Assistant message must have either content or tool_calls"
6
+ // 2. "400 Bad Request: Unexpected role 'tool' after role 'user'"
7
+ /**
8
+ * Simulates the prepareStep filtering logic from ai-sdk-client.ts
9
+ * This is extracted for testing purposes
10
+ */
11
+ function simulatePrepareStepFiltering(messages) {
12
+ const filteredMessages = [];
13
+ const indicesToSkip = new Set();
14
+ // First pass: identify empty assistant messages and their orphaned tool results
15
+ for (let i = 0; i < messages.length; i++) {
16
+ if (isEmptyAssistantMessage(messages[i])) {
17
+ indicesToSkip.add(i);
18
+ // Mark any immediately following tool messages as orphaned
19
+ let j = i + 1;
20
+ while (j < messages.length && messages[j].role === 'tool') {
21
+ indicesToSkip.add(j);
22
+ j++;
23
+ }
24
+ }
25
+ }
26
+ // Second pass: build filtered array
27
+ for (let i = 0; i < messages.length; i++) {
28
+ if (!indicesToSkip.has(i)) {
29
+ filteredMessages.push(messages[i]);
30
+ }
31
+ }
32
+ return filteredMessages;
33
+ }
34
+ // ============================================================================
35
+ // Basic filtering tests
36
+ // ============================================================================
37
+ test('prepareStep - keeps valid messages unchanged', t => {
38
+ const messages = [
39
+ { role: 'user', content: 'Hello' },
40
+ { role: 'assistant', content: 'Hi there!' },
41
+ ];
42
+ const filtered = simulatePrepareStepFiltering(messages);
43
+ t.deepEqual(filtered, messages);
44
+ });
45
+ test('prepareStep - filters out empty assistant message', t => {
46
+ const messages = [
47
+ { role: 'user', content: 'Hello' },
48
+ { role: 'assistant', content: '' },
49
+ { role: 'user', content: 'Are you there?' },
50
+ ];
51
+ const filtered = simulatePrepareStepFiltering(messages);
52
+ t.is(filtered.length, 2);
53
+ t.is(filtered[0].role, 'user');
54
+ t.is(filtered[1].role, 'user');
55
+ });
56
+ // ============================================================================
57
+ // Orphaned tool message tests (critical for fixing the bug)
58
+ // ============================================================================
59
+ test('prepareStep - filters out orphaned tool messages after empty assistant', t => {
60
+ // This is the scenario that caused the bug:
61
+ // user -> empty assistant -> tool -> tool
62
+ // After filtering empty assistant, we'd have: user -> tool -> tool (INVALID!)
63
+ const messages = [
64
+ { role: 'user', content: 'Read a file' },
65
+ { role: 'assistant', content: '' }, // Empty assistant
66
+ {
67
+ role: 'tool',
68
+ content: [
69
+ {
70
+ type: 'tool-result',
71
+ toolCallId: 'tool_1',
72
+ toolName: 'read_file',
73
+ output: { type: 'text', value: 'file contents' },
74
+ },
75
+ ],
76
+ },
77
+ {
78
+ role: 'tool',
79
+ content: [
80
+ {
81
+ type: 'tool-result',
82
+ toolCallId: 'tool_2',
83
+ toolName: 'read_file',
84
+ output: { type: 'text', value: 'other file contents' },
85
+ },
86
+ ],
87
+ },
88
+ ];
89
+ const filtered = simulatePrepareStepFiltering(messages);
90
+ // Should only have the user message - empty assistant and orphaned tools removed
91
+ t.is(filtered.length, 1);
92
+ t.is(filtered[0].role, 'user');
93
+ });
94
+ test('prepareStep - keeps tool messages after valid assistant', t => {
95
+ // Valid sequence: user -> assistant with content -> tool results
96
+ // Note: tool_calls are part of the model response, not input messages
97
+ const messages = [
98
+ { role: 'user', content: 'Read a file' },
99
+ {
100
+ role: 'assistant',
101
+ content: 'Let me read that file for you.',
102
+ },
103
+ {
104
+ role: 'tool',
105
+ content: [
106
+ {
107
+ type: 'tool-result',
108
+ toolCallId: 'tool_1',
109
+ toolName: 'read_file',
110
+ output: { type: 'text', value: 'file contents' },
111
+ },
112
+ ],
113
+ },
114
+ ];
115
+ const filtered = simulatePrepareStepFiltering(messages);
116
+ // All messages should be kept
117
+ t.is(filtered.length, 3);
118
+ t.is(filtered[0].role, 'user');
119
+ t.is(filtered[1].role, 'assistant');
120
+ t.is(filtered[2].role, 'tool');
121
+ });
122
+ test('prepareStep - handles multiple empty assistants with tool messages', t => {
123
+ const messages = [
124
+ { role: 'user', content: 'First request' },
125
+ { role: 'assistant', content: '' }, // Empty
126
+ {
127
+ role: 'tool',
128
+ content: [
129
+ {
130
+ type: 'tool-result',
131
+ toolCallId: 'tool_1',
132
+ toolName: 'read_file',
133
+ output: { type: 'text', value: 'file1' },
134
+ },
135
+ ],
136
+ },
137
+ { role: 'user', content: 'Second request' },
138
+ { role: 'assistant', content: '' }, // Empty
139
+ {
140
+ role: 'tool',
141
+ content: [
142
+ {
143
+ type: 'tool-result',
144
+ toolCallId: 'tool_2',
145
+ toolName: 'read_file',
146
+ output: { type: 'text', value: 'file2' },
147
+ },
148
+ ],
149
+ },
150
+ ];
151
+ const filtered = simulatePrepareStepFiltering(messages);
152
+ // Should only have the two user messages
153
+ t.is(filtered.length, 2);
154
+ t.is(filtered[0].role, 'user');
155
+ t.is(filtered[1].role, 'user');
156
+ });
157
+ test('prepareStep - stops filtering tool messages at next non-tool message', t => {
158
+ const messages = [
159
+ { role: 'user', content: 'Request' },
160
+ { role: 'assistant', content: '' }, // Empty
161
+ {
162
+ role: 'tool',
163
+ content: [
164
+ {
165
+ type: 'tool-result',
166
+ toolCallId: 'tool_1',
167
+ toolName: 'read_file',
168
+ output: { type: 'text', value: 'file1' },
169
+ },
170
+ ],
171
+ },
172
+ { role: 'assistant', content: 'Here is the result' }, // Valid assistant
173
+ {
174
+ role: 'tool',
175
+ content: [
176
+ {
177
+ type: 'tool-result',
178
+ toolCallId: 'tool_2',
179
+ toolName: 'read_file',
180
+ output: { type: 'text', value: 'file2' },
181
+ },
182
+ ],
183
+ },
184
+ ];
185
+ const filtered = simulatePrepareStepFiltering(messages);
186
+ // Empty assistant and its tool are removed, but valid assistant and its tool remain
187
+ // However, the last tool message has no parent assistant with tool_calls, so it's orphaned
188
+ // Actually, looking at the logic more carefully: we only filter tool messages that
189
+ // IMMEDIATELY follow an empty assistant. So the last tool message would remain.
190
+ t.is(filtered.length, 3);
191
+ t.is(filtered[0].role, 'user');
192
+ t.is(filtered[1].role, 'assistant');
193
+ t.is(filtered[2].role, 'tool');
194
+ });
195
+ // ============================================================================
196
+ // Complex scenarios
197
+ // ============================================================================
198
+ test('prepareStep - handles empty assistant between valid messages', t => {
199
+ const messages = [
200
+ { role: 'user', content: 'First request' },
201
+ { role: 'assistant', content: 'First response' },
202
+ { role: 'user', content: 'Second request' },
203
+ { role: 'assistant', content: '' }, // Empty
204
+ {
205
+ role: 'tool',
206
+ content: [
207
+ {
208
+ type: 'tool-result',
209
+ toolCallId: 'tool_1',
210
+ toolName: 'read_file',
211
+ output: { type: 'text', value: 'file1' },
212
+ },
213
+ ],
214
+ },
215
+ { role: 'assistant', content: 'Final response' },
216
+ ];
217
+ const filtered = simulatePrepareStepFiltering(messages);
218
+ // Empty assistant and orphaned tool removed, valid messages remain
219
+ t.is(filtered.length, 4);
220
+ t.is(filtered[0].role, 'user');
221
+ t.is(filtered[1].role, 'assistant');
222
+ t.is(filtered[2].role, 'user');
223
+ t.is(filtered[3].role, 'assistant');
224
+ });
225
+ test('prepareStep - whitespace-only assistant content is considered empty', t => {
226
+ const messages = [
227
+ { role: 'user', content: 'Request' },
228
+ { role: 'assistant', content: ' \n\t ' }, // Whitespace only
229
+ {
230
+ role: 'tool',
231
+ content: [
232
+ {
233
+ type: 'tool-result',
234
+ toolCallId: 'tool_1',
235
+ toolName: 'read_file',
236
+ output: { type: 'text', value: 'file1' },
237
+ },
238
+ ],
239
+ },
240
+ ];
241
+ const filtered = simulatePrepareStepFiltering(messages);
242
+ // Whitespace-only assistant and orphaned tool are filtered
243
+ t.is(filtered.length, 1);
244
+ t.is(filtered[0].role, 'user');
245
+ });
246
+ //# sourceMappingURL=ai-sdk-client-preparestep.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-client-preparestep.spec.js","sourceRoot":"","sources":["../source/ai-sdk-client-preparestep.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk-client.d.ts","sourceRoot":"","sources":["../source/ai-sdk-client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,OAAO,EACP,eAAe,EAEf,MAAM,eAAe,CAAC;AAevB;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAczE;AAgBD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAyJpD;AAmDD,qBAAa,WAAY,YAAW,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,UAAU,CAAS;gBAEf,cAAc,EAAE,gBAAgB;IAwC5C;;OAEG;YACW,iBAAiB;IAU/B,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAKrE,OAAO,CAAC,cAAc;IAgCtB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7B,eAAe,IAAI,MAAM;IAIzB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIvC;;OAEG;IACG,IAAI,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,SAAS,EAAE,eAAe,EAC1B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC;IA8S3B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B"}
1
+ {"version":3,"file":"ai-sdk-client.d.ts","sourceRoot":"","sources":["../source/ai-sdk-client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,OAAO,EACP,eAAe,EAEf,MAAM,eAAe,CAAC;AAevB;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAczE;AAgBD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAyJpD;AAyFD,qBAAa,WAAY,YAAW,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,UAAU,CAAS;gBAEf,cAAc,EAAE,gBAAgB;IAwC5C;;OAEG;YACW,iBAAiB;IAU/B,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAKrE,OAAO,CAAC,cAAc;IAgCtB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7B,eAAe,IAAI,MAAM;IAIzB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIvC;;OAEG;IACG,IAAI,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,SAAS,EAAE,eAAe,EAC1B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC;IAyX3B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B"}
@@ -167,20 +167,29 @@ export function parseAPIError(error) {
167
167
  return errorMessage.replace(/^Error:\s*/i, '').split('\n')[0];
168
168
  }
169
169
  /**
170
- * Convert our Message format to AI SDK v5 ModelMessage format
170
+ * Convert our Message format to AI SDK v6 ModelMessage format
171
171
  *
172
- * Tool messages: Converted to user messages with [Tool: name] prefix.
173
- * This approach is simpler and avoids issues with orphaned tool results
174
- * in multi-turn conversations.
172
+ * Tool messages: Converted to AI SDK tool-result format with proper structure.
175
173
  */
176
174
  function convertToModelMessages(messages) {
177
175
  return messages.map((msg) => {
178
176
  if (msg.role === 'tool') {
179
- // Convert tool results to user messages with clear labeling
180
- const toolName = msg.name || 'unknown_tool';
177
+ // Convert to AI SDK tool-result format
178
+ // AI SDK expects: { role: 'tool', content: [{ type: 'tool-result', toolCallId, toolName, output }] }
179
+ // where output is { type: 'text', value: string } or { type: 'json', value: JSONValue }
181
180
  return {
182
- role: 'user',
183
- content: `[Tool: ${toolName}]\n${msg.content}`,
181
+ role: 'tool',
182
+ content: [
183
+ {
184
+ type: 'tool-result',
185
+ toolCallId: msg.tool_call_id || '',
186
+ toolName: msg.name || '',
187
+ output: {
188
+ type: 'text',
189
+ value: msg.content,
190
+ },
191
+ },
192
+ ],
184
193
  };
185
194
  }
186
195
  if (msg.role === 'system') {
@@ -196,11 +205,36 @@ function convertToModelMessages(messages) {
196
205
  };
197
206
  }
198
207
  if (msg.role === 'assistant') {
208
+ // Build content array
209
+ const content = [];
210
+ // Add text content if present
211
+ if (msg.content) {
212
+ content.push({
213
+ type: 'text',
214
+ text: msg.content,
215
+ });
216
+ }
217
+ // Add tool calls if present (for auto-executed messages)
218
+ if (msg.tool_calls && msg.tool_calls.length > 0) {
219
+ for (const toolCall of msg.tool_calls) {
220
+ content.push({
221
+ type: 'tool-call',
222
+ toolCallId: toolCall.id,
223
+ toolName: toolCall.function.name,
224
+ input: toolCall.function.arguments,
225
+ });
226
+ }
227
+ }
228
+ // If no content at all, add empty text to avoid empty message
229
+ if (content.length === 0) {
230
+ content.push({
231
+ type: 'text',
232
+ text: '',
233
+ });
234
+ }
199
235
  return {
200
236
  role: 'assistant',
201
- content: msg.content,
202
- // Note: tool_calls are handled separately by AI SDK
203
- // They come from the response, not the input messages
237
+ content,
204
238
  };
205
239
  }
206
240
  // Fallback - should never happen
@@ -358,7 +392,6 @@ export class AISDKClient {
358
392
  tools: aiTools,
359
393
  abortSignal: signal,
360
394
  maxRetries: this.maxRetries,
361
- temperature: 0.6,
362
395
  stopWhen: stepCountIs(10), // Allow up to 10 tool execution steps
363
396
  // Can be used to add custom logging, metrics, or step tracking
364
397
  onStepFinish(step) {
@@ -400,10 +433,30 @@ export class AISDKClient {
400
433
  prepareStep: ({ messages }) => {
401
434
  // Filter out empty assistant messages that would cause API errors
402
435
  // "Assistant message must have either content or tool_calls"
403
- const filteredMessages = messages.filter(m => !isEmptyAssistantMessage(m));
436
+ // Also filter out orphaned tool messages that follow empty assistant messages
437
+ const filteredMessages = [];
438
+ const indicesToSkip = new Set();
439
+ // First pass: identify empty assistant messages and their orphaned tool results
440
+ for (let i = 0; i < messages.length; i++) {
441
+ if (isEmptyAssistantMessage(messages[i])) {
442
+ indicesToSkip.add(i);
443
+ // Mark any immediately following tool messages as orphaned
444
+ let j = i + 1;
445
+ while (j < messages.length && messages[j].role === 'tool') {
446
+ indicesToSkip.add(j);
447
+ j++;
448
+ }
449
+ }
450
+ }
451
+ // Second pass: build filtered array
452
+ for (let i = 0; i < messages.length; i++) {
453
+ if (!indicesToSkip.has(i)) {
454
+ filteredMessages.push(messages[i]);
455
+ }
456
+ }
404
457
  // Log message filtering
405
458
  if (filteredMessages.length !== messages.length) {
406
- logger.debug('Filtered empty assistant messages', {
459
+ logger.debug('Filtered empty assistant messages and orphaned tool results', {
407
460
  originalCount: messages.length,
408
461
  filteredCount: filteredMessages.length,
409
462
  removedCount: messages.length - filteredMessages.length,
@@ -429,8 +482,45 @@ export class AISDKClient {
429
482
  }
430
483
  // Get tool calls from result
431
484
  const toolCallsResult = result.toolCalls;
432
- // Can inspect result.steps to see auto-executed tool calls and results
433
- // const steps = await result.steps;
485
+ // Extract auto-executed assistant messages and tool results from steps
486
+ // These need to be added to the messages array so usage tracking can count them
487
+ const autoExecutedMessages = [];
488
+ const steps = result.steps;
489
+ for (const step of steps) {
490
+ if (step.toolCalls &&
491
+ step.toolResults &&
492
+ step.toolCalls.length === step.toolResults.length) {
493
+ // This step had tool calls that were auto-executed
494
+ // Add the assistant message with tool_calls
495
+ const stepToolCalls = step.toolCalls.map(toolCall => ({
496
+ id: toolCall.toolCallId ||
497
+ `tool_${Date.now()}_${Math.random().toString(36).substring(7)}`,
498
+ function: {
499
+ name: toolCall.toolName,
500
+ arguments: toolCall.input,
501
+ },
502
+ }));
503
+ autoExecutedMessages.push({
504
+ role: 'assistant',
505
+ content: step.text || '',
506
+ tool_calls: stepToolCalls,
507
+ });
508
+ // Add the tool result messages
509
+ step.toolCalls.forEach((toolCall, idx) => {
510
+ const toolResult = step.toolResults[idx];
511
+ const resultStr = typeof toolResult.output === 'string'
512
+ ? toolResult.output
513
+ : JSON.stringify(toolResult.output);
514
+ autoExecutedMessages.push({
515
+ role: 'tool',
516
+ content: resultStr,
517
+ tool_call_id: toolCall.toolCallId ||
518
+ `tool_${Date.now()}_${Math.random().toString(36).substring(7)}`,
519
+ name: toolCall.toolName,
520
+ });
521
+ });
522
+ }
523
+ }
434
524
  // Extract tool calls
435
525
  const toolCalls = [];
436
526
  if (toolCallsResult && toolCallsResult.length > 0) {
@@ -522,6 +612,8 @@ export class AISDKClient {
522
612
  },
523
613
  },
524
614
  ],
615
+ // Include auto-executed messages so they can be added to message history
616
+ autoExecutedMessages: autoExecutedMessages.length > 0 ? autoExecutedMessages : undefined,
525
617
  };
526
618
  }
527
619
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk-client.js","sourceRoot":"","sources":["../source/ai-sdk-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-sdk-client.js","sourceRoot":"","sources":["../source/ai-sdk-client.ts"],"names":[],"mappings":"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"}
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../source/app.tsx"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAE5D,UAAU,QAAQ;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED,wBAAgB,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,OAAO,2CAE/D;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC3C,QAAQ,EAAE;IACT,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAChC,sBAAsB,EAAE,OAAO,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;CACjD,EACD,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,GACxB;IACF,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,eAAe,GAAG,IAAI,CAAC;CAClE,CA2CA;AAED,MAAM,CAAC,OAAO,UAAU,GAAG,CAAC,EAC3B,UAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,kBAA0B,EAC1B,aAAkB,GAClB,EAAE,QAAQ,2CA+yBV"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../source/app.tsx"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAE5D,UAAU,QAAQ;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED,wBAAgB,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,OAAO,2CAE/D;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC3C,QAAQ,EAAE;IACT,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAChC,sBAAsB,EAAE,OAAO,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;CACjD,EACD,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,GACxB;IACF,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,eAAe,GAAG,IAAI,CAAC;CAClE,CA2CA;AAED,MAAM,CAAC,OAAO,UAAU,GAAG,CAAC,EAC3B,UAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,kBAA0B,EAC1B,aAAkB,GAClB,EAAE,QAAQ,2CAoyBV"}
package/dist/app.js CHANGED
@@ -199,12 +199,12 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
199
199
  setAbortController: appState.setAbortController,
200
200
  developmentMode: appState.developmentMode,
201
201
  nonInteractiveMode,
202
- onStartToolConfirmationFlow: (toolCalls, updatedMessages, assistantMsg, systemMessage) => {
202
+ onStartToolConfirmationFlow: (toolCalls, messagesBeforeToolExecution, assistantMsg, systemMessage) => {
203
203
  appState.setPendingToolCalls(toolCalls);
204
204
  appState.setCurrentToolIndex(0);
205
205
  appState.setCompletedToolResults([]);
206
206
  appState.setCurrentConversationContext({
207
- updatedMessages,
207
+ messagesBeforeToolExecution,
208
208
  assistantMsg,
209
209
  systemMessage,
210
210
  });
@@ -254,7 +254,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
254
254
  hasPendingToolCalls: appState.pendingToolCalls.length > 0,
255
255
  clientInitialized: !!appState.client,
256
256
  mcpServersConnected: appState.mcpInitialized,
257
- inputDisabled: chatHandler.isStreaming ||
257
+ inputDisabled: chatHandler.isGenerating ||
258
258
  appState.isToolExecuting ||
259
259
  appState.isBashExecuting,
260
260
  },
@@ -270,7 +270,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
270
270
  appState.pendingToolCalls.length,
271
271
  logger,
272
272
  appState.developmentMode,
273
- chatHandler.isStreaming,
273
+ chatHandler.isGenerating,
274
274
  appState.isBashExecuting,
275
275
  ]);
276
276
  // Setup initialization
@@ -572,13 +572,13 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
572
572
  setExtensionPromptComplete(true);
573
573
  } })] }) }));
574
574
  }
575
- return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsx(UIStateProvider, { children: _jsxs(Box, { flexDirection: "column", padding: 1, width: "100%", children: [_jsx(Box, { flexGrow: 1, flexDirection: "column", minHeight: 0, children: appState.startChat && (_jsx(ChatQueue, { staticComponents: staticComponents, queuedComponents: appState.chatComponents })) }), appState.startChat && (_jsxs(Box, { flexDirection: "column", marginLeft: -1, children: [appState.isCancelling && _jsx(CancellingIndicator, {}), chatHandler.isStreaming && chatHandler.streamingContent && (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: themeContextValue.colors.primary, bold: true, children: [appState.currentModel, ":"] }) }), _jsx(Text, { children: chatHandler.streamingContent })] })), appState.isModelSelectionMode ? (_jsx(ModelSelector, { client: appState.client, currentModel: appState.currentModel, onModelSelect: model => void modeHandlers.handleModelSelect(model), onCancel: modeHandlers.handleModelSelectionCancel })) : appState.isProviderSelectionMode ? (_jsx(ProviderSelector, { currentProvider: appState.currentProvider, onProviderSelect: provider => void modeHandlers.handleProviderSelect(provider), onCancel: modeHandlers.handleProviderSelectionCancel })) : appState.isThemeSelectionMode ? (_jsx(ThemeSelector, { onThemeSelect: modeHandlers.handleThemeSelect, onCancel: modeHandlers.handleThemeSelectionCancel })) : appState.isModelDatabaseMode ? (_jsx(ModelDatabaseDisplay, { onCancel: modeHandlers.handleModelDatabaseCancel })) : appState.isConfigWizardMode ? (_jsx(ConfigWizard, { projectDir: process.cwd(), onComplete: configPath => void modeHandlers.handleConfigWizardComplete(configPath), onCancel: modeHandlers.handleConfigWizardCancel })) : appState.isCheckpointLoadMode &&
575
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsx(UIStateProvider, { children: _jsxs(Box, { flexDirection: "column", padding: 1, width: "100%", children: [_jsx(Box, { flexGrow: 1, flexDirection: "column", minHeight: 0, children: appState.startChat && (_jsx(ChatQueue, { staticComponents: staticComponents, queuedComponents: appState.chatComponents })) }), appState.startChat && (_jsxs(Box, { flexDirection: "column", marginLeft: -1, children: [appState.isCancelling && _jsx(CancellingIndicator, {}), appState.isModelSelectionMode ? (_jsx(ModelSelector, { client: appState.client, currentModel: appState.currentModel, onModelSelect: model => void modeHandlers.handleModelSelect(model), onCancel: modeHandlers.handleModelSelectionCancel })) : appState.isProviderSelectionMode ? (_jsx(ProviderSelector, { currentProvider: appState.currentProvider, onProviderSelect: provider => void modeHandlers.handleProviderSelect(provider), onCancel: modeHandlers.handleProviderSelectionCancel })) : appState.isThemeSelectionMode ? (_jsx(ThemeSelector, { onThemeSelect: modeHandlers.handleThemeSelect, onCancel: modeHandlers.handleThemeSelectionCancel })) : appState.isModelDatabaseMode ? (_jsx(ModelDatabaseDisplay, { onCancel: modeHandlers.handleModelDatabaseCancel })) : appState.isConfigWizardMode ? (_jsx(ConfigWizard, { projectDir: process.cwd(), onComplete: configPath => void modeHandlers.handleConfigWizardComplete(configPath), onCancel: modeHandlers.handleConfigWizardCancel })) : appState.isCheckpointLoadMode &&
576
576
  appState.checkpointLoadData ? (_jsx(CheckpointSelector, { checkpoints: appState.checkpointLoadData.checkpoints, currentMessageCount: appState.checkpointLoadData.currentMessageCount, onSelect: (name, backup) => void handleCheckpointSelect(name, backup), onCancel: handleCheckpointCancel })) : appState.isToolConfirmationMode &&
577
577
  appState.pendingToolCalls[appState.currentToolIndex] ? (_jsx(ToolConfirmation, { toolCall: appState.pendingToolCalls[appState.currentToolIndex], onConfirm: toolHandler.handleToolConfirmation, onCancel: toolHandler.handleToolConfirmationCancel })) : appState.isToolExecuting &&
578
578
  appState.pendingToolCalls[appState.currentToolIndex] ? (_jsx(ToolExecutionIndicator, { toolName: appState.pendingToolCalls[appState.currentToolIndex]
579
579
  .function.name, currentIndex: appState.currentToolIndex, totalTools: appState.pendingToolCalls.length })) : appState.isBashExecuting ? (_jsx(BashExecutionIndicator, { command: appState.currentBashCommand })) : appState.mcpInitialized &&
580
580
  appState.client &&
581
- !nonInteractivePrompt ? (_jsx(UserInput, { customCommands: Array.from(appState.customCommandCache.keys()), onSubmit: msg => void handleMessageSubmit(msg), disabled: chatHandler.isStreaming ||
581
+ !nonInteractivePrompt ? (_jsx(UserInput, { customCommands: Array.from(appState.customCommandCache.keys()), onSubmit: msg => void handleMessageSubmit(msg), disabled: chatHandler.isGenerating ||
582
582
  appState.isToolExecuting ||
583
583
  appState.isBashExecuting, onCancel: handleCancel, onToggleMode: handleToggleDevelopmentMode, developmentMode: appState.developmentMode })) : appState.mcpInitialized && !appState.client ? (_jsx(_Fragment, {})) : nonInteractivePrompt && !nonInteractiveLoadingMessage ? (
584
584
  // Show completion message when non-interactive mode is done