grok-bot-cli 0.10.1 → 0.10.2

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.
@@ -8137,13 +8137,22 @@ var __webpack_modules__ = {
8137
8137
  const observationFields = {
8138
8138
  expectedCwd: zod__rspack_import_3.YjP().min(1).optional(),
8139
8139
  threadId: id,
8140
- timeoutMs: zod__rspack_import_3.aig().int().min(1).max(600000).optional()
8140
+ timeoutMs: zod__rspack_import_3.aig().int().min(1).max(7200000).optional()
8141
8141
  };
8142
8142
  const sendFields = {
8143
8143
  ...observationFields,
8144
8144
  correlationId: id.optional(),
8145
8145
  envelope: zod__rspack_import_3.zMY().optional(),
8146
8146
  hop: zod__rspack_import_3.aig().int().min(0).optional(),
8147
+ model: zod__rspack_import_3.YjP().regex(/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/).optional(),
8148
+ effort: zod__rspack_import_3.k5n([
8149
+ 'none',
8150
+ 'minimal',
8151
+ 'low',
8152
+ 'medium',
8153
+ 'high',
8154
+ 'xhigh'
8155
+ ]).optional(),
8147
8156
  replyTo: id.optional(),
8148
8157
  expectedTurnId: id.optional(),
8149
8158
  whenBusy: zod__rspack_import_3.k5n([
@@ -8165,7 +8174,9 @@ var __webpack_modules__ = {
8165
8174
  maxOutputBytes: zod__rspack_import_3.aig().int().min(1).max(4194304).optional()
8166
8175
  }).strict();
8167
8176
  const watchSchema = zod__rspack_import_3.Ikc({
8168
- ...observationFields,
8177
+ expectedCwd: zod__rspack_import_3.YjP().min(1).optional(),
8178
+ threadId: id,
8179
+ timeoutMs: zod__rspack_import_3.aig().int().min(1).max(600000).optional(),
8169
8180
  maxEvents: zod__rspack_import_3.aig().int().min(1).max(500).default(100)
8170
8181
  }).strict();
8171
8182
  const threadsSchema = zod__rspack_import_3.Ikc({
@@ -8222,6 +8233,8 @@ var __webpack_modules__ = {
8222
8233
  envelope,
8223
8234
  whenBusy: input.whenBusy,
8224
8235
  expectedCwd: input.expectedCwd,
8236
+ model: input.model,
8237
+ effort: input.effort,
8225
8238
  signal
8226
8239
  });
8227
8240
  }
@@ -8234,7 +8247,9 @@ var __webpack_modules__ = {
8234
8247
  receipt = await conversation.send(input.message, {
8235
8248
  envelope,
8236
8249
  whenBusy: input.whenBusy,
8237
- expectedTurnId: input.expectedTurnId
8250
+ expectedTurnId: input.expectedTurnId,
8251
+ model: input.model,
8252
+ effort: input.effort
8238
8253
  });
8239
8254
  if (!input.wait || receipt.delivery !== 'accepted' || !receipt.turnId) return receipt;
8240
8255
  await progress?.(`Accepted message ${receipt.messageId}; observing turn ${receipt.turnId}`);
@@ -8525,7 +8540,9 @@ var __webpack_modules__ = {
8525
8540
  requestId: input.requestId,
8526
8541
  busyPolicy: input.whenBusy,
8527
8542
  hop: input.hop,
8528
- correlationId: input.correlationId
8543
+ correlationId: input.correlationId,
8544
+ model: input.model,
8545
+ effort: input.effort
8529
8546
  }, options(context)));
8530
8547
  }
8531
8548
  __webpack_require__.d(__webpack_exports__, {
@@ -8697,6 +8714,91 @@ var __webpack_modules__ = {
8697
8714
  "default": __rspack_default_export
8698
8715
  });
8699
8716
  },
8717
+ "./src/mcp/grok-bot/tools/codex_new.tsx" (__unused_rspack_module, __webpack_exports__, __webpack_require__) {
8718
+ __webpack_require__.r(__webpack_exports__);
8719
+ var react_jsx_runtime__rspack_import_0 = __webpack_require__("./node_modules/react/jsx-runtime.react-server.js");
8720
+ var _agent_bundle_runtime__rspack_import_6 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/506.js");
8721
+ var agent_bundle_routes__rspack_import_1 = __webpack_require__("./node_modules/agent-bundle/dist/routes.js");
8722
+ var zod__rspack_import_5 = __webpack_require__("./node_modules/zod/v4/classic/schemas.js");
8723
+ var _core_codex_bridge_js__rspack_import_2 = __webpack_require__("./src/core/codex-bridge.js");
8724
+ var _core_codex_contract_js__rspack_import_3 = __webpack_require__("./src/core/codex/contract.js");
8725
+ var _core_codex_routes_js__rspack_import_4 = __webpack_require__("./src/core/codex/routes.ts");
8726
+ const inputSchema = zod__rspack_import_5.Ikc({
8727
+ cwd: zod__rspack_import_5.YjP().min(1),
8728
+ expectedCwd: zod__rspack_import_5.YjP().min(1).optional(),
8729
+ model: zod__rspack_import_5.YjP().regex(/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/).optional(),
8730
+ effort: zod__rspack_import_5.k5n([
8731
+ 'none',
8732
+ 'minimal',
8733
+ 'low',
8734
+ 'medium',
8735
+ 'high',
8736
+ 'xhigh'
8737
+ ]).optional(),
8738
+ message: zod__rspack_import_5.YjP().min(1).optional()
8739
+ }).strict();
8740
+ const __rspack_default_export = (0, agent_bundle_routes__rspack_import_1.uO)({
8741
+ excludeClients: [
8742
+ 'codex'
8743
+ ],
8744
+ title: 'Codex new thread',
8745
+ description: 'Start a new Codex thread on this machine in cwd, optionally sending its first message. Codex must run locally on the same machine as gbot.',
8746
+ annotations: {
8747
+ readOnlyHint: false
8748
+ },
8749
+ inputSchema,
8750
+ resultSchema: _core_codex_routes_js__rspack_import_4.FD,
8751
+ inputJsonSchema: {
8752
+ type: 'object',
8753
+ additionalProperties: false,
8754
+ properties: {
8755
+ cwd: {
8756
+ type: 'string'
8757
+ },
8758
+ expectedCwd: {
8759
+ type: 'string'
8760
+ },
8761
+ model: {
8762
+ type: 'string'
8763
+ },
8764
+ effort: {
8765
+ type: 'string',
8766
+ enum: [
8767
+ 'none',
8768
+ 'minimal',
8769
+ 'low',
8770
+ 'medium',
8771
+ 'high',
8772
+ 'xhigh'
8773
+ ]
8774
+ },
8775
+ message: {
8776
+ type: 'string'
8777
+ }
8778
+ },
8779
+ required: [
8780
+ 'cwd'
8781
+ ]
8782
+ }
8783
+ }, async (input)=>{
8784
+ let out;
8785
+ try {
8786
+ out = await (0, _core_codex_bridge_js__rspack_import_2.QC)(input);
8787
+ } catch (error) {
8788
+ out = (0, _core_codex_contract_js__rspack_import_3.DG)(error);
8789
+ }
8790
+ return (0, react_jsx_runtime__rspack_import_0.jsx)(_agent_bundle_runtime__rspack_import_6.g.Result, {
8791
+ value: out,
8792
+ children: (0, react_jsx_runtime__rspack_import_0.jsx)(_agent_bundle_runtime__rspack_import_6.g.Text, {
8793
+ children: out.threadId && !('delivery' in out) ? `Started Codex thread ${out.threadId}` : (0, _core_codex_routes_js__rspack_import_4.D6)(out)
8794
+ })
8795
+ });
8796
+ });
8797
+ __webpack_require__.d(__webpack_exports__, {}, {
8798
+ "default": __rspack_default_export,
8799
+ inputSchema: inputSchema
8800
+ });
8801
+ },
8700
8802
  "./src/mcp/grok-bot/tools/codex_send.tsx" (__unused_rspack_module, __webpack_exports__, __webpack_require__) {
8701
8803
  __webpack_require__.r(__webpack_exports__);
8702
8804
  var react_jsx_runtime__rspack_import_0 = __webpack_require__("./node_modules/react/jsx-runtime.react-server.js");
@@ -8730,7 +8832,7 @@ var __webpack_modules__ = {
8730
8832
  readOnlyHint: false
8731
8833
  },
8732
8834
  render: {
8733
- maxElapsedMs: 660000
8835
+ maxElapsedMs: 7260000
8734
8836
  },
8735
8837
  inputSchema,
8736
8838
  resultSchema,
@@ -8740,6 +8842,20 @@ var __webpack_modules__ = {
8740
8842
  expectedCwd: {
8741
8843
  type: 'string'
8742
8844
  },
8845
+ model: {
8846
+ type: 'string'
8847
+ },
8848
+ effort: {
8849
+ type: 'string',
8850
+ enum: [
8851
+ 'none',
8852
+ 'minimal',
8853
+ 'low',
8854
+ 'medium',
8855
+ 'high',
8856
+ 'xhigh'
8857
+ ]
8858
+ },
8743
8859
  threadId: {
8744
8860
  type: 'string'
8745
8861
  },
@@ -8892,7 +9008,7 @@ var __webpack_modules__ = {
8892
9008
  readOnlyHint: true
8893
9009
  },
8894
9010
  render: {
8895
- maxElapsedMs: 660000
9011
+ maxElapsedMs: 7260000
8896
9012
  },
8897
9013
  inputSchema: _core_codex_routes_js__rspack_import_2.jS,
8898
9014
  resultSchema: _core_codex_routes_js__rspack_import_2.FD,
@@ -8908,7 +9024,7 @@ var __webpack_modules__ = {
8908
9024
  },
8909
9025
  "timeoutMs": {
8910
9026
  "type": "number",
8911
- "description": "Observation timeout: 1-600000 milliseconds."
9027
+ "description": "Observation timeout: 1-7200000 milliseconds."
8912
9028
  },
8913
9029
  "turnId": {
8914
9030
  "type": "string"
@@ -20456,7 +20572,7 @@ var __webpack_modules__ = {
20456
20572
  var _codex_contract_js__rspack_import_7 = __webpack_require__("./src/core/codex/contract.js");
20457
20573
  var _desktop_shim_js__rspack_import_8 = __webpack_require__("./src/core/desktop-shim.js");
20458
20574
  var _user_machine_guidance_js__rspack_import_9 = __webpack_require__("./src/core/user-machine-guidance.js");
20459
- const PINNED_CODEX_VERSION = "0.154.0";
20575
+ const PINNED_CODEX_VERSION = "0.158.0";
20460
20576
  const UPSTREAM_DESKTOP_ISSUES = [
20461
20577
  "https://github.com/openai/codex/issues/41014",
20462
20578
  "https://github.com/openai/codex/issues/41112"
@@ -20516,7 +20632,7 @@ var __webpack_modules__ = {
20516
20632
  "Either no daemon is running (start one with `codex app-server daemon start` or bootstrap),",
20517
20633
  "or ChatGPT Desktop is running a private stdio app-server that external clients cannot reach",
20518
20634
  "(" + UPSTREAM_DESKTOP_ISSUES.join(", ") + ").",
20519
- "gbot connects only to this machine's local socket; it has no remote transport.",
20635
+ "Codex must run on the same machine as gbot. Set CODEX_APP_SERVER_SOCK to an existing local control socket if it is elsewhere; gbot has no remote transport.",
20520
20636
  "gbot codex targets daemon-managed threads only."
20521
20637
  ].join("\n");
20522
20638
  }
@@ -21160,6 +21276,47 @@ var __webpack_modules__ = {
21160
21276
  };
21161
21277
  }
21162
21278
  const openSession = openCodexSession;
21279
+ async function startCodexThread({ cwd, expectedCwd, model, effort, message, env = process.env, signal } = {}) {
21280
+ validateModelEffort(model, effort);
21281
+ if (typeof cwd !== "string" || !cwd.trim()) throw new RangeError("--cwd is required for a new Codex thread");
21282
+ const resolvedCwd = (0, node_fs__rspack_import_1.realpathSync)(cwd);
21283
+ if (expectedCwd !== undefined && (0, node_fs__rspack_import_1.realpathSync)(expectedCwd) !== resolvedCwd) throw new RangeError("New Codex thread cwd does not match expectedCwd");
21284
+ if (message !== undefined && (typeof message !== "string" || !message.trim())) throw new RangeError("Message must contain text");
21285
+ const { client } = await openSession(env, {
21286
+ signal
21287
+ });
21288
+ let threadId, started;
21289
+ try {
21290
+ started = await client.request("thread/start", {
21291
+ cwd: resolvedCwd,
21292
+ ...model ? {
21293
+ model
21294
+ } : {},
21295
+ ...effort ? {
21296
+ config: {
21297
+ model_reasoning_effort: effort
21298
+ }
21299
+ } : {}
21300
+ });
21301
+ threadId = started?.thread?.id;
21302
+ if (typeof threadId !== "string" || !ID_PATTERN.test(threadId)) throw new CodexProtocolError("thread/start", "missing `thread.id`");
21303
+ } finally{
21304
+ client.close();
21305
+ }
21306
+ if (message === undefined) return {
21307
+ threadId,
21308
+ cwd: resolvedCwd,
21309
+ model: started.model ?? model,
21310
+ exitCode: 0
21311
+ };
21312
+ return await sendToCodexThread(threadId, message, {
21313
+ env,
21314
+ expectedCwd: resolvedCwd,
21315
+ model,
21316
+ effort,
21317
+ signal
21318
+ });
21319
+ }
21163
21320
  const CODEX_VERSION_PROBE_TIMEOUT_MS = 3000;
21164
21321
  function probeLocalCodexVersion(timeoutMs = CODEX_VERSION_PROBE_TIMEOUT_MS) {
21165
21322
  const out = spawnSync("codex", [
@@ -21458,7 +21615,7 @@ var __webpack_modules__ = {
21458
21615
  }
21459
21616
  function requireExperimental(env, what) {
21460
21617
  if (experimentalEnabled(env)) return;
21461
- throw new CodexSendError(what + " uses Codex's experimental app-server API (thread/queue/*), which is off by default. " + "Set GROK_BOT_CODEX_EXPERIMENTAL=1 to opt in; method names are pinned to Codex " + PINNED_CODEX_VERSION + ".", {
21618
+ throw new CodexSendError(what + " needs thread/queue/add, which is experimental and absent from Codex " + PINNED_CODEX_VERSION + "'s stable API. " + "Use --when-busy steer with an expected turn ID, wait until the thread is idle, or opt in with GROK_BOT_CODEX_EXPERIMENTAL=1 on a Codex daemon that supports the experimental queue API.", {
21462
21619
  delivery: "rejected",
21463
21620
  reason: "experimental-disabled"
21464
21621
  });
@@ -21466,7 +21623,7 @@ var __webpack_modules__ = {
21466
21623
  function unsupportedOrRpc(err, method, threadId, envelope, turnId) {
21467
21624
  const guarded = method === "turn/steer";
21468
21625
  if (err instanceof CodexRpcError && err.rpc && err.rpc.code === -32601) {
21469
- return new CodexSendError("Codex app-server does not offer " + method + " (daemon predates it, or experimentalApi was not granted). " + (guarded ? "Upgrade Codex before retrying guarded steering." : "Upgrade Codex or send without --when-busy queue."), {
21626
+ return new CodexSendError("Codex app-server does not offer " + method + " (daemon predates it, or experimentalApi was not granted). " + (guarded ? "Upgrade Codex before retrying guarded steering." : "Use --when-busy steer with an expected turn ID, wait for idle, or use a Codex daemon with experimental queue support and GROK_BOT_CODEX_EXPERIMENTAL=1."), {
21470
21627
  delivery: "rejected",
21471
21628
  reason: "unsupported",
21472
21629
  threadId,
@@ -21523,7 +21680,7 @@ var __webpack_modules__ = {
21523
21680
  }
21524
21681
  async function sendToCodexThread(threadId, text, { env = process.env, envelope = buildEnvelope({
21525
21682
  env
21526
- }), whenBusy = "reject", session, expectedTurnId, expectedCwd, signal } = {}) {
21683
+ }), whenBusy = "reject", session, expectedTurnId, expectedCwd, model, effort, signal } = {}) {
21527
21684
  try {
21528
21685
  const receipt = await sendToCodexThreadInner(threadId, text, {
21529
21686
  env,
@@ -21532,6 +21689,8 @@ var __webpack_modules__ = {
21532
21689
  session,
21533
21690
  expectedTurnId,
21534
21691
  expectedCwd,
21692
+ model,
21693
+ effort,
21535
21694
  signal
21536
21695
  });
21537
21696
  return (0, _codex_contract_js__rspack_import_7.Dz)(receipt);
@@ -21543,7 +21702,19 @@ var __webpack_modules__ = {
21543
21702
  return (0, _codex_contract_js__rspack_import_7.DG)(err);
21544
21703
  }
21545
21704
  }
21546
- async function sendToCodexThreadInner(threadId, text, { env, envelope, whenBusy, session, expectedTurnId, expectedCwd, signal }) {
21705
+ function validateModelEffort(model, effort) {
21706
+ if (model !== undefined && (typeof model !== "string" || !/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/.test(model))) throw new RangeError("--model must be a nonempty model ID");
21707
+ if (effort !== undefined && ![
21708
+ "none",
21709
+ "minimal",
21710
+ "low",
21711
+ "medium",
21712
+ "high",
21713
+ "xhigh"
21714
+ ].includes(effort)) throw new RangeError("--effort must be none, minimal, low, medium, high, or xhigh");
21715
+ }
21716
+ async function sendToCodexThreadInner(threadId, text, { env, envelope, whenBusy, session, expectedTurnId, expectedCwd, model, effort, signal }) {
21717
+ validateModelEffort(model, effort);
21547
21718
  if (![
21548
21719
  "reject",
21549
21720
  "queue",
@@ -21589,7 +21760,15 @@ var __webpack_modules__ = {
21589
21760
  try {
21590
21761
  resumed = await client.request("thread/resume", {
21591
21762
  threadId,
21592
- excludeTurns: true
21763
+ excludeTurns: true,
21764
+ ...model ? {
21765
+ model
21766
+ } : {},
21767
+ ...effort ? {
21768
+ config: {
21769
+ model_reasoning_effort: effort
21770
+ }
21771
+ } : {}
21593
21772
  });
21594
21773
  } catch (err) {
21595
21774
  assertNotCancelled();
@@ -21722,7 +21901,13 @@ var __webpack_modules__ = {
21722
21901
  }
21723
21902
  ],
21724
21903
  clientUserMessageId: envelope.messageId,
21725
- turnTrigger: "gbot"
21904
+ turnTrigger: "gbot",
21905
+ ...model ? {
21906
+ model
21907
+ } : {},
21908
+ ...effort ? {
21909
+ effort
21910
+ } : {}
21726
21911
  });
21727
21912
  } catch (err) {
21728
21913
  if (err instanceof CodexSendError) throw err;
@@ -21779,6 +21964,7 @@ var __webpack_modules__ = {
21779
21964
  __webpack_require__.d(__webpack_exports__, {
21780
21965
  $3: ()=>assertThreadAllowed,
21781
21966
  Mr: ()=>withEnvelopeHeader,
21967
+ QC: ()=>startCodexThread,
21782
21968
  X$: ()=>listCodexThreads,
21783
21969
  ZS: ()=>sendToCodexThread,
21784
21970
  e0: ()=>experimentalEnabled,
@@ -21993,10 +22179,10 @@ var __webpack_modules__ = {
21993
22179
  ];
21994
22180
  if (afterMessageId !== undefined) boundedInteger(anchors.length, 200, 'afterMessageId count');
21995
22181
  for (const anchor of anchors)conversationId(anchor, 'afterMessageId');
21996
- boundedInteger(timeoutMs, 600000, 'timeoutMs');
22182
+ boundedInteger(timeoutMs, 7200000, 'timeoutMs');
21997
22183
  boundedInteger(maxOutputBytes, BUDGET, 'maxOutputBytes');
21998
22184
  if (waitSignal !== undefined && !(waitSignal instanceof AbortSignal)) throw new TypeError('signal must be an AbortSignal');
21999
- let done = false, status = acceptedTurns.has(turnId) ? 'inProgress' : undefined, error, historyError, itemBytes = 0, truncated = overflow;
22185
+ let done = false, status = acceptedTurns.has(turnId) ? 'inProgress' : undefined, error, historyError, itemBytes = 0, truncated = false;
22000
22186
  const items = new Map();
22001
22187
  const add = (item)=>{
22002
22188
  if (!item || typeof item.id !== 'string' || typeof item.type !== 'string') throw new Error('Invalid history item');
@@ -22043,6 +22229,7 @@ var __webpack_modules__ = {
22043
22229
  };
22044
22230
  const result = (state, detail)=>{
22045
22231
  const interactions = scan();
22232
+ const overflowUncertain = state === 'unknown' && /Notification coverage overflow/.test(detail ?? '');
22046
22233
  const candidates = [
22047
22234
  ...items.values()
22048
22235
  ].map((x)=>x.item);
@@ -22051,7 +22238,7 @@ var __webpack_modules__ = {
22051
22238
  const reply = {
22052
22239
  text: '',
22053
22240
  items: [],
22054
- truncated: truncated || overflow
22241
+ truncated: truncated || overflowUncertain
22055
22242
  };
22056
22243
  for (const item of selected){
22057
22244
  const text = reply.text ? `${reply.text}\n${item.text}` : item.text;
@@ -22084,7 +22271,7 @@ var __webpack_modules__ = {
22084
22271
  interactions
22085
22272
  };
22086
22273
  };
22087
- let timer, notify;
22274
+ let timer, pollTimer, notify;
22088
22275
  const abortSignals = [
22089
22276
  signal,
22090
22277
  waitSignal
@@ -22100,10 +22287,18 @@ var __webpack_modules__ = {
22100
22287
  'Codex connection closed'
22101
22288
  ]);
22102
22289
  };
22103
- timer = setTimeout(()=>resolve([
22290
+ timer = setTimeout(()=>resolve(overflow ? [
22291
+ 'unknown',
22292
+ 'Notification coverage overflow; pending interaction status is uncertain'
22293
+ ] : [
22104
22294
  'timeout',
22105
22295
  'Observation deadline reached'
22106
22296
  ]), timeoutMs);
22297
+ pollTimer = setInterval(()=>{
22298
+ for (const listener of [
22299
+ ...wake
22300
+ ])listener();
22301
+ }, 2000);
22107
22302
  for (const s of abortSignals)s.addEventListener('abort', notify, {
22108
22303
  once: true
22109
22304
  });
@@ -22174,19 +22369,51 @@ var __webpack_modules__ = {
22174
22369
  historyError
22175
22370
  ];
22176
22371
  }
22372
+ let lastPoll = 0;
22177
22373
  while(!done){
22178
22374
  const interactions = scan();
22179
22375
  if (terminal(status)) return [
22180
22376
  status,
22181
22377
  error ?? historyError
22182
22378
  ];
22183
- if (historyError || overflow) return [
22379
+ if (historyError) return [
22184
22380
  'unknown',
22185
- historyError ?? 'Notification coverage overflow'
22381
+ historyError
22186
22382
  ];
22187
22383
  if (interactions.length) return [
22188
22384
  'waiting-for-input'
22189
22385
  ];
22386
+ if (Date.now() - lastPoll >= 2000) {
22387
+ lastPoll = Date.now();
22388
+ try {
22389
+ await visitCodexHistory(session, threadId, 'thread/turns/list', {}, (data)=>{
22390
+ const turn = data.find((t)=>t?.id === turnId);
22391
+ if (!turn) return false;
22392
+ if (terminal(turn.status)) {
22393
+ status = turn.status;
22394
+ error = turn.error;
22395
+ }
22396
+ return true;
22397
+ }, {
22398
+ stopped: ()=>done
22399
+ });
22400
+ if (terminal(status)) {
22401
+ await visitCodexHistory(session, threadId, 'thread/items/list', {
22402
+ turnId,
22403
+ sortDirection: 'asc'
22404
+ }, (data)=>{
22405
+ for (const row of data)if (row?.turnId === turnId && row.item) add(row.item);
22406
+ return false;
22407
+ }, {
22408
+ stopped: ()=>done
22409
+ });
22410
+ continue;
22411
+ }
22412
+ } catch (err) {
22413
+ historyError = err.message;
22414
+ truncated = true;
22415
+ }
22416
+ }
22190
22417
  await new Promise((resolve)=>{
22191
22418
  const listener = ()=>{
22192
22419
  wake.delete(listener);
@@ -22209,6 +22436,7 @@ var __webpack_modules__ = {
22209
22436
  } finally{
22210
22437
  done = true;
22211
22438
  clearTimeout(timer);
22439
+ clearInterval(pollTimer);
22212
22440
  wake.delete(notify);
22213
22441
  for (const s of abortSignals)s.removeEventListener('abort', notify);
22214
22442
  for (const listener of [
@@ -22256,7 +22484,7 @@ var __webpack_modules__ = {
22256
22484
  close,
22257
22485
  async send (text, { envelope = (0, _codex_bridge_js__rspack_import_2.nq)({
22258
22486
  env
22259
- }), whenBusy = 'reject', expectedTurnId, signal: sendSignal } = {}) {
22487
+ }), whenBusy = 'reject', expectedTurnId, model, effort, signal: sendSignal } = {}) {
22260
22488
  if (closed) return (0, _contract_js__rspack_import_0.DG)(Object.assign(new Error('Conversation closed'), {
22261
22489
  delivery: 'rejected',
22262
22490
  reason: 'closed',
@@ -22275,6 +22503,8 @@ var __webpack_modules__ = {
22275
22503
  expectedTurnId,
22276
22504
  session,
22277
22505
  expectedCwd,
22506
+ model,
22507
+ effort,
22278
22508
  signal: submissionSignal
22279
22509
  });
22280
22510
  if (receipt.delivery === 'accepted' && receipt.turnId) {
@@ -24179,7 +24409,7 @@ ts() { date -u +%Y-%m-%dT%H:%M:%SZ; }
24179
24409
  "./src/core/user-machine-guidance.js" (__unused_rspack___webpack_module__, __webpack_exports__, __webpack_require__) {
24180
24410
  const USER_MACHINE_CODEX_CLAUDE_GUIDANCE = [
24181
24411
  "Codex and Claude sessions live on the user's registered machines (for example their Linux desktop or Mac), not on the Grok Bot agent box (/home/box).",
24182
- "gbot connects only to a local Unix socket ($CODEX_HOME/app-server-control/app-server-control.sock, or CODEX_APP_SERVER_SOCK). There is no remote transport.",
24412
+ "Codex must run on the same machine as gbot. Set CODEX_APP_SERVER_SOCK to an existing local control socket, or use $CODEX_HOME/app-server-control/app-server-control.sock. There is no remote transport.",
24183
24413
  "When running on the box (HOME=/home/box), do not call codex_* or claude_send there. Run the gbot CLI on the user's machine through Grok Bot Shell with a machineId (the host's machine-targeted shell).",
24184
24414
  "On that machine, provide the socket with `codex app-server daemon start` (or bootstrap). Auth stays with each machine's native Codex or Claude login; gbot does not store or export credentials."
24185
24415
  ].join("\n");
@@ -24199,7 +24429,7 @@ ts() { date -u +%Y-%m-%dT%H:%M:%SZ; }
24199
24429
  },
24200
24430
  "./package.json" (module) {
24201
24431
  module.exports = {
24202
- "rE": "0.10.1"
24432
+ "rE": "0.10.2"
24203
24433
  };
24204
24434
  }
24205
24435
  };
@@ -24252,49 +24482,51 @@ function __webpack_require__(moduleId) {
24252
24482
  var __webpack_exports__ = {};
24253
24483
  var node_worker_threads__rspack_import_0 = __webpack_require__("node:worker_threads");
24254
24484
  var react__rspack_import_1 = __webpack_require__("./node_modules/react/react.react-server.js");
24255
- var _agent_bundle_runtime_flight_server__rspack_import_19 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/flight/server.js");
24256
- var _agent_bundle_runtime__rspack_import_16 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/49.js");
24257
- var _agent_bundle_runtime__rspack_import_17 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/736.js");
24258
- var _agent_bundle_runtime__rspack_import_18 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/506.js");
24485
+ var _agent_bundle_runtime_flight_server__rspack_import_20 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/flight/server.js");
24486
+ var _agent_bundle_runtime__rspack_import_17 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/49.js");
24487
+ var _agent_bundle_runtime__rspack_import_18 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/736.js");
24488
+ var _agent_bundle_runtime__rspack_import_19 = __webpack_require__("./node_modules/@agent-bundle/runtime/dist/506.js");
24259
24489
  var node_url__rspack_import_2 = __webpack_require__("node:url");
24260
24490
  var _src_mcp_grok_bot_tools_claude_send_tsx__rspack_import_3 = __webpack_require__("./src/mcp/grok-bot/tools/claude_send.tsx");
24261
- var _src_mcp_grok_bot_tools_codex_send_tsx__rspack_import_4 = __webpack_require__("./src/mcp/grok-bot/tools/codex_send.tsx");
24262
- var _src_mcp_grok_bot_tools_codex_threads_tsx__rspack_import_5 = __webpack_require__("./src/mcp/grok-bot/tools/codex_threads.tsx");
24263
- var _src_mcp_grok_bot_tools_codex_wait_tsx__rspack_import_6 = __webpack_require__("./src/mcp/grok-bot/tools/codex_wait.tsx");
24264
- var _src_mcp_grok_bot_tools_codex_watch_tsx__rspack_import_7 = __webpack_require__("./src/mcp/grok-bot/tools/codex_watch.tsx");
24265
- var _src_mcp_grok_bot_tools_gbot_bridge_start_tsx__rspack_import_8 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_bridge_start.tsx");
24266
- var _src_mcp_grok_bot_tools_gbot_bridge_status_tsx__rspack_import_9 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_bridge_status.tsx");
24267
- var _src_mcp_grok_bot_tools_gbot_bridge_stop_tsx__rspack_import_10 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_bridge_stop.tsx");
24268
- var _src_mcp_grok_bot_tools_gbot_codex_respond_tsx__rspack_import_11 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_codex_respond.tsx");
24269
- var _src_mcp_grok_bot_tools_gbot_grok_approvals_tsx__rspack_import_12 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_grok_approvals.tsx");
24270
- var _src_mcp_grok_bot_tools_gbot_grok_respond_tsx__rspack_import_13 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_grok_respond.tsx");
24271
- var _src_mcp_grok_bot_tools_gbot_send_tsx__rspack_import_14 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_send.tsx");
24272
- var _src_mcp_grok_bot_tools_gbot_thread_tsx__rspack_import_15 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_thread.tsx");
24491
+ var _src_mcp_grok_bot_tools_codex_new_tsx__rspack_import_4 = __webpack_require__("./src/mcp/grok-bot/tools/codex_new.tsx");
24492
+ var _src_mcp_grok_bot_tools_codex_send_tsx__rspack_import_5 = __webpack_require__("./src/mcp/grok-bot/tools/codex_send.tsx");
24493
+ var _src_mcp_grok_bot_tools_codex_threads_tsx__rspack_import_6 = __webpack_require__("./src/mcp/grok-bot/tools/codex_threads.tsx");
24494
+ var _src_mcp_grok_bot_tools_codex_wait_tsx__rspack_import_7 = __webpack_require__("./src/mcp/grok-bot/tools/codex_wait.tsx");
24495
+ var _src_mcp_grok_bot_tools_codex_watch_tsx__rspack_import_8 = __webpack_require__("./src/mcp/grok-bot/tools/codex_watch.tsx");
24496
+ var _src_mcp_grok_bot_tools_gbot_bridge_start_tsx__rspack_import_9 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_bridge_start.tsx");
24497
+ var _src_mcp_grok_bot_tools_gbot_bridge_status_tsx__rspack_import_10 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_bridge_status.tsx");
24498
+ var _src_mcp_grok_bot_tools_gbot_bridge_stop_tsx__rspack_import_11 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_bridge_stop.tsx");
24499
+ var _src_mcp_grok_bot_tools_gbot_codex_respond_tsx__rspack_import_12 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_codex_respond.tsx");
24500
+ var _src_mcp_grok_bot_tools_gbot_grok_approvals_tsx__rspack_import_13 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_grok_approvals.tsx");
24501
+ var _src_mcp_grok_bot_tools_gbot_grok_respond_tsx__rspack_import_14 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_grok_respond.tsx");
24502
+ var _src_mcp_grok_bot_tools_gbot_send_tsx__rspack_import_15 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_send.tsx");
24503
+ var _src_mcp_grok_bot_tools_gbot_thread_tsx__rspack_import_16 = __webpack_require__("./src/mcp/grok-bot/tools/gbot_thread.tsx");
24273
24504
  const route0 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_claude_send_tsx__rspack_import_3, 'default'), _src_mcp_grok_bot_tools_claude_send_tsx__rspack_import_3);
24274
- const route1 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_send_tsx__rspack_import_4, 'default'), _src_mcp_grok_bot_tools_codex_send_tsx__rspack_import_4);
24275
- const route2 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_threads_tsx__rspack_import_5, 'default'), _src_mcp_grok_bot_tools_codex_threads_tsx__rspack_import_5);
24276
- const route3 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_wait_tsx__rspack_import_6, 'default'), _src_mcp_grok_bot_tools_codex_wait_tsx__rspack_import_6);
24277
- const route4 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_watch_tsx__rspack_import_7, 'default'), _src_mcp_grok_bot_tools_codex_watch_tsx__rspack_import_7);
24278
- const route5 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_bridge_start_tsx__rspack_import_8, 'default'), _src_mcp_grok_bot_tools_gbot_bridge_start_tsx__rspack_import_8);
24279
- const route6 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_bridge_status_tsx__rspack_import_9, 'default'), _src_mcp_grok_bot_tools_gbot_bridge_status_tsx__rspack_import_9);
24280
- const route7 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_bridge_stop_tsx__rspack_import_10, 'default'), _src_mcp_grok_bot_tools_gbot_bridge_stop_tsx__rspack_import_10);
24281
- const route8 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_codex_respond_tsx__rspack_import_11, 'default'), _src_mcp_grok_bot_tools_gbot_codex_respond_tsx__rspack_import_11);
24282
- const route9 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_grok_approvals_tsx__rspack_import_12, 'default'), _src_mcp_grok_bot_tools_gbot_grok_approvals_tsx__rspack_import_12);
24283
- const route10 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_grok_respond_tsx__rspack_import_13, 'default'), _src_mcp_grok_bot_tools_gbot_grok_respond_tsx__rspack_import_13);
24284
- const route11 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_send_tsx__rspack_import_14, 'default'), _src_mcp_grok_bot_tools_gbot_send_tsx__rspack_import_14);
24285
- const route12 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_thread_tsx__rspack_import_15, 'default'), _src_mcp_grok_bot_tools_gbot_thread_tsx__rspack_import_15);
24505
+ const route1 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_new_tsx__rspack_import_4, 'default'), _src_mcp_grok_bot_tools_codex_new_tsx__rspack_import_4);
24506
+ const route2 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_send_tsx__rspack_import_5, 'default'), _src_mcp_grok_bot_tools_codex_send_tsx__rspack_import_5);
24507
+ const route3 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_threads_tsx__rspack_import_6, 'default'), _src_mcp_grok_bot_tools_codex_threads_tsx__rspack_import_6);
24508
+ const route4 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_wait_tsx__rspack_import_7, 'default'), _src_mcp_grok_bot_tools_codex_wait_tsx__rspack_import_7);
24509
+ const route5 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_codex_watch_tsx__rspack_import_8, 'default'), _src_mcp_grok_bot_tools_codex_watch_tsx__rspack_import_8);
24510
+ const route6 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_bridge_start_tsx__rspack_import_9, 'default'), _src_mcp_grok_bot_tools_gbot_bridge_start_tsx__rspack_import_9);
24511
+ const route7 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_bridge_status_tsx__rspack_import_10, 'default'), _src_mcp_grok_bot_tools_gbot_bridge_status_tsx__rspack_import_10);
24512
+ const route8 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_bridge_stop_tsx__rspack_import_11, 'default'), _src_mcp_grok_bot_tools_gbot_bridge_stop_tsx__rspack_import_11);
24513
+ const route9 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_codex_respond_tsx__rspack_import_12, 'default'), _src_mcp_grok_bot_tools_gbot_codex_respond_tsx__rspack_import_12);
24514
+ const route10 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_grok_approvals_tsx__rspack_import_13, 'default'), _src_mcp_grok_bot_tools_gbot_grok_approvals_tsx__rspack_import_13);
24515
+ const route11 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_grok_respond_tsx__rspack_import_14, 'default'), _src_mcp_grok_bot_tools_gbot_grok_respond_tsx__rspack_import_14);
24516
+ const route12 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_send_tsx__rspack_import_15, 'default'), _src_mcp_grok_bot_tools_gbot_send_tsx__rspack_import_15);
24517
+ const route13 = Object.assign({}, Reflect.get(_src_mcp_grok_bot_tools_gbot_thread_tsx__rspack_import_16, 'default'), _src_mcp_grok_bot_tools_gbot_thread_tsx__rspack_import_16);
24286
24518
  globalThis.__rspack_rsc_manifest__ ??= Object.freeze({
24287
24519
  clientManifest: Object.freeze({})
24288
24520
  });
24289
24521
  if (node_worker_threads__rspack_import_0.parentPort === null) throw new Error('Generated Flight worker requires a parent port.');
24290
24522
  process.stdout.write = process.stderr.write.bind(process.stderr);
24291
- const ARTIFACT_EPOCH = "gbot@0.10.1";
24523
+ const ARTIFACT_EPOCH = "gbot@0.10.2";
24292
24524
  const processLifetime = {
24293
24525
  hits: 0,
24294
24526
  instanceId: crypto.randomUUID(),
24295
24527
  pid: process.pid
24296
24528
  };
24297
- const pluginRoot = (0, _agent_bundle_runtime__rspack_import_16.E7)({
24529
+ const pluginRoot = (0, _agent_bundle_runtime__rspack_import_17.E7)({
24298
24530
  fallback: (0, node_url__rspack_import_2.fileURLToPath)(new URL('..', import.meta.url)),
24299
24531
  stateAnchor: 'user-data'
24300
24532
  });
@@ -24336,6 +24568,55 @@ const routes = Object.freeze({
24336
24568
  name: "claude_send",
24337
24569
  serverId: "mcp:grok-bot"
24338
24570
  }),
24571
+ "tool:grok-bot/codex_new": Object.freeze({
24572
+ config: {
24573
+ "annotations": {
24574
+ "readOnlyHint": false
24575
+ },
24576
+ "description": "Start a new Codex thread on this machine in cwd, optionally sending its first message. Codex must run locally on the same machine as gbot.",
24577
+ "excludeClients": [
24578
+ "codex"
24579
+ ],
24580
+ "inputJsonSchema": {
24581
+ "additionalProperties": false,
24582
+ "properties": {
24583
+ "cwd": {
24584
+ "type": "string"
24585
+ },
24586
+ "effort": {
24587
+ "enum": [
24588
+ "none",
24589
+ "minimal",
24590
+ "low",
24591
+ "medium",
24592
+ "high",
24593
+ "xhigh"
24594
+ ],
24595
+ "type": "string"
24596
+ },
24597
+ "expectedCwd": {
24598
+ "type": "string"
24599
+ },
24600
+ "message": {
24601
+ "type": "string"
24602
+ },
24603
+ "model": {
24604
+ "type": "string"
24605
+ }
24606
+ },
24607
+ "required": [
24608
+ "cwd"
24609
+ ],
24610
+ "type": "object"
24611
+ },
24612
+ "title": "Codex new thread"
24613
+ },
24614
+ id: "tool:grok-bot/codex_new",
24615
+ kind: "tool",
24616
+ module: route1,
24617
+ name: "codex_new",
24618
+ serverId: "mcp:grok-bot"
24619
+ }),
24339
24620
  "tool:grok-bot/codex_send": Object.freeze({
24340
24621
  config: {
24341
24622
  "annotations": {
@@ -24354,6 +24635,17 @@ const routes = Object.freeze({
24354
24635
  "correlationId": {
24355
24636
  "type": "string"
24356
24637
  },
24638
+ "effort": {
24639
+ "enum": [
24640
+ "none",
24641
+ "minimal",
24642
+ "low",
24643
+ "medium",
24644
+ "high",
24645
+ "xhigh"
24646
+ ],
24647
+ "type": "string"
24648
+ },
24357
24649
  "envelope": {
24358
24650
  "type": "boolean"
24359
24651
  },
@@ -24372,6 +24664,9 @@ const routes = Object.freeze({
24372
24664
  "message": {
24373
24665
  "type": "string"
24374
24666
  },
24667
+ "model": {
24668
+ "type": "string"
24669
+ },
24375
24670
  "replyTo": {
24376
24671
  "type": "string"
24377
24672
  },
@@ -24407,13 +24702,13 @@ const routes = Object.freeze({
24407
24702
  "type": "object"
24408
24703
  },
24409
24704
  "render": {
24410
- "maxElapsedMs": 660000
24705
+ "maxElapsedMs": 7260000
24411
24706
  },
24412
24707
  "title": "Codex send"
24413
24708
  },
24414
24709
  id: "tool:grok-bot/codex_send",
24415
24710
  kind: "tool",
24416
- module: route1,
24711
+ module: route2,
24417
24712
  name: "codex_send",
24418
24713
  serverId: "mcp:grok-bot"
24419
24714
  }),
@@ -24447,7 +24742,7 @@ const routes = Object.freeze({
24447
24742
  },
24448
24743
  id: "tool:grok-bot/codex_threads",
24449
24744
  kind: "tool",
24450
- module: route2,
24745
+ module: route3,
24451
24746
  name: "codex_threads",
24452
24747
  serverId: "mcp:grok-bot"
24453
24748
  }),
@@ -24477,7 +24772,7 @@ const routes = Object.freeze({
24477
24772
  "type": "string"
24478
24773
  },
24479
24774
  "timeoutMs": {
24480
- "description": "Observation timeout: 1-600000 milliseconds.",
24775
+ "description": "Observation timeout: 1-7200000 milliseconds.",
24481
24776
  "type": "number"
24482
24777
  },
24483
24778
  "turnId": {
@@ -24491,13 +24786,13 @@ const routes = Object.freeze({
24491
24786
  "type": "object"
24492
24787
  },
24493
24788
  "render": {
24494
- "maxElapsedMs": 660000
24789
+ "maxElapsedMs": 7260000
24495
24790
  },
24496
24791
  "title": "Codex wait"
24497
24792
  },
24498
24793
  id: "tool:grok-bot/codex_wait",
24499
24794
  kind: "tool",
24500
- module: route3,
24795
+ module: route4,
24501
24796
  name: "codex_wait",
24502
24797
  serverId: "mcp:grok-bot"
24503
24798
  }),
@@ -24540,7 +24835,7 @@ const routes = Object.freeze({
24540
24835
  },
24541
24836
  id: "tool:grok-bot/codex_watch",
24542
24837
  kind: "tool",
24543
- module: route4,
24838
+ module: route5,
24544
24839
  name: "codex_watch",
24545
24840
  serverId: "mcp:grok-bot"
24546
24841
  }),
@@ -24582,7 +24877,7 @@ const routes = Object.freeze({
24582
24877
  },
24583
24878
  id: "tool:grok-bot/gbot_bridge_start",
24584
24879
  kind: "tool",
24585
- module: route5,
24880
+ module: route6,
24586
24881
  name: "gbot_bridge_start",
24587
24882
  serverId: "mcp:grok-bot"
24588
24883
  }),
@@ -24608,7 +24903,7 @@ const routes = Object.freeze({
24608
24903
  },
24609
24904
  id: "tool:grok-bot/gbot_bridge_status",
24610
24905
  kind: "tool",
24611
- module: route6,
24906
+ module: route7,
24612
24907
  name: "gbot_bridge_status",
24613
24908
  serverId: "mcp:grok-bot"
24614
24909
  }),
@@ -24637,7 +24932,7 @@ const routes = Object.freeze({
24637
24932
  },
24638
24933
  id: "tool:grok-bot/gbot_bridge_stop",
24639
24934
  kind: "tool",
24640
- module: route7,
24935
+ module: route8,
24641
24936
  name: "gbot_bridge_stop",
24642
24937
  serverId: "mcp:grok-bot"
24643
24938
  }),
@@ -24696,7 +24991,7 @@ const routes = Object.freeze({
24696
24991
  },
24697
24992
  id: "tool:grok-bot/gbot_codex_respond",
24698
24993
  kind: "tool",
24699
- module: route8,
24994
+ module: route9,
24700
24995
  name: "gbot_codex_respond",
24701
24996
  serverId: "mcp:grok-bot"
24702
24997
  }),
@@ -24727,7 +25022,7 @@ const routes = Object.freeze({
24727
25022
  },
24728
25023
  id: "tool:grok-bot/gbot_grok_approvals",
24729
25024
  kind: "tool",
24730
- module: route9,
25025
+ module: route10,
24731
25026
  name: "gbot_grok_approvals",
24732
25027
  serverId: "mcp:grok-bot"
24733
25028
  }),
@@ -24774,7 +25069,7 @@ const routes = Object.freeze({
24774
25069
  },
24775
25070
  id: "tool:grok-bot/gbot_grok_respond",
24776
25071
  kind: "tool",
24777
- module: route10,
25072
+ module: route11,
24778
25073
  name: "gbot_grok_respond",
24779
25074
  serverId: "mcp:grok-bot"
24780
25075
  }),
@@ -24835,7 +25130,7 @@ const routes = Object.freeze({
24835
25130
  },
24836
25131
  id: "tool:grok-bot/gbot_send",
24837
25132
  kind: "tool",
24838
- module: route11,
25133
+ module: route12,
24839
25134
  name: "gbot_send",
24840
25135
  serverId: "mcp:grok-bot"
24841
25136
  }),
@@ -24881,7 +25176,7 @@ const routes = Object.freeze({
24881
25176
  },
24882
25177
  id: "tool:grok-bot/gbot_thread",
24883
25178
  kind: "tool",
24884
- module: route12,
25179
+ module: route13,
24885
25180
  name: "gbot_thread",
24886
25181
  serverId: "mcp:grok-bot"
24887
25182
  })
@@ -24929,7 +25224,7 @@ const render = async (message)=>{
24929
25224
  };
24930
25225
  try {
24931
25226
  const plugin = message.plugin ?? pluginRoot.identity;
24932
- await (0, _agent_bundle_runtime__rspack_import_17.iC)({
25227
+ await (0, _agent_bundle_runtime__rspack_import_18.iC)({
24933
25228
  ...message.actor === undefined ? {} : {
24934
25229
  actor: message.actor
24935
25230
  },
@@ -24943,7 +25238,7 @@ const render = async (message)=>{
24943
25238
  operationId: route.id,
24944
25239
  surface: route.name
24945
25240
  },
24946
- lineage: message.lineage ?? (0, _agent_bundle_runtime__rspack_import_17.hU)('not-provided'),
25241
+ lineage: message.lineage ?? (0, _agent_bundle_runtime__rspack_import_18.hU)('not-provided'),
24947
25242
  plugin,
24948
25243
  progress: {
24949
25244
  report: async (update)=>{
@@ -24959,7 +25254,7 @@ const render = async (message)=>{
24959
25254
  session: message.session
24960
25255
  },
24961
25256
  signal: controller.signal,
24962
- terminal: message.terminal ?? (0, _agent_bundle_runtime__rspack_import_17.hU)('not-provided'),
25257
+ terminal: message.terminal ?? (0, _agent_bundle_runtime__rspack_import_18.hU)('not-provided'),
24963
25258
  ...message.workspace === undefined ? {} : {
24964
25259
  workspace: message.workspace
24965
25260
  }
@@ -24994,10 +25289,10 @@ const render = async (message)=>{
24994
25289
  type: 'observed-render-start'
24995
25290
  });
24996
25291
  const renderStartedAt = performance.now();
24997
- const element = validationError === undefined ? composeLayouts(observedRoute, props, controller.signal) : (0, react__rspack_import_1.createElement)(_agent_bundle_runtime__rspack_import_18.g.Result, null, (0, react__rspack_import_1.createElement)(_agent_bundle_runtime__rspack_import_18.g.Error, {
25292
+ const element = validationError === undefined ? composeLayouts(observedRoute, props, controller.signal) : (0, react__rspack_import_1.createElement)(_agent_bundle_runtime__rspack_import_19.g.Result, null, (0, react__rspack_import_1.createElement)(_agent_bundle_runtime__rspack_import_19.g.Error, {
24998
25293
  code: 'invalid-input'
24999
25294
  }, `Input validation error: ${validationError instanceof Error ? validationError.message : String(validationError)}`));
25000
- const flight = (0, _agent_bundle_runtime_flight_server__rspack_import_19.y)(element, {
25295
+ const flight = (0, _agent_bundle_runtime_flight_server__rspack_import_20.y)(element, {
25001
25296
  signal: controller.signal
25002
25297
  });
25003
25298
  const reader = flight.getReader();