@supen-ai/cli 1.3.3 → 1.4.0

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 (138) hide show
  1. package/README.md +1 -1
  2. package/daemon/dist/agent-sdk/driver-output-ui.d.ts +1 -1
  3. package/daemon/dist/agent-sdk/driver-output-ui.d.ts.map +1 -1
  4. package/daemon/dist/agent-sdk/driver-output-ui.js +10 -275
  5. package/daemon/dist/agent-sdk/driver-output-ui.js.map +1 -1
  6. package/daemon/dist/agent-sdk/drivers/codex-app-server-driver.d.ts.map +1 -1
  7. package/daemon/dist/agent-sdk/drivers/codex-app-server-driver.js +0 -2
  8. package/daemon/dist/agent-sdk/drivers/codex-app-server-driver.js.map +1 -1
  9. package/daemon/dist/agent-sdk/drivers/registry.d.ts +2 -8
  10. package/daemon/dist/agent-sdk/drivers/registry.d.ts.map +1 -1
  11. package/daemon/dist/agent-sdk/drivers/registry.js +7 -138
  12. package/daemon/dist/agent-sdk/drivers/registry.js.map +1 -1
  13. package/daemon/dist/agent-sdk/index.d.ts +0 -11
  14. package/daemon/dist/agent-sdk/index.d.ts.map +1 -1
  15. package/daemon/dist/agent-sdk/index.js +0 -11
  16. package/daemon/dist/agent-sdk/index.js.map +1 -1
  17. package/daemon/dist/agent-sdk/session-manager.d.ts +1 -1
  18. package/daemon/dist/agent-sdk/session-manager.d.ts.map +1 -1
  19. package/daemon/dist/agent-sdk/session-manager.js +1 -2
  20. package/daemon/dist/agent-sdk/session-manager.js.map +1 -1
  21. package/daemon/dist/channels/acp.d.ts.map +1 -1
  22. package/daemon/dist/channels/acp.js +2 -3
  23. package/daemon/dist/channels/acp.js.map +1 -1
  24. package/daemon/dist/channels/http-routes.js +6 -6
  25. package/daemon/dist/channels/http-routes.js.map +1 -1
  26. package/daemon/dist/core/config.d.ts +1 -1
  27. package/daemon/dist/core/config.d.ts.map +1 -1
  28. package/daemon/dist/core/config.js +1 -1
  29. package/daemon/dist/core/config.js.map +1 -1
  30. package/daemon/dist/core/cortex.d.ts.map +1 -1
  31. package/daemon/dist/core/cortex.js +90 -222
  32. package/daemon/dist/core/cortex.js.map +1 -1
  33. package/daemon/dist/core/env.js +1 -1
  34. package/daemon/dist/core/gateway.d.ts.map +1 -1
  35. package/daemon/dist/core/gateway.js +1 -11
  36. package/daemon/dist/core/gateway.js.map +1 -1
  37. package/daemon/dist/core/loop-guard.d.ts +1 -1
  38. package/daemon/dist/core/loop-guard.js +1 -1
  39. package/daemon/dist/core/protocol-adapter.d.ts +1 -3
  40. package/daemon/dist/core/protocol-adapter.d.ts.map +1 -1
  41. package/daemon/dist/core/protocol-adapter.js +1 -3
  42. package/daemon/dist/core/protocol-adapter.js.map +1 -1
  43. package/daemon/dist/core/thread-runtime-state.d.ts.map +1 -1
  44. package/daemon/dist/core/thread-runtime-state.js +1 -37
  45. package/daemon/dist/core/thread-runtime-state.js.map +1 -1
  46. package/daemon/dist/http/routes/rpc.d.ts.map +1 -1
  47. package/daemon/dist/http/routes/rpc.js +16 -1
  48. package/daemon/dist/http/routes/rpc.js.map +1 -1
  49. package/daemon/dist/http/routes/system.d.ts +2 -0
  50. package/daemon/dist/http/routes/system.d.ts.map +1 -1
  51. package/daemon/dist/http/routes/system.js +487 -482
  52. package/daemon/dist/http/routes/system.js.map +1 -1
  53. package/daemon/dist/mcp/index.d.ts +2 -6
  54. package/daemon/dist/mcp/index.d.ts.map +1 -1
  55. package/daemon/dist/mcp/index.js +2 -6
  56. package/daemon/dist/mcp/index.js.map +1 -1
  57. package/daemon/dist/mcp/tools.d.ts +5 -7
  58. package/daemon/dist/mcp/tools.d.ts.map +1 -1
  59. package/daemon/dist/mcp/tools.js +4 -8
  60. package/daemon/dist/mcp/tools.js.map +1 -1
  61. package/daemon/dist/tools/built-ins.d.ts +9 -84
  62. package/daemon/dist/tools/built-ins.d.ts.map +1 -1
  63. package/daemon/dist/tools/built-ins.js +3 -3
  64. package/daemon/dist/tools/built-ins.js.map +1 -1
  65. package/daemon/dist/tools/local-tool.d.ts +7 -0
  66. package/daemon/dist/tools/local-tool.d.ts.map +1 -0
  67. package/daemon/dist/tools/local-tool.js +4 -0
  68. package/daemon/dist/tools/local-tool.js.map +1 -0
  69. package/daemon/dist/tools/skill-tools.d.ts +5 -8
  70. package/daemon/dist/tools/skill-tools.d.ts.map +1 -1
  71. package/daemon/dist/tools/skill-tools.js +6 -10
  72. package/daemon/dist/tools/skill-tools.js.map +1 -1
  73. package/daemon/package.json +6 -9
  74. package/dist/backend.js +5 -5
  75. package/dist/backend.js.map +1 -1
  76. package/dist/bootstrap.js +2 -6
  77. package/dist/bootstrap.js.map +1 -1
  78. package/dist/computer.js +1 -1
  79. package/dist/doctor.js +1 -1
  80. package/dist/doctor.js.map +1 -1
  81. package/dist/index.js +1 -1
  82. package/dist/repl.js +6 -66
  83. package/dist/repl.js.map +1 -1
  84. package/dist/service.js +2 -3
  85. package/dist/service.js.map +1 -1
  86. package/package.json +3 -6
  87. package/daemon/dist/agent-sdk/drivers/acpx-driver.d.ts +0 -21
  88. package/daemon/dist/agent-sdk/drivers/acpx-driver.d.ts.map +0 -1
  89. package/daemon/dist/agent-sdk/drivers/acpx-driver.js +0 -488
  90. package/daemon/dist/agent-sdk/drivers/acpx-driver.js.map +0 -1
  91. package/daemon/dist/agent-sdk/drivers/claude-acpx-driver.d.ts +0 -5
  92. package/daemon/dist/agent-sdk/drivers/claude-acpx-driver.d.ts.map +0 -1
  93. package/daemon/dist/agent-sdk/drivers/claude-acpx-driver.js +0 -7
  94. package/daemon/dist/agent-sdk/drivers/claude-acpx-driver.js.map +0 -1
  95. package/daemon/dist/agent-sdk/drivers/claude-cli-direct-driver.d.ts +0 -20
  96. package/daemon/dist/agent-sdk/drivers/claude-cli-direct-driver.d.ts.map +0 -1
  97. package/daemon/dist/agent-sdk/drivers/claude-cli-direct-driver.js +0 -264
  98. package/daemon/dist/agent-sdk/drivers/claude-cli-direct-driver.js.map +0 -1
  99. package/daemon/dist/agent-sdk/drivers/claude-code-driver.d.ts +0 -29
  100. package/daemon/dist/agent-sdk/drivers/claude-code-driver.d.ts.map +0 -1
  101. package/daemon/dist/agent-sdk/drivers/claude-code-driver.js +0 -24
  102. package/daemon/dist/agent-sdk/drivers/claude-code-driver.js.map +0 -1
  103. package/daemon/dist/agent-sdk/drivers/claude-code-events.d.ts +0 -25
  104. package/daemon/dist/agent-sdk/drivers/claude-code-events.d.ts.map +0 -1
  105. package/daemon/dist/agent-sdk/drivers/claude-code-events.js +0 -58
  106. package/daemon/dist/agent-sdk/drivers/claude-code-events.js.map +0 -1
  107. package/daemon/dist/agent-sdk/drivers/claude-code-items.d.ts +0 -41
  108. package/daemon/dist/agent-sdk/drivers/claude-code-items.d.ts.map +0 -1
  109. package/daemon/dist/agent-sdk/drivers/claude-code-items.js +0 -77
  110. package/daemon/dist/agent-sdk/drivers/claude-code-items.js.map +0 -1
  111. package/daemon/dist/agent-sdk/drivers/codex-acpx-driver.d.ts +0 -5
  112. package/daemon/dist/agent-sdk/drivers/codex-acpx-driver.d.ts.map +0 -1
  113. package/daemon/dist/agent-sdk/drivers/codex-acpx-driver.js +0 -7
  114. package/daemon/dist/agent-sdk/drivers/codex-acpx-driver.js.map +0 -1
  115. package/daemon/dist/agent-sdk/drivers/codex-exec-driver.d.ts +0 -28
  116. package/daemon/dist/agent-sdk/drivers/codex-exec-driver.d.ts.map +0 -1
  117. package/daemon/dist/agent-sdk/drivers/codex-exec-driver.js +0 -219
  118. package/daemon/dist/agent-sdk/drivers/codex-exec-driver.js.map +0 -1
  119. package/daemon/dist/agent-sdk/drivers/codex-exec-events.d.ts +0 -9
  120. package/daemon/dist/agent-sdk/drivers/codex-exec-events.d.ts.map +0 -1
  121. package/daemon/dist/agent-sdk/drivers/codex-exec-events.js +0 -82
  122. package/daemon/dist/agent-sdk/drivers/codex-exec-events.js.map +0 -1
  123. package/daemon/dist/agent-sdk/drivers/codex-exec-items.d.ts +0 -9
  124. package/daemon/dist/agent-sdk/drivers/codex-exec-items.d.ts.map +0 -1
  125. package/daemon/dist/agent-sdk/drivers/codex-exec-items.js +0 -86
  126. package/daemon/dist/agent-sdk/drivers/codex-exec-items.js.map +0 -1
  127. package/daemon/dist/agent-sdk/drivers/gemini-cli-driver.d.ts +0 -17
  128. package/daemon/dist/agent-sdk/drivers/gemini-cli-driver.d.ts.map +0 -1
  129. package/daemon/dist/agent-sdk/drivers/gemini-cli-driver.js +0 -255
  130. package/daemon/dist/agent-sdk/drivers/gemini-cli-driver.js.map +0 -1
  131. package/daemon/dist/core/sdk-wrapper.d.ts +0 -36
  132. package/daemon/dist/core/sdk-wrapper.d.ts.map +0 -1
  133. package/daemon/dist/core/sdk-wrapper.js +0 -533
  134. package/daemon/dist/core/sdk-wrapper.js.map +0 -1
  135. package/daemon/dist/skills/claude_code.d.ts +0 -25
  136. package/daemon/dist/skills/claude_code.d.ts.map +0 -1
  137. package/daemon/dist/skills/claude_code.js +0 -49
  138. package/daemon/dist/skills/claude_code.js.map +0 -1
@@ -1,488 +0,0 @@
1
- import { spawn, spawnSync } from 'node:child_process';
2
- import { withRuntimeSpaceEnv } from '../../core/space-env.js';
3
- function buildDriverEnv(input) {
4
- return {
5
- ...withRuntimeSpaceEnv(process.env),
6
- ...input?.env,
7
- };
8
- }
9
- function resolveAcpxLauncher() {
10
- const override = process.env.SUPEN_ACPX_COMMAND?.trim();
11
- if (override === 'acpx') {
12
- return { command: 'acpx', baseArgs: [] };
13
- }
14
- if (override === 'npx') {
15
- return { command: 'npx', baseArgs: ['-y', 'acpx@latest'] };
16
- }
17
- const local = spawnSync('sh', ['-c', 'command -v acpx'], {
18
- encoding: 'utf8',
19
- timeout: 2_000,
20
- });
21
- if (local.status === 0) {
22
- return { command: 'acpx', baseArgs: [] };
23
- }
24
- return { command: 'npx', baseArgs: ['-y', 'acpx@latest'] };
25
- }
26
- function acpxSessionName(sessionId) {
27
- return sessionId;
28
- }
29
- function normalizeAcpxContentText(content) {
30
- if (typeof content === 'string')
31
- return content;
32
- if (!content || typeof content !== 'object')
33
- return '';
34
- if (Array.isArray(content)) {
35
- return content
36
- .map((entry) => normalizeAcpxContentText(entry))
37
- .filter(Boolean)
38
- .join('');
39
- }
40
- const record = content;
41
- if (typeof record.text === 'string')
42
- return record.text;
43
- if (typeof record.markdown === 'string')
44
- return record.markdown;
45
- if (typeof record.content === 'string')
46
- return record.content;
47
- return '';
48
- }
49
- function extractToolCall(update) {
50
- const single = update.toolCall;
51
- if (single && typeof single === 'object')
52
- return single;
53
- const many = update.toolCalls;
54
- if (Array.isArray(many) && many[0] && typeof many[0] === 'object') {
55
- return many[0];
56
- }
57
- return null;
58
- }
59
- function extractToolResult(update) {
60
- const single = update.toolResult;
61
- if (single && typeof single === 'object')
62
- return single;
63
- const many = update.toolResults;
64
- if (Array.isArray(many) && many[0] && typeof many[0] === 'object') {
65
- return many[0];
66
- }
67
- return null;
68
- }
69
- function acpxStopReasonToEvent(sessionId, turnId, stopReason) {
70
- const type = stopReason === 'cancelled'
71
- ? 'turn.cancelled'
72
- : stopReason === 'error'
73
- ? 'turn.failed'
74
- : 'turn.completed';
75
- return {
76
- id: `${turnId}:${type}`,
77
- sessionId,
78
- turnId,
79
- source: 'engine',
80
- type,
81
- timestamp: new Date().toISOString(),
82
- payload: { stopReason },
83
- };
84
- }
85
- export function normalizeAcpxOutput(input) {
86
- const output = input.output;
87
- if (typeof output?.method === 'string' && output.method === 'session/update') {
88
- const params = output.params && typeof output.params === 'object'
89
- ? output.params
90
- : {};
91
- const updateKind = typeof params.sessionUpdate === 'string' ? params.sessionUpdate : '';
92
- if (updateKind === 'agent_message_chunk') {
93
- const text = normalizeAcpxContentText(params.content);
94
- if (!text)
95
- return [];
96
- return [{
97
- kind: 'session-event',
98
- event: {
99
- id: `${input.turnId}:text:${Date.now()}`,
100
- sessionId: input.sessionId,
101
- turnId: input.turnId,
102
- source: 'engine',
103
- type: 'text.delta',
104
- timestamp: new Date().toISOString(),
105
- payload: { text },
106
- },
107
- }];
108
- }
109
- if (updateKind === 'agent_message') {
110
- const text = normalizeAcpxContentText(params.content ?? params.message);
111
- if (!text)
112
- return [];
113
- return [{
114
- kind: 'turn-item',
115
- item: {
116
- id: `${input.turnId}:message:${Date.now()}`,
117
- sessionId: input.sessionId,
118
- turnId: input.turnId,
119
- type: 'message',
120
- role: 'assistant',
121
- payload: { text },
122
- },
123
- }];
124
- }
125
- if (updateKind === 'tool_call') {
126
- const toolCall = extractToolCall(params);
127
- if (!toolCall)
128
- return [{ kind: 'raw', raw: output }];
129
- const toolCallId = typeof toolCall.id === 'string'
130
- ? toolCall.id
131
- : typeof toolCall.toolCallId === 'string'
132
- ? toolCall.toolCallId
133
- : `${input.turnId}:tool:${Date.now()}`;
134
- const toolName = typeof toolCall.title === 'string'
135
- ? toolCall.title
136
- : typeof toolCall.name === 'string'
137
- ? toolCall.name
138
- : 'tool';
139
- const toolInput = toolCall.input ?? toolCall.arguments ?? null;
140
- return [
141
- {
142
- kind: 'session-event',
143
- event: {
144
- id: `${toolCallId}:started`,
145
- sessionId: input.sessionId,
146
- turnId: input.turnId,
147
- source: 'engine',
148
- type: 'tool.started',
149
- timestamp: new Date().toISOString(),
150
- payload: { toolCallId, toolName, input: toolInput },
151
- },
152
- },
153
- {
154
- kind: 'turn-item',
155
- item: {
156
- id: toolCallId,
157
- sessionId: input.sessionId,
158
- turnId: input.turnId,
159
- type: 'tool-call',
160
- role: 'assistant',
161
- payload: { toolCallId, toolName, input: toolInput },
162
- },
163
- },
164
- ];
165
- }
166
- if (updateKind === 'tool_result') {
167
- const toolResult = extractToolResult(params);
168
- if (!toolResult)
169
- return [{ kind: 'raw', raw: output }];
170
- const toolCallId = typeof toolResult.toolCallId === 'string'
171
- ? toolResult.toolCallId
172
- : typeof toolResult.id === 'string'
173
- ? toolResult.id
174
- : `${input.turnId}:tool:${Date.now()}`;
175
- const resultText = normalizeAcpxContentText(toolResult.content) ||
176
- (typeof toolResult.output === 'string' ? toolResult.output : '');
177
- const isError = toolResult.isError === true || toolResult.status === 'failed';
178
- return [
179
- {
180
- kind: 'session-event',
181
- event: {
182
- id: `${toolCallId}:${isError ? 'failed' : 'completed'}`,
183
- sessionId: input.sessionId,
184
- turnId: input.turnId,
185
- source: 'engine',
186
- type: isError ? 'tool.failed' : 'tool.completed',
187
- timestamp: new Date().toISOString(),
188
- payload: { toolCallId, output: resultText, isError },
189
- },
190
- },
191
- {
192
- kind: 'turn-item',
193
- item: {
194
- id: `${toolCallId}:result`,
195
- sessionId: input.sessionId,
196
- turnId: input.turnId,
197
- type: 'tool-result',
198
- role: 'system',
199
- payload: { toolCallId, output: resultText, isError },
200
- },
201
- },
202
- ];
203
- }
204
- }
205
- const result = output.result;
206
- if (result && typeof result === 'object' && typeof result.stopReason === 'string') {
207
- return [{
208
- kind: 'session-event',
209
- event: acpxStopReasonToEvent(input.sessionId, input.turnId, result.stopReason),
210
- }];
211
- }
212
- if (output.error && typeof output.error === 'object') {
213
- const message = typeof output.error.message === 'string'
214
- ? output.error.message
215
- : 'ACP prompt failed';
216
- return [{
217
- kind: 'session-event',
218
- event: {
219
- id: `${input.turnId}:failed:${Date.now()}`,
220
- sessionId: input.sessionId,
221
- turnId: input.turnId,
222
- source: 'engine',
223
- type: 'turn.failed',
224
- timestamp: new Date().toISOString(),
225
- payload: { message },
226
- },
227
- }];
228
- }
229
- return [{ kind: 'raw', raw: output }];
230
- }
231
- async function runAcpxJsonQuery(args, cwd, env) {
232
- const launcher = resolveAcpxLauncher();
233
- const child = spawn(launcher.command, [...launcher.baseArgs, ...args], {
234
- cwd,
235
- stdio: ['ignore', 'pipe', 'pipe'],
236
- env: buildDriverEnv(env ? { env } : undefined),
237
- });
238
- let stdout = '';
239
- let stderr = '';
240
- child.stdout.on('data', (chunk) => {
241
- stdout += String(chunk);
242
- });
243
- child.stderr.on('data', (chunk) => {
244
- stderr += String(chunk);
245
- });
246
- const code = await new Promise((resolve) => child.on('close', resolve));
247
- const trimmed = stdout.trim();
248
- if (trimmed) {
249
- try {
250
- return JSON.parse(trimmed);
251
- }
252
- catch {
253
- // fall through to the exit-code error below
254
- }
255
- }
256
- if (code !== 0) {
257
- const message = stderr.trim() || stdout.trim() || `acpx query exited with code ${code ?? -1}`;
258
- throw new Error(message);
259
- }
260
- return {};
261
- }
262
- function hasAcpxSessionInfo(record) {
263
- return Boolean(record.agentSessionId ||
264
- record.acpxSessionId ||
265
- record.acpxRecordId ||
266
- record.sessionId ||
267
- record.id);
268
- }
269
- function isNoSessionError(record) {
270
- const error = record.error;
271
- const data = error && typeof error === 'object' && error.data && typeof error.data === 'object'
272
- ? error.data
273
- : null;
274
- return data?.acpxCode === 'NO_SESSION';
275
- }
276
- class AcpxDriverSession {
277
- agent;
278
- input;
279
- pendingPrompt = null;
280
- activeChild = null;
281
- sessionInfo = null;
282
- constructor(agent, input) {
283
- this.agent = agent;
284
- this.input = input;
285
- }
286
- async send(message) {
287
- this.pendingPrompt = message;
288
- }
289
- async ensureSession() {
290
- if (this.sessionInfo)
291
- return this.sessionInfo;
292
- const sessionName = acpxSessionName(this.input.sessionId);
293
- const ensured = await runAcpxJsonQuery([
294
- '--cwd',
295
- this.input.cwd,
296
- '--format',
297
- 'json',
298
- '--json-strict',
299
- this.agent,
300
- 'sessions',
301
- 'ensure',
302
- '--name',
303
- sessionName,
304
- ], this.input.cwd, this.input.env);
305
- if (!hasAcpxSessionInfo(ensured) && !isNoSessionError(ensured)) {
306
- this.sessionInfo = {
307
- id: sessionName,
308
- };
309
- return this.sessionInfo;
310
- }
311
- if (isNoSessionError(ensured)) {
312
- this.sessionInfo = await runAcpxJsonQuery([
313
- '--cwd',
314
- this.input.cwd,
315
- '--format',
316
- 'json',
317
- '--json-strict',
318
- this.agent,
319
- 'sessions',
320
- 'new',
321
- '--name',
322
- sessionName,
323
- ], this.input.cwd, this.input.env);
324
- return this.sessionInfo;
325
- }
326
- this.sessionInfo = ensured;
327
- return this.sessionInfo;
328
- }
329
- async prepare() {
330
- await this.ensureSession();
331
- }
332
- async *stream() {
333
- if (!this.pendingPrompt)
334
- return;
335
- const prompt = typeof this.pendingPrompt === 'string' ? this.pendingPrompt : this.pendingPrompt.text;
336
- this.pendingPrompt = null;
337
- const sessionInfo = await this.ensureSession();
338
- const sessionName = acpxSessionName(this.input.sessionId);
339
- const launcher = resolveAcpxLauncher();
340
- const args = [
341
- ...launcher.baseArgs,
342
- '--cwd',
343
- this.input.cwd,
344
- '--format',
345
- 'json',
346
- '--json-strict',
347
- '--approve-all',
348
- this.agent,
349
- 'prompt',
350
- '-s',
351
- sessionName,
352
- ];
353
- if (this.input.model) {
354
- args.push('--model', this.input.model);
355
- }
356
- if (this.input.systemPromptAppend) {
357
- args.push('--append-system-prompt', this.input.systemPromptAppend);
358
- }
359
- args.push(prompt);
360
- const child = spawn(launcher.command, args, {
361
- cwd: this.input.cwd,
362
- stdio: ['ignore', 'pipe', 'pipe'],
363
- env: buildDriverEnv(this.input),
364
- });
365
- this.activeChild = child;
366
- const queue = [];
367
- let done = false;
368
- let error = null;
369
- let resolver = null;
370
- let stdout = '';
371
- let stderr = '';
372
- const sessionIdForMessage = sessionInfo.agentSessionId ||
373
- sessionInfo.acpxSessionId ||
374
- sessionInfo.acpxRecordId ||
375
- sessionInfo.sessionId ||
376
- sessionInfo.id ||
377
- sessionName;
378
- const push = (value) => {
379
- queue.push(value);
380
- if (resolver) {
381
- const wake = resolver;
382
- resolver = null;
383
- wake();
384
- }
385
- };
386
- if (sessionIdForMessage) {
387
- push({
388
- type: 'acpx.session',
389
- session_id: sessionIdForMessage,
390
- });
391
- }
392
- const handleLine = (line) => {
393
- const trimmed = line.trim();
394
- if (!trimmed.startsWith('{'))
395
- return;
396
- try {
397
- const parsed = JSON.parse(trimmed);
398
- if (sessionIdForMessage && parsed.session_id === undefined) {
399
- parsed.session_id = sessionIdForMessage;
400
- }
401
- push(parsed);
402
- }
403
- catch {
404
- // ignore malformed lines
405
- }
406
- };
407
- const attachLines = (stream) => {
408
- let buffer = '';
409
- stream.on('data', (chunk) => {
410
- const text = String(chunk);
411
- if (stream === child.stdout) {
412
- stdout += text;
413
- }
414
- buffer += text;
415
- while (true) {
416
- const newlineIndex = buffer.indexOf('\n');
417
- if (newlineIndex === -1)
418
- break;
419
- const line = buffer.slice(0, newlineIndex);
420
- buffer = buffer.slice(newlineIndex + 1);
421
- handleLine(line);
422
- }
423
- });
424
- stream.on('end', () => {
425
- if (buffer.trim())
426
- handleLine(buffer);
427
- buffer = '';
428
- });
429
- };
430
- attachLines(child.stdout);
431
- child.stderr.on('data', (chunk) => {
432
- stderr += String(chunk);
433
- });
434
- attachLines(child.stderr);
435
- child.on('error', (err) => {
436
- error = err;
437
- done = true;
438
- if (resolver) {
439
- const wake = resolver;
440
- resolver = null;
441
- wake();
442
- }
443
- });
444
- child.on('close', (code, signal) => {
445
- if (code !== 0 && !error) {
446
- const details = [stderr.trim(), stdout.trim()].filter(Boolean).join(' | ');
447
- error = new Error(`acpx ${this.agent} prompt exited with code ${code ?? -1}${signal ? ` (signal: ${signal})` : ''}${details ? `: ${details}` : ''}`);
448
- }
449
- done = true;
450
- this.activeChild = null;
451
- if (resolver) {
452
- const wake = resolver;
453
- resolver = null;
454
- wake();
455
- }
456
- });
457
- while (!done || queue.length > 0) {
458
- if (queue.length === 0) {
459
- await new Promise((resolve) => {
460
- resolver = resolve;
461
- });
462
- continue;
463
- }
464
- yield queue.shift();
465
- }
466
- if (error)
467
- throw error;
468
- }
469
- close() {
470
- this.activeChild?.kill('SIGTERM');
471
- this.activeChild = null;
472
- }
473
- }
474
- export class AcpxAgentDriver {
475
- id;
476
- agent;
477
- constructor(id, agent) {
478
- this.id = id;
479
- this.agent = agent;
480
- }
481
- async startSession(input) {
482
- return new AcpxDriverSession(this.agent, input);
483
- }
484
- normalizeOutput(input) {
485
- return normalizeAcpxOutput(input);
486
- }
487
- }
488
- //# sourceMappingURL=acpx-driver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acpx-driver.js","sourceRoot":"","sources":["../../../src/agent-sdk/drivers/acpx-driver.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { AcpxAgentDriver } from './acpx-driver.js';
2
- export declare class ClaudeCodeDriver extends AcpxAgentDriver {
3
- constructor();
4
- }
5
- //# sourceMappingURL=claude-acpx-driver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-acpx-driver.d.ts","sourceRoot":"","sources":["../../../src/agent-sdk/drivers/claude-acpx-driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,qBAAa,gBAAiB,SAAQ,eAAe;;CAIpD"}
@@ -1,7 +0,0 @@
1
- import { AcpxAgentDriver } from './acpx-driver.js';
2
- export class ClaudeCodeDriver extends AcpxAgentDriver {
3
- constructor() {
4
- super('claude-code', 'claude');
5
- }
6
- }
7
- //# sourceMappingURL=claude-acpx-driver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-acpx-driver.js","sourceRoot":"","sources":["../../../src/agent-sdk/drivers/claude-acpx-driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,OAAO,gBAAiB,SAAQ,eAAe;IACnD;QACE,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;CACF"}
@@ -1,20 +0,0 @@
1
- import type { BackendDriver, DriverSession, StartDriverSessionInput } from './driver.js';
2
- import type { SupenDriverOutput } from '../types.js';
3
- export declare function buildClaudeCliArgs(input: {
4
- prompt: string;
5
- settingsPath: string;
6
- workspaceDir: string;
7
- sessionId?: string | null;
8
- mcpConfigPath?: string | null;
9
- systemPromptAppend?: string;
10
- }): string[];
11
- export declare class ClaudeCliDirectDriver implements BackendDriver {
12
- readonly id = "claude-code";
13
- startSession(input: StartDriverSessionInput): Promise<DriverSession>;
14
- normalizeOutput(input: {
15
- sessionId: string;
16
- turnId: string;
17
- output: Record<string, unknown>;
18
- }): SupenDriverOutput[];
19
- }
20
- //# sourceMappingURL=claude-cli-direct-driver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-cli-direct-driver.d.ts","sourceRoot":"","sources":["../../../src/agent-sdk/drivers/claude-cli-direct-driver.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAsB,aAAa,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC7G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAoCrD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,GAAG,MAAM,EAAE,CA+BX;AA+ND,qBAAa,qBAAsB,YAAW,aAAa;IACzD,QAAQ,CAAC,EAAE,iBAAiB;IAEtB,YAAY,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,aAAa,CAAC;IAI1E,eAAe,CAAC,KAAK,EAAE;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,GAAG,iBAAiB,EAAE;CAGxB"}