openmeld 0.3.203 → 0.3.205

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 (43) hide show
  1. package/dist/{add-me-membership-CJk0_m8X.js → add-me-membership-jhCNTfdl.js} +2 -2
  2. package/dist/{add-me-membership-CJk0_m8X.js.map → add-me-membership-jhCNTfdl.js.map} +1 -1
  3. package/dist/{agents-Bt7Obl31.js → agents-9krfNX_L.js} +164 -11
  4. package/dist/agents-9krfNX_L.js.map +1 -0
  5. package/dist/{api-client-foundation-_SdQMn5d.js → api-client-foundation-BMPOo4bG.js} +3 -3
  6. package/dist/{api-client-foundation-_SdQMn5d.js.map → api-client-foundation-BMPOo4bG.js.map} +1 -1
  7. package/dist/{api-client-foundation-Z13uEgLv.js → api-client-foundation-BguumKMv.js} +1 -1
  8. package/dist/auth-session-CpPqG8Xz.js +4 -0
  9. package/dist/{auth-session-CJyZ6pcf.js → auth-session-wmefguut.js} +2 -2
  10. package/dist/{auth-session-CJyZ6pcf.js.map → auth-session-wmefguut.js.map} +1 -1
  11. package/dist/{command-ByGJPtg_.js → command-DKM3wO3V.js} +8 -8
  12. package/dist/{command-ByGJPtg_.js.map → command-DKM3wO3V.js.map} +1 -1
  13. package/dist/{computer-setup-continuation-BUTzrA6i.js → computer-setup-continuation-Dad0lLP9.js} +4 -4
  14. package/dist/{computer-setup-continuation-BUTzrA6i.js.map → computer-setup-continuation-Dad0lLP9.js.map} +1 -1
  15. package/dist/dist-BFbC-9BX.js +4 -0
  16. package/dist/{dist-d5scH__V.js → dist-CkixulB-.js} +49 -3
  17. package/dist/dist-CkixulB-.js.map +1 -0
  18. package/dist/{elapsed-time-CEErxeIW.js → elapsed-time-CjAPqg-B.js} +3 -3
  19. package/dist/{elapsed-time-CEErxeIW.js.map → elapsed-time-CjAPqg-B.js.map} +1 -1
  20. package/dist/{installer-BxYmUUrI.js → installer-CZyyvNZr.js} +3 -3
  21. package/dist/{installer-BxYmUUrI.js.map → installer-CZyyvNZr.js.map} +1 -1
  22. package/dist/{openmeld-SO-3VMt2.js → openmeld-DVThrV4O.js} +13 -13
  23. package/dist/{openmeld-SO-3VMt2.js.map → openmeld-DVThrV4O.js.map} +1 -1
  24. package/dist/{openmeld-maintenance-worker-Q_3IZbWS.js → openmeld-maintenance-worker-Cxp6fwB5.js} +4 -4
  25. package/dist/{openmeld-maintenance-worker-Q_3IZbWS.js.map → openmeld-maintenance-worker-Cxp6fwB5.js.map} +1 -1
  26. package/dist/{openmeld-tools-update-coordinator-o8iJtvmu.js → openmeld-tools-update-coordinator-DJ65uI3O.js} +151 -52
  27. package/dist/openmeld-tools-update-coordinator-DJ65uI3O.js.map +1 -0
  28. package/dist/openmeld.js +3 -3
  29. package/dist/{prepare-session-executor-BLf0gZ4S.js → prepare-session-executor-aE1YARgn.js} +8 -8
  30. package/dist/{prepare-session-executor-BLf0gZ4S.js.map → prepare-session-executor-aE1YARgn.js.map} +1 -1
  31. package/dist/{profiles-CxclDtCJ.js → profiles-Dx3gaXgQ.js} +86 -56
  32. package/dist/profiles-Dx3gaXgQ.js.map +1 -0
  33. package/dist/upgrade-BFGKy5He.js +4 -0
  34. package/dist/{upgrade-DToennqx.js → upgrade-Bk8t5oav.js} +4 -4
  35. package/dist/{upgrade-DToennqx.js.map → upgrade-Bk8t5oav.js.map} +1 -1
  36. package/package.json +2 -2
  37. package/dist/agents-Bt7Obl31.js.map +0 -1
  38. package/dist/auth-session-D42GXCid.js +0 -4
  39. package/dist/dist-ClkOpDGh.js +0 -4
  40. package/dist/dist-d5scH__V.js.map +0 -1
  41. package/dist/openmeld-tools-update-coordinator-o8iJtvmu.js.map +0 -1
  42. package/dist/profiles-CxclDtCJ.js.map +0 -1
  43. package/dist/upgrade-WwCleBq2.js +0 -4
@@ -4,15 +4,15 @@ import { n as toDaemonRouteObservationUrl, t as normalizeBaseUrl } from "./urls-
4
4
  import { t as isLoopbackHostname } from "./loopback-hostname-DHQPKq8N.js";
5
5
  import { $ as openMeldManagedVersionBinaryPath, B as deviceOpenClawProfileWorkspaceDir, F as accountProfileWorkspacePath, G as isPublishedOpenMeldHome, J as normalizeAccountKey, M as accountProfileLocalMetaPath, P as accountProfileViewPath, Q as openMeldManagedBinaryPath, R as deviceOpenClawProfileBootstrapPath, S as isProcessIdentityAlive, X as openMeldBackupsDir, Y as normalizeOpenMeldProfileId, Z as openMeldBinDir, _ as resolveCliContextId, _t as systemDir, et as openMeldManagedVersionDir, ft as resolveOpenMeldServiceScope, g as resolveCliContext, h as readCliContextState, i as isOpenMeldOrphanedLockError, j as OPENMELD_HOME_ENV_KEY, lt as resolveOpenMeldEnvPreset, m as listCliContextStates, nt as openMeldVersionsDir, pt as runtimeDir, r as isOpenMeldLockError, t as acquireLock, tt as openMeldRootDir, u as runWithHeldLock, ut as resolveOpenMeldRootDir, v as writeCliContextState, x as CURRENT_PROCESS_START_IDENTITY, z as deviceOpenClawProfileDir } from "./lock-CvBnBcFK.js";
6
6
  import { _ as canonicalizeAgentControllerRef, b as normalizeKnownBuiltinAgentControllerId, d as resolveBuiltinAgentControllerConversationKind, f as HOSTED_CENTER_AGENT_CONTROLLER_REF, g as buildAgentControllerRoutingKey, l as buildAgentControllerConversationRef, m as HOSTED_REMOTE_AGENT_CONTROLLER_REF, n as runtimeAgentControllerConversationIdMappingSpecSchema, o as runtimeStreamingModeSchema, p as HOSTED_CENTER_AGENT_CONTROLLER_REF_ID, r as runtimeAgentControllerLaunchContractSchema, s as runtimeTransportModeSchema, u as conversationPolicySchema, v as canonicalizeBuiltinAgentControllerRef, x as parseAgentControllerRef$1 } from "./controller-contract-pe3_Re-c.js";
7
- import { In as toErrorMessage$25, Lt as createCurrentDeviceApi, Mt as createAgentProfileBindingApi, Wt as createLocalRuntimeExpectedRoutesApi, _n as toStructuredApiClientFailure, ci as agentControllerPermissionModeSchema, cr as modelCatalogSchema, jn as OPENMELD_HEADER_PROFILE_ID, li as agentControllerCollaborationModeSchema, si as openCodePermissionConfigSchema, t as OpenMeldApiClientHttpError } from "./dist-d5scH__V.js";
8
- import { $ as openMeldDaemonTaskResultEnvelopeWriteSchema, Ai as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, Ct as openMeldDaemonControlPlaneRequestSchema, Dt as providerDispatchRuntimeContextSchema, E as runtimeTransportErrorCodeSchema, Et as skippedDaemonProfileSchema, Gi as resolvePublicAgentAvailabilityCopy, H as runtimeTransportRejectedProfileRegistrationSchema, Ht as agentInteractionResolutionSchema, J as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, Ki as resolvePublicAgentFailureRecovery, L as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Li as profileWorkspaceModeSchema, Mi as normalizeOptionalWorkingDirectory, Mn as localAgentCatalogSchema, Ot as conversationExecutionStateSchema, Q as openMeldDaemonProviderAccessEvidenceSchema, Qi as resolveCommandAgentWorkActivity, Y as isOriginalErrorSafeForMessageDetails, d as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, et as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, f as daemonExecutionCompatibilitySchema, g as runtimeTransportCapabilitiesSchema, i as authProfileManagedRoleSchema, ji as agentProfileIdSchema, m as localWakeRouteReportSchema, n as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, nn as openMeldToolsUpdateAttemptSchema, o as profileCapabilitiesResponseSchema, on as openMeldToolsUpdateRequestSourceSchema, rn as openMeldToolsUpdateOperationPhaseSchema, s as profileErrorResponseSchema, sr as formatCanonicalMentionLiteral, t as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, ur as normalizeMessageEnvelope, wn as openMeldProfileIdSchema, wt as openMeldDaemonControlPlaneResponseSchema } from "./profiles-CxclDtCJ.js";
7
+ import { Ln as toErrorMessage$25, Lt as createCurrentDeviceApi, Mn as OPENMELD_HEADER_PROFILE_ID, Mt as createAgentProfileBindingApi, Wt as createLocalRuntimeExpectedRoutesApi, ci as openCodePermissionConfigSchema, li as agentControllerPermissionModeSchema, lr as modelCatalogSchema, t as OpenMeldApiClientHttpError, ui as agentControllerCollaborationModeSchema, vn as toStructuredApiClientFailure } from "./dist-CkixulB-.js";
8
+ import { $ as openMeldDaemonProviderAccessEvidenceSchema, D as runtimeTransportErrorCodeSchema, Dt as skippedDaemonProfileSchema, Fi as agentProfileIdSchema, Ii as normalizeOptionalWorkingDirectory, Oi as openMeldProfileIdSchema, Ot as providerDispatchRuntimeContextSchema, Pi as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, R as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Tt as openMeldDaemonControlPlaneResponseSchema, U as runtimeTransportRejectedProfileRegistrationSchema, Ut as agentInteractionResolutionSchema, Vi as profileWorkspaceModeSchema, X as isOriginalErrorSafeForMessageDetails, Xi as resolvePublicAgentFailureRecovery, Y as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, Yi as resolvePublicAgentAvailabilityCopy, d as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, et as openMeldDaemonTaskResultEnvelopeWriteSchema, f as daemonExecutionCompatibilitySchema, g as runtimeTransportCapabilitiesSchema, i as authProfileManagedRoleSchema, in as openMeldToolsUpdateOperationPhaseSchema, jn as localAgentCatalogSchema, kt as conversationExecutionStateSchema, lr as normalizeMessageEnvelope, m as localWakeRouteReportSchema, n as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, na as resolveCommandAgentWorkActivity, o as profileCapabilitiesResponseSchema, or as formatCanonicalMentionLiteral, rn as openMeldToolsUpdateAttemptSchema, s as profileErrorResponseSchema, sn as openMeldToolsUpdateRequestSourceSchema, t as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, tt as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, wt as openMeldDaemonControlPlaneRequestSchema } from "./profiles-Dx3gaXgQ.js";
9
9
  import { r as daemonServiceLaneSchema, t as daemonServiceContractSchema } from "./service-contract-CRyDcIIf.js";
10
- import { A as DEFAULT_HEARTBEAT_INTERVAL_MS$1, B as REGISTER_RESPONSE_TIMEOUT_MS$1, C as CATALOG_SYNC_RETRY_INTERVAL_MS$1, D as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, E as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, F as MIN_HEARTBEAT_INTERVAL_MS$2, H as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, L as OPENCLAW_CLI_TIMEOUT_MS$1, M as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, N as MAX_HEARTBEAT_INTERVAL_MS$2, O as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, R as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, T as DAEMON_RUNTIME_CONTRACT_EPOCH$1, U as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, W as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, b as isBinaryDistribution, f as hasPendingComputerSetupContinuation, k as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, l as getAuthSessionState, w as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, x as resolveOpenMeldDistribution, z as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1 } from "./auth-session-CJyZ6pcf.js";
10
+ import { A as DEFAULT_HEARTBEAT_INTERVAL_MS$1, B as REGISTER_RESPONSE_TIMEOUT_MS$1, C as CATALOG_SYNC_RETRY_INTERVAL_MS$1, D as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, E as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, F as MIN_HEARTBEAT_INTERVAL_MS$2, H as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, L as OPENCLAW_CLI_TIMEOUT_MS$1, M as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, N as MAX_HEARTBEAT_INTERVAL_MS$2, O as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, R as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, T as DAEMON_RUNTIME_CONTRACT_EPOCH$1, U as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, W as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, b as isBinaryDistribution, f as hasPendingComputerSetupContinuation, k as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, l as getAuthSessionState, w as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, x as resolveOpenMeldDistribution, z as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1 } from "./auth-session-wmefguut.js";
11
11
  import { a as readDaemonLocalStateFile, o as writeDaemonLocalStateFile, r as readDaemonRuntimeLease } from "./daemon-runtime-lease-CXlGR-iA.js";
12
12
  import { i as windowsTaskActionArguments, n as runWindowsUserTask, r as windowsPowerShellPath } from "./windows-user-task-DqJWtlAm.js";
13
13
  import { C as updateConfiguredDeviceRuntimeState, T as updateConfiguredSkillsConfig, _ as getConfiguredViewCustomization, a as resolveBaseUrl, c as resolveExplicitGatewayUrlOrThrow, d as createDefaultRuntimeAgentControllerSettings, g as getConfiguredSkillsConfig, h as getConfiguredOpenMeldToolsMaintenance, i as normalizeGatewayBaseUrlOrNull, o as resolveBaseUrlOrNull, p as getConfiguredDeviceRuntimeState, r as normalizeGatewayBaseUrl, s as resolveDefaultGatewayBaseUrl, v as getRuntimeConfigReadHealth, x as setConfiguredOpenMeldToolsMaintenance, y as resolveRuntimeSkillsCustomTargetId } from "./base-url-jWXPssF_.js";
14
14
  import { n as toErrorMessage$26, t as sleep } from "./dist-o3UL1EGQ.js";
15
- import { c as buildRequestAuthHeaders, n as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation, u as buildOpenMeldRequestContextFromProfile } from "./api-client-foundation-_SdQMn5d.js";
15
+ import { c as buildRequestAuthHeaders, n as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation, u as buildOpenMeldRequestContextFromProfile } from "./api-client-foundation-BMPOo4bG.js";
16
16
  import { A as installDaemon, B as rotateDaemonControlPlaneTokenIfExpired, C as daemonServiceStableExecutableWrapperPath, E as daemonStatePath, F as readDaemonServiceRuntimeSnapshot, H as uninstallDaemon, L as resolveDaemonControlPlaneEndpoint, M as readDaemonControlPlaneToken, N as readDaemonServiceLifecycleLockMeta, O as getDaemonRuntimeStatus, P as readDaemonServiceLifecycleLockMetaWithCleanup, S as daemonServiceStableBinaryExecutablePath, T as daemonServiceUpdateWorkerBinaryExecutablePath, U as withDaemonServiceReconcileLock, _ as daemonServiceActiveBundleStatePath, a as DAEMON_SERVICE_RUNTIME_MODE_ENV, b as daemonServiceRecognizedExecutablePaths$1, d as daemonLifecycleJournalPath, f as daemonRuntimeBundlesPath, g as daemonRuntimeStateRootPath, h as daemonRuntimeServiceManagerPath, i as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, k as getDaemonStatus, l as clearDaemonServiceRuntimeState, m as daemonRuntimeRootPath, n as DAEMON_SERVICE_RUNTIME_AUTO_START_ENV, p as daemonRuntimeDataPath, r as DAEMON_SERVICE_RUNTIME_CONTROLLER_ENV, s as DAEMON_SERVICE_RUNTIME_SYSTEM_SERVICE_ENV, t as DAEMON_HEARTBEAT_STALE_MS, v as daemonServiceExecutableWrapperPaths$1, w as daemonServiceStableLauncherPath, y as daemonServiceLegacyExecutableWrapperPath, z as restoreDaemonInstallStateSnapshot } from "./daemon-state-BwIoDq7_.js";
17
17
  import { A as isTestProcess, D as assertNoPublishedProductionMutationDuringTests, E as resolveDaemonServiceIdentity, O as assertSafePublishedProductionServiceRegistrationMutation, S as resolveDaemonServiceManager, T as waitForLaunchdJobUnloaded, a as disableDaemonServiceAutostartIfConfigured, c as getDaemonSystemServiceLogPath, k as isPublishedProductionOpenMeldRoot, o as formatDaemonServiceJobDiagnosticsEvidence, s as getDaemonServiceLaunchdLabel, v as readDaemonServiceStartupPolicyCurrent, w as startLaunchdService } from "./daemon-service-manager-BVipiZwK.js";
18
18
  import { createRequire } from "node:module";
@@ -1687,8 +1687,8 @@ function getErrorCode$2(error) {
1687
1687
  var package_default = {
1688
1688
  $schema: "https://www.schemastore.org/package.json",
1689
1689
  name: "openmeld",
1690
- version: "0.3.203",
1691
- openMeldReleaseDate: "2026-09-13",
1690
+ version: "0.3.205",
1691
+ openMeldReleaseDate: "2026-09-14",
1692
1692
  description: "OpenMeld CLI - https://openmeld.ai",
1693
1693
  license: "MIT",
1694
1694
  type: "module",
@@ -5257,7 +5257,7 @@ function resolveOpenMeldAccountContext(input) {
5257
5257
  };
5258
5258
  }
5259
5259
  async function resolveCurrentOpenMeldAccountContext() {
5260
- const { getAuthSessionMetadata } = await import("./auth-session-D42GXCid.js");
5260
+ const { getAuthSessionMetadata } = await import("./auth-session-CpPqG8Xz.js");
5261
5261
  return resolveOpenMeldAccountContext({ session: await getAuthSessionMetadata().catch(() => null) });
5262
5262
  }
5263
5263
  function resolveHostKey(baseUrl) {
@@ -11208,6 +11208,19 @@ function resolveCanonicalRepairSessionId(input) {
11208
11208
  if (input.executionMode !== "repair") return null;
11209
11209
  return normalizeOptionalText$40(input.sessionId);
11210
11210
  }
11211
+ async function observeClaudeReasoning(message, messageId, onRuntimeEvent) {
11212
+ if (message.type !== "stream_event") return messageId;
11213
+ const event = message.event;
11214
+ if (event.type === "message_start") return event.message.id;
11215
+ if (event.type === "content_block_delta" && event.delta.type === "thinking_delta") await onRuntimeEvent?.({
11216
+ phase: "reasoning",
11217
+ blockId: `${messageId}:${event.index}`,
11218
+ text: event.delta.thinking,
11219
+ mode: "append",
11220
+ tsMs: Date.now()
11221
+ });
11222
+ return messageId;
11223
+ }
11211
11224
  async function invokeClaudeAgentSdkTransport(input) {
11212
11225
  const prompt = normalizeOptionalText$40(input.prompt);
11213
11226
  if (!prompt) throw new ClaudeAgentSdkTransportError({
@@ -11249,6 +11262,7 @@ async function invokeClaudeAgentSdkTransport(input) {
11249
11262
  try {
11250
11263
  queryRuntime = (input.createQuery ?? createDefaultClaudeAgentSdkQuery)({
11251
11264
  options: buildClaudeAgentSdkOptions({
11265
+ onRuntimeEvent: input.onRuntimeEvent,
11252
11266
  abortController,
11253
11267
  agentControllerPermissionMode: input.agentControllerPermissionMode,
11254
11268
  claudeWorkdir: input.claudeWorkdir,
@@ -11274,7 +11288,9 @@ async function invokeClaudeAgentSdkTransport(input) {
11274
11288
  query: queryRuntime,
11275
11289
  taskId: input.taskId
11276
11290
  });
11291
+ let reasoningMessageId = "";
11277
11292
  for await (const message of queryRuntime) {
11293
+ reasoningMessageId = await observeClaudeReasoning(message, reasoningMessageId, input.onRuntimeEvent);
11278
11294
  await emitClaudeCodeUsageLimits({
11279
11295
  message,
11280
11296
  onRuntimeEvent: input.onRuntimeEvent
@@ -11522,7 +11538,7 @@ function buildClaudeAgentSdkOptions(input) {
11522
11538
  ...process.env,
11523
11539
  ...input.env ?? {}
11524
11540
  },
11525
- includePartialMessages: input.streamingMode === "stream" || input.onInteractionRequest !== void 0,
11541
+ includePartialMessages: input.onRuntimeEvent !== void 0 || input.streamingMode === "stream" || input.onInteractionRequest !== void 0,
11526
11542
  pathToClaudeCodeExecutable: input.pathToClaudeCodeExecutable,
11527
11543
  ...spaceActionMcpServer ? { mcpServers: { [spaceActionMcpServer.id]: {
11528
11544
  args: [...spaceActionMcpServer.args],
@@ -12584,6 +12600,7 @@ async function invokeCodexAppServerTransport(input) {
12584
12600
  message: "schema.invalid: prompt is required"
12585
12601
  });
12586
12602
  const invokedAtMs = Date.now();
12603
+ const reasoningSummary = input.onRuntimeEvent ? { summary: "auto" } : {};
12587
12604
  const permissionModeParams = resolveCodexAppServerPermissionModeParams(input.agentControllerPermissionMode, input.executionMode, input.computerFileAccessBoundary !== void 0);
12588
12605
  const conversationPolicyParams = resolveCodexAppServerConversationPolicyParams(input.conversationPolicy);
12589
12606
  return await withCodexAppServerSession({
@@ -12625,12 +12642,14 @@ async function invokeCodexAppServerTransport(input) {
12625
12642
  threadSource: threadContext.threadSource
12626
12643
  });
12627
12644
  session.emitProviderConversationObserved(continuityThreadId);
12645
+ session.observeReasoningForThread(executionThreadId);
12628
12646
  throwIfCodexDispatchCancelled(input.cancellationSignal);
12629
12647
  const turn = readTurnStartResponse(await session.requestControl("turn/start", {
12630
12648
  ...permissionModeParams.turn,
12631
12649
  ...collaborationMode ? { collaborationMode } : {},
12632
12650
  cwd: input.codexWorkdir,
12633
12651
  ...conversationPolicyParams,
12652
+ ...reasoningSummary,
12634
12653
  input: [{
12635
12654
  text: turnPrompt,
12636
12655
  text_elements: [],
@@ -12994,6 +13013,7 @@ var CodexAppServerSession = class {
12994
13013
  #permissionMode;
12995
13014
  #pending = /* @__PURE__ */ new Map();
12996
13015
  #turnAgentMessageDeltas = /* @__PURE__ */ new Map();
13016
+ #reasoningThreadId = null;
12997
13017
  #child = null;
12998
13018
  #runtimeProcess = null;
12999
13019
  #contextCompactionObserved = false;
@@ -13389,6 +13409,11 @@ var CodexAppServerSession = class {
13389
13409
  pending.resolve(message.result);
13390
13410
  }
13391
13411
  #handleNotification(message) {
13412
+ if (message.method === "item/reasoning/summaryTextDelta") {
13413
+ this.#observeReasoningSummary(message.params);
13414
+ return;
13415
+ }
13416
+ if (message.method?.startsWith("item/reasoning/") || toRecord$8(toRecord$8(message.params)?.item)?.type === "reasoning") return;
13392
13417
  this.#notifications.push(message);
13393
13418
  this.#observeContextTelemetry(message);
13394
13419
  this.#collectAgentMessageDelta(message);
@@ -13527,6 +13552,20 @@ var CodexAppServerSession = class {
13527
13552
  readInteractionFailure() {
13528
13553
  return this.#interactionFailure;
13529
13554
  }
13555
+ observeReasoningForThread(threadId) {
13556
+ this.#reasoningThreadId = threadId;
13557
+ }
13558
+ #observeReasoningSummary(payload) {
13559
+ const params = toRecord$8(payload);
13560
+ if (!this.#reasoningThreadId || params?.threadId !== this.#reasoningThreadId || typeof params.turnId !== "string" || typeof params.itemId !== "string" || typeof params.summaryIndex !== "number" || typeof params.delta !== "string" || params.delta.length === 0) return;
13561
+ this.#emitRuntimeEvent({
13562
+ phase: "reasoning",
13563
+ blockId: `${params.turnId}:${params.itemId}:${params.summaryIndex}`,
13564
+ text: params.delta,
13565
+ mode: "append",
13566
+ tsMs: Date.now()
13567
+ });
13568
+ }
13530
13569
  emitProviderConversationObserved(threadId) {
13531
13570
  const agentControllerConversationId = normalizeOptionalText$36(threadId);
13532
13571
  if (!agentControllerConversationId) return;
@@ -15056,26 +15095,9 @@ async function waitForCodexThreadWriterAvailability(input) {
15056
15095
  if (!exists) finish("release_observed");
15057
15096
  }).catch(() => {});
15058
15097
  };
15059
- const scheduleRecoveryCheck = () => {
15060
- if (settled) return;
15061
- recoveryTimer = setTimeout(() => {
15062
- recoveryTimer = null;
15063
- pathExists$2(lockPath).then((exists) => {
15064
- if (settled) return;
15065
- if (!exists) {
15066
- finish("release_observed");
15067
- return;
15068
- }
15069
- scheduleRecoveryCheck();
15070
- }).catch(() => {
15071
- if (settled) return;
15072
- scheduleRecoveryCheck();
15073
- });
15074
- }, input.recoveryRetryMs ?? CODEX_THREAD_WRITER_RECOVERY_RETRY_MS);
15075
- recoveryTimer.unref?.();
15076
- };
15077
15098
  input.signal?.addEventListener("abort", handleAbort, { once: true });
15078
- scheduleRecoveryCheck();
15099
+ recoveryTimer = setTimeout(() => finish("retry_due"), input.recoveryRetryMs ?? CODEX_THREAD_WRITER_RECOVERY_RETRY_MS);
15100
+ recoveryTimer.unref?.();
15079
15101
  try {
15080
15102
  watcher = watch(lockDirectory, (_eventType, fileName) => {
15081
15103
  if (fileName === null || String(fileName) === lockFileName) observeAvailability();
@@ -15380,10 +15402,10 @@ function abortOccupiedCodexDispatch(input) {
15380
15402
  occupiedDispatch.abortController.abort();
15381
15403
  return true;
15382
15404
  }
15383
- function buildCodexWriterWaitCancelledResult() {
15405
+ function buildCodexDispatchCancelledResult() {
15384
15406
  return {
15385
15407
  errorCode: "runtime.turn.cancelled",
15386
- errorMessage: "runtime.turn.cancelled: Codex was stopped while waiting for the Agent Controller conversation",
15408
+ errorMessage: "runtime.turn.cancelled: This OpenMeld request was stopped",
15387
15409
  errorType: "adapter",
15388
15410
  status: "failed"
15389
15411
  };
@@ -15412,19 +15434,19 @@ async function dispatchCodexWithConversationOccupancy(input) {
15412
15434
  try {
15413
15435
  while (true) {
15414
15436
  const cancellationSignal = state.registration?.abortController.signal ?? void 0;
15415
- if (cancellationSignal?.aborted) return buildCodexWriterWaitCancelledResult();
15437
+ if (cancellationSignal?.aborted) return buildCodexDispatchCancelledResult();
15416
15438
  const result = await input.sharedDispatch({
15417
15439
  ...input.request,
15418
15440
  ...cancellationSignal ? { cancellationSignal } : {}
15419
15441
  });
15420
- if (state.registration?.abortController.signal.aborted) return buildCodexWriterWaitCancelledResult();
15442
+ if (state.registration?.abortController.signal.aborted) return buildCodexDispatchCancelledResult();
15421
15443
  const occupancy = readCodexConversationOccupancy(result, input.request);
15422
15444
  if (occupancy) {
15423
15445
  if (await waitForOccupiedCodexConversation({
15424
15446
  ...input,
15425
15447
  occupancy,
15426
15448
  state
15427
- }) === "cancelled") return buildCodexWriterWaitCancelledResult();
15449
+ }) === "cancelled") return buildCodexDispatchCancelledResult();
15428
15450
  continue;
15429
15451
  }
15430
15452
  if (state.occupancy) {
@@ -16057,7 +16079,7 @@ async function runCursorAcpTurn(input) {
16057
16079
  taskId: input.input.taskId
16058
16080
  });
16059
16081
  let promptResult;
16060
- input.session.beginTurn();
16082
+ input.session.beginTurn(descriptor.sessionId);
16061
16083
  try {
16062
16084
  promptResult = await input.session.request("session/prompt", {
16063
16085
  prompt: [{
@@ -16205,6 +16227,7 @@ var CursorAcpSession = class {
16205
16227
  #interactionFailure = null;
16206
16228
  #output = "";
16207
16229
  #turnActive = false;
16230
+ #activeSessionId = null;
16208
16231
  constructor(input) {
16209
16232
  this.#agentControllerPermissionMode = input.agentControllerPermissionMode;
16210
16233
  this.#cursorWorkdir = input.cursorWorkdir;
@@ -16297,13 +16320,15 @@ var CursorAcpSession = class {
16297
16320
  notify(method, params) {
16298
16321
  this.#process.notify(method, params);
16299
16322
  }
16300
- beginTurn() {
16323
+ beginTurn(sessionId) {
16324
+ this.#activeSessionId = sessionId;
16301
16325
  this.#firstOutputAtMs = null;
16302
16326
  this.#output = "";
16303
16327
  this.#turnActive = true;
16304
16328
  }
16305
16329
  endTurn() {
16306
16330
  this.#turnActive = false;
16331
+ this.#activeSessionId = null;
16307
16332
  }
16308
16333
  readCollectedAgentText() {
16309
16334
  return this.#output.trim();
@@ -16394,7 +16419,20 @@ var CursorAcpSession = class {
16394
16419
  }
16395
16420
  #collectAgentMessageChunk(message) {
16396
16421
  if (message.method !== "session/update") return;
16397
- const update = toRecord$5(toRecord$5(message.params)?.update);
16422
+ const params = toRecord$5(message.params);
16423
+ const update = toRecord$5(params?.update);
16424
+ if (update?.sessionUpdate === "agent_thought_chunk") {
16425
+ if (params?.sessionId !== this.#activeSessionId) return;
16426
+ const thought = toRecord$5(update.content);
16427
+ if (thought?.type === "text" && typeof thought.text === "string") this.#emitRuntimeEvent({
16428
+ phase: "reasoning",
16429
+ blockId: String(params?.sessionId),
16430
+ text: thought.text,
16431
+ mode: "append",
16432
+ tsMs: Date.now()
16433
+ });
16434
+ return;
16435
+ }
16398
16436
  if (update?.sessionUpdate !== "agent_message_chunk") return;
16399
16437
  const content = toRecord$5(update.content);
16400
16438
  const text = content?.type === "text" ? normalizeOutputText$2(content.text) : null;
@@ -17581,6 +17619,18 @@ var GrokBuildAcpSession = class {
17581
17619
  #collectAgentMessageChunk(notification) {
17582
17620
  if (notification.method !== "session/update") return;
17583
17621
  const update = toRecord$2(toRecord$2(notification.params)?.update);
17622
+ if (update?.sessionUpdate === "agent_thought_chunk") {
17623
+ if (toRecord$2(notification.params)?.sessionId !== this.#sessionId) return;
17624
+ const thought = toRecord$2(update.content);
17625
+ if (thought?.type === "text" && typeof thought.text === "string") this.#emitRuntimeEvent({
17626
+ phase: "reasoning",
17627
+ blockId: String(toRecord$2(notification.params)?.sessionId),
17628
+ text: thought.text,
17629
+ mode: "append",
17630
+ tsMs: Date.now()
17631
+ });
17632
+ return;
17633
+ }
17584
17634
  if (update?.sessionUpdate !== "agent_message_chunk") return;
17585
17635
  const content = toRecord$2(update.content);
17586
17636
  const text = content?.type === "text" ? normalizeOutputText$1(content.text) : null;
@@ -20391,6 +20441,7 @@ async function invokeOpenCodeServerTransport(input) {
20391
20441
  sourceSessionId: canonicalRepairSessionId
20392
20442
  }) : normalizeOptionalText$14(input.sessionId);
20393
20443
  result = await runOpenCodeServerTurn({
20444
+ onRuntimeEvent: input.onRuntimeEvent,
20394
20445
  client,
20395
20446
  conversationPolicy: input.conversationPolicy,
20396
20447
  instructionPrompt: input.instructionPrompt,
@@ -20639,6 +20690,8 @@ async function runOpenCodeServerTurn(input) {
20639
20690
  let previewEmitted = false;
20640
20691
  const subscription = await input.client.event.subscribe({ directory: input.openCodeWorkdir }, { signal: eventAbortController.signal });
20641
20692
  const eventLoop = consumeOpenCodeEvents({
20693
+ onRuntimeEvent: input.onRuntimeEvent,
20694
+ reasoningPartIds: /* @__PURE__ */ new Set(),
20642
20695
  eventReady,
20643
20696
  eventFailure,
20644
20697
  interactionHandler,
@@ -20766,12 +20819,37 @@ async function consumeOpenCodeEvents(input) {
20766
20819
  }
20767
20820
  if (!ready) input.eventReady.reject(/* @__PURE__ */ new Error("OpenCode event stream closed before becoming ready."));
20768
20821
  }
20822
+ function observeOpenCodeReasoning(input, event, properties) {
20823
+ if (!input.turnState.promptDispatchStarted) return;
20824
+ const part = toRecord$1(properties.part);
20825
+ if (event.type === "message.part.updated" && part?.type === "reasoning" && typeof part.id === "string" && typeof part.text === "string" && typeof part.messageID === "string" && input.turnState.assistantMessageIds.has(part.messageID)) {
20826
+ input.reasoningPartIds.add(part.id);
20827
+ if (input.reasoningPartIds.size > 128) {
20828
+ const oldest = input.reasoningPartIds.values().next().value;
20829
+ if (oldest) input.reasoningPartIds.delete(oldest);
20830
+ }
20831
+ Promise.resolve(input.onRuntimeEvent?.({
20832
+ phase: "reasoning",
20833
+ blockId: part.id,
20834
+ text: part.text,
20835
+ mode: "snapshot",
20836
+ tsMs: Date.now()
20837
+ })).catch(() => void 0);
20838
+ } else if (event.type === "message.part.delta" && properties.field === "text" && typeof properties.partID === "string" && input.reasoningPartIds.has(properties.partID) && typeof properties.delta === "string") Promise.resolve(input.onRuntimeEvent?.({
20839
+ phase: "reasoning",
20840
+ blockId: properties.partID,
20841
+ text: properties.delta,
20842
+ mode: "append",
20843
+ tsMs: Date.now()
20844
+ })).catch(() => void 0);
20845
+ }
20769
20846
  function dispatchOpenCodeEvent(input, event) {
20770
20847
  const properties = toRecord$1(event.properties);
20771
20848
  if (!properties) return;
20772
20849
  observeOpenCodeSessionTree(input.turnState, event.type, properties);
20773
20850
  if (!eventBelongsToTurn(properties, input.turnState)) return;
20774
20851
  observeOpenCodeTurnLifecycle(input.turnState, event.type, properties);
20852
+ observeOpenCodeReasoning(input, event, properties);
20775
20853
  const eventFailure = readOpenCodeTurnEventFailure(input.turnState, event.type, properties);
20776
20854
  if (eventFailure) {
20777
20855
  input.eventFailure.reject(new OpenCodeServerTransportError(classifyOpenCodeFailureMessage({
@@ -22057,74 +22135,84 @@ function formatAgentControllerCheckedAt(value) {
22057
22135
  const DEFAULT_AGENT_CONTROLLER_PERMISSION_MODE = "claude-code:default";
22058
22136
  const CLAUDE_CODE_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22059
22137
  {
22060
- description: "Default Claude Code permission mode. CLI: claude --permission-mode default --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\".",
22138
+ description: "Claude Code asks you in the Space before actions that need permission.",
22061
22139
  label: "Ask permissions",
22062
22140
  requiresExplicitConfirmation: false,
22141
+ technicalDetail: "claude --permission-mode default --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\"",
22063
22142
  tone: "neutral",
22064
22143
  value: "claude-code:default"
22065
22144
  },
22066
22145
  {
22067
- description: "Accept file edits automatically. CLI: claude --permission-mode acceptEdits --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\".",
22146
+ description: "Claude Code accepts file edits automatically. Other restricted actions may still ask you in the Space.",
22068
22147
  label: "Accept edits",
22069
22148
  requiresExplicitConfirmation: false,
22149
+ technicalDetail: "claude --permission-mode acceptEdits --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\"",
22070
22150
  tone: "neutral",
22071
22151
  value: "claude-code:acceptEdits"
22072
22152
  },
22073
22153
  {
22074
- description: "Plan before making changes. CLI: claude --permission-mode plan --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\".",
22154
+ description: "Claude Code focuses on planning before it makes changes. Its other permission rules still apply.",
22075
22155
  label: "Plan mode",
22076
22156
  requiresExplicitConfirmation: false,
22157
+ technicalDetail: "claude --permission-mode plan --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\"",
22077
22158
  tone: "neutral",
22078
22159
  value: "claude-code:plan"
22079
22160
  },
22080
22161
  {
22081
- description: "Use Claude Code auto mode. CLI: claude --permission-mode auto --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\".",
22162
+ description: "Claude Code automatically continues on eligible actions and asks when it still needs approval.",
22082
22163
  label: "Auto mode",
22083
22164
  requiresExplicitConfirmation: false,
22165
+ technicalDetail: "claude --permission-mode auto --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\"",
22084
22166
  tone: "neutral",
22085
22167
  value: "claude-code:auto"
22086
22168
  },
22087
22169
  {
22088
- description: "Automatically reject permission requests not already allowed. CLI: claude --permission-mode dontAsk --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\".",
22170
+ description: "Claude Code rejects permission requests that are not already allowed instead of waiting for your approval.",
22089
22171
  label: "Don't ask",
22090
22172
  requiresExplicitConfirmation: false,
22173
+ technicalDetail: "claude --permission-mode dontAsk --allowedTools \"Bash(openmeld)\" \"Bash(openmeld *)\"",
22091
22174
  tone: "neutral",
22092
22175
  value: "claude-code:dontAsk"
22093
22176
  },
22094
22177
  {
22095
- description: "Bypass Claude Code permission prompts. CLI: claude --permission-mode bypassPermissions.",
22178
+ description: "Claude Code bypasses its permission prompts for this Agent. Separate file-access limits on this Computer still apply.",
22096
22179
  label: "Bypass permissions",
22097
22180
  requiresExplicitConfirmation: true,
22181
+ technicalDetail: "claude --permission-mode bypassPermissions",
22098
22182
  tone: "warning",
22099
22183
  value: "claude-code:bypassPermissions"
22100
22184
  }
22101
22185
  ];
22102
22186
  const CODEX_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22103
22187
  {
22104
- description: "Always ask to edit external files and use the internet. CLI: codex -s workspace-write -a untrusted.",
22188
+ description: "Codex asks before editing files outside its working folder or using the internet.",
22105
22189
  label: "Ask for approval",
22106
22190
  requiresExplicitConfirmation: false,
22191
+ technicalDetail: "codex -s workspace-write -a untrusted",
22107
22192
  tone: "neutral",
22108
22193
  value: "codex:askForApproval"
22109
22194
  },
22110
22195
  {
22111
- description: "Only ask for actions detected as potentially unsafe. CLI: codex -s workspace-write -a on-request -c approvals_reviewer=\"auto_review\".",
22196
+ description: "Codex automatically reviews eligible approval requests. It may approve or deny them; denied actions may stop or require a safer approach.",
22112
22197
  label: "Approve for me",
22113
22198
  requiresExplicitConfirmation: false,
22199
+ technicalDetail: "codex -s workspace-write -a on-request -c approvals_reviewer=\"auto_review\"",
22114
22200
  tone: "neutral",
22115
22201
  value: "codex:approveForMe"
22116
22202
  },
22117
22203
  {
22118
- description: "Unrestricted access to the internet and any file on your computer. CLI: codex --dangerously-bypass-approvals-and-sandbox.",
22204
+ description: "Codex bypasses its sandbox and approval prompts for this Agent. Separate file-access limits on this Computer still apply.",
22119
22205
  label: "Full access",
22120
22206
  requiresExplicitConfirmation: true,
22207
+ technicalDetail: "codex --dangerously-bypass-approvals-and-sandbox",
22121
22208
  tone: "warning",
22122
22209
  value: "codex:fullAccess"
22123
22210
  },
22124
22211
  {
22125
- description: "Uses permissions defined in config.toml. CLI: codex without OpenMeld sandbox or approval overrides.",
22212
+ description: "Codex follows the permissions in config.toml. OpenMeld does not override its sandbox or approval settings.",
22126
22213
  label: "Custom (config.toml)",
22127
22214
  requiresExplicitConfirmation: false,
22215
+ technicalDetail: "codex (no OpenMeld permission overrides)",
22128
22216
  tone: "neutral",
22129
22217
  value: "codex:customConfig"
22130
22218
  }
@@ -22134,20 +22222,23 @@ const CURSOR_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22134
22222
  description: "Use Cursor’s standard permissions. If Cursor needs approval, OpenMeld asks you in the Space.",
22135
22223
  label: "Default",
22136
22224
  requiresExplicitConfirmation: false,
22225
+ technicalDetail: null,
22137
22226
  tone: "neutral",
22138
22227
  value: "cursor:default"
22139
22228
  },
22140
22229
  {
22141
- description: "Read-only mode for planning and designing before implementation.",
22230
+ description: "Cursor uses its read-only planning mode for analysis and design.",
22142
22231
  label: "Plan",
22143
22232
  requiresExplicitConfirmation: false,
22233
+ technicalDetail: null,
22144
22234
  tone: "neutral",
22145
22235
  value: "cursor:plan"
22146
22236
  },
22147
22237
  {
22148
- description: "Q&A mode — no edits or command execution.",
22238
+ description: "Cursor answers questions without editing files or running commands.",
22149
22239
  label: "Ask",
22150
22240
  requiresExplicitConfirmation: false,
22241
+ technicalDetail: null,
22151
22242
  tone: "neutral",
22152
22243
  value: "cursor:ask"
22153
22244
  },
@@ -22155,13 +22246,15 @@ const CURSOR_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22155
22246
  description: "Use Cursor’s Auto-review (Smart Auto) to automatically run safe actions. If Cursor still needs approval, OpenMeld asks you in the Space.",
22156
22247
  label: "Auto-review (Smart Auto)",
22157
22248
  requiresExplicitConfirmation: false,
22249
+ technicalDetail: "cursor-agent --auto-review acp",
22158
22250
  tone: "neutral",
22159
22251
  value: "cursor:autoReview"
22160
22252
  },
22161
22253
  {
22162
- description: "Force Cursor to allow commands unless explicitly denied. CLI: cursor-agent --force.",
22254
+ description: "Cursor allows commands unless an explicit Cursor deny rule blocks them.",
22163
22255
  label: "Run Everything",
22164
22256
  requiresExplicitConfirmation: true,
22257
+ technicalDetail: "cursor-agent --force acp",
22165
22258
  tone: "warning",
22166
22259
  value: "cursor:force"
22167
22260
  }
@@ -22171,6 +22264,7 @@ const GROK_BUILD_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22171
22264
  description: "Use Grok Build’s standard permissions. If Grok needs approval, OpenMeld asks you in the Space.",
22172
22265
  label: "Ask permissions",
22173
22266
  requiresExplicitConfirmation: false,
22267
+ technicalDetail: null,
22174
22268
  tone: "neutral",
22175
22269
  value: "grok-build:default"
22176
22270
  },
@@ -22178,6 +22272,7 @@ const GROK_BUILD_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22178
22272
  description: "Accept file edits automatically. Grok may still ask before running commands or using other tools.",
22179
22273
  label: "Accept edits",
22180
22274
  requiresExplicitConfirmation: false,
22275
+ technicalDetail: null,
22181
22276
  tone: "neutral",
22182
22277
  value: "grok-build:acceptEdits"
22183
22278
  },
@@ -22185,13 +22280,15 @@ const GROK_BUILD_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22185
22280
  description: "Use Grok Build’s plan permission mode. Reads, commands, and MCP tools still follow Grok’s permission rules.",
22186
22281
  label: "Plan mode",
22187
22282
  requiresExplicitConfirmation: false,
22283
+ technicalDetail: null,
22188
22284
  tone: "neutral",
22189
22285
  value: "grok-build:plan"
22190
22286
  },
22191
22287
  {
22192
- description: "Let Grok Build automatically run actions it classifies as safe. Grok may still ask for approval.",
22288
+ description: "Grok Build automatically continues on eligible actions and asks when it still needs approval.",
22193
22289
  label: "Auto mode",
22194
22290
  requiresExplicitConfirmation: false,
22291
+ technicalDetail: null,
22195
22292
  tone: "neutral",
22196
22293
  value: "grok-build:auto"
22197
22294
  },
@@ -22199,6 +22296,7 @@ const GROK_BUILD_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22199
22296
  description: "Automatically reject actions that are not already allowed instead of waiting for approval.",
22200
22297
  label: "Don't ask",
22201
22298
  requiresExplicitConfirmation: false,
22299
+ technicalDetail: null,
22202
22300
  tone: "neutral",
22203
22301
  value: "grok-build:dontAsk"
22204
22302
  },
@@ -22206,6 +22304,7 @@ const GROK_BUILD_AGENT_CONTROLLER_PERMISSION_MODE_OPTIONS = [
22206
22304
  description: "Bypass Grok Build permission prompts. Explicit deny rules and safety hooks may still block an action.",
22207
22305
  label: "Bypass permissions",
22208
22306
  requiresExplicitConfirmation: true,
22307
+ technicalDetail: null,
22209
22308
  tone: "warning",
22210
22309
  value: "grok-build:bypassPermissions"
22211
22310
  }
@@ -33413,9 +33512,9 @@ function createModelCatalogReadSession(input) {
33413
33512
  async function readModelCatalogOnce(baseUrl) {
33414
33513
  try {
33415
33514
  const [apiClient, baseUrlModule, clientFoundationModule] = await Promise.all([
33416
- import("./dist-ClkOpDGh.js"),
33515
+ import("./dist-BFbC-9BX.js"),
33417
33516
  import("./base-url-C89TOpPV.js"),
33418
- import("./api-client-foundation-Z13uEgLv.js")
33517
+ import("./api-client-foundation-BguumKMv.js")
33419
33518
  ]);
33420
33519
  if (typeof apiClient.createConfigApi !== "function") throw new Error("config api client is unavailable");
33421
33520
  const resolvedBaseUrl = baseUrl ?? await baseUrlModule.resolveBaseUrl();
@@ -41224,4 +41323,4 @@ function projectServiceJob(job) {
41224
41323
  //#endregion
41225
41324
  export { formatDeviceReplyReadinessLabel as $, RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS as $a, getSetupFlowCopy as $i, resolveRouteRegistrationReconcileDecision as $n, createOpenMeldHumanProfile as $o, resolveAgentControllerPermissionModeForController as $r, resolveProjectBindingForPath as $t, resolveDaemonStatusSnapshot as A, normalizeNonNegativeInteger as Aa, readCurrentDaemonOwnerSnapshot as Ai, resolveSkillsAgentRegistry as An, readRecentDaemonLifecycleEvents as Ao, seedLegacyAgentContext as Ar, createModelCatalogReadSession as At, formatDaemonServiceRefreshReliabilityMessage as B, CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS as Ba, waitForDaemonSystemServiceToStop as Bi, repairBuiltinControllerInstall as Bn, hasIndependentMaintenanceRegistration as Bo, buildWorkingLanguagePromptPlan as Br, setOpenMeldManagedProfileWorkspace as Bt, isSystemServiceStartupTimeoutError as C, ensureDaemonRuntimePaths as Ca, buildCliLaunchInvocation as Ci, removeAgentCustomTarget as Cn, completePendingDaemonServiceUpdate as Co, buildRuntimeWorkspaceFingerprint as Cr, formatProfileAwareOpenMeldCliCommand as Cs, summarizeSkippedDaemonProfiles as Ct, captureDaemonServiceEvidence as D, dirnamePath as Da, buildDaemonOwnerSnapshotFromObservedState as Di, updateAgentRegistrations as Dn, formatDaemonLifecycleOriginSummary as Do, loadLedgerState as Dr, compareAgentControllerRefsForDisplay as Ds, resolveLocalController as Dt, startDaemonSystemServiceWithAutoRepair as E, asRecord as Ea, inspectDaemonServiceInventory as Ei, updateAgentCustomTarget as En, emitDaemonLifecycleEvent as Eo, commitResolvedAgentContext as Er, resolveUserFacingCliEntryCommand as Es, readLocalEnabledControllers as Et, buildDaemonServiceRefreshNextStep as F, warnDaemonEvent as Fa, getEffectiveDaemonRuntimeStatus as Fi, notifyDaemonRouteCatalogChanged as Fn, downloadCliBinaryUpdateArtifact as Fo, buildAgentContextLookupKey as Fr, readProfileWorkspaceConfig as Ft, buildDaemonServiceDependencyDetails as G, DEFAULT_RECONNECT_DELAY_MS as Ga, toStartBackgroundHelperExecutionCompatibility as Gi, isNpmGlobalCommandPath as Gn, buildNextVersionState as Go, getAgentControllerPermissionModeFieldLabel as Gr, bindProject as Gt, resolveDaemonServiceFreshnessWarning as H, DAEMON_STREAM_CONNECT_TIMEOUT_MS as Ha, listDaemonOwnedProcesses as Hi, resolveBuiltinAgentControllerDefinition as Hn, isDaemonServiceContractIdentityReusable as Ho, createAgentExecutionStatusDisplayRows as Hr, describeProfileWorkspacePathValidationFailure as Ht, buildDaemonServiceRefreshPromptMessage as I, CATALOG_SYNC_RETRY_INTERVAL_MS as Ia, readCurrentDaemonRuntimeContext as Ii, normalizeAgentId as In, resolveCliBinaryUpdatePlan as Io, DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS as Ir, readProfileWorkspaceConfigForAccount as It, buildDaemonServiceDependencySummary as J, PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS as Ja, DaemonServiceRunError as Ji, normalizeDispatchThreadAction as Jn, fetchLatestCliBinaryRelease as Jo, parseAgentControllerRef as Jr, listProjectConnectionsWithStatus as Jt, buildDaemonServiceDependencyMeaning as K, HEARTBEAT_RESPONSE_TIMEOUT_MS as Ka, ensureDaemonRuntimeContractState as Ki, isPnpmGlobalCommandPath as Kn, compareSemver as Ko, isAgentExecutionReadyOrConnecting as Kr, isProjectBound as Kt, buildDaemonServiceRepairGuidance as L, CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS as La, readCurrentObservedDaemonRuntimeStatus as Li, normalizeAgentIds as Ln, verifyCliBinaryCodeSignature as Lo, areAgentControllerInterfaceAccountsSame as Lr, resolveConfiguredProfileWorkspacePath as Lt, resolveDaemonStatusAuthenticationAttention as M, normalizeText$11 as Ma, resolveStoppedContractWriteBlockedReason as Mi, resolveRegistryOriginLaunchCommand as Mn, runDaemonServiceManagerAction as Mo, upsertConversationExecutionState as Mr, resolveProfileWorkspaceRuntime as Mt, resolveServiceReadiness as N, nowIsoString as Na, summarizeDaemonOwnerSnapshot as Ni, resolveRegistryRuntimeAdapterCapabilitySnapshot as Nn, runWithDaemonLifecycleCommandJournal as No, withLedgerStateTransaction as Nr, ensureOpenMeldManagedProfileWorkspace as Nt, captureDaemonServiceEvidenceBestEffort as O, emitRunLine as Oa, formatDaemonOwnerSummaryLabel as Oi, canManageRegistryAgentSkillTargets as On, readLatestDaemonLifecycleConnectionStateEvent as Oo, removeConversationExecutionState as Or, resolveBuiltinAgentControllerBrand as Os, resolveLocalRuntimeControllerSupport as Ot, resolveServiceReadinessFromServiceStatus as P, toErrorMessage$23 as Pa, clearDaemonRuntimeStateIfDefinitelyStopped as Pi, resolveRegistryRuntimeAdapterContractByAgentControllerRef as Pn, collectLocalOperationFailure as Po, buildAuthenticatedControlPlaneResponse as Pr, normalizeCustomProfileWorkspacePath as Pt, formatAgentReplyReadinessLabel as Q, RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS as Qa, buildOnboardingPlan as Qi, isDaemonReconcileInProgressError as Qn, createOpenMeldAgentProfile as Qo, renderWorkingLanguagePrompt as Qr, removeProjectConnection as Qt, buildDaemonServiceStatusReadOnlyDetail as R, CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS as Ra, resolveDaemonRuntimeState as Ri, parseAgentEnabledOption as Rn, package_default as Ro, buildAgentControllerRef as Rr, resolveConfiguredProfileWorkspacePathForAccount as Rt, isDaemonInventoryRunningAndStartReady as S, buildLedgerPaths as Sa, resolveDispatchSpaceActionMcpServer as Si, reconcileNewRunnableBuiltinAgentsForSetup as Sn, resolveDaemonBundleEntryPathFromState as So, runRuntimeTask as Sr, formatOpenMeldCliTextBlock as Ss, loadDaemonRouteCatalog as St, waitForSystemServiceStartup as T, resolvePreferredDaemonDeviceId as Ta, createProviderOriginalError as Ti, setAgentRegistrationEnabled as Tn, readPendingDaemonServiceUpdate as To, appendLedgerHistoryEntry as Tr, resolveSetupFollowUpCliEntryCommand as Ts, buildRuntimeRouteTargets as Tt, clearDaemonStartFailureState as U, DAEMON_STREAM_KEEPALIVE_INTERVAL_MS as Ua, assertDaemonMaintenanceInstallationOwnership as Ui, isBunGlobalCommandPath as Un, readDaemonServiceContract as Uo, createAuthorityOpenMeldServiceRuntimeId as Ur, ProjectBindingOperationError as Ut, formatDaemonServiceUpdateRequiredMessage as V, DAEMON_RUNTIME_CONTRACT_EPOCH as Va, cleanupLegacySharedDaemonServiceState as Vi, EMPTY_AGENT_CONTROLLER_INTERFACE_CAPABILITIES as Vn, clearDaemonServiceContract as Vo, createAgentControllerInterfaceDisplayRows as Vr, validateCustomProfileWorkspacePath as Vt, writeDaemonStartFailureState as W, DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS as Wa, resolveDaemonRuntimeContractCompatibility as Wi, isHomebrewCommandPath as Wn, upsertDaemonServiceContract as Wo, getAgentControllerPermissionModeDisplayMetadata as Wr, ProjectBindingStoreUpdateRequiredError as Wt, resolveDaemonServiceDependencyDiagnostics as X, REGISTER_RESPONSE_TIMEOUT_MS as Xa, PREPARE_SESSION_RECONNECT_GRACE_MS as Xi, SPACE_ACTION_CONTEXT_GUIDANCE_LINES as Xn, readVersionState as Xo, projectPeopleComputersToLegacyLocalRuntimes as Xr, removeAgentActivityBindingsWhileDeliveryLocked as Xt, buildDaemonServiceDependencyTitle as Y, PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS as Ya, resolveCurrentDaemonExpectedVersion as Yi, syncRuntimeEventToInflightTaskControlRegistry as Yn, fetchLatestPackageInfo as Yo, peopleComputerContainsDevice as Yr, migrateProjectBindingStore as Yt, resolveCurrentReplyReadinessSnapshot as Z, RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS as Za, buildDaemonRouteObservationPresentation as Zi, SPACE_ACTION_TARGET_GUIDANCE_LINES as Zn, writeVersionState as Zo, renderInformationProtectionPrompt as Zr, removeMissingProjectConnections as Zt, DaemonServiceLifecycleDrainTimeoutError as _, DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES as _a, forkCodexAppServerThread as _i, listAgentRegistrations as _n, OPENMELD_VERSION as _o, resolveDispatchQueueLogMeta as _r, resolveAuthenticationReasonFromState as _s, readDaemonRouteCatalogCache as _t, resolveServiceUpdateUrgency as a, resolveCurrentOpenMeldAccountContext as aa, resolveCatalogSyncSkippedProfilesLogState as ai, withAgentActivityDeliveryLock as an, clearSelectedOpenMeldProfileId as ao, createLocalTaskInterruptSender as ar, updateOpenMeldProfile as as, resolveReplyReadinessAvailabilityReasonCopy as at, prepareDaemonServiceUpdateWorkerCarrier as b, classifyDaemonServiceRunStartability as ba, createUnavailableProviderUsageLimits as bi, readAgentRuntimeConfigHealth as bn, readDaemonActiveBundleState as bo, resolveCompatibleConversationExecutionState as br, formatOpenMeldCliCommands as bs, createMutableRouteCatalogState as bt, buildLocalAgentCatalogFromReadiness as c, ensureDaemonSystemServiceCommandFiles as ca, parseOpenCodeGoUsageResponse as ci, syncDeviceRuntimeStateProjection as cn, resolveOpenMeldEnvironmentTarget as co, createInflightTaskControlRegistry as cr, buildAgentAuthenticationGuide as cs, classifyGatewayChainFailure as ct, isCliUpdateCheckApplicable as d, isOpenMeldManagedBinaryPath as da, GrokBuildAcpTransportError as di, emitReconcileStartedEvidence as dn, requestLocalAgentActivitySync as do, MIN_HEARTBEAT_INTERVAL_MS as dr, buildHumanAuthenticationCard as ds, resolveGatewayChainRetryGuidance as dt, parseCliViewMode as ea, resolveAgentExecutionStatus as ei, runIfAgentActivityBindingGenerationIsCurrent as en, isSelectedOpenMeldProfileRequiredError as eo, createSerialAgentInteractionCallback as er, deleteOpenMeldProfile as es, formatHumanReplyReadinessReason as et, readLastOpenMeldToolsUpdateAttempt as f, buildDaemonServiceTargetSpec as fa, probeGrokBuildAcpInterface as fi, createPrimaryBindingReadSession as fn, requestLocalDaemonShutdown as fo, applyAcceptedLeases as fr, createAuthenticationError as fs, resolveOpenClawLocalDiagnosticsValue as ft, scheduleDaemonServiceUpdate as g, DAEMON_SERVICE_AUTO_HEAL_ANOMALIES as ga, resolveInstalledCodexLaunchCandidates as gi, listAgentCustomTargets as gn, readManagedCliInstallation as go, resolveCatalogSyncIntervalMs as gr, resolveAuthenticationGuidanceFromMessage as gs, slugifyOpenClawNamePart as gt, runPendingDaemonServiceUpdate as h, resolveVersionChangeDirection as ha, resolveCodexTimeoutMs as hi, createRegistrationFromCatalogTarget as hn, performManagedInstall as ho, resolveAdaptiveHeartbeatIntervalMs as hr, resolveAuthenticationGuidanceFromError as hs, normalizeOpenClawSpaceIdPrefix as ht, writeOpenMeldToolsMaintenancePolicy as i, setProfileDefaultView as ia, resolveSelectableCandidates as ii, resolveLocalProjectConnectionForPath as in, clearAllSelectedOpenMeldProfileIds as io, mergeOpenClawGatewayVisibility as ir, resolveOpenMeldProfile as is, formatSpaceMemberCommandRecoveryCopy as it, resolveDaemonStatusAttention as j, normalizeOptionalText$52 as ja, resolveDaemonStopStrategy as ji, listBuiltinAgentsRegistryEntries as jn, resolveRecentDaemonSignalStopCause as jo, settleInflightTask as jr, resolveCurrentEffectiveProfileWorkingFolderRuntime as jt, formatDaemonFailureContextText as k, normalizeHeartbeatIntervalMs as ka, hasActiveDaemonOwners as ki, detectInstalledSkillsAgents as kn, readLatestDaemonLifecycleOriginEvent as ko, resolveConversationExecutionStateByLookupKey as kr, syncProfileWorkspaceState as kt, readCurrentLocalDeviceId as l, extractDaemonCommandEntryPath as la, forkOpenCodeServerSession as li, emitDriftDetectedEvidence as ln, resolveAuthBaseUrl as lo, ADAPTIVE_HEARTBEAT_JITTER_RATIO as lr, buildAuthenticationStatusLabel as ls, resolveGatewayChainReadiness as lt, readOpenMeldToolsUpdateContextFromEnv as m, isVersionDowngrade as ma, projectCodexUsageLimits as mi, addAgentCustomTarget as mn, buildInstallSelfJsonPayload as mo, pruneStaleLeases as mr, resolveAuthenticationGuidance as ms, buildOpenClawSpaceSessionKey as mt, readOpenMeldToolsMaintenancePolicy as n, resolveViewProfileKey as na, resolveEvidenceSyncHealth as ni, unbindProject as nn, resolveOpenMeldProfileOrNull as no, normalizeDispatchPostMessageAction as nr, listOpenMeldProfiles as ns, mapAgentReplyReadinessToLegacyAutoReply as nt, assessServerRequiredVersion as o, writeDaemonServiceContract as oa, createLocalAdapterContainer as oi, withAgentActivityLocalStateLock as on, getSelectedOpenMeldProfileId as oo, buildLocalServiceDiagnosticsPayload as or, assertAdditionalHumanProfileCreationEnabled as os, resolveReplyReadinessGuidanceSummaryCopy as ot, readPendingOpenMeldToolsUpdateAttempt as p, resolveDaemonServiceAlignmentDecision as pa, resolveInstalledGrokBuildLaunchCandidates as pi, resolveAgentProfilePrimaryAgentControllerReport as pn, sendLocalDaemonControlPlaneRequest as po, applyIntervalJitterMs as pr, extractAuthenticationPromptAction as ps, prepareProviderRuntime as pt, buildDaemonServiceDependencyNextStep as q, MAX_RECONNECT_DELAY_MS as qa, readDaemonRuntimeContractRepairReport as qi, resolveLocalRegistryAgentIdFromAgentControllerRef as qn, ensureVersionStateReady as qo, listAgentControllerPermissionModeOptions as qr, listProjectBindings as qt, resolveOpenMeldToolsMaintenanceProjection as r, getProfileDefaultView as ra, resolveNativeAgentControllerPermissionModeForController as ri, canonicalizeLocalProjectPath as rn, alignSelectedOpenMeldProfileStorage as ro, createPendingAgentInteractionRegistry as rr, primeOpenMeldProfilesSessionCache as rs, REPLY_READINESS_COPY as rt, describeServerRequiredVersionUnavailableReason as s, buildDaemonSystemServiceCommandSpec as sa, createLocalAdapterEntries as si, NO_LOCAL_AGENTS_NEED_OPENMELD_SERVICE_REASON as sn, setSelectedOpenMeldProfileId as so, createLocalExecutionSlots as sr, readDaemonCatalogSyncSignal as ss, resolveOpenClawDiagnosticsGuidance as st, createOpenMeldToolsUpdateCoordinator as t, resolveRuntimeContext as ta, resolveAgentProfileEditCapabilities as ti, setDefaultProjectConnection as tn, requireOpenMeldProfile as to, buildDispatchReplyContextSummary as tr, getOpenMeldProfileCapabilities as ts, formatReplyReadinessSummary as tt, assessCliUpdate as u, resolveDaemonBundleIdFromEntryPath as ua, resolveInstalledOpenCodeLaunchCandidates as ui, emitReconcileCompletedEvidence as un, LocalDaemonControlPlaneClientError as uo, MAX_HEARTBEAT_INTERVAL_MS as ur, buildCommandAuthenticationPromptMessage as us, resolveGatewayChainRepairGuidance as ut, runDaemonServiceLifecycle as v, DAEMON_SERVICE_REPAIR_ANOMALIES as va, verifyCodexAppServerThread as vi, listAgentTargetStates as vn, cleanupInactiveDaemonServiceBundles as vo, resolveDispatchContinuityObservation as vr, formatInlineOpenMeldCliCommands as vs, writeDaemonRouteCatalogCache as vt, resolveSystemServiceStartupWaitMs as w, resolveDaemonDeviceId as wa, materializeCliLaunchCommand as wi, resolveAgentTargetState as wn, readLastDaemonServiceUpdate as wo, buildTaskResultEnvelope as wr, formatProfileAwareOpenMeldCliCommands as ws, syncDaemonRouteCatalogState as wt, uninstallDaemonServiceUpdateWorker as x, classifyDaemonServiceWakeability as xa, createUnsupportedProviderUsageLimits as xi, reconcileNewRunnableBuiltinAgentRegistrations as xn, resolveAlignedDaemonActiveBundleEntryPath as xo, resolveLatestScopedConversationExecutionState as xr, formatOpenMeldCliLine as xs, createRouteCatalogFromMutableState as xt, ensureDaemonServiceMaintenanceInstalled as y, DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES as ya, resolveInstalledClaudeCodeLaunchCandidates as yi, manageAgentRegistrationInstallation as yn, prepareDaemonServiceBundle as yo, resolveCompatibleAgentContextMatch as yr, formatOpenMeldCliCommand as ys, resolveLocalServiceDemand as yt, buildDaemonServiceUpdateRequiredNextStep as z, CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS as za, resolveDaemonServiceManagerForRuntimeState as zi, sortAgentRegistrations as zn, configureDaemonMaintenanceEnvironment as zo, buildInformationProtectionPromptPlan as zr, setCustomProfileWorkspace as zt };
41226
41325
 
41227
- //# sourceMappingURL=openmeld-tools-update-coordinator-o8iJtvmu.js.map
41326
+ //# sourceMappingURL=openmeld-tools-update-coordinator-DJ65uI3O.js.map