@a5c-ai/agent-mux-adapters 0.3.0 → 0.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 (111) hide show
  1. package/dist/amp-adapter.d.ts +31 -0
  2. package/dist/amp-adapter.d.ts.map +1 -0
  3. package/dist/amp-adapter.js +336 -0
  4. package/dist/amp-adapter.js.map +1 -0
  5. package/dist/base-adapter-helpers.d.ts +8 -0
  6. package/dist/base-adapter-helpers.d.ts.map +1 -0
  7. package/dist/base-adapter-helpers.js +68 -0
  8. package/dist/base-adapter-helpers.js.map +1 -0
  9. package/dist/base-adapter.d.ts +14 -9
  10. package/dist/base-adapter.d.ts.map +1 -1
  11. package/dist/base-adapter.js +23 -66
  12. package/dist/base-adapter.js.map +1 -1
  13. package/dist/claude-adapter.d.ts.map +1 -1
  14. package/dist/claude-adapter.js +5 -2
  15. package/dist/claude-adapter.js.map +1 -1
  16. package/dist/claude-agent-sdk-adapter.d.ts +53 -0
  17. package/dist/claude-agent-sdk-adapter.d.ts.map +1 -0
  18. package/dist/claude-agent-sdk-adapter.js +607 -0
  19. package/dist/claude-agent-sdk-adapter.js.map +1 -0
  20. package/dist/codex-adapter.d.ts.map +1 -1
  21. package/dist/codex-adapter.js +99 -11
  22. package/dist/codex-adapter.js.map +1 -1
  23. package/dist/codex-sdk-adapter.d.ts +32 -0
  24. package/dist/codex-sdk-adapter.d.ts.map +1 -0
  25. package/dist/codex-sdk-adapter.js +384 -0
  26. package/dist/codex-sdk-adapter.js.map +1 -0
  27. package/dist/codex-sdk-mocks.d.ts +51 -0
  28. package/dist/codex-sdk-mocks.d.ts.map +1 -0
  29. package/dist/codex-sdk-mocks.js +97 -0
  30. package/dist/codex-sdk-mocks.js.map +1 -0
  31. package/dist/codex-websocket-adapter.d.ts +41 -0
  32. package/dist/codex-websocket-adapter.d.ts.map +1 -0
  33. package/dist/codex-websocket-adapter.js +289 -0
  34. package/dist/codex-websocket-adapter.js.map +1 -0
  35. package/dist/codex-websocket-connection.d.ts +58 -0
  36. package/dist/codex-websocket-connection.d.ts.map +1 -0
  37. package/dist/codex-websocket-connection.js +244 -0
  38. package/dist/codex-websocket-connection.js.map +1 -0
  39. package/dist/copilot-adapter.d.ts.map +1 -1
  40. package/dist/copilot-adapter.js +7 -3
  41. package/dist/copilot-adapter.js.map +1 -1
  42. package/dist/cursor-adapter.d.ts.map +1 -1
  43. package/dist/cursor-adapter.js +5 -2
  44. package/dist/cursor-adapter.js.map +1 -1
  45. package/dist/droid-adapter.d.ts +30 -0
  46. package/dist/droid-adapter.d.ts.map +1 -0
  47. package/dist/droid-adapter.js +377 -0
  48. package/dist/droid-adapter.js.map +1 -0
  49. package/dist/gemini-adapter.d.ts.map +1 -1
  50. package/dist/gemini-adapter.js +5 -2
  51. package/dist/gemini-adapter.js.map +1 -1
  52. package/dist/hermes-adapter.d.ts.map +1 -1
  53. package/dist/hermes-adapter.js +6 -2
  54. package/dist/hermes-adapter.js.map +1 -1
  55. package/dist/index.d.ts +10 -0
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +20 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/mocks/index.d.ts +60 -0
  60. package/dist/mocks/index.d.ts.map +1 -0
  61. package/dist/mocks/index.js +203 -0
  62. package/dist/mocks/index.js.map +1 -0
  63. package/dist/mocks/mock-types.d.ts +260 -0
  64. package/dist/mocks/mock-types.d.ts.map +1 -0
  65. package/dist/mocks/mock-types.js +12 -0
  66. package/dist/mocks/mock-types.js.map +1 -0
  67. package/dist/mocks/programmatic-mocks.d.ts +50 -0
  68. package/dist/mocks/programmatic-mocks.d.ts.map +1 -0
  69. package/dist/mocks/programmatic-mocks.js +330 -0
  70. package/dist/mocks/programmatic-mocks.js.map +1 -0
  71. package/dist/mocks/remote-mocks.d.ts +52 -0
  72. package/dist/mocks/remote-mocks.d.ts.map +1 -0
  73. package/dist/mocks/remote-mocks.js +436 -0
  74. package/dist/mocks/remote-mocks.js.map +1 -0
  75. package/dist/omp-adapter.d.ts.map +1 -1
  76. package/dist/omp-adapter.js +6 -3
  77. package/dist/omp-adapter.js.map +1 -1
  78. package/dist/openclaw-adapter.d.ts.map +1 -1
  79. package/dist/openclaw-adapter.js +6 -3
  80. package/dist/openclaw-adapter.js.map +1 -1
  81. package/dist/opencode-adapter.d.ts +2 -2
  82. package/dist/opencode-adapter.d.ts.map +1 -1
  83. package/dist/opencode-adapter.js +172 -60
  84. package/dist/opencode-adapter.js.map +1 -1
  85. package/dist/opencode-http-adapter.d.ts +41 -0
  86. package/dist/opencode-http-adapter.d.ts.map +1 -0
  87. package/dist/opencode-http-adapter.js +370 -0
  88. package/dist/opencode-http-adapter.js.map +1 -0
  89. package/dist/opencode-http-connection.d.ts +33 -0
  90. package/dist/opencode-http-connection.d.ts.map +1 -0
  91. package/dist/opencode-http-connection.js +198 -0
  92. package/dist/opencode-http-connection.js.map +1 -0
  93. package/dist/pi-adapter.d.ts.map +1 -1
  94. package/dist/pi-adapter.js +5 -2
  95. package/dist/pi-adapter.js.map +1 -1
  96. package/dist/pi-sdk-adapter.d.ts +46 -0
  97. package/dist/pi-sdk-adapter.d.ts.map +1 -0
  98. package/dist/pi-sdk-adapter.js +549 -0
  99. package/dist/pi-sdk-adapter.js.map +1 -0
  100. package/dist/programmatic-adapter-base.d.ts +88 -0
  101. package/dist/programmatic-adapter-base.d.ts.map +1 -0
  102. package/dist/programmatic-adapter-base.js +169 -0
  103. package/dist/programmatic-adapter-base.js.map +1 -0
  104. package/dist/qwen-adapter.d.ts.map +1 -1
  105. package/dist/qwen-adapter.js +5 -2
  106. package/dist/qwen-adapter.js.map +1 -1
  107. package/dist/remote-adapter-base.d.ts +85 -0
  108. package/dist/remote-adapter-base.d.ts.map +1 -0
  109. package/dist/remote-adapter-base.js +102 -0
  110. package/dist/remote-adapter-base.js.map +1 -0
  111. package/package.json +2 -2
@@ -0,0 +1,607 @@
1
+ /**
2
+ * ClaudeAgentSdkAdapter — Direct Claude Agent SDK integration.
3
+ *
4
+ * Uses the Claude Agent SDK directly instead of the Claude Code CLI for
5
+ * better performance, more granular control, and native programmatic access
6
+ * to Claude's advanced agent capabilities.
7
+ */
8
+ import * as os from 'node:os';
9
+ import * as path from 'node:path';
10
+ import { BaseProgrammaticAdapter } from './programmatic-adapter-base.js';
11
+ import { mcpListPlugins, mcpInstallPlugin, mcpUninstallPlugin } from './mcp-plugins.js';
12
+ import { listJsonlFiles, parseJsonlSessionFile, readJsonFile, writeJsonFileAtomic, } from './session-fs.js';
13
+ export class ClaudeAgentSdkAdapter extends BaseProgrammaticAdapter {
14
+ agent = 'claude-agent-sdk';
15
+ displayName = 'Claude (Agent SDK)';
16
+ minVersion = '0.1.0';
17
+ hostEnvSignals = ['ANTHROPIC_API_KEY', 'CLAUDE_AGENT_API_KEY'];
18
+ capabilities = {
19
+ agent: 'claude-agent-sdk',
20
+ canResume: true,
21
+ canFork: true,
22
+ supportsMultiTurn: true,
23
+ sessionPersistence: 'file',
24
+ supportsTextStreaming: true,
25
+ supportsToolCallStreaming: true,
26
+ supportsThinkingStreaming: true,
27
+ supportsNativeTools: true,
28
+ supportsMCP: true,
29
+ supportsParallelToolCalls: true,
30
+ requiresToolApproval: true,
31
+ approvalModes: ['yolo', 'prompt', 'deny'],
32
+ supportsThinking: true,
33
+ thinkingEffortLevels: ['low', 'medium', 'high', 'max'],
34
+ supportsThinkingBudgetTokens: true,
35
+ supportsJsonMode: true,
36
+ supportsStructuredOutput: true,
37
+ supportsSkills: true,
38
+ supportsAgentsMd: true,
39
+ skillsFormat: 'file',
40
+ supportsSubagentDispatch: true,
41
+ supportsParallelExecution: true,
42
+ maxParallelTasks: 10,
43
+ supportsInteractiveMode: true,
44
+ supportsStdinInjection: true,
45
+ supportsImageInput: true,
46
+ supportsImageOutput: false,
47
+ supportsFileAttachments: true,
48
+ supportsPlugins: true,
49
+ pluginFormats: ['mcp-server'],
50
+ pluginRegistries: [{ name: 'mcp', url: 'https://modelcontextprotocol.io', searchable: false }],
51
+ supportedPlatforms: ['darwin', 'linux', 'win32'],
52
+ requiresGitRepo: false,
53
+ requiresPty: false,
54
+ authMethods: [
55
+ { type: 'api_key', name: 'API Key', description: 'ANTHROPIC_API_KEY environment variable' },
56
+ { type: 'oauth', name: 'OAuth', description: 'OAuth-based authentication' },
57
+ ],
58
+ authFiles: ['.claude.json', '.claude/settings.json'],
59
+ installMethods: [
60
+ { platform: 'all', type: 'npm', command: 'npm install -g @anthropic-ai/agent-sdk' },
61
+ ],
62
+ };
63
+ models = [
64
+ {
65
+ agent: 'claude-agent-sdk',
66
+ modelId: 'claude-sonnet-4-20250514',
67
+ modelAlias: 'sonnet',
68
+ displayName: 'Claude Sonnet 4 (SDK)',
69
+ deprecated: false,
70
+ contextWindow: 200000,
71
+ maxOutputTokens: 16384,
72
+ maxThinkingTokens: 128000,
73
+ inputPricePerMillion: 3,
74
+ outputPricePerMillion: 15,
75
+ thinkingPricePerMillion: 3,
76
+ cachedInputPricePerMillion: 0.3,
77
+ supportsThinking: true,
78
+ thinkingEffortLevels: ['low', 'medium', 'high', 'max'],
79
+ supportsToolCalling: true,
80
+ supportsParallelToolCalls: true,
81
+ supportsToolCallStreaming: true,
82
+ supportsJsonMode: true,
83
+ supportsStructuredOutput: true,
84
+ supportsTextStreaming: true,
85
+ supportsThinkingStreaming: true,
86
+ supportsImageInput: true,
87
+ supportsImageOutput: false,
88
+ supportsFileInput: true,
89
+ cliArgKey: 'model',
90
+ cliArgValue: 'claude-sonnet-4-20250514',
91
+ lastUpdated: '2025-05-14',
92
+ source: 'bundled',
93
+ },
94
+ {
95
+ agent: 'claude-agent-sdk',
96
+ modelId: 'claude-opus-4-20250514',
97
+ modelAlias: 'opus',
98
+ displayName: 'Claude Opus 4 (SDK)',
99
+ deprecated: false,
100
+ contextWindow: 200000,
101
+ maxOutputTokens: 16384,
102
+ maxThinkingTokens: 128000,
103
+ inputPricePerMillion: 15,
104
+ outputPricePerMillion: 75,
105
+ thinkingPricePerMillion: 15,
106
+ cachedInputPricePerMillion: 1.5,
107
+ supportsThinking: true,
108
+ thinkingEffortLevels: ['low', 'medium', 'high', 'max'],
109
+ supportsToolCalling: true,
110
+ supportsParallelToolCalls: true,
111
+ supportsToolCallStreaming: true,
112
+ supportsJsonMode: true,
113
+ supportsStructuredOutput: true,
114
+ supportsTextStreaming: true,
115
+ supportsThinkingStreaming: true,
116
+ supportsImageInput: true,
117
+ supportsImageOutput: false,
118
+ supportsFileInput: true,
119
+ cliArgKey: 'model',
120
+ cliArgValue: 'claude-opus-4-20250514',
121
+ lastUpdated: '2025-05-14',
122
+ source: 'bundled',
123
+ },
124
+ ];
125
+ defaultModelId = 'claude-sonnet-4-20250514';
126
+ configSchema = {
127
+ agent: 'claude-agent-sdk',
128
+ version: 1,
129
+ fields: [],
130
+ configFilePaths: [path.join(os.homedir(), '.claude', 'settings.json')],
131
+ projectConfigFilePaths: ['.claude/settings.json'],
132
+ configFormat: 'json',
133
+ supportsProjectConfig: true,
134
+ };
135
+ async *execute(options) {
136
+ this.validateRunOptions(options);
137
+ const runId = this.generateRunId();
138
+ const modelId = this.resolveModel(options);
139
+ const prompt = this.normalizePrompt(options.prompt);
140
+ // Check authentication
141
+ const authState = await this.detectAuth();
142
+ if (authState.status !== 'authenticated') {
143
+ yield this.createErrorEvent(runId, 'AUTH_MISSING', 'Anthropic API key not found', false);
144
+ return;
145
+ }
146
+ try {
147
+ // Emit session start
148
+ yield {
149
+ ...this.createBaseEvent('session_start', runId),
150
+ type: 'session_start',
151
+ sessionId: options.sessionId || runId,
152
+ resumed: Boolean(options.sessionId),
153
+ };
154
+ // Create Claude Agent SDK client (in real implementation)
155
+ const client = this.createClaudeAgentClient();
156
+ // Build messages array
157
+ const messages = [
158
+ {
159
+ role: 'user',
160
+ content: prompt,
161
+ },
162
+ ];
163
+ // Add system prompt if provided
164
+ const systemPrompt = options.systemPrompt || this.buildDefaultSystemPrompt(options);
165
+ // Define available tools for Claude agent capabilities
166
+ const tools = [
167
+ {
168
+ name: 'read_file',
169
+ description: 'Read the contents of a file',
170
+ input_schema: {
171
+ type: 'object',
172
+ properties: {
173
+ path: {
174
+ type: 'string',
175
+ description: 'Path to the file to read',
176
+ },
177
+ },
178
+ required: ['path'],
179
+ },
180
+ },
181
+ {
182
+ name: 'write_file',
183
+ description: 'Write content to a file',
184
+ input_schema: {
185
+ type: 'object',
186
+ properties: {
187
+ path: {
188
+ type: 'string',
189
+ description: 'Path to the file to write',
190
+ },
191
+ content: {
192
+ type: 'string',
193
+ description: 'Content to write to the file',
194
+ },
195
+ },
196
+ required: ['path', 'content'],
197
+ },
198
+ },
199
+ {
200
+ name: 'execute_bash',
201
+ description: 'Execute a bash command',
202
+ input_schema: {
203
+ type: 'object',
204
+ properties: {
205
+ command: {
206
+ type: 'string',
207
+ description: 'Bash command to execute',
208
+ },
209
+ },
210
+ required: ['command'],
211
+ },
212
+ },
213
+ {
214
+ name: 'spawn_subagent',
215
+ description: 'Spawn a subagent to handle a specific task',
216
+ input_schema: {
217
+ type: 'object',
218
+ properties: {
219
+ task: {
220
+ type: 'string',
221
+ description: 'Task description for the subagent',
222
+ },
223
+ agent_type: {
224
+ type: 'string',
225
+ description: 'Type of agent to spawn',
226
+ enum: ['claude', 'codex', 'opencode'],
227
+ },
228
+ },
229
+ required: ['task'],
230
+ },
231
+ },
232
+ ];
233
+ // Make streaming API call with thinking enabled
234
+ const stream = await this.createClaudeStream({
235
+ model: modelId,
236
+ messages,
237
+ system: systemPrompt,
238
+ tools,
239
+ max_tokens: options.maxTokens || 8192,
240
+ temperature: 0.1,
241
+ stream: true,
242
+ thinking_enabled: true,
243
+ thinking_effort: options.thinkingEffort || 'medium',
244
+ thinking_budget_tokens: options.thinkingBudgetTokens,
245
+ });
246
+ let textAccumulated = '';
247
+ let thinkingAccumulated = '';
248
+ let currentToolCall = null;
249
+ let inThinking = false;
250
+ for await (const chunk of stream) {
251
+ switch (chunk.type) {
252
+ case 'message_start':
253
+ // Message started - no specific action needed
254
+ break;
255
+ case 'content_block_start':
256
+ if (chunk.content_block?.type === 'text') {
257
+ // Text content block started
258
+ }
259
+ else if (chunk.content_block?.type === 'tool_use') {
260
+ // Tool use block started
261
+ currentToolCall = {
262
+ id: chunk.content_block.id,
263
+ name: chunk.content_block.name,
264
+ input: '',
265
+ };
266
+ yield this.createToolCallStartEvent(runId, currentToolCall.id, currentToolCall.name, '');
267
+ }
268
+ break;
269
+ case 'content_block_delta':
270
+ if (chunk.delta?.type === 'text_delta' && chunk.delta.text) {
271
+ // Check if this is thinking content
272
+ if (chunk.delta.text.includes('<thinking>')) {
273
+ inThinking = true;
274
+ }
275
+ if (inThinking) {
276
+ // Thinking content
277
+ thinkingAccumulated += chunk.delta.text;
278
+ yield {
279
+ ...this.createBaseEvent('thinking_delta', runId),
280
+ type: 'thinking_delta',
281
+ delta: chunk.delta.text,
282
+ accumulated: thinkingAccumulated,
283
+ };
284
+ if (chunk.delta.text.includes('</thinking>')) {
285
+ inThinking = false;
286
+ }
287
+ }
288
+ else {
289
+ // Regular text content
290
+ textAccumulated += chunk.delta.text;
291
+ yield this.createTextDeltaEvent(runId, chunk.delta.text, textAccumulated);
292
+ }
293
+ }
294
+ else if (chunk.delta?.type === 'input_json_delta' && currentToolCall) {
295
+ // Tool input streaming
296
+ currentToolCall.input += chunk.delta.partial_json || '';
297
+ yield {
298
+ ...this.createBaseEvent('tool_input_delta', runId),
299
+ type: 'tool_input_delta',
300
+ toolCallId: currentToolCall.id,
301
+ delta: chunk.delta.partial_json || '',
302
+ inputAccumulated: currentToolCall.input,
303
+ };
304
+ }
305
+ break;
306
+ case 'content_block_stop':
307
+ if (currentToolCall) {
308
+ // Tool call ready
309
+ yield {
310
+ ...this.createBaseEvent('tool_call_ready', runId),
311
+ type: 'tool_call_ready',
312
+ toolCallId: currentToolCall.id,
313
+ toolName: currentToolCall.name,
314
+ input: currentToolCall.input,
315
+ };
316
+ // Execute the tool (mock execution)
317
+ const toolResult = await this.executeMockTool(currentToolCall.name, currentToolCall.input);
318
+ yield this.createToolResultEvent(runId, currentToolCall.id, currentToolCall.name, toolResult, 150 // mock duration
319
+ );
320
+ currentToolCall = null;
321
+ }
322
+ break;
323
+ case 'message_delta':
324
+ // Handle message-level changes
325
+ break;
326
+ case 'message_stop':
327
+ // Message completed
328
+ if (chunk.message?.usage) {
329
+ const cost = this.extractCostFromUsage(chunk.message.usage, modelId);
330
+ if (cost) {
331
+ yield this.createCostEvent(runId, cost);
332
+ }
333
+ }
334
+ yield this.createMessageStopEvent(runId, textAccumulated);
335
+ break;
336
+ }
337
+ }
338
+ }
339
+ catch (error) {
340
+ const message = error instanceof Error ? error.message : String(error);
341
+ yield this.createErrorEvent(runId, 'INTERNAL', `SDK error: ${message}`, false);
342
+ }
343
+ }
344
+ async detectAuth() {
345
+ const apiKey = process.env['ANTHROPIC_API_KEY'] || process.env['CLAUDE_AGENT_API_KEY'];
346
+ if (apiKey) {
347
+ return {
348
+ status: 'authenticated',
349
+ method: 'api_key',
350
+ identity: `anthropic:...${apiKey.slice(-4)}`,
351
+ };
352
+ }
353
+ // Check Claude settings file
354
+ const claudeHome = path.join(os.homedir(), '.claude');
355
+ const settingsPath = path.join(claudeHome, 'settings.json');
356
+ try {
357
+ const settings = await readJsonFile(settingsPath);
358
+ if (settings?.user?.id) {
359
+ return {
360
+ status: 'authenticated',
361
+ method: 'oauth',
362
+ identity: `claude:${settings.user.id}`,
363
+ };
364
+ }
365
+ }
366
+ catch {
367
+ // Settings file not found or invalid
368
+ }
369
+ return { status: 'unauthenticated' };
370
+ }
371
+ getAuthGuidance() {
372
+ return {
373
+ agent: 'claude-agent-sdk',
374
+ providerName: 'Anthropic',
375
+ steps: [
376
+ {
377
+ step: 1,
378
+ description: 'Get an API key from https://console.anthropic.com/',
379
+ url: 'https://console.anthropic.com/'
380
+ },
381
+ {
382
+ step: 2,
383
+ description: 'Set the ANTHROPIC_API_KEY environment variable',
384
+ command: 'export ANTHROPIC_API_KEY=sk-ant-...'
385
+ },
386
+ {
387
+ step: 3,
388
+ description: 'Alternatively, authenticate via Claude CLI',
389
+ command: 'claude auth'
390
+ },
391
+ ],
392
+ envVars: [
393
+ { name: 'ANTHROPIC_API_KEY', description: 'Anthropic API key', required: true, exampleFormat: 'sk-ant-...' },
394
+ { name: 'CLAUDE_AGENT_API_KEY', description: 'Claude Agent SDK API key', required: false, exampleFormat: 'sk-ant-...' },
395
+ ],
396
+ documentationUrls: ['https://docs.anthropic.com/claude/docs'],
397
+ loginCommand: 'claude auth',
398
+ verifyCommand: 'claude --version',
399
+ };
400
+ }
401
+ sessionDir(_cwd) {
402
+ return path.join(os.homedir(), '.claude', 'sessions');
403
+ }
404
+ async parseSessionFile(filePath) {
405
+ const parsed = await parseJsonlSessionFile(filePath, 'claude-agent-sdk');
406
+ return { ...parsed, agent: 'claude-agent-sdk' };
407
+ }
408
+ async listSessionFiles(_cwd) {
409
+ return listJsonlFiles(this.sessionDir());
410
+ }
411
+ async readConfig(_cwd) {
412
+ const filePath = this.configSchema.configFilePaths?.[0];
413
+ if (!filePath)
414
+ return { agent: 'claude-agent-sdk', source: 'global' };
415
+ const data = (await readJsonFile(filePath)) ?? {};
416
+ return { agent: 'claude-agent-sdk', source: 'global', filePaths: [filePath], ...data };
417
+ }
418
+ async writeConfig(config, _cwd) {
419
+ const filePath = this.configSchema.configFilePaths?.[0];
420
+ if (!filePath)
421
+ return;
422
+ const existing = (await readJsonFile(filePath)) ?? {};
423
+ const { agent: _a, source: _s, filePaths: _fp, ...rest } = config;
424
+ void _a;
425
+ void _s;
426
+ void _fp;
427
+ await writeJsonFileAtomic(filePath, { ...existing, ...rest });
428
+ }
429
+ // ── MCP Plugin Support ─────────────────────────────────────────────
430
+ async listPlugins() {
431
+ return mcpListPlugins(this.agent);
432
+ }
433
+ async installPlugin(pluginId, options) {
434
+ return mcpInstallPlugin(this.agent, pluginId, options);
435
+ }
436
+ async uninstallPlugin(pluginId) {
437
+ return mcpUninstallPlugin(this.agent, pluginId);
438
+ }
439
+ // ── Private implementation methods ─────────────────────────────────
440
+ /**
441
+ * Create Claude Agent SDK client (mock implementation).
442
+ * In real implementation, this would return an actual Claude Agent SDK client.
443
+ */
444
+ createClaudeAgentClient() {
445
+ // Mock client - in real implementation, this would be:
446
+ // return new ClaudeAgent({ apiKey: process.env.ANTHROPIC_API_KEY });
447
+ return {};
448
+ }
449
+ /**
450
+ * Create Claude stream (mock implementation).
451
+ * In real implementation, this would use the Claude Agent SDK.
452
+ */
453
+ async createClaudeStream(params) {
454
+ // Mock streaming response with thinking
455
+ const mockChunks = [
456
+ {
457
+ type: 'message_start',
458
+ message: {
459
+ id: 'msg_123',
460
+ type: 'message',
461
+ role: 'assistant',
462
+ content: [],
463
+ model: params.model,
464
+ stop_reason: null,
465
+ stop_sequence: null,
466
+ usage: { input_tokens: 0, output_tokens: 0 },
467
+ },
468
+ },
469
+ // Thinking stream
470
+ {
471
+ type: 'content_block_start',
472
+ content_block: { type: 'text' },
473
+ index: 0,
474
+ },
475
+ {
476
+ type: 'content_block_delta',
477
+ delta: { type: 'text_delta', text: '<thinking>\nLet me think about this task. ' },
478
+ index: 0,
479
+ },
480
+ {
481
+ type: 'content_block_delta',
482
+ delta: { type: 'text_delta', text: 'I need to analyze the request and determine the best approach.\n</thinking>\n\n' },
483
+ index: 0,
484
+ },
485
+ // Regular response
486
+ {
487
+ type: 'content_block_delta',
488
+ delta: { type: 'text_delta', text: 'I\'ll help you with that task. ' },
489
+ index: 0,
490
+ },
491
+ {
492
+ type: 'content_block_delta',
493
+ delta: { type: 'text_delta', text: 'Let me read a file to understand the context better.' },
494
+ index: 0,
495
+ },
496
+ // Tool use
497
+ {
498
+ type: 'content_block_start',
499
+ content_block: {
500
+ type: 'tool_use',
501
+ id: 'call_123',
502
+ name: 'read_file',
503
+ input: {}
504
+ },
505
+ index: 1,
506
+ },
507
+ {
508
+ type: 'content_block_delta',
509
+ delta: { type: 'input_json_delta', partial_json: '{"path": ' },
510
+ index: 1,
511
+ },
512
+ {
513
+ type: 'content_block_delta',
514
+ delta: { type: 'input_json_delta', partial_json: '"README.md"}' },
515
+ index: 1,
516
+ },
517
+ {
518
+ type: 'content_block_stop',
519
+ index: 1,
520
+ },
521
+ {
522
+ type: 'message_stop',
523
+ message: {
524
+ id: 'msg_123',
525
+ type: 'message',
526
+ role: 'assistant',
527
+ content: [],
528
+ model: params.model,
529
+ stop_reason: 'tool_use',
530
+ stop_sequence: null,
531
+ usage: { input_tokens: 200, output_tokens: 150 },
532
+ },
533
+ },
534
+ ];
535
+ return {
536
+ async *[Symbol.asyncIterator]() {
537
+ for (const chunk of mockChunks) {
538
+ await new Promise(resolve => setTimeout(resolve, 100)); // Simulate streaming delay
539
+ yield chunk;
540
+ }
541
+ },
542
+ };
543
+ }
544
+ /**
545
+ * Build default system prompt with agent capabilities.
546
+ */
547
+ buildDefaultSystemPrompt(options) {
548
+ let systemPrompt = 'You are Claude, an AI assistant created by Anthropic. You have access to various tools and capabilities:\n\n';
549
+ systemPrompt += '- read_file: Read file contents\n';
550
+ systemPrompt += '- write_file: Write content to files\n';
551
+ systemPrompt += '- execute_bash: Run bash commands\n';
552
+ systemPrompt += '- spawn_subagent: Delegate tasks to specialized agents\n\n';
553
+ if (options.approvalMode === 'yolo') {
554
+ systemPrompt += 'Tool approval is disabled - you can execute tools freely.\n';
555
+ }
556
+ else {
557
+ systemPrompt += 'Always ask for permission before executing potentially dangerous tools.\n';
558
+ }
559
+ systemPrompt += '\nProvide helpful, harmless, and honest responses while leveraging these capabilities effectively.';
560
+ return systemPrompt;
561
+ }
562
+ /**
563
+ * Execute mock tool calls.
564
+ */
565
+ async executeMockTool(name, inputJson) {
566
+ try {
567
+ const input = JSON.parse(inputJson);
568
+ switch (name) {
569
+ case 'read_file':
570
+ return `Mock file contents for: ${input.path}`;
571
+ case 'write_file':
572
+ return `Successfully wrote ${input.content.length} characters to ${input.path}`;
573
+ case 'execute_bash':
574
+ return `Executed: ${input.command}\nMock output: Command completed successfully`;
575
+ case 'spawn_subagent':
576
+ return `Spawned ${input.agent_type || 'claude'} subagent for task: ${input.task}`;
577
+ default:
578
+ return `Unknown tool: ${name}`;
579
+ }
580
+ }
581
+ catch (error) {
582
+ return `Error executing tool ${name}: ${error}`;
583
+ }
584
+ }
585
+ /**
586
+ * Extract cost information from Claude usage object.
587
+ */
588
+ extractCostFromUsage(usage, modelId) {
589
+ const model = this.models.find(m => m.modelId === modelId);
590
+ if (!model) {
591
+ return {
592
+ totalUsd: 0,
593
+ inputTokens: usage.input_tokens,
594
+ outputTokens: usage.output_tokens,
595
+ };
596
+ }
597
+ const inputCost = (usage.input_tokens / 1_000_000) * model.inputPricePerMillion;
598
+ const outputCost = (usage.output_tokens / 1_000_000) * model.outputPricePerMillion;
599
+ const totalCost = inputCost + outputCost;
600
+ return {
601
+ totalUsd: totalCost,
602
+ inputTokens: usage.input_tokens,
603
+ outputTokens: usage.output_tokens,
604
+ };
605
+ }
606
+ }
607
+ //# sourceMappingURL=claude-agent-sdk-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-agent-sdk-adapter.js","sourceRoot":"","sources":["../src/claude-agent-sdk-adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex-adapter.d.ts","sourceRoot":"","sources":["../src/codex-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AASrD,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,QAAQ,CAAC,KAAK,EAAG,OAAO,CAAU;IAClC,QAAQ,CAAC,WAAW,kBAAkB;IACtC,QAAQ,CAAC,UAAU,WAAW;IAC9B,QAAQ,CAAC,UAAU,WAAW;IAC9B,QAAQ,CAAC,cAAc,6DAA8D;IAErF,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CA0CtC;IAEF,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAgDlC;IAEF,QAAQ,CAAC,cAAc,aAAa;IAEpC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAOtC;IAEF,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS;IAyB9C,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IAmD3E,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC;IAoBtC,eAAe,IAAI,iBAAiB;IAgBpC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAI3B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpD,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIlD,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAO/C,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAa9E"}
1
+ {"version":3,"file":"codex-adapter.d.ts","sourceRoot":"","sources":["../src/codex-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AASrD,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,QAAQ,CAAC,KAAK,EAAG,OAAO,CAAU;IAClC,QAAQ,CAAC,WAAW,kBAAkB;IACtC,QAAQ,CAAC,UAAU,WAAW;IAC9B,QAAQ,CAAC,UAAU,WAAW;IAC9B,QAAQ,CAAC,cAAc,6DAA8D;IAErF,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CA0CtC;IAEF,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAgDlC;IAEF,QAAQ,CAAC,cAAc,aAAa;IAEpC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAOtC;IAEF,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS;IA6C9C,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IAiI3E,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC;IAoBtC,eAAe,IAAI,iBAAiB;IAgBpC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAI3B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpD,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIlD,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAO/C,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAa9E"}