@undefineds.co/linx 0.3.5 → 0.3.7

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 (172) hide show
  1. package/README.md +58 -23
  2. package/dist/generated/version.js +1 -1
  3. package/dist/generated/version.js.map +1 -1
  4. package/dist/index.js +334 -162
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/account-session.js +4 -8
  7. package/dist/lib/account-session.js.map +1 -1
  8. package/dist/lib/ai-command.js +228 -178
  9. package/dist/lib/ai-command.js.map +1 -1
  10. package/dist/lib/auto-mode/archive.js +38 -7
  11. package/dist/lib/auto-mode/archive.js.map +1 -1
  12. package/dist/lib/auto-mode/auth.js.map +1 -1
  13. package/dist/lib/auto-mode/display.js +71 -45
  14. package/dist/lib/auto-mode/display.js.map +1 -1
  15. package/dist/lib/auto-mode/format.js +9 -7
  16. package/dist/lib/auto-mode/format.js.map +1 -1
  17. package/dist/lib/auto-mode/hooks/claude.js +12 -2
  18. package/dist/lib/auto-mode/hooks/claude.js.map +1 -1
  19. package/dist/lib/auto-mode/hooks/codex.js +17 -7
  20. package/dist/lib/auto-mode/hooks/codex.js.map +1 -1
  21. package/dist/lib/auto-mode/hooks/index.js +28 -8
  22. package/dist/lib/auto-mode/hooks/index.js.map +1 -1
  23. package/dist/lib/auto-mode/pod-ai.js +20 -37
  24. package/dist/lib/auto-mode/pod-ai.js.map +1 -1
  25. package/dist/lib/auto-mode/pod-approval.js +124 -195
  26. package/dist/lib/auto-mode/pod-approval.js.map +1 -1
  27. package/dist/lib/auto-mode/pod-persistence.js +169 -90
  28. package/dist/lib/auto-mode/pod-persistence.js.map +1 -1
  29. package/dist/lib/auto-mode/runner.js +683 -81
  30. package/dist/lib/auto-mode/runner.js.map +1 -1
  31. package/dist/lib/auto-mode/secretary.js +186 -41
  32. package/dist/lib/auto-mode/secretary.js.map +1 -1
  33. package/dist/lib/auto-mode-command.js +32 -32
  34. package/dist/lib/auto-mode-command.js.map +1 -1
  35. package/dist/lib/chat-api.js +242 -50
  36. package/dist/lib/chat-api.js.map +1 -1
  37. package/dist/lib/codex-plugin/bridge.js +164 -17
  38. package/dist/lib/codex-plugin/bridge.js.map +1 -1
  39. package/dist/lib/codex-plugin/codex-native-proxy.js +370 -34
  40. package/dist/lib/codex-plugin/codex-native-proxy.js.map +1 -1
  41. package/dist/lib/credentials-store.js +33 -42
  42. package/dist/lib/credentials-store.js.map +1 -1
  43. package/dist/lib/linx-cloud-errors.js +61 -0
  44. package/dist/lib/linx-cloud-errors.js.map +1 -0
  45. package/dist/lib/linx-tui-contract.js +8 -5
  46. package/dist/lib/linx-tui-contract.js.map +1 -1
  47. package/dist/lib/login-command.js +9 -2
  48. package/dist/lib/login-command.js.map +1 -1
  49. package/dist/lib/models.js +3 -20
  50. package/dist/lib/models.js.map +1 -1
  51. package/dist/lib/oidc-auth.js +143 -17
  52. package/dist/lib/oidc-auth.js.map +1 -1
  53. package/dist/lib/oidc-session-storage.js +2 -6
  54. package/dist/lib/oidc-session-storage.js.map +1 -1
  55. package/dist/lib/pi-adapter/auto-input-controller.js +988 -0
  56. package/dist/lib/pi-adapter/auto-input-controller.js.map +1 -0
  57. package/dist/lib/pi-adapter/backend-command.js +2 -0
  58. package/dist/lib/pi-adapter/backend-command.js.map +1 -0
  59. package/dist/lib/pi-adapter/backend-credentials.js +80 -0
  60. package/dist/lib/pi-adapter/backend-credentials.js.map +1 -0
  61. package/dist/lib/pi-adapter/branding.js +246 -108
  62. package/dist/lib/pi-adapter/branding.js.map +1 -1
  63. package/dist/lib/pi-adapter/control-state.js +72 -0
  64. package/dist/lib/pi-adapter/control-state.js.map +1 -0
  65. package/dist/lib/pi-adapter/interactive.js +2634 -30
  66. package/dist/lib/pi-adapter/interactive.js.map +1 -1
  67. package/dist/lib/pi-adapter/pod-approval.js +382 -210
  68. package/dist/lib/pi-adapter/pod-approval.js.map +1 -1
  69. package/dist/lib/pi-adapter/pod-mirror-mapping.js +71 -17
  70. package/dist/lib/pi-adapter/pod-mirror-mapping.js.map +1 -1
  71. package/dist/lib/pi-adapter/pod-mirror.js +531 -64
  72. package/dist/lib/pi-adapter/pod-mirror.js.map +1 -1
  73. package/dist/lib/pi-adapter/pod-native.js +81 -85
  74. package/dist/lib/pi-adapter/pod-native.js.map +1 -1
  75. package/dist/lib/pi-adapter/pod-status-output.js +54 -0
  76. package/dist/lib/pi-adapter/pod-status-output.js.map +1 -0
  77. package/dist/lib/pi-adapter/runtime.js +458 -228
  78. package/dist/lib/pi-adapter/runtime.js.map +1 -1
  79. package/dist/lib/pi-adapter/session-control.js +509 -0
  80. package/dist/lib/pi-adapter/session-control.js.map +1 -0
  81. package/dist/lib/pi-adapter/session.js +35 -22
  82. package/dist/lib/pi-adapter/session.js.map +1 -1
  83. package/dist/lib/pi-adapter/stream.js +89 -32
  84. package/dist/lib/pi-adapter/stream.js.map +1 -1
  85. package/dist/lib/pi-adapter/sync-recovery.js +89 -0
  86. package/dist/lib/pi-adapter/sync-recovery.js.map +1 -0
  87. package/dist/lib/pi-adapter/web-fetch.js +13 -14
  88. package/dist/lib/pi-adapter/web-fetch.js.map +1 -1
  89. package/dist/lib/pod-chat-store.js +254 -78
  90. package/dist/lib/pod-chat-store.js.map +1 -1
  91. package/dist/lib/pod-data-session.js +156 -35
  92. package/dist/lib/pod-data-session.js.map +1 -1
  93. package/dist/lib/solid-auth-store.js +27 -0
  94. package/dist/lib/solid-auth-store.js.map +1 -0
  95. package/dist/lib/solid-auth.js +2 -4
  96. package/dist/lib/solid-auth.js.map +1 -1
  97. package/dist/lib/solid-client-credentials-login.js +100 -0
  98. package/dist/lib/solid-client-credentials-login.js.map +1 -0
  99. package/dist/lib/solid-local-store.js +31 -0
  100. package/dist/lib/solid-local-store.js.map +1 -0
  101. package/dist/lib/symphony/archive.js +328 -18
  102. package/dist/lib/symphony/archive.js.map +1 -1
  103. package/dist/lib/symphony/pod-projection.js +2222 -0
  104. package/dist/lib/symphony/pod-projection.js.map +1 -0
  105. package/dist/lib/symphony-command.js +602 -178
  106. package/dist/lib/symphony-command.js.map +1 -1
  107. package/dist/lib/sync-checkpoint-store.js +74 -0
  108. package/dist/lib/sync-checkpoint-store.js.map +1 -0
  109. package/dist/skills/symphony/SKILL.md +665 -0
  110. package/package.json +15 -9
  111. package/vendor/agent-runtime/dist/agent-runtime.d.ts +137 -0
  112. package/vendor/agent-runtime/dist/agent-runtime.js +211 -0
  113. package/vendor/agent-runtime/dist/auto-mode.d.ts +78 -13
  114. package/vendor/agent-runtime/dist/auto-mode.js +288 -31
  115. package/vendor/agent-runtime/dist/control-plane.d.ts +28 -0
  116. package/vendor/agent-runtime/dist/control-plane.js +79 -0
  117. package/vendor/agent-runtime/dist/file-sync.d.ts +157 -0
  118. package/vendor/agent-runtime/dist/file-sync.js +314 -0
  119. package/vendor/agent-runtime/dist/index.d.ts +7 -0
  120. package/vendor/agent-runtime/dist/index.js +7 -0
  121. package/vendor/agent-runtime/dist/reconciler.d.ts +117 -0
  122. package/vendor/agent-runtime/dist/reconciler.js +361 -0
  123. package/vendor/agent-runtime/dist/symphony.d.ts +128 -8
  124. package/vendor/agent-runtime/dist/symphony.js +362 -57
  125. package/vendor/agent-runtime/dist/sync.d.ts +271 -0
  126. package/vendor/agent-runtime/dist/sync.js +550 -0
  127. package/vendor/agent-runtime/dist/thread-reconciler-controller.d.ts +58 -0
  128. package/vendor/agent-runtime/dist/thread-reconciler-controller.js +137 -0
  129. package/vendor/agent-runtime/dist/turn-controller.js +2 -2
  130. package/vendor/agent-runtime/dist/wake-scheduler.d.ts +67 -0
  131. package/vendor/agent-runtime/dist/wake-scheduler.js +194 -0
  132. package/vendor/agent-runtime/package.json +8 -1
  133. package/vendor/pi-web-access/CHANGELOG.md +387 -0
  134. package/vendor/pi-web-access/LICENSE +21 -0
  135. package/vendor/pi-web-access/README.md +352 -0
  136. package/vendor/pi-web-access/activity.ts +101 -0
  137. package/vendor/pi-web-access/banner.png +0 -0
  138. package/vendor/pi-web-access/chrome-cookies.ts +322 -0
  139. package/vendor/pi-web-access/code-search.ts +107 -0
  140. package/vendor/pi-web-access/curator-page.ts +3359 -0
  141. package/vendor/pi-web-access/curator-server.ts +605 -0
  142. package/vendor/pi-web-access/exa.ts +520 -0
  143. package/vendor/pi-web-access/extract.ts +641 -0
  144. package/vendor/pi-web-access/gemini-api.ts +112 -0
  145. package/vendor/pi-web-access/gemini-search.ts +361 -0
  146. package/vendor/pi-web-access/gemini-url-context.ts +126 -0
  147. package/vendor/pi-web-access/gemini-web-config.ts +52 -0
  148. package/vendor/pi-web-access/gemini-web.ts +396 -0
  149. package/vendor/pi-web-access/github-api.ts +196 -0
  150. package/vendor/pi-web-access/github-extract.ts +634 -0
  151. package/vendor/pi-web-access/index.ts +2346 -0
  152. package/vendor/pi-web-access/package.json +45 -0
  153. package/vendor/pi-web-access/pdf-extract.ts +192 -0
  154. package/vendor/pi-web-access/perplexity.ts +195 -0
  155. package/vendor/pi-web-access/pi-web-fetch-demo.mp4 +0 -0
  156. package/vendor/pi-web-access/rsc-extract.ts +338 -0
  157. package/vendor/pi-web-access/skills/librarian/SKILL.md +195 -0
  158. package/vendor/pi-web-access/storage.ts +72 -0
  159. package/vendor/pi-web-access/summary-review.ts +276 -0
  160. package/vendor/pi-web-access/test/gemini-web-cookie-opt-in.test.mjs +41 -0
  161. package/vendor/pi-web-access/test/pdf-extract.test.mjs +95 -0
  162. package/vendor/pi-web-access/utils.ts +44 -0
  163. package/vendor/pi-web-access/video-extract.ts +378 -0
  164. package/vendor/pi-web-access/youtube-extract.ts +310 -0
  165. package/dist/lib/pi-adapter/auth.js +0 -68
  166. package/dist/lib/pi-adapter/auth.js.map +0 -1
  167. package/dist/lib/pi-adapter/pod-tools.js +0 -140
  168. package/dist/lib/pi-adapter/pod-tools.js.map +0 -1
  169. package/dist/skills/drizzle-solid/SKILL.md +0 -340
  170. package/dist/skills/pod-storage/SKILL.md +0 -100
  171. package/dist/skills/solid-modeling/SKILL.md +0 -274
  172. package/dist/skills/xpod-componentsjs/SKILL.md +0 -284
@@ -9,9 +9,22 @@ import { createCodexAttachBridge } from './bridge.js';
9
9
  function defaultPlan(options) {
10
10
  return {
11
11
  command: 'codex',
12
- args: ['app-server', '--listen', 'stdio://', ...(options.passthroughArgs ?? [])],
12
+ args: [
13
+ 'app-server',
14
+ '--listen',
15
+ 'stdio://',
16
+ ...codexConfigArgs(options.env),
17
+ ...(options.passthroughArgs ?? []),
18
+ ],
13
19
  };
14
20
  }
21
+ function codexConfigArgs(env) {
22
+ const baseUrl = env?.CODEX_BASE_URL?.trim();
23
+ if (!baseUrl) {
24
+ return [];
25
+ }
26
+ return ['-c', `openai_base_url=${JSON.stringify(baseUrl)}`];
27
+ }
15
28
  function appendProxyEvent(record, stream, line, events = []) {
16
29
  appendAutoModeEvent(record, {
17
30
  timestamp: new Date().toISOString(),
@@ -23,7 +36,7 @@ function appendProxyEvent(record, stream, line, events = []) {
23
36
  function createNativeProxySession(options) {
24
37
  const runOptions = {
25
38
  backend: 'codex',
26
- mode: 'manual',
39
+ autoEnabled: options.autoEnabled === true,
27
40
  cwd: options.cwd ?? process.cwd(),
28
41
  model: options.model,
29
42
  prompt: undefined,
@@ -36,6 +49,15 @@ function createNativeProxySession(options) {
36
49
  const plan = defaultPlan(options);
37
50
  return createAutoModeSession(runOptions, plan);
38
51
  }
52
+ function withCodexThreadDefaults(params, policy) {
53
+ if (!policy) {
54
+ return params;
55
+ }
56
+ return {
57
+ ...params,
58
+ approvalPolicy: policy,
59
+ };
60
+ }
39
61
  function normalizeAccountReadResponse() {
40
62
  return {
41
63
  requiresOpenaiAuth: false,
@@ -55,7 +77,6 @@ function normalizeInitializeResponse() {
55
77
  export function createCodexNativeProxy(options = {}) {
56
78
  const spawnProcess = options.spawnProcess ?? spawn;
57
79
  const record = createNativeProxySession(options);
58
- const plan = defaultPlan(options);
59
80
  const host = options.listenHost ?? '127.0.0.1';
60
81
  const port = options.listenPort ?? 8787;
61
82
  const remoteUrl = `ws://${host}:${port}`;
@@ -65,9 +86,11 @@ export function createCodexNativeProxy(options = {}) {
65
86
  let child = null;
66
87
  let wsServer = null;
67
88
  let activeClient = null;
89
+ let resolvedEnv = options.env;
68
90
  let closed = false;
69
91
  let started = false;
70
92
  let initialized = false;
93
+ let codexApprovalPolicy = options.codexApprovalPolicy;
71
94
  let initializePromise = null;
72
95
  const pendingRequestMethods = new Map();
73
96
  const pendingInternalResponses = new Map();
@@ -77,6 +100,63 @@ export function createCodexNativeProxy(options = {}) {
77
100
  const serverReady = new Promise((resolve) => {
78
101
  serverReadyResolve = resolve;
79
102
  });
103
+ const applyForkResult = (result, fallbackThreadId) => {
104
+ const nextThreadId = extractThreadId(result) ?? fallbackThreadId;
105
+ record.backendSessionId = nextThreadId;
106
+ const model = typeof result.model === 'string' ? result.model : record.model;
107
+ if (model) {
108
+ record.model = model;
109
+ }
110
+ };
111
+ const requestThreadStart = async () => {
112
+ const result = await sendInternalRequest('thread/start', withCodexThreadDefaults({
113
+ cwd: record.cwd,
114
+ model: record.model,
115
+ sandbox: 'workspace-write',
116
+ }, codexApprovalPolicy));
117
+ const thread = (typeof result.thread === 'object' && result.thread !== null ? result.thread : {});
118
+ const threadId = typeof thread.id === 'string' ? thread.id : record.backendSessionId;
119
+ if (!threadId) {
120
+ throw new Error('Codex app-server did not return a thread id');
121
+ }
122
+ return threadId;
123
+ };
124
+ const forkActiveThread = async (overrides) => {
125
+ if (!started || !record.backendSessionId) {
126
+ if (overrides.cwd) {
127
+ record.cwd = overrides.cwd;
128
+ }
129
+ if (overrides.updateAutoEnabled) {
130
+ record.autoEnabled = overrides.autoEnabled === true;
131
+ record.mode = record.autoEnabled ? 'auto' : 'off';
132
+ }
133
+ if (overrides.updateCodexApprovalPolicy) {
134
+ codexApprovalPolicy = overrides.codexApprovalPolicy;
135
+ }
136
+ writeAutoModeSession(record);
137
+ return;
138
+ }
139
+ await ensureInitialized();
140
+ const currentThreadId = record.backendSessionId;
141
+ if (overrides.cwd) {
142
+ record.cwd = overrides.cwd;
143
+ }
144
+ if (overrides.updateAutoEnabled) {
145
+ record.autoEnabled = overrides.autoEnabled === true;
146
+ record.mode = record.autoEnabled ? 'auto' : 'off';
147
+ }
148
+ if (overrides.updateCodexApprovalPolicy) {
149
+ codexApprovalPolicy = overrides.codexApprovalPolicy;
150
+ }
151
+ const result = await sendInternalRequest('thread/fork', withCodexThreadDefaults({
152
+ threadId: currentThreadId,
153
+ model: record.model,
154
+ cwd: record.cwd,
155
+ sandbox: 'workspace-write',
156
+ }, codexApprovalPolicy));
157
+ applyForkResult(result, currentThreadId);
158
+ writeAutoModeSession(record);
159
+ };
80
160
  const emitEvents = (events) => {
81
161
  if (events.length === 0) {
82
162
  return;
@@ -96,14 +176,21 @@ export function createCodexNativeProxy(options = {}) {
96
176
  const sendInternalRequest = (method, params) => {
97
177
  const id = `linx-internal-${internalRequestId++}`;
98
178
  pendingRequestMethods.set(id, method);
99
- writeChild({
100
- jsonrpc: '2.0',
101
- id,
102
- method,
103
- params,
104
- });
105
179
  return new Promise((resolve, reject) => {
106
180
  pendingInternalResponses.set(id, { resolve, reject });
181
+ try {
182
+ writeChild({
183
+ jsonrpc: '2.0',
184
+ id,
185
+ method,
186
+ params,
187
+ });
188
+ }
189
+ catch (error) {
190
+ pendingInternalResponses.delete(id);
191
+ pendingRequestMethods.delete(id);
192
+ reject(error instanceof Error ? error : new Error(String(error)));
193
+ }
107
194
  });
108
195
  };
109
196
  const ensureInitialized = async () => {
@@ -172,12 +259,19 @@ export function createCodexNativeProxy(options = {}) {
172
259
  writeChild(message);
173
260
  };
174
261
  const handleChildMessage = async (message) => {
175
- const rpcResponses = await bridge.handleCodexRpcLine(JSON.stringify(message));
176
- if (rpcResponses.length > 0) {
177
- for (const response of rpcResponses) {
178
- sendClient(response);
262
+ if (typeof message.method === 'string' && typeof message.id !== 'undefined') {
263
+ const events = normalizeCodexAppServerRequest(message);
264
+ if (events.length > 0) {
265
+ appendProxyEvent(record, 'stdout', JSON.stringify(message), events);
266
+ emitEvents(events);
267
+ }
268
+ const rpcResponses = await bridge.handleCodexRpcLine(JSON.stringify(message));
269
+ if (rpcResponses.length > 0) {
270
+ for (const response of rpcResponses) {
271
+ writeChild(response);
272
+ }
273
+ return;
179
274
  }
180
- return;
181
275
  }
182
276
  if (typeof message.id !== 'undefined') {
183
277
  const pendingInternal = pendingInternalResponses.get(String(message.id));
@@ -225,9 +319,23 @@ export function createCodexNativeProxy(options = {}) {
225
319
  throw new Error('Codex native proxy is already closed');
226
320
  }
227
321
  started = true;
228
- child = spawnProcess(plan.command, plan.args, {
322
+ resolvedEnv = {
323
+ ...(options.env ?? {}),
324
+ ...((await options.resolveEnv?.()) ?? {}),
325
+ };
326
+ const activePlan = defaultPlan({
327
+ ...options,
328
+ env: resolvedEnv,
329
+ });
330
+ record.command = activePlan.command;
331
+ record.args = [...activePlan.args];
332
+ writeAutoModeSession(record);
333
+ child = spawnProcess(activePlan.command, activePlan.args, {
229
334
  cwd: record.cwd,
230
- env: process.env,
335
+ env: {
336
+ ...process.env,
337
+ ...(resolvedEnv ?? {}),
338
+ },
231
339
  stdio: ['pipe', 'pipe', 'pipe'],
232
340
  });
233
341
  const activeChild = child;
@@ -308,36 +416,174 @@ export function createCodexNativeProxy(options = {}) {
308
416
  await serverReady;
309
417
  },
310
418
  async startThread() {
419
+ if (!started) {
420
+ await this.start();
421
+ }
311
422
  await ensureInitialized();
312
423
  if (record.backendSessionId) {
313
424
  return record.backendSessionId;
314
425
  }
315
- const result = await sendInternalRequest('thread/start', {
316
- cwd: record.cwd,
317
- model: record.model,
318
- approvalPolicy: 'never',
319
- sandbox: 'workspace-write',
320
- });
321
- const thread = (typeof result.thread === 'object' && result.thread !== null ? result.thread : {});
322
- const threadId = typeof thread.id === 'string' ? thread.id : record.backendSessionId;
323
- if (!threadId) {
324
- throw new Error('Codex app-server did not return a thread id');
325
- }
326
- return threadId;
426
+ return requestThreadStart();
327
427
  },
328
428
  async sendTurn(input) {
329
- await ensureInitialized();
330
429
  const threadId = await this.startThread();
430
+ const params = {
431
+ threadId,
432
+ input: [{ type: 'text', text: input }],
433
+ };
434
+ if (record.model) {
435
+ params.model = record.model;
436
+ }
331
437
  writeChild({
332
438
  jsonrpc: '2.0',
333
439
  id: `linx-turn-${Date.now()}`,
334
440
  method: 'turn/start',
335
- params: {
336
- threadId,
337
- input: [{ type: 'text', text: input }],
338
- },
441
+ params,
442
+ });
443
+ },
444
+ async setAutoEnabled(enabled) {
445
+ await forkActiveThread({
446
+ autoEnabled: enabled,
447
+ updateAutoEnabled: true,
448
+ });
449
+ },
450
+ async setCodexApprovalPolicy(policy) {
451
+ await forkActiveThread({
452
+ codexApprovalPolicy: policy,
453
+ updateCodexApprovalPolicy: true,
339
454
  });
340
455
  },
456
+ setSessionControl(control) {
457
+ bridge.setSessionControl(control);
458
+ },
459
+ async setCwd(cwd) {
460
+ await forkActiveThread({ cwd });
461
+ },
462
+ async executeCommand(input) {
463
+ const parsed = parseCodexBackendCommand(input);
464
+ if (!parsed) {
465
+ return { handled: false };
466
+ }
467
+ if (!started) {
468
+ await this.start();
469
+ }
470
+ await ensureInitialized();
471
+ if (parsed.name === 'help') {
472
+ return {
473
+ handled: true,
474
+ clearInput: true,
475
+ message: [
476
+ 'Codex backend commands:',
477
+ '/commands show Codex backend commands',
478
+ '/compact compact current Codex thread',
479
+ '/new start a new Codex thread',
480
+ '/rollback [turns] roll back recent turns',
481
+ '/fork fork the current Codex thread',
482
+ '/model <id> use a Codex model for following turns',
483
+ '/models list Codex models',
484
+ '/session show current Codex thread',
485
+ '/name <name> rename current Codex thread',
486
+ ].join('\n'),
487
+ };
488
+ }
489
+ if (parsed.name === 'models') {
490
+ const result = await sendInternalRequest('model/list', {
491
+ limit: 20,
492
+ includeHidden: false,
493
+ });
494
+ return {
495
+ handled: true,
496
+ clearInput: true,
497
+ message: formatCodexModelsResult(result),
498
+ };
499
+ }
500
+ if (parsed.name === 'model') {
501
+ const model = parsed.args.trim();
502
+ if (!model) {
503
+ return {
504
+ handled: true,
505
+ clearInput: true,
506
+ message: record.model
507
+ ? `Codex backend model: ${record.model}`
508
+ : 'Usage: /model <model-id>',
509
+ };
510
+ }
511
+ record.model = model;
512
+ writeAutoModeSession(record);
513
+ return {
514
+ handled: true,
515
+ clearInput: true,
516
+ message: `Codex backend model set to ${model} for following turns.`,
517
+ };
518
+ }
519
+ if (parsed.name === 'new') {
520
+ record.backendSessionId = undefined;
521
+ const threadId = await requestThreadStart();
522
+ return {
523
+ handled: true,
524
+ clearInput: true,
525
+ message: `Started new Codex thread ${threadId}.`,
526
+ };
527
+ }
528
+ const threadId = await this.startThread();
529
+ if (parsed.name === 'compact') {
530
+ await sendInternalRequest('thread/compact/start', { threadId });
531
+ return {
532
+ handled: true,
533
+ clearInput: true,
534
+ message: `Compacting Codex thread ${threadId}.`,
535
+ };
536
+ }
537
+ if (parsed.name === 'rollback') {
538
+ const numTurns = parseRollbackTurns(parsed.args);
539
+ await sendInternalRequest('thread/rollback', { threadId, numTurns });
540
+ return {
541
+ handled: true,
542
+ clearInput: true,
543
+ message: `Rolled back ${numTurns} Codex turn${numTurns === 1 ? '' : 's'}.`,
544
+ };
545
+ }
546
+ if (parsed.name === 'fork') {
547
+ const result = await sendInternalRequest('thread/fork', withCodexThreadDefaults({
548
+ threadId,
549
+ model: record.model,
550
+ cwd: record.cwd,
551
+ sandbox: 'workspace-write',
552
+ }, codexApprovalPolicy));
553
+ applyForkResult(result, threadId);
554
+ writeAutoModeSession(record);
555
+ return {
556
+ handled: true,
557
+ clearInput: true,
558
+ message: `Forked Codex thread ${record.backendSessionId}.`,
559
+ };
560
+ }
561
+ if (parsed.name === 'session' || parsed.name === 'status') {
562
+ const result = await sendInternalRequest('thread/read', { threadId });
563
+ return {
564
+ handled: true,
565
+ clearInput: true,
566
+ message: formatCodexThreadResult(result, record),
567
+ };
568
+ }
569
+ if (parsed.name === 'name') {
570
+ const name = parsed.args.trim();
571
+ if (!name) {
572
+ return {
573
+ handled: true,
574
+ clearInput: true,
575
+ message: 'Usage: /name <thread-name>',
576
+ };
577
+ }
578
+ await sendInternalRequest('thread/name/set', { threadId, name });
579
+ return {
580
+ handled: true,
581
+ clearInput: true,
582
+ message: `Renamed Codex thread ${threadId}.`,
583
+ };
584
+ }
585
+ return { handled: false };
586
+ },
341
587
  subscribe(listener) {
342
588
  listeners.add(listener);
343
589
  return () => {
@@ -347,11 +593,101 @@ export function createCodexNativeProxy(options = {}) {
347
593
  async close() {
348
594
  closed = true;
349
595
  activeClient?.close();
350
- wsServer?.close();
596
+ await new Promise((resolve) => {
597
+ if (!wsServer) {
598
+ resolve();
599
+ return;
600
+ }
601
+ wsServer.close(() => resolve());
602
+ });
351
603
  if (child && !child.killed) {
352
604
  child.kill();
353
605
  }
606
+ child?.stdin.destroy();
607
+ child?.stdout.destroy();
608
+ child?.stderr.destroy();
354
609
  },
355
610
  };
356
611
  }
612
+ function parseCodexBackendCommand(input) {
613
+ const trimmed = input.trim();
614
+ if (!trimmed.startsWith('/')) {
615
+ return null;
616
+ }
617
+ const match = /^\/([A-Za-z][\w-]*)(?:\s+([\s\S]*))?$/.exec(trimmed);
618
+ if (!match) {
619
+ return null;
620
+ }
621
+ const name = match[1].toLowerCase();
622
+ const args = match[2] ?? '';
623
+ const supported = new Set([
624
+ 'compact',
625
+ 'commands',
626
+ 'fork',
627
+ 'help',
628
+ 'model',
629
+ 'models',
630
+ 'name',
631
+ 'new',
632
+ 'rollback',
633
+ 'session',
634
+ 'status',
635
+ ]);
636
+ return supported.has(name) ? { name: name === 'commands' ? 'help' : name, args } : null;
637
+ }
638
+ function parseRollbackTurns(raw) {
639
+ const value = Number.parseInt(raw.trim() || '1', 10);
640
+ if (!Number.isFinite(value) || value < 1) {
641
+ return 1;
642
+ }
643
+ return Math.min(value, 100);
644
+ }
645
+ function extractThreadId(result) {
646
+ const thread = typeof result.thread === 'object' && result.thread !== null
647
+ ? result.thread
648
+ : undefined;
649
+ return typeof thread?.id === 'string' ? thread.id : undefined;
650
+ }
651
+ function formatCodexModelsResult(result) {
652
+ const rows = Array.isArray(result.data) ? result.data : [];
653
+ const names = rows
654
+ .map((entry) => {
655
+ if (typeof entry === 'string') {
656
+ return entry;
657
+ }
658
+ if (typeof entry !== 'object' || entry === null) {
659
+ return null;
660
+ }
661
+ const row = entry;
662
+ const id = typeof row.id === 'string' ? row.id : typeof row.model === 'string' ? row.model : undefined;
663
+ if (!id) {
664
+ return null;
665
+ }
666
+ const marker = row.isDefault === true ? ' (default)' : '';
667
+ return `${id}${marker}`;
668
+ })
669
+ .filter((entry) => Boolean(entry));
670
+ return names.length > 0
671
+ ? `Codex models:\n${names.slice(0, 20).map((name) => `- ${name}`).join('\n')}`
672
+ : 'Codex model list returned no models.';
673
+ }
674
+ function formatCodexThreadResult(result, record) {
675
+ const thread = typeof result.thread === 'object' && result.thread !== null
676
+ ? result.thread
677
+ : result;
678
+ const id = typeof thread.id === 'string' ? thread.id : record.backendSessionId ?? '(not started)';
679
+ const cwd = typeof thread.cwd === 'string' ? thread.cwd : record.cwd;
680
+ const status = typeof thread.status === 'object' && thread.status !== null
681
+ ? JSON.stringify(thread.status)
682
+ : typeof thread.status === 'string'
683
+ ? thread.status
684
+ : 'unknown';
685
+ const model = typeof result.model === 'string' ? result.model : record.model ?? '(default)';
686
+ return [
687
+ `Codex thread: ${id}`,
688
+ `Status: ${status}`,
689
+ `Model: ${model}`,
690
+ `Workspace: ${cwd}`,
691
+ ].join('\n');
692
+ }
357
693
  //# sourceMappingURL=codex-native-proxy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex-native-proxy.js","sourceRoot":"","sources":["../../../src/lib/codex-plugin/codex-native-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAuC,MAAM,oBAAoB,CAAA;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAkB,MAAM,IAAI,CAAA;AACpD,OAAO,EACL,mCAAmC,EACnC,8BAA8B,GAG/B,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AACjI,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAA;AAClF,OAAO,EAAE,uBAAuB,EAAiC,MAAM,aAAa,CAAA;AA6BpF,SAAS,WAAW,CAAC,OAAgC;IACnD,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;KACjF,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA6B,EAAE,MAAsC,EAAE,IAAY,EAAE,SAAoC,EAAE;IACnJ,mBAAmB,CAAC,MAAM,EAAE;QAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM;QACN,IAAI;QACJ,MAAM;KACP,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAgC;IAChE,MAAM,UAAU,GAAmB;QACjC,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,QAAQ;QACd,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;QACjC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,SAAS;QACjB,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE;QAC9C,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,QAAQ;QACnB,gBAAgB,EAAE,OAAO;QACzB,wBAAwB,EAAE,OAAO;KAClC,CAAA;IAED,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACjC,OAAO,qBAAqB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO;QACL,kBAAkB,EAAE,KAAK;QACzB,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;SACf;KACF,CAAA;AACH,CAAC;AAED,SAAS,2BAA2B;IAClC,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC;QACpC,cAAc,EAAE,MAAM;QACtB,UAAU,EAAE,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ;QACtE,SAAS,EAAE,yBAAyB;KACrC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,UAAmC,EAAE;IAC1E,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,KAAK,CAAA;IAClD,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACjC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,WAAW,CAAA;IAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAA;IACvC,MAAM,SAAS,GAAG,QAAQ,IAAI,IAAI,IAAI,EAAE,CAAA;IACxC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,MAAM,CAAA;IACzC,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,gCAAgC,CAAA;IAC7E,IAAI,KAAK,GAA0C,IAAI,CAAA;IACvD,IAAI,QAAQ,GAA2B,IAAI,CAAA;IAC3C,IAAI,YAAY,GAAqB,IAAI,CAAA;IACzC,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,iBAAiB,GAAyB,IAAI,CAAA;IAClD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAA;IACvD,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAGpC,CAAA;IACJ,IAAI,iBAAiB,GAAG,CAAC,CAAA;IACzB,MAAM,SAAS,GAAG,IAAI,GAAG,EAA4C,CAAA;IACrE,IAAI,kBAAkB,GAAwB,IAAI,CAAA;IAClD,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAChD,kBAAkB,GAAG,OAAO,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG,CAAC,MAAiC,EAAE,EAAE;QACvD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAM;QACR,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,QAAQ,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,OAAgC,EAAE,EAAE;QACtD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;QAC1D,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,MAA+B,EAAoB,EAAE;QAChG,MAAM,EAAE,GAAG,iBAAiB,iBAAiB,EAAE,EAAE,CAAA;QACjD,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QACrC,UAAU,CAAC;YACT,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM;YACN,MAAM;SACP,CAAC,CAAA;QAEF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,wBAAwB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,KAAK,IAAmB,EAAE;QAClD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAM;QACR,CAAC;QAED,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO,iBAAiB,CAAA;QAC1B,CAAC;QAED,iBAAiB,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,mBAAmB,CAAC,YAAY,EAAE;gBACtC,UAAU,EAAE;oBACV,IAAI,EAAE,yBAAyB;oBAC/B,OAAO,EAAE,OAAO;iBACjB;gBACD,YAAY,EAAE;oBACZ,eAAe,EAAE,IAAI;iBACtB;aACF,CAAC,CAAA;YACF,UAAU,CAAC;gBACT,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,aAAa;aACtB,CAAC,CAAA;YACF,WAAW,GAAG,IAAI,CAAA;QACpB,CAAC,CAAC,EAAE,CAAA;QAEJ,IAAI,CAAC;YACH,MAAM,iBAAiB,CAAA;QACzB,CAAC;gBAAS,CAAC;YACT,iBAAiB,GAAG,IAAI,CAAA;QAC1B,CAAC;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,OAAgC,EAAE,EAAE;QACtD,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,UAAU,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;YACnE,OAAM;QACR,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;IAC5C,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAgC,EAAiB,EAAE;QACpF,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;QAEvE,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;YAC5B,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAA;YACrF,OAAM;QACR,CAAC;QAED,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;YAC9B,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,4BAA4B,EAAE,EAAE,CAAC,CAAA;YACtF,OAAM;QACR,CAAC;QAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAA;YAC/H,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;YAClE,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC1C,OAAO,IAAI,KAAK,QAAQ;mBACrB,IAAI,KAAK,IAAI;mBACZ,IAAgC,CAAC,IAAI,KAAK,MAAM;mBACjD,OAAQ,IAAgC,CAAC,IAAI,KAAK,QAAQ,CAC9D,CAAwC,CAAA;YACzC,IAAI,OAAO,SAAS,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;YACrG,CAAC;QACH,CAAC;QAED,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,OAAM;QACR,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACtC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;QACvD,CAAC;QACD,UAAU,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,KAAK,EAAE,OAAgC,EAAiB,EAAE;QACnF,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;QAC7E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;gBACpC,UAAU,CAAC,QAA8C,CAAC,CAAA;YAC5D,CAAC;YACD,OAAM;QACR,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACtC,MAAM,eAAe,GAAG,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;YACxE,IAAI,eAAe,EAAE,CAAC;gBACpB,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;gBACnD,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACxC,MAAM,MAAM,GAAG,OAAQ,OAAO,CAAC,KAAiC,CAAC,OAAO,KAAK,QAAQ;wBACnF,CAAC,CAAE,OAAO,CAAC,KAAiC,CAAC,OAAiB;wBAC9D,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBACjC,eAAe,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;gBAC3C,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACzC,CAAC;YACH,CAAC;YAED,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;YACnE,IAAI,aAAa,EAAE,CAAC;gBAClB,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;gBAEhD,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;oBACrC,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAA;oBAC/H,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAA;oBAC5H,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;wBAClC,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,EAAE,CAAA;oBACrC,CAAC;oBACD,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;wBACnC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;oBACzB,CAAC;oBACD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACrC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;oBAC7B,CAAC;oBACD,oBAAoB,CAAC,MAAM,CAAC,CAAA;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;QAED,UAAU,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC,CAAA;IAED,OAAO;QACL,MAAM;QACN,SAAS;QACT,KAAK,CAAC,KAAK;YACT,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAM;YACR,CAAC;YACD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;YACzD,CAAC;YACD,OAAO,GAAG,IAAI,CAAA;YAEd,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE;gBAC5C,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;aAChC,CAAC,CAAA;YACF,MAAM,WAAW,GAAG,KAAK,CAAA;YACzB,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACvC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YAEvC,IAAI,YAAY,GAAG,EAAE,CAAA;YACrB,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC9C,YAAY,IAAI,KAAK,CAAA;gBACrB,IAAI,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBAC7C,OAAO,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;oBACnE,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAA;oBACnD,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;wBAChB,IAAI,MAAM,GAAmC,IAAI,CAAA;wBACjD,IAAI,CAAC;4BACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAA;wBACtD,CAAC;wBAAC,MAAM,CAAC;4BACP,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;wBAC1C,CAAC;wBAED,IAAI,MAAM,EAAE,CAAC;4BACX,MAAM,MAAM,GAAG,mCAAmC,CAAC,MAAM,CAAC,CAAA;4BAC1D,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;4BAChD,UAAU,CAAC,MAAM,CAAC,CAAA;4BAClB,KAAK,kBAAkB,CAAC,MAAM,CAAC,CAAA;wBACjC,CAAC;oBACH,CAAC;oBACD,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBAC3C,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;gBACjC,IAAI,IAAI,EAAE,CAAC;oBACT,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;gBAC1C,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;gBACtC,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,EAAE;oBAChD,MAAM,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;oBAC3C,QAAQ,EAAE,IAAI;oBACd,MAAM;oBACN,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,4BAA4B,IAAI,IAAI,MAAM,IAAI,MAAM,GAAG;iBACxF,CAAC,CAAA;gBACF,oBAAoB,CAAC,WAAW,CAAC,CAAA;gBACjC,KAAK,YAAY,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;gBACrD,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,KAAK,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,QAAQ,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAC9C,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnC,YAAY,GAAG,MAAM,CAAA;gBACrB,GAAG,CAAC,KAAK,CAAC,wCAAwC,SAAS,IAAI,CAAC,CAAA;gBAEhE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;oBAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;oBAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;wBACjB,OAAM;oBACR,CAAC;oBAED,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAA;wBAC1D,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,8BAA8B,CAAC,MAAM,CAAC,CAAC,CAAA;wBAChF,KAAK,mBAAmB,CAAC,MAAM,CAAC,CAAA;oBAClC,CAAC;oBAAC,MAAM,CAAC;wBACP,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;oBAC1C,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACtB,YAAY,GAAG,IAAI,CAAA;gBACrB,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;YAC9C,CAAC,CAAC,CAAA;YAEF,MAAM,iBAAiB,EAAE,CAAA;YACzB,kBAAkB,EAAE,EAAE,CAAA;YACtB,GAAG,CAAC,KAAK,CAAC,wCAAwC,SAAS,IAAI,CAAC,CAAA;YAChE,MAAM,WAAW,CAAA;QACnB,CAAC;QACD,KAAK,CAAC,WAAW;YACf,MAAM,iBAAiB,EAAE,CAAA;YACzB,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC5B,OAAO,MAAM,CAAC,gBAAgB,CAAA;YAChC,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE;gBACvD,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,cAAc,EAAE,OAAO;gBACvB,OAAO,EAAE,iBAAiB;aAC3B,CAA4B,CAAA;YAC7B,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAA;YAC5H,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAA;YACpF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAChE,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,KAAa;YAC1B,MAAM,iBAAiB,EAAE,CAAA;YACzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;YAEzC,UAAU,CAAC;gBACT,OAAO,EAAE,KAAK;gBACd,EAAE,EAAE,aAAa,IAAI,CAAC,GAAG,EAAE,EAAE;gBAC7B,MAAM,EAAE,YAAY;gBACpB,MAAM,EAAE;oBACN,QAAQ;oBACR,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;iBACvC;aACF,CAAC,CAAA;QACJ,CAAC;QACD,SAAS,CAAC,QAAkD;YAC1D,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACvB,OAAO,GAAG,EAAE;gBACV,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC5B,CAAC,CAAA;QACH,CAAC;QACD,KAAK,CAAC,KAAK;YACT,MAAM,GAAG,IAAI,CAAA;YACb,YAAY,EAAE,KAAK,EAAE,CAAA;YACrB,QAAQ,EAAE,KAAK,EAAE,CAAA;YACjB,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC3B,KAAK,CAAC,IAAI,EAAE,CAAA;YACd,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"codex-native-proxy.js","sourceRoot":"","sources":["../../../src/lib/codex-plugin/codex-native-proxy.ts"],"names":[],"mappings":"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"}