@cleanslate/sdk 1.0.7 → 1.0.9

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 (84) hide show
  1. package/README.md +81 -5
  2. package/VENDOR.md +7 -8
  3. package/dist/agent/cleanSlateAgentExecutionPhase.d.ts.map +1 -1
  4. package/dist/agent/cleanSlateAgentExecutionPhase.js +7 -1
  5. package/dist/agent/cleanSlateAgentExecutionPhase.js.map +1 -1
  6. package/dist/agent/cleanSlateExecutionQuery.d.ts +1 -0
  7. package/dist/agent/cleanSlateExecutionQuery.d.ts.map +1 -1
  8. package/dist/agent/cleanSlateExecutionQuery.js +135 -89
  9. package/dist/agent/cleanSlateExecutionQuery.js.map +1 -1
  10. package/dist/agent/cleanSlateToolResultPromptSerializer.js +27 -5
  11. package/dist/agent/cleanSlateToolResultPromptSerializer.js.map +1 -1
  12. package/dist/index.d.ts +4 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +2 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/node/cleanSlateHostedAgentRuntime.d.ts +41 -0
  17. package/dist/node/cleanSlateHostedAgentRuntime.d.ts.map +1 -0
  18. package/dist/node/cleanSlateHostedAgentRuntime.js +525 -0
  19. package/dist/node/cleanSlateHostedAgentRuntime.js.map +1 -0
  20. package/dist/node/cleanSlateManagedAuth.d.ts +19 -0
  21. package/dist/node/cleanSlateManagedAuth.d.ts.map +1 -0
  22. package/dist/node/cleanSlateManagedAuth.js +123 -0
  23. package/dist/node/cleanSlateManagedAuth.js.map +1 -0
  24. package/dist/node/cleanSlateNodeAgentRuntime.d.ts +51 -1
  25. package/dist/node/cleanSlateNodeAgentRuntime.d.ts.map +1 -1
  26. package/dist/node/cleanSlateNodeAgentRuntime.js +188 -17
  27. package/dist/node/cleanSlateNodeAgentRuntime.js.map +1 -1
  28. package/dist/node/cleanSlateNodeBrowserAutomation.d.ts +12 -0
  29. package/dist/node/cleanSlateNodeBrowserAutomation.d.ts.map +1 -1
  30. package/dist/node/cleanSlateNodeBrowserAutomation.js +73 -14
  31. package/dist/node/cleanSlateNodeBrowserAutomation.js.map +1 -1
  32. package/dist/node/cleanSlateNodeCommandService.d.ts.map +1 -1
  33. package/dist/node/cleanSlateNodeCommandService.js +4 -0
  34. package/dist/node/cleanSlateNodeCommandService.js.map +1 -1
  35. package/dist/node/cleanSlateNodeMainService.d.ts +2 -1
  36. package/dist/node/cleanSlateNodeMainService.d.ts.map +1 -1
  37. package/dist/node/cleanSlateNodeMainService.js +1 -0
  38. package/dist/node/cleanSlateNodeMainService.js.map +1 -1
  39. package/dist/node/cleanSlateNodeToolContext.d.ts +2 -0
  40. package/dist/node/cleanSlateNodeToolContext.d.ts.map +1 -1
  41. package/dist/node/cleanSlateNodeToolContext.js +1 -1
  42. package/dist/node/cleanSlateNodeToolContext.js.map +1 -1
  43. package/dist/node/index.d.ts +6 -1
  44. package/dist/node/index.d.ts.map +1 -1
  45. package/dist/node/index.js +3 -0
  46. package/dist/node/index.js.map +1 -1
  47. package/dist/protocol/cleanSlateAI.d.ts +63 -6
  48. package/dist/protocol/cleanSlateAI.d.ts.map +1 -1
  49. package/dist/protocol/cleanSlateAI.js +1 -0
  50. package/dist/protocol/cleanSlateAI.js.map +1 -1
  51. package/dist/protocol/cleanSlateManagedTokenCoordinator.d.ts +16 -0
  52. package/dist/protocol/cleanSlateManagedTokenCoordinator.d.ts.map +1 -0
  53. package/dist/protocol/cleanSlateManagedTokenCoordinator.js +66 -0
  54. package/dist/protocol/cleanSlateManagedTokenCoordinator.js.map +1 -0
  55. package/dist/protocol/cleanSlateService.d.ts.map +1 -1
  56. package/dist/protocol/cleanSlateService.js +3 -5
  57. package/dist/protocol/cleanSlateService.js.map +1 -1
  58. package/dist/services/cleanSlateAgentCoordinator.d.ts +81 -0
  59. package/dist/services/cleanSlateAgentCoordinator.d.ts.map +1 -0
  60. package/dist/services/cleanSlateAgentCoordinator.js +243 -0
  61. package/dist/services/cleanSlateAgentCoordinator.js.map +1 -0
  62. package/dist/services/cleanSlateConversationBranchService.d.ts +34 -0
  63. package/dist/services/cleanSlateConversationBranchService.d.ts.map +1 -0
  64. package/dist/services/cleanSlateConversationBranchService.js +70 -0
  65. package/dist/services/cleanSlateConversationBranchService.js.map +1 -0
  66. package/dist/services/cleanSlateTools.d.ts +2 -0
  67. package/dist/services/cleanSlateTools.d.ts.map +1 -1
  68. package/dist/services/cleanSlateTools.js +2 -0
  69. package/dist/services/cleanSlateTools.js.map +1 -1
  70. package/dist/tools/BrowserAutomationTools.d.ts.map +1 -1
  71. package/dist/tools/BrowserAutomationTools.js +6 -3
  72. package/dist/tools/BrowserAutomationTools.js.map +1 -1
  73. package/dist/tools/ExecuteCommandTool.js +2 -2
  74. package/dist/tools/ExecuteCommandTool.js.map +1 -1
  75. package/dist/tools/SpawnWorkerTool.d.ts +3 -0
  76. package/dist/tools/SpawnWorkerTool.d.ts.map +1 -1
  77. package/dist/tools/SpawnWorkerTool.js +101 -10
  78. package/dist/tools/SpawnWorkerTool.js.map +1 -1
  79. package/dist/tools/registry.d.ts.map +1 -1
  80. package/dist/tools/registry.js +4 -1
  81. package/dist/tools/registry.js.map +1 -1
  82. package/dist/tools/types.d.ts +3 -0
  83. package/dist/tools/types.d.ts.map +1 -1
  84. package/package.json +1 -1
package/README.md CHANGED
@@ -7,7 +7,7 @@ host. It is the engine behind [CleanSlate](https://github.com/TheWariend/CleanSl
7
7
  It has no editor dependency. A surface supplies host capabilities; the runtime
8
8
  drives the loop.
9
9
 
10
- > **Current release: 1.0.7.** The SDK follows semantic versioning.
10
+ > **Current release: 1.0.9.**
11
11
 
12
12
  ## Install
13
13
 
@@ -21,7 +21,7 @@ Node 20 or later.
21
21
 
22
22
  - **The execution loop** — turn management, budgets, an evidence ledger, and the
23
23
  completion boundary that decides when a task is actually finished.
24
- - **60 tools**, listed below.
24
+ - Tools for file editing, search, commands, browsing, and host integrations, listed below.
25
25
  - **The edit engine** — exact-string matching with anchors, version guards and
26
26
  atomic multi-file application.
27
27
  - **A Node host** — filesystem-backed text models and child-process commands, so
@@ -29,14 +29,14 @@ Node 20 or later.
29
29
 
30
30
  ## The tools
31
31
 
32
- `ALL_TOOLS` exports 60 tools. Availability depends on what the host provides —
32
+ `ALL_TOOLS` exports 63 tools. Availability depends on what the host provides —
33
33
  a surface with no browser has no browser tools.
34
34
 
35
35
  | Group | Count | Tools |
36
36
  | --- | --- | --- |
37
37
  | Discovery | 12 | `read_file`, `read_file_range`, `semantic_search`, `search_workspace`, `search_codebase`, `find_by_name`, `grep_search`, `web_search`, `web_fetch`, `list_dir`, `read_lints`, `find_references` |
38
38
  | Browser | 26 | `browser_open`, `browser_snapshot`, `browser_click`, `browser_fill`, `browser_type`, `browser_key`, `browser_scroll`, `browser_screenshot`, `browser_diagnostics`, tab and annotation control, … |
39
- | System | 9 | `spawn_worker`, `list_skills`, `mcp_list_tools`, `mcp_call_tool`, `read_reference`, `update_todo`, `ask_question`, `submit_artifact`, `prepare_pull_request` |
39
+ | System | 12 | `spawn_worker`, `wait_worker`, `list_workers`, `cancel_worker`, `list_skills`, `mcp_list_tools`, `mcp_call_tool`, `read_reference`, `update_todo`, `ask_question`, `submit_artifact`, `prepare_pull_request` |
40
40
  | Edit | 4 | `apply_edit`, `multi_file_replace`, `write_file`, `file_history_rewind` |
41
41
  | Execution | 4 | `execute_command`, `start_background_command`, `read_background_command`, `stop_background_command` |
42
42
  | Symbols | 3 | `read_symbols`, `get_definitions`, `undo_edit` |
@@ -46,13 +46,58 @@ a surface with no browser has no browser tools.
46
46
  ```js
47
47
  import { ALL_TOOLS, getToolByName } from '@cleanslate/sdk';
48
48
 
49
- ALL_TOOLS.length; // 60
49
+ ALL_TOOLS.length; // 63
50
50
  getToolByName('multi_file_replace');
51
51
  ```
52
52
 
53
53
  Every command-running tool passes through the host's approval gate first, which
54
54
  refuses by default.
55
55
 
56
+ ### Child agents
57
+
58
+ `spawn_worker` is backed by `CleanSlateAgentCoordinator`. It starts a child in
59
+ the background and returns its ID immediately. `wait_worker`, `list_workers`
60
+ and `cancel_worker` observe or control that child separately, so the parent can
61
+ continue work or start other children in parallel. The coordinator owns child
62
+ identity, lifecycle, cancellation and concurrency; a host only supplies the
63
+ function that runs one child.
64
+
65
+ In the IDE, the existing Side Chat tab is the worker conversation surface. It
66
+ shows the delegated prompt as the user turn and streams the child agent's reply
67
+ into the following assistant turn without adding a new panel or creating a
68
+ sidebar/history conversation. The SDK coordinator stays UI-agnostic; other
69
+ hosts can project the same lifecycle events however they choose.
70
+
71
+ ```js
72
+ import { CleanSlateAgentCoordinator } from '@cleanslate/sdk';
73
+
74
+ const agents = new CleanSlateAgentCoordinator(async (request, child) => {
75
+ child.emitProgress('Inspecting the requested scope');
76
+ return runIsolatedAgent(request.prompt, child.signal);
77
+ });
78
+
79
+ agents.onDidChangeAgent(({ type, agent }) => {
80
+ console.log(type, agent.id, agent.status);
81
+ });
82
+ ```
83
+
84
+ `CleanSlateNodeAgentRuntime` wires this automatically. Use `listChildAgents()`,
85
+ `cancelChildAgent(id)` and `onAgentEvent` to build a terminal or web UI around it.
86
+
87
+ ### Side conversations
88
+
89
+ `CleanSlateConversationBranchService` stores an explicit conversation tree. A
90
+ side chat has its own message list and a `parentId`; hosts choose whether to
91
+ start empty or inherit the parent's messages. The service has no UI or provider
92
+ dependency, so an IDE can place a side chat in a companion pane while a server
93
+ can expose the same branch over an API.
94
+
95
+ The Node runtime also provides `createSideChat()`, `listSideChats()`,
96
+ `getSideChat(id)` and `closeSideChat(id)`. Each returned side chat contains an
97
+ independent `CleanSlateNodeAgentRuntime`; by default it receives a bounded,
98
+ read-only context seed from its parent but never shares mutable conversation
99
+ state.
100
+
56
101
  ## Entry points
57
102
 
58
103
  | Import | Contains |
@@ -80,6 +125,37 @@ A host implements as much as it can and leaves the rest undefined. Tools that
80
125
  need an absent capability report it as unavailable instead of failing the run —
81
126
  so a terminal without a browser view simply has no browser tools.
82
127
 
128
+ ### CleanSlate Managed AI
129
+
130
+ Node hosts can authenticate with CleanSlate's browser device flow, then pass the
131
+ returned account token to the built-in `cleanslate` provider.
132
+
133
+ ```js
134
+ import {
135
+ authenticateCleanSlateInBrowser,
136
+ CleanSlateNodeAgentRuntime,
137
+ createNodeProviderConfiguration
138
+ } from '@cleanslate/sdk/node';
139
+
140
+ const { token, entitlements } = await authenticateCleanSlateInBrowser();
141
+ const model = entitlements.models?.[0]?.id;
142
+ if (!model) throw new Error('This account has no managed models.');
143
+
144
+ const runtime = new CleanSlateNodeAgentRuntime({
145
+ rootPath: process.cwd(),
146
+ configuration: createNodeProviderConfiguration({
147
+ provider: 'cleanslate',
148
+ model,
149
+ apiKey: token
150
+ }),
151
+ approveCommand: async () => false
152
+ });
153
+
154
+ for await (const event of runtime.run('Inspect this project')) {
155
+ console.log(event);
156
+ }
157
+ ```
158
+
83
159
  ## Host capabilities
84
160
 
85
161
  | Interface | Provides |
package/VENDOR.md CHANGED
@@ -4,11 +4,11 @@
4
4
  (MIT). They are copied rather than depended on: the fork's `vs/` tree is not a
5
5
  published package, and importing it would tie the runtime to an editor build.
6
6
 
7
- ## Copied as-is
7
+ ## Copied with mechanical changes
8
8
 
9
9
  Each carries its original Microsoft copyright header plus a note naming its
10
- source path. The only mechanical change is `export const enum` →`export enum`,
11
- because `const enum` cannot cross a module boundary under `isolatedModules`.
10
+ source path. The vendoring script rewrites imports for the SDK layout and converts
11
+ `export const enum` to `export enum` for `isolatedModules` compatibility.
12
12
 
13
13
  | SDK path | Source |
14
14
  | --- | --- |
@@ -35,20 +35,19 @@ because `const enum` cannot cross a module boundary under `isolatedModules`.
35
35
  | `core/diff/diff.ts` | `vs/base/common/diff/diff.ts` |
36
36
  | `core/diff/diffChange.ts` | `vs/base/common/diff/diffChange.ts` |
37
37
 
38
- There are no further changes. `path.ts` is carried across rather than replaced
38
+ `path.ts` is carried across rather than replaced
39
39
  with `node:path`, because the runtime also loads in an editor renderer, where
40
40
  the `node:` scheme does not resolve.
41
41
 
42
42
  ## Reimplemented instead of copied
43
43
 
44
- Four modules were rewritten. Each was a cut edge that would otherwise have
45
- pulled a large subtree in for a handful of functions — following those edges
46
- verbatim would have meant 32 files and ~16,200 lines instead of the 21 above.
44
+ Five modules provide the subset of functionality needed by the SDK without
45
+ pulling in additional editor dependencies.
47
46
 
48
47
  | SDK path | Replaces | Why |
49
48
  | --- | --- | --- |
50
49
  | `core/platform.ts` | `vs/base/common/platform.ts` | The original resolves the UI locale, which is the sole reason it imports `vs/nls`. The runtime needs only the OS booleans. |
51
- | `core/resources.ts` | `vs/base/common/resources.ts` | Six functions (`basename`, `dirname`, `joinPath`, `normalizePath`, `relativePath`, `isEqualOrParent`) were reaching `extpath` → `network` → `strings` → `nls`. Rewritten on `node:path`, preserving the original semantics; see the file header for the two deliberate simplifications. |
50
+ | `core/resources.ts` | `vs/base/common/resources.ts` | Six functions (`basename`, `dirname`, `joinPath`, `normalizePath`, `relativePath`, `isEqualOrParent`) use the vendored path module; see the file header for the compatibility assumptions. |
52
51
  | `core/hash.ts` | `vs/base/common/hash.ts` | Only `stringHash` is used. The original also carries SHA-1 and structural hashing, pulling in `buffer` and `strings`. The algorithm is reproduced exactly, because diff output is keyed on it. |
53
52
  | `core/buffer.ts` | `vs/base/common/buffer.ts` | The original carries streaming and chunked readers via `stream` and `lazy`, which nothing here uses. The rewrite is a `Uint8Array` wrapper on `TextEncoder`/`TextDecoder`. Its *instance* surface is not trimmed: a buffer built here is passed to the editor's `IFileService.writeFile`, and the two classes have to stay structurally interchangeable. |
54
53
  | `core/process.ts` | `vs/base/common/process.ts` | `path.ts` needs `cwd`, `env` and `platform`. The original reads them through VS Code's sandbox bridge, which is absent here; a renderer falls through to the web branch and gets the same answers. |
@@ -1 +1 @@
1
- {"version":3,"file":"cleanSlateAgentExecutionPhase.d.ts","sourceRoot":"","sources":["../../src/agent/cleanSlateAgentExecutionPhase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleanSlateAgentExecutionPhase.d.ts","sourceRoot":"","sources":["../../src/agent/cleanSlateAgentExecutionPhase.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,13 @@ export class CleanSlateAgentExecutionPhase {
27
27
  }
28
28
  }
29
29
  if (toolName === 'spawn_worker') {
30
- return 'Nested worker spawning is disabled inside phase workers.';
30
+ // The normal agent also runs inside the execution-phase loop, so phase
31
+ // alone cannot tell us whether this is a child. Hosts expose delegation
32
+ // only on runtimes that may spawn; child runtimes remove the tool.
33
+ const canSpawnChild = this.options.getTools?.().some(tool => tool.name === 'spawn_worker') === true;
34
+ if (!canSpawnChild) {
35
+ return 'Nested worker spawning is disabled inside child agents.';
36
+ }
31
37
  }
32
38
  return undefined;
33
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cleanSlateAgentExecutionPhase.js","sourceRoot":"","sources":["../../src/agent/cleanSlateAgentExecutionPhase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleanSlateAgentExecutionPhase.js","sourceRoot":"","sources":["../../src/agent/cleanSlateAgentExecutionPhase.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,7 @@ export declare class CleanSlateExecutionQueryEngine {
86
86
  getExecutionLoopSettings(): IExecutionLoopSettings;
87
87
  run(messages: IChatMessage[], originalUserMessage: string, uiMode: string, initialContext: any, mentionedFiles: string, activeThreadService: CleanSlateThreadService, activeTaskSessionService: CleanSlateTaskSessionService, signal?: AbortSignal, runOptions?: IExecutionQueryRunOptions): AsyncIterable<CleanSlateStreamPart>;
88
88
  private shouldPauseForQuestionResult;
89
+ private isUserCancelledExecution;
89
90
  private pauseForQuestion;
90
91
  private waitForNextModelTurn;
91
92
  private recordModelTurnCompleted;
@@ -1 +1 @@
1
- {"version":3,"file":"cleanSlateExecutionQuery.d.ts","sourceRoot":"","sources":["../../src/agent/cleanSlateExecutionQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleanSlateExecutionQuery.d.ts","sourceRoot":"","sources":["../../src/agent/cleanSlateExecutionQuery.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ import { orderUserTurnLast } from './cleanSlateProviderMessageOrder.js';
22
22
  import { CleanSlateStreamingToolExecutor } from './cleanSlateStreamingToolExecutor.js';
23
23
  import { CleanSlateExecutionEditPolicy } from './cleanSlateExecutionEditPolicy.js';
24
24
  import { cancellationTokenFromAbortSignal } from '../services/cleanSlateCancellation.js';
25
+ import { CancellationTokenSource } from '../core/cancellation.js';
25
26
  import { estimateCleanSlateFileReadTokens } from '../tools/cleanSlateFileReadPolicy.js';
26
27
  export class CleanSlateExecutionQueryEngine {
27
28
  /** The check the loop runs itself after mutations. */
@@ -133,6 +134,7 @@ export class CleanSlateExecutionQueryEngine {
133
134
  let finishedDuringModelStream = false;
134
135
  let concludedWithPlanSignal = false;
135
136
  let completedBlockingToolDuringModelStream = false;
137
+ let sawFinalAnswerText = false;
136
138
  let nextToolIndex = 0;
137
139
  const streamingToolExecutor = new CleanSlateStreamingToolExecutor({
138
140
  isConcurrencySafe: toolCall => this.isParallelToolCall(toolCall),
@@ -156,103 +158,115 @@ export class CleanSlateExecutionQueryEngine {
156
158
  yield { type: 'assistant_turn_start', phase: runPhase, turnId, turnIndex: visibleTurnIndex };
157
159
  yield { type: 'context_usage', turnId, ...contextUsage };
158
160
  this.refreshFileReadBudget(providerMessages, turnNativeTools);
159
- const response = await this.options.cleanSlateService.chat(providerMessages, {
160
- tools: turnNativeTools,
161
- sessionId: this.options.getSessionId?.(),
162
- cancellationToken: cancellationTokenFromAbortSignal(signal)
163
- });
164
- const responseIterator = response[Symbol.asyncIterator]();
165
- let nextModelPart = responseIterator.next();
166
- let nextToolEvent;
167
- const collectToolEventParts = (event) => {
168
- if (!event) {
169
- return [];
170
- }
171
- if (event.type === 'parts') {
172
- return event.batch.parts;
173
- }
174
- yieldedStreamingExecutions.push(event.execution);
175
- if (!this.isParallelToolCall(event.execution.toolCall)) {
176
- completedBlockingToolDuringModelStream = true;
177
- }
178
- return event.execution.parts;
179
- };
180
- while (!signal?.aborted) {
181
- if (!nextToolEvent && streamingToolExecutor.hasUnfinishedWork()) {
182
- nextToolEvent = streamingToolExecutor.nextEvent();
183
- }
184
- const next = await Promise.race([
185
- nextModelPart.then(result => ({ type: 'model', result })),
186
- ...(nextToolEvent ? [nextToolEvent.then(event => ({ type: 'tool', event }))] : [])
187
- ]);
188
- if (next.type === 'tool') {
189
- nextToolEvent = undefined;
190
- for (const executionPart of collectToolEventParts(next.event)) {
191
- yield executionPart;
192
- if (executionPart.type === 'task_complete' || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED)) {
193
- finishedDuringModelStream = true;
194
- concludedWithPlanSignal = concludedWithPlanSignal || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED);
161
+ const modelCancellation = new CancellationTokenSource(cancellationTokenFromAbortSignal(signal));
162
+ try {
163
+ const response = await this.options.cleanSlateService.chat(providerMessages, {
164
+ tools: turnNativeTools,
165
+ sessionId: this.options.getSessionId?.(),
166
+ cancellationToken: modelCancellation.token
167
+ });
168
+ const responseIterator = response[Symbol.asyncIterator]();
169
+ let nextModelPart = responseIterator.next();
170
+ let nextToolEvent;
171
+ const collectToolEventParts = (event) => {
172
+ if (!event) {
173
+ return [];
174
+ }
175
+ if (event.type === 'parts') {
176
+ return event.batch.parts;
177
+ }
178
+ yieldedStreamingExecutions.push(event.execution);
179
+ if (!this.isParallelToolCall(event.execution.toolCall)) {
180
+ completedBlockingToolDuringModelStream = true;
181
+ }
182
+ return event.execution.parts;
183
+ };
184
+ while (!signal?.aborted) {
185
+ if (!nextToolEvent && streamingToolExecutor.hasUnfinishedWork()) {
186
+ nextToolEvent = streamingToolExecutor.nextEvent();
187
+ }
188
+ const next = await Promise.race([
189
+ nextModelPart.then(result => ({ type: 'model', result })),
190
+ ...(nextToolEvent ? [nextToolEvent.then(event => ({ type: 'tool', event }))] : [])
191
+ ]);
192
+ if (next.type === 'tool') {
193
+ nextToolEvent = undefined;
194
+ for (const executionPart of collectToolEventParts(next.event)) {
195
+ yield executionPart;
196
+ if (executionPart.type === 'task_complete' || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED)) {
197
+ finishedDuringModelStream = true;
198
+ concludedWithPlanSignal = concludedWithPlanSignal || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED);
199
+ }
195
200
  }
201
+ if (finishedDuringModelStream || completedBlockingToolDuringModelStream) {
202
+ // return() queues behind an outstanding next(). Close the
203
+ // model transport first, without cancelling the worker/run.
204
+ modelCancellation.cancel();
205
+ if (typeof responseIterator.return === 'function') {
206
+ await responseIterator.return().catch(() => undefined);
207
+ }
208
+ break;
209
+ }
210
+ continue;
211
+ }
212
+ const modelResult = next.result;
213
+ if (modelResult.done) {
214
+ break;
215
+ }
216
+ const part = modelResult.value;
217
+ nextModelPart = responseIterator.next();
218
+ if (signal?.aborted) {
219
+ break;
220
+ }
221
+ if (part.type === 'transport_status') {
222
+ yield part;
196
223
  }
197
- if (finishedDuringModelStream || completedBlockingToolDuringModelStream) {
198
- if (typeof responseIterator.return === 'function') {
199
- await responseIterator.return();
224
+ else if (part.type === 'reasoning') {
225
+ yield { type: 'reasoning', content: part.content };
226
+ }
227
+ else if (part.type === 'text') {
228
+ currentResponse += part.content;
229
+ if (part.phase === 'final_answer' && part.content.trim().length > 0) {
230
+ sawFinalAnswerText = true;
200
231
  }
232
+ // Every normal text block renders, even when a tool call
233
+ // follows it. Phase is presentation metadata, never
234
+ // permission for the host to discard assistant text.
235
+ yield {
236
+ type: 'chat_text',
237
+ content: part.content,
238
+ kind: part.phase === 'commentary'
239
+ ? 'commentary'
240
+ : part.phase === 'final_answer' ? 'final_answer' : 'assistant'
241
+ };
242
+ }
243
+ else if (part.type === 'tool_call') {
244
+ const streamedToolCall = this.parseStreamedToolCall(part.call, toolCallLedger);
245
+ if (streamedToolCall) {
246
+ const key = toolCallLedger.getTurnKey(streamedToolCall);
247
+ if (!streamedToolCallKeys.has(key) && toolCallLedger.shouldAcceptInCurrentTurn(streamedToolCall)) {
248
+ streamedToolCallKeys.add(key);
249
+ streamedToolCalls.push(streamedToolCall);
250
+ streamingToolExecutor.addTool(streamedToolCall, nextToolIndex++);
251
+ }
252
+ }
253
+ }
254
+ if (finishedDuringModelStream) {
201
255
  break;
202
256
  }
203
- continue;
204
- }
205
- const modelResult = next.result;
206
- if (modelResult.done) {
207
- break;
208
- }
209
- const part = modelResult.value;
210
- nextModelPart = responseIterator.next();
211
- if (signal?.aborted) {
212
- break;
213
- }
214
- if (part.type === 'transport_status') {
215
- yield part;
216
- }
217
- else if (part.type === 'reasoning') {
218
- yield { type: 'reasoning', content: part.content };
219
257
  }
220
- else if (part.type === 'text') {
221
- currentResponse += part.content;
222
- // Every normal text block renders, even when a tool call
223
- // follows it. Phase is presentation metadata, never
224
- // permission for the host to discard assistant text.
225
- yield {
226
- type: 'chat_text',
227
- content: part.content,
228
- kind: part.phase === 'commentary'
229
- ? 'commentary'
230
- : part.phase === 'final_answer' ? 'final_answer' : 'assistant'
231
- };
232
- }
233
- else if (part.type === 'tool_call') {
234
- const streamedToolCall = this.parseStreamedToolCall(part.call, toolCallLedger);
235
- if (streamedToolCall) {
236
- const key = toolCallLedger.getTurnKey(streamedToolCall);
237
- if (!streamedToolCallKeys.has(key) && toolCallLedger.shouldAcceptInCurrentTurn(streamedToolCall)) {
238
- streamedToolCallKeys.add(key);
239
- streamedToolCalls.push(streamedToolCall);
240
- streamingToolExecutor.addTool(streamedToolCall, nextToolIndex++);
258
+ if (!finishedDuringModelStream && nextToolEvent) {
259
+ for (const executionPart of collectToolEventParts(await nextToolEvent)) {
260
+ yield executionPart;
261
+ if (executionPart.type === 'task_complete' || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED)) {
262
+ finishedDuringModelStream = true;
263
+ concludedWithPlanSignal = concludedWithPlanSignal || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED);
241
264
  }
242
265
  }
243
266
  }
244
- if (finishedDuringModelStream) {
245
- break;
246
- }
247
267
  }
248
- if (!finishedDuringModelStream && nextToolEvent) {
249
- for (const executionPart of collectToolEventParts(await nextToolEvent)) {
250
- yield executionPart;
251
- if (executionPart.type === 'task_complete' || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED)) {
252
- finishedDuringModelStream = true;
253
- concludedWithPlanSignal = concludedWithPlanSignal || (executionPart.type === 'tool_result' && executionPart.toolName === PHASE_CONCLUSION_SIGNAL_PLAN_CREATED);
254
- }
255
- }
268
+ finally {
269
+ modelCancellation.dispose(true);
256
270
  }
257
271
  yield { type: 'assistant_turn_complete', phase: runPhase, turnId, turnIndex: visibleTurnIndex };
258
272
  this.recordModelTurnCompleted();
@@ -282,6 +296,7 @@ export class CleanSlateExecutionQueryEngine {
282
296
  let shouldRestartAfterMutation = false;
283
297
  let sawConfirmedMutation = false;
284
298
  let sawUserCancelledCommand = false;
299
+ let allToolCallsSucceeded = true;
285
300
  let sawToolCallLoop = false;
286
301
  const recoveryPrompts = [];
287
302
  for (const execution of yieldedStreamingExecutions) {
@@ -289,7 +304,10 @@ export class CleanSlateExecutionQueryEngine {
289
304
  return;
290
305
  }
291
306
  messages.push(this.nativeToolTranscript.buildToolResultMessage(execution.toolCall, execution.result));
292
- if (this.editPolicy.isUserCancelledCommandResult(execution.toolCall, execution.result)) {
307
+ if (execution.result?.success === false) {
308
+ allToolCallsSucceeded = false;
309
+ }
310
+ if (this.isUserCancelledExecution(execution.toolCall, execution.result)) {
293
311
  sawUserCancelledCommand = true;
294
312
  }
295
313
  if (this.isToolCallLoopResult(execution.result)) {
@@ -340,7 +358,10 @@ export class CleanSlateExecutionQueryEngine {
340
358
  return;
341
359
  }
342
360
  messages.push(this.nativeToolTranscript.buildToolResultMessage(execution.toolCall, execution.result));
343
- if (this.editPolicy.isUserCancelledCommandResult(execution.toolCall, execution.result)) {
361
+ if (execution.result?.success === false) {
362
+ allToolCallsSucceeded = false;
363
+ }
364
+ if (this.isUserCancelledExecution(execution.toolCall, execution.result)) {
344
365
  sawUserCancelledCommand = true;
345
366
  }
346
367
  if (this.isToolCallLoopResult(execution.result)) {
@@ -372,6 +393,27 @@ export class CleanSlateExecutionQueryEngine {
372
393
  activeTaskSessionService.recordAssistantSummary(stopMessage);
373
394
  return;
374
395
  }
396
+ // Some native transports can return successful read-only tool calls and
397
+ // a definitive final-answer block in the same assistant turn. The final
398
+ // phase is an explicit stop signal; requesting another model turn here
399
+ // repeats the investigation indefinitely and keeps the UI in Stop mode.
400
+ if (sawFinalAnswerText && allToolCallsSucceeded && !shouldRestartAfterMutation && recoveryPrompts.length === 0) {
401
+ if (markCompletedOnFinish) {
402
+ activeTaskSessionService.markCompleted();
403
+ }
404
+ messages.push({ role: 'assistant', content: currentResponse });
405
+ yield {
406
+ type: 'task_complete',
407
+ result: {
408
+ phase: AgentPhase.EXECUTION,
409
+ executionFlow,
410
+ verified: true,
411
+ completionSource: 'host_finalized',
412
+ completionState: this.buildCompletionState(guardState, currentResponse, queryState.plannedFileTargets, queryState.pullRequest)
413
+ }
414
+ };
415
+ return;
416
+ }
375
417
  if (shouldRestartAfterMutation) {
376
418
  if (sawConfirmedMutation && recoveryPrompts.length === 0) {
377
419
  queryState.pendingRecoveryPrompt = undefined;
@@ -546,6 +588,10 @@ export class CleanSlateExecutionQueryEngine {
546
588
  activeTaskSessionService.recordAssistantSummary(summary);
547
589
  return true;
548
590
  }
591
+ isUserCancelledExecution(toolCall, result) {
592
+ return this.editPolicy.isUserCancelledCommandResult(toolCall, result)
593
+ || result?.code === 'user_cancelled';
594
+ }
549
595
  pauseForQuestion(toolCall, result, activeTaskSessionService) {
550
596
  if (!this.shouldPauseForQuestionResult(toolCall.toolName, result, toolCall.input?.summary, activeTaskSessionService)) {
551
597
  return false;