@a5c-ai/agent-mux-adapters 0.2.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 (115) 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/auth-config.d.ts +36 -5
  6. package/dist/auth-config.d.ts.map +1 -1
  7. package/dist/auth-config.js +127 -12
  8. package/dist/auth-config.js.map +1 -1
  9. package/dist/base-adapter-helpers.d.ts +8 -0
  10. package/dist/base-adapter-helpers.d.ts.map +1 -0
  11. package/dist/base-adapter-helpers.js +68 -0
  12. package/dist/base-adapter-helpers.js.map +1 -0
  13. package/dist/base-adapter.d.ts +14 -9
  14. package/dist/base-adapter.d.ts.map +1 -1
  15. package/dist/base-adapter.js +23 -66
  16. package/dist/base-adapter.js.map +1 -1
  17. package/dist/claude-adapter.d.ts.map +1 -1
  18. package/dist/claude-adapter.js +5 -2
  19. package/dist/claude-adapter.js.map +1 -1
  20. package/dist/claude-agent-sdk-adapter.d.ts +53 -0
  21. package/dist/claude-agent-sdk-adapter.d.ts.map +1 -0
  22. package/dist/claude-agent-sdk-adapter.js +607 -0
  23. package/dist/claude-agent-sdk-adapter.js.map +1 -0
  24. package/dist/codex-adapter.d.ts.map +1 -1
  25. package/dist/codex-adapter.js +100 -12
  26. package/dist/codex-adapter.js.map +1 -1
  27. package/dist/codex-sdk-adapter.d.ts +32 -0
  28. package/dist/codex-sdk-adapter.d.ts.map +1 -0
  29. package/dist/codex-sdk-adapter.js +384 -0
  30. package/dist/codex-sdk-adapter.js.map +1 -0
  31. package/dist/codex-sdk-mocks.d.ts +51 -0
  32. package/dist/codex-sdk-mocks.d.ts.map +1 -0
  33. package/dist/codex-sdk-mocks.js +97 -0
  34. package/dist/codex-sdk-mocks.js.map +1 -0
  35. package/dist/codex-websocket-adapter.d.ts +41 -0
  36. package/dist/codex-websocket-adapter.d.ts.map +1 -0
  37. package/dist/codex-websocket-adapter.js +289 -0
  38. package/dist/codex-websocket-adapter.js.map +1 -0
  39. package/dist/codex-websocket-connection.d.ts +58 -0
  40. package/dist/codex-websocket-connection.d.ts.map +1 -0
  41. package/dist/codex-websocket-connection.js +244 -0
  42. package/dist/codex-websocket-connection.js.map +1 -0
  43. package/dist/copilot-adapter.d.ts.map +1 -1
  44. package/dist/copilot-adapter.js +7 -3
  45. package/dist/copilot-adapter.js.map +1 -1
  46. package/dist/cursor-adapter.d.ts.map +1 -1
  47. package/dist/cursor-adapter.js +11 -4
  48. package/dist/cursor-adapter.js.map +1 -1
  49. package/dist/droid-adapter.d.ts +30 -0
  50. package/dist/droid-adapter.d.ts.map +1 -0
  51. package/dist/droid-adapter.js +377 -0
  52. package/dist/droid-adapter.js.map +1 -0
  53. package/dist/gemini-adapter.d.ts.map +1 -1
  54. package/dist/gemini-adapter.js +6 -3
  55. package/dist/gemini-adapter.js.map +1 -1
  56. package/dist/hermes-adapter.d.ts.map +1 -1
  57. package/dist/hermes-adapter.js +6 -2
  58. package/dist/hermes-adapter.js.map +1 -1
  59. package/dist/index.d.ts +10 -0
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +20 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/mocks/index.d.ts +60 -0
  64. package/dist/mocks/index.d.ts.map +1 -0
  65. package/dist/mocks/index.js +203 -0
  66. package/dist/mocks/index.js.map +1 -0
  67. package/dist/mocks/mock-types.d.ts +260 -0
  68. package/dist/mocks/mock-types.d.ts.map +1 -0
  69. package/dist/mocks/mock-types.js +12 -0
  70. package/dist/mocks/mock-types.js.map +1 -0
  71. package/dist/mocks/programmatic-mocks.d.ts +50 -0
  72. package/dist/mocks/programmatic-mocks.d.ts.map +1 -0
  73. package/dist/mocks/programmatic-mocks.js +330 -0
  74. package/dist/mocks/programmatic-mocks.js.map +1 -0
  75. package/dist/mocks/remote-mocks.d.ts +52 -0
  76. package/dist/mocks/remote-mocks.d.ts.map +1 -0
  77. package/dist/mocks/remote-mocks.js +436 -0
  78. package/dist/mocks/remote-mocks.js.map +1 -0
  79. package/dist/omp-adapter.d.ts.map +1 -1
  80. package/dist/omp-adapter.js +6 -3
  81. package/dist/omp-adapter.js.map +1 -1
  82. package/dist/openclaw-adapter.d.ts.map +1 -1
  83. package/dist/openclaw-adapter.js +6 -3
  84. package/dist/openclaw-adapter.js.map +1 -1
  85. package/dist/opencode-adapter.d.ts +2 -2
  86. package/dist/opencode-adapter.d.ts.map +1 -1
  87. package/dist/opencode-adapter.js +173 -61
  88. package/dist/opencode-adapter.js.map +1 -1
  89. package/dist/opencode-http-adapter.d.ts +41 -0
  90. package/dist/opencode-http-adapter.d.ts.map +1 -0
  91. package/dist/opencode-http-adapter.js +370 -0
  92. package/dist/opencode-http-adapter.js.map +1 -0
  93. package/dist/opencode-http-connection.d.ts +33 -0
  94. package/dist/opencode-http-connection.d.ts.map +1 -0
  95. package/dist/opencode-http-connection.js +198 -0
  96. package/dist/opencode-http-connection.js.map +1 -0
  97. package/dist/pi-adapter.d.ts.map +1 -1
  98. package/dist/pi-adapter.js +5 -2
  99. package/dist/pi-adapter.js.map +1 -1
  100. package/dist/pi-sdk-adapter.d.ts +46 -0
  101. package/dist/pi-sdk-adapter.d.ts.map +1 -0
  102. package/dist/pi-sdk-adapter.js +549 -0
  103. package/dist/pi-sdk-adapter.js.map +1 -0
  104. package/dist/programmatic-adapter-base.d.ts +88 -0
  105. package/dist/programmatic-adapter-base.d.ts.map +1 -0
  106. package/dist/programmatic-adapter-base.js +169 -0
  107. package/dist/programmatic-adapter-base.js.map +1 -0
  108. package/dist/qwen-adapter.d.ts.map +1 -1
  109. package/dist/qwen-adapter.js +5 -2
  110. package/dist/qwen-adapter.js.map +1 -1
  111. package/dist/remote-adapter-base.d.ts +85 -0
  112. package/dist/remote-adapter-base.d.ts.map +1 -0
  113. package/dist/remote-adapter-base.js +102 -0
  114. package/dist/remote-adapter-base.js.map +1 -0
  115. 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":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAiBlC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxF,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAwDzB,MAAM,OAAO,qBAAsB,SAAQ,uBAAuB;IACvD,KAAK,GAAG,kBAA2B,CAAC;IACpC,WAAW,GAAG,oBAAoB,CAAC;IACnC,UAAU,GAAG,OAAO,CAAC;IACrB,cAAc,GAAG,CAAC,mBAAmB,EAAE,sBAAsB,CAAU,CAAC;IAExE,YAAY,GAAsB;QACzC,KAAK,EAAE,kBAAkB;QACzB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;QACb,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,MAAM;QAC1B,qBAAqB,EAAE,IAAI;QAC3B,yBAAyB,EAAE,IAAI;QAC/B,yBAAyB,EAAE,IAAI;QAC/B,mBAAmB,EAAE,IAAI;QACzB,WAAW,EAAE,IAAI;QACjB,yBAAyB,EAAE,IAAI;QAC/B,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;QACzC,gBAAgB,EAAE,IAAI;QACtB,oBAAoB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;QACtD,4BAA4B,EAAE,IAAI;QAClC,gBAAgB,EAAE,IAAI;QACtB,wBAAwB,EAAE,IAAI;QAC9B,cAAc,EAAE,IAAI;QACpB,gBAAgB,EAAE,IAAI;QACtB,YAAY,EAAE,MAAM;QACpB,wBAAwB,EAAE,IAAI;QAC9B,yBAAyB,EAAE,IAAI;QAC/B,gBAAgB,EAAE,EAAE;QACpB,uBAAuB,EAAE,IAAI;QAC7B,sBAAsB,EAAE,IAAI;QAC5B,kBAAkB,EAAE,IAAI;QACxB,mBAAmB,EAAE,KAAK;QAC1B,uBAAuB,EAAE,IAAI;QAC7B,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,CAAC,YAAY,CAAC;QAC7B,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,iCAAiC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAC9F,kBAAkB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAChD,eAAe,EAAE,KAAK;QACtB,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE;YACX,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wCAAwC,EAAE;YAC3F,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,4BAA4B,EAAE;SAC5E;QACD,SAAS,EAAE,CAAC,cAAc,EAAE,uBAAuB,CAAC;QACpD,cAAc,EAAE;YACd,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,wCAAwC,EAAE;SACpF;KACF,CAAC;IAEO,MAAM,GAAwB;QACrC;YACE,KAAK,EAAE,kBAAkB;YACzB,OAAO,EAAE,0BAA0B;YACnC,UAAU,EAAE,QAAQ;YACpB,WAAW,EAAE,uBAAuB;YACpC,UAAU,EAAE,KAAK;YACjB,aAAa,EAAE,MAAM;YACrB,eAAe,EAAE,KAAK;YACtB,iBAAiB,EAAE,MAAM;YACzB,oBAAoB,EAAE,CAAC;YACvB,qBAAqB,EAAE,EAAE;YACzB,uBAAuB,EAAE,CAAC;YAC1B,0BAA0B,EAAE,GAAG;YAC/B,gBAAgB,EAAE,IAAI;YACtB,oBAAoB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;YACtD,mBAAmB,EAAE,IAAI;YACzB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,IAAI;YAC/B,gBAAgB,EAAE,IAAI;YACtB,wBAAwB,EAAE,IAAI;YAC9B,qBAAqB,EAAE,IAAI;YAC3B,yBAAyB,EAAE,IAAI;YAC/B,kBAAkB,EAAE,IAAI;YACxB,mBAAmB,EAAE,KAAK;YAC1B,iBAAiB,EAAE,IAAI;YACvB,SAAS,EAAE,OAAO;YAClB,WAAW,EAAE,0BAA0B;YACvC,WAAW,EAAE,YAAY;YACzB,MAAM,EAAE,SAAS;SAClB;QACD;YACE,KAAK,EAAE,kBAAkB;YACzB,OAAO,EAAE,wBAAwB;YACjC,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,qBAAqB;YAClC,UAAU,EAAE,KAAK;YACjB,aAAa,EAAE,MAAM;YACrB,eAAe,EAAE,KAAK;YACtB,iBAAiB,EAAE,MAAM;YACzB,oBAAoB,EAAE,EAAE;YACxB,qBAAqB,EAAE,EAAE;YACzB,uBAAuB,EAAE,EAAE;YAC3B,0BAA0B,EAAE,GAAG;YAC/B,gBAAgB,EAAE,IAAI;YACtB,oBAAoB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;YACtD,mBAAmB,EAAE,IAAI;YACzB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,IAAI;YAC/B,gBAAgB,EAAE,IAAI;YACtB,wBAAwB,EAAE,IAAI;YAC9B,qBAAqB,EAAE,IAAI;YAC3B,yBAAyB,EAAE,IAAI;YAC/B,kBAAkB,EAAE,IAAI;YACxB,mBAAmB,EAAE,KAAK;YAC1B,iBAAiB,EAAE,IAAI;YACvB,SAAS,EAAE,OAAO;YAClB,WAAW,EAAE,wBAAwB;YACrC,WAAW,EAAE,YAAY;YACzB,MAAM,EAAE,SAAS;SAClB;KACF,CAAC;IAEO,cAAc,GAAG,0BAA0B,CAAC;IAE5C,YAAY,GAAsB;QACzC,KAAK,EAAE,kBAAkB;QACzB,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QACtE,sBAAsB,EAAE,CAAC,uBAAuB,CAAC;QACjD,YAAY,EAAE,MAAM;QACpB,qBAAqB,EAAE,IAAI;KAC5B,CAAC;IAEF,KAAK,CAAC,CAAC,OAAO,CAAC,OAAmB;QAChC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEjC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;QAErD,uBAAuB;QACvB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAI,SAAS,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,EAAE,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACzF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,qBAAqB;YACrB,MAAM;gBACJ,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,KAAK,CAAC;gBAC/C,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;gBACrC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aACtB,CAAC;YAEhB,0DAA0D;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAE9C,uBAAuB;YACvB,MAAM,QAAQ,GAAoB;gBAChC;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,MAAM;iBAChB;aACF,CAAC;YAEF,gCAAgC;YAChC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAEpF,uDAAuD;YACvD,MAAM,KAAK,GAAiB;gBAC1B;oBACE,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,6BAA6B;oBAC1C,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,0BAA0B;6BACxC;yBACF;wBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;qBACnB;iBACF;gBACD;oBACE,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,yBAAyB;oBACtC,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,2BAA2B;6BACzC;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,8BAA8B;6BAC5C;yBACF;wBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;qBAC9B;iBACF;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,WAAW,EAAE,wBAAwB;oBACrC,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,yBAAyB;6BACvC;yBACF;wBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;qBACtB;iBACF;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,WAAW,EAAE,4CAA4C;oBACzD,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,mCAAmC;6BACjD;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,wBAAwB;gCACrC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC;6BACtC;yBACF;wBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;qBACnB;iBACF;aACF,CAAC;YAEF,gDAAgD;YAChD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;gBAC3C,KAAK,EAAE,OAAO;gBACd,QAAQ;gBACR,MAAM,EAAE,YAAY;gBACpB,KAAK;gBACL,UAAU,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;gBACrC,WAAW,EAAE,GAAG;gBAChB,MAAM,EAAE,IAAI;gBACZ,gBAAgB,EAAE,IAAI;gBACtB,eAAe,EAAE,OAAO,CAAC,cAAc,IAAI,QAAQ;gBACnD,sBAAsB,EAAE,OAAO,CAAC,oBAAoB;aACrD,CAAC,CAAC;YAEH,IAAI,eAAe,GAAG,EAAE,CAAC;YACzB,IAAI,mBAAmB,GAAG,EAAE,CAAC;YAC7B,IAAI,eAAe,GAAuD,IAAI,CAAC;YAC/E,IAAI,UAAU,GAAG,KAAK,CAAC;YAEvB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,eAAe;wBAClB,8CAA8C;wBAC9C,MAAM;oBAER,KAAK,qBAAqB;wBACxB,IAAI,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;4BACzC,6BAA6B;wBAC/B,CAAC;6BAAM,IAAI,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;4BACpD,yBAAyB;4BACzB,eAAe,GAAG;gCAChB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,EAAG;gCAC3B,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAK;gCAC/B,KAAK,EAAE,EAAE;6BACV,CAAC;4BAEF,MAAM,IAAI,CAAC,wBAAwB,CACjC,KAAK,EACL,eAAe,CAAC,EAAE,EAClB,eAAe,CAAC,IAAI,EACpB,EAAE,CACH,CAAC;wBACJ,CAAC;wBACD,MAAM;oBAER,KAAK,qBAAqB;wBACxB,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;4BAC3D,oCAAoC;4BACpC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gCAC5C,UAAU,GAAG,IAAI,CAAC;4BACpB,CAAC;4BAED,IAAI,UAAU,EAAE,CAAC;gCACf,mBAAmB;gCACnB,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;gCACxC,MAAM;oCACJ,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,KAAK,CAAC;oCAChD,IAAI,EAAE,gBAAgB;oCACtB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;oCACvB,WAAW,EAAE,mBAAmB;iCACnB,CAAC;gCAEhB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oCAC7C,UAAU,GAAG,KAAK,CAAC;gCACrB,CAAC;4BACH,CAAC;iCAAM,CAAC;gCACN,uBAAuB;gCACvB,eAAe,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;gCACpC,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;4BAC5E,CAAC;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,kBAAkB,IAAI,eAAe,EAAE,CAAC;4BACvE,uBAAuB;4BACvB,eAAe,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;4BACxD,MAAM;gCACJ,GAAG,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,KAAK,CAAC;gCAClD,IAAI,EAAE,kBAAkB;gCACxB,UAAU,EAAE,eAAe,CAAC,EAAE;gCAC9B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE;gCACrC,gBAAgB,EAAE,eAAe,CAAC,KAAK;6BAC1B,CAAC;wBAClB,CAAC;wBACD,MAAM;oBAER,KAAK,oBAAoB;wBACvB,IAAI,eAAe,EAAE,CAAC;4BACpB,kBAAkB;4BAClB,MAAM;gCACJ,GAAG,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,KAAK,CAAC;gCACjD,IAAI,EAAE,iBAAiB;gCACvB,UAAU,EAAE,eAAe,CAAC,EAAE;gCAC9B,QAAQ,EAAE,eAAe,CAAC,IAAI;gCAC9B,KAAK,EAAE,eAAe,CAAC,KAAK;6BACf,CAAC;4BAEhB,oCAAoC;4BACpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAC3C,eAAe,CAAC,IAAI,EACpB,eAAe,CAAC,KAAK,CACtB,CAAC;4BAEF,MAAM,IAAI,CAAC,qBAAqB,CAC9B,KAAK,EACL,eAAe,CAAC,EAAE,EAClB,eAAe,CAAC,IAAI,EACpB,UAAU,EACV,GAAG,CAAC,gBAAgB;6BACrB,CAAC;4BAEF,eAAe,GAAG,IAAI,CAAC;wBACzB,CAAC;wBACD,MAAM;oBAER,KAAK,eAAe;wBAClB,+BAA+B;wBAC/B,MAAM;oBAER,KAAK,cAAc;wBACjB,oBAAoB;wBACpB,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;4BACzB,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;4BACrE,IAAI,IAAI,EAAE,CAAC;gCACT,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;4BAC1C,CAAC;wBACH,CAAC;wBAED,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;wBAC1D,MAAM;gBACV,CAAC;YACH,CAAC;QAEH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACvF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO;gBACL,MAAM,EAAE,eAAe;gBACvB,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,gBAAgB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;aAC7C,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAE5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAA6B,YAAY,CAAC,CAAC;YAC9E,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;gBACvB,OAAO;oBACL,MAAM,EAAE,eAAe;oBACvB,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,UAAU,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE;iBACvC,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IACvC,CAAC;IAED,eAAe;QACb,OAAO;YACL,KAAK,EAAE,kBAAkB;YACzB,YAAY,EAAE,WAAW;YACzB,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,CAAC;oBACP,WAAW,EAAE,oDAAoD;oBACjE,GAAG,EAAE,gCAAgC;iBACtC;gBACD;oBACE,IAAI,EAAE,CAAC;oBACP,WAAW,EAAE,gDAAgD;oBAC7D,OAAO,EAAE,qCAAqC;iBAC/C;gBACD;oBACE,IAAI,EAAE,CAAC;oBACP,WAAW,EAAE,4CAA4C;oBACzD,OAAO,EAAE,aAAa;iBACvB;aACF;YACD,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE;gBAC5G,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE;aACxH;YACD,iBAAiB,EAAE,CAAC,wCAAwC,CAAC;YAC7D,YAAY,EAAE,aAAa;YAC3B,aAAa,EAAE,kBAAkB;SAClC,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,IAAa;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QACrC,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACzE,OAAO,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAa;QAClC,OAAO,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAa;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QACtE,MAAM,IAAI,GAAG,CAAC,MAAM,YAAY,CAA0B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3E,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAA4B,EAAE,IAAa;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,QAAQ,GAAG,CAAC,MAAM,YAAY,CAA0B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/E,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,MAAiC,CAAC;QAC7F,KAAK,EAAE,CAAC;QAAC,KAAK,EAAE,CAAC;QAAC,KAAK,GAAG,CAAC;QAC3B,MAAM,mBAAmB,CAAC,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,sEAAsE;IAEtE,KAAK,CAAC,WAAW;QACf,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,OAA8B;QAClE,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED,sEAAsE;IAEtE;;;OAGG;IACK,uBAAuB;QAC7B,uDAAuD;QACvD,qEAAqE;QACrE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAWhC;QACC,wCAAwC;QACxC,MAAM,UAAU,GAAwB;YACtC;gBACE,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE;oBACP,EAAE,EAAE,SAAS;oBACb,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,IAAI;oBACjB,aAAa,EAAE,IAAI;oBACnB,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;iBAC7C;aACF;YACD,kBAAkB;YAClB;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,aAAa,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;gBAC/B,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,4CAA4C,EAAE;gBACjF,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,iFAAiF,EAAE;gBACtH,KAAK,EAAE,CAAC;aACT;YACD,mBAAmB;YACnB;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,iCAAiC,EAAE;gBACtE,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,sDAAsD,EAAE;gBAC3F,KAAK,EAAE,CAAC;aACT;YACD,WAAW;YACX;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,aAAa,EAAE;oBACb,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,EAAE;iBACV;gBACD,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE;gBAC9D,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE;gBACjE,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,KAAK,EAAE,CAAC;aACT;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE;oBACP,EAAE,EAAE,SAAS;oBACb,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,UAAU;oBACvB,aAAa,EAAE,IAAI;oBACnB,KAAK,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE;iBACjD;aACF;SACF,CAAC;QAEF,OAAO;YACL,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC3B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;oBAC/B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B;oBACnF,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,OAAmB;QAClD,IAAI,YAAY,GAAG,8GAA8G,CAAC;QAElI,YAAY,IAAI,mCAAmC,CAAC;QACpD,YAAY,IAAI,wCAAwC,CAAC;QACzD,YAAY,IAAI,qCAAqC,CAAC;QACtD,YAAY,IAAI,4DAA4D,CAAC;QAE7E,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;YACpC,YAAY,IAAI,6DAA6D,CAAC;QAChF,CAAC;aAAM,CAAC;YACN,YAAY,IAAI,2EAA2E,CAAC;QAC9F,CAAC;QAED,YAAY,IAAI,oGAAoG,CAAC;QAErH,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,SAAiB;QAC3D,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAEpC,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,WAAW;oBACd,OAAO,2BAA2B,KAAK,CAAC,IAAI,EAAE,CAAC;gBAEjD,KAAK,YAAY;oBACf,OAAO,sBAAsB,KAAK,CAAC,OAAO,CAAC,MAAM,kBAAkB,KAAK,CAAC,IAAI,EAAE,CAAC;gBAElF,KAAK,cAAc;oBACjB,OAAO,aAAa,KAAK,CAAC,OAAO,+CAA+C,CAAC;gBAEnF,KAAK,gBAAgB;oBACnB,OAAO,WAAW,KAAK,CAAC,UAAU,IAAI,QAAQ,uBAAuB,KAAK,CAAC,IAAI,EAAE,CAAC;gBAEpF;oBACE,OAAO,iBAAiB,IAAI,EAAE,CAAC;YACnC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,wBAAwB,IAAI,KAAK,KAAK,EAAE,CAAC;QAClD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,KAG5B,EAAE,OAAe;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,WAAW,EAAE,KAAK,CAAC,YAAY;gBAC/B,YAAY,EAAE,KAAK,CAAC,aAAa;aAClC,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,oBAAqB,CAAC;QACjF,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,qBAAsB,CAAC;QACpF,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;QAEzC,OAAO;YACL,QAAQ,EAAE,SAAS;YACnB,WAAW,EAAE,KAAK,CAAC,YAAY;YAC/B,YAAY,EAAE,KAAK,CAAC,aAAa;SAClC,CAAC;IACJ,CAAC;CACF"}
@@ -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"}