@xopcai/xopc 0.0.428 → 0.0.430

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 (396) hide show
  1. package/dist/browser-ext/manifest.json +1 -1
  2. package/dist/extensions/feishu/src/adapters/cli-login.js +3 -3
  3. package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
  4. package/dist/extensions/telegram/src/inbound-processor.js +2 -2
  5. package/dist/extensions/telegram/src/outbound-sender.js +1 -1
  6. package/dist/extensions/telegram/src/plugin.js +2 -2
  7. package/dist/extensions/telegram/xopc.extension.json +1 -1
  8. package/dist/extensions/weixin/src/api/api.js +2 -2
  9. package/dist/extensions/weixin/src/auth/accounts.js +12 -12
  10. package/dist/extensions/weixin/src/messaging/debug-mode.js +5 -5
  11. package/dist/extensions/weixin/src/messaging/inbound.js +11 -11
  12. package/dist/gateway/static/root/assets/{agents-yTsbcxRi.js → agents-Ds7K3D7T.js} +1 -1
  13. package/dist/gateway/static/root/assets/{automation-task-card-w6cKxfaP.js → automation-task-card-DIjI_Y1X.js} +1 -1
  14. package/dist/gateway/static/root/assets/{automations-page-D4LyOLzY.js → automations-page-BQwSCkmd.js} +1 -1
  15. package/dist/gateway/static/root/assets/{automations-workspace-BGyvZZj5.js → automations-workspace-BUFTTjBq.js} +2 -2
  16. package/dist/gateway/static/root/assets/{capabilities-page-DHJLl4RD.js → capabilities-page-B8UgQ4dD.js} +2 -2
  17. package/dist/gateway/static/root/assets/{capabilities-settings-panel-FJ3Vo7Wa.js → capabilities-settings-panel-Bxn8HtEO.js} +2 -2
  18. package/dist/gateway/static/root/assets/{chat-page--dKUIg5W.js → chat-page-e-xCsrdS.js} +1 -1
  19. package/dist/gateway/static/root/assets/{computer-settings-page-Bm70SIjD.js → computer-settings-page-BIHbjBVt.js} +1 -1
  20. package/dist/gateway/static/root/assets/{image-generation-api-BbEnKsK1.js → image-generation-api-CdwYgzhU.js} +1 -1
  21. package/dist/gateway/static/root/assets/{index-ClPeYgQk.js → index-C5BhE5cA.js} +5 -5
  22. package/dist/gateway/static/root/assets/model-selector-YsCHu1Gn.js +1 -0
  23. package/dist/gateway/static/root/assets/{personal-page-CiKdXLeR.js → personal-page-Cvd-v9kT.js} +1 -1
  24. package/dist/gateway/static/root/assets/{phone-model-connection-ucX3Tvl8.js → phone-model-connection-BieYnAJ5.js} +1 -1
  25. package/dist/gateway/static/root/assets/phone-model-picker-Bkex4Sre.js +1 -0
  26. package/dist/gateway/static/root/assets/{phone-settings-page-BSdB2pnW.js → phone-settings-page-D8PuvEuJ.js} +1 -1
  27. package/dist/gateway/static/root/assets/{product-preview-content-CNaJb6Bj.js → product-preview-content-VcvxaO2S.js} +1 -1
  28. package/dist/gateway/static/root/assets/{product-preview-modal-DgwrrpqJ.js → product-preview-modal-Ym6bomTW.js} +2 -2
  29. package/dist/gateway/static/root/assets/{project-detail-page-FReFYUv0.js → project-detail-page-CFbXWvcd.js} +1 -1
  30. package/dist/gateway/static/root/assets/{route-preload-DS4fVFbc.js → route-preload-C-VRKwB1.js} +2 -2
  31. package/dist/gateway/static/root/assets/{sessions-page-C8gwrFHR.js → sessions-page-C2CH-55n.js} +1 -1
  32. package/dist/gateway/static/root/assets/{settings-page-DCQnHCNN.js → settings-page-B6vrcc6f.js} +1 -1
  33. package/dist/gateway/static/root/assets/{setup-interaction-page-B9ACeAvO.js → setup-interaction-page-BDPte58u.js} +1 -1
  34. package/dist/gateway/static/root/assets/{task-detail-page-L5RIelv0.js → task-detail-page-CC3Rzqq9.js} +1 -1
  35. package/dist/gateway/static/root/index.html +6 -6
  36. package/dist/package.js +1 -1
  37. package/dist/src/agent/agent-manager.js +18 -18
  38. package/dist/src/agent/agent-scope.js +2 -2
  39. package/dist/src/agent/background-review/prompts.js +1 -1
  40. package/dist/src/agent/background-review/run-background-review.js +12 -12
  41. package/dist/src/agent/child-agent-factory.js +2 -2
  42. package/dist/src/agent/coding/run-verification.d.ts +1 -0
  43. package/dist/src/agent/coding/run-verification.js +1 -1
  44. package/dist/src/agent/context/coordinator.js +2 -2
  45. package/dist/src/agent/context/execution-context.js +4 -4
  46. package/dist/src/agent/context/project-context.js +3 -3
  47. package/dist/src/agent/data-acquisition/service.js +1 -1
  48. package/dist/src/agent/embedded/codemode-extension.js +1 -1
  49. package/dist/src/agent/embedded/execution-tool-policy.js +1 -1
  50. package/dist/src/agent/embedded/external-tool-discovery.js +1 -1
  51. package/dist/src/agent/embedded/run-for-session.js +6 -6
  52. package/dist/src/agent/embedded/run-turn.js +31 -23
  53. package/dist/src/agent/embedded/session-runner.js +4 -4
  54. package/dist/src/agent/embedded/session-tool-result-guard.js +1 -1
  55. package/dist/src/agent/embedded/xopc-tools-bridge.js +1 -1
  56. package/dist/src/agent/external-tools/cliProvider.js +4 -4
  57. package/dist/src/agent/external-tools/composio-provider.js +4 -4
  58. package/dist/src/agent/external-tools/endpoint-provider.js +6 -6
  59. package/dist/src/agent/external-tools/extension-provider.js +1 -1
  60. package/dist/src/agent/external-tools/gateway-tools.js +3 -3
  61. package/dist/src/agent/external-tools/memory-provider.js +1 -1
  62. package/dist/src/agent/image/generation/openai-images-provider.js +1 -1
  63. package/dist/src/agent/image/generation/runtime.js +1 -1
  64. package/dist/src/agent/image/index.js +1 -1
  65. package/dist/src/agent/inbound/attachment-pipeline.js +2 -2
  66. package/dist/src/agent/inbound/inbound-loop.js +2 -2
  67. package/dist/src/agent/independent-execution.js +2 -2
  68. package/dist/src/agent/index.js +3 -3
  69. package/dist/src/agent/mcp/connection-drafts.js +1 -1
  70. package/dist/src/agent/mcp/connection-setup.js +1 -1
  71. package/dist/src/agent/mcp/conversation-setup.js +1 -1
  72. package/dist/src/agent/mcp/discovery.js +2 -2
  73. package/dist/src/agent/mcp/transport.js +1 -1
  74. package/dist/src/agent/memory/index.js +1 -1
  75. package/dist/src/agent/orchestration/llm-turn-retry.js +1 -1
  76. package/dist/src/agent/prompt/response-language.js +1 -1
  77. package/dist/src/agent/prompt/service-prompt-builder.js +3 -3
  78. package/dist/src/agent/prompt/system-prompt-params.js +1 -1
  79. package/dist/src/agent/sandbox/exec-policy.js +1 -1
  80. package/dist/src/agent/service/direct-turn-helpers.js +15 -12
  81. package/dist/src/agent/service/process-direct-streaming.js +6 -6
  82. package/dist/src/agent/service/webchat-tts.js +2 -2
  83. package/dist/src/agent/service.js +22 -22
  84. package/dist/src/agent/session/session-config-service.js +2 -2
  85. package/dist/src/agent/session/session-hydrator.js +1 -1
  86. package/dist/src/agent/session/session-inspector.js +1 -1
  87. package/dist/src/agent/skills/filesystem-watcher.js +1 -1
  88. package/dist/src/agent/skills/hub-lock.js +1 -1
  89. package/dist/src/agent/skills/hub-pull.js +2 -2
  90. package/dist/src/agent/skills/index.js +1 -1
  91. package/dist/src/agent/skills/managed-store.js +1 -1
  92. package/dist/src/agent/skills/marketplace/adapters/store/adapter.js +1 -1
  93. package/dist/src/agent/skills/marketplace/adapters/store/store-api-client.js +1 -1
  94. package/dist/src/agent/skills/skill-manage-ops.js +1 -1
  95. package/dist/src/agent/skills/skill-manager.js +1 -1
  96. package/dist/src/agent/skills/skill-sources.js +1 -1
  97. package/dist/src/agent/source-context/index.js +1 -1
  98. package/dist/src/agent/tasks/task-judge-service.js +8 -8
  99. package/dist/src/agent/tools/create-share-tool.js +2 -2
  100. package/dist/src/agent/tools/delegate-tool.js +3 -3
  101. package/dist/src/agent/tools/exec-command.js +1 -1
  102. package/dist/src/agent/tools/executor.js +1 -1
  103. package/dist/src/agent/tools/factory.js +19 -19
  104. package/dist/src/agent/tools/fetch-text.js +1 -1
  105. package/dist/src/agent/tools/image-generate-tool.js +2 -2
  106. package/dist/src/agent/tools/index.js +4 -4
  107. package/dist/src/agent/tools/list-dir.js +1 -1
  108. package/dist/src/agent/tools/personal-attention-tool.js +2 -2
  109. package/dist/src/agent/tools/personal-read-tool.js +1 -1
  110. package/dist/src/agent/tools/personal-request-result-tool.js +1 -1
  111. package/dist/src/agent/tools/personal-request-tool.js +4 -4
  112. package/dist/src/agent/tools/personal-result-tool.js +1 -1
  113. package/dist/src/agent/tools/personal-task-tool.js +5 -5
  114. package/dist/src/agent/tools/phone-use-tool.js +1 -1
  115. package/dist/src/agent/tools/publish-artifacts.js +1 -1
  116. package/dist/src/agent/tools/read.js +1 -1
  117. package/dist/src/agent/tools/review-workspace.js +1 -1
  118. package/dist/src/agent/tools/send-media.js +1 -1
  119. package/dist/src/agent/tools/skill-manage-tool.js +1 -1
  120. package/dist/src/agent/tools/task-collaboration-tool.js +2 -2
  121. package/dist/src/agent/tools/tts-tool.js +1 -1
  122. package/dist/src/agent/tools/user-context-tool.js +2 -2
  123. package/dist/src/agent/tools/web.js +1 -1
  124. package/dist/src/agent/tools/write.js +1 -1
  125. package/dist/src/agent/tools/xopc-use-tool.js +12 -12
  126. package/dist/src/agent/transcript/index.js +2 -2
  127. package/dist/src/agent/transcript/transcript-hygiene.js +2 -2
  128. package/dist/src/agent-catalog/capabilities.js +2 -2
  129. package/dist/src/agent-catalog/repository.js +1 -1
  130. package/dist/src/agent-matching/delegation-service.js +1 -1
  131. package/dist/src/ai-assist/text-assist.js +1 -1
  132. package/dist/src/auth/credentials.js +1 -1
  133. package/dist/src/auth/oauth/openai.js +1 -1
  134. package/dist/src/auth/oauth/xopc-cloud.js +1 -1
  135. package/dist/src/auth/profiles/store.js +1 -1
  136. package/dist/src/automations/api/routes.js +2 -2
  137. package/dist/src/automations/capabilities/drafts.js +1 -1
  138. package/dist/src/automations/capabilities/write.js +1 -1
  139. package/dist/src/automations/configuration-conversation.js +1 -1
  140. package/dist/src/automations/delivery/delivery-router.js +1 -1
  141. package/dist/src/automations/domain/index.js +1 -1
  142. package/dist/src/automations/draft/automation-draft-service.js +1 -1
  143. package/dist/src/automations/index.js +2 -2
  144. package/dist/src/automations/service/action-executor.js +2 -2
  145. package/dist/src/automations/service/automation-service.js +2 -2
  146. package/dist/src/browser/native-messaging-host.js +1 -1
  147. package/dist/src/browser/providers/browser-ext-install.js +2 -2
  148. package/dist/src/capabilities/runtime/dispatcher.js +1 -1
  149. package/dist/src/capabilities/runtime/product.js +1 -1
  150. package/dist/src/capabilities/store-connector.js +2 -2
  151. package/dist/src/channels/attachments/voice-stt-webchat.js +1 -1
  152. package/dist/src/channels/index.js +1 -1
  153. package/dist/src/channels/outbound-sender.js +1 -1
  154. package/dist/src/channels/pairing/allow-from-file.js +9 -9
  155. package/dist/src/channels/pairing/pairing-store.js +6 -6
  156. package/dist/src/chat-commands/agent-edit.js +1 -1
  157. package/dist/src/chat-commands/builtins/config.js +2 -2
  158. package/dist/src/chat-commands/builtins/session.js +1 -1
  159. package/dist/src/chat-commands/builtins/thinking.js +1 -1
  160. package/dist/src/chat-commands/builtins/tts.js +1 -1
  161. package/dist/src/chat-commands/context.js +1 -1
  162. package/dist/src/chat-commands/index.js +3 -3
  163. package/dist/src/cli/commands/agent.js +7 -7
  164. package/dist/src/cli/commands/agents.js +1 -1
  165. package/dist/src/cli/commands/config.js +1 -1
  166. package/dist/src/cli/commands/connectors.js +1 -1
  167. package/dist/src/cli/commands/doctor/checks/channel-plugins.js +1 -1
  168. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  169. package/dist/src/cli/commands/doctor/checks/gateway-health.js +1 -1
  170. package/dist/src/cli/commands/extension-agent-plugin.js +1 -1
  171. package/dist/src/cli/commands/extension-dev.js +1 -1
  172. package/dist/src/cli/commands/extension.js +2 -2
  173. package/dist/src/cli/commands/image.js +1 -1
  174. package/dist/src/cli/commands/init.js +1 -1
  175. package/dist/src/cli/commands/models.js +3 -3
  176. package/dist/src/cli/commands/onboard/channels/registry.js +1 -1
  177. package/dist/src/cli/commands/onboard/model.js +1 -1
  178. package/dist/src/cli/commands/onboard.js +1 -1
  179. package/dist/src/cli/commands/project.js +1 -1
  180. package/dist/src/cli/commands/skills.js +2 -2
  181. package/dist/src/cli/commands/tunnel.js +4 -4
  182. package/dist/src/cli/extension-cli-register.js +5 -5
  183. package/dist/src/cli/utils/gateway-client.js +1 -1
  184. package/dist/src/cli/utils/init-workspace-core.js +3 -3
  185. package/dist/src/cli/utils/session.js +1 -1
  186. package/dist/src/computer/flows.js +1 -1
  187. package/dist/src/computer/model-adapter.js +1 -1
  188. package/dist/src/computer/model-policy.js +1 -1
  189. package/dist/src/computer/runtime.js +4 -4
  190. package/dist/src/config/agent-profile.js +1 -1
  191. package/dist/src/config/index.js +3 -3
  192. package/dist/src/config/loader.js +1 -1
  193. package/dist/src/config/models-json.d.ts +6 -0
  194. package/dist/src/config/models-json.js +10 -5
  195. package/dist/src/connectors/cli/authorization.js +1 -1
  196. package/dist/src/connectors/composio-sessions.js +1 -1
  197. package/dist/src/connectors/composio.js +1 -1
  198. package/dist/src/connectors/connected-source-ingestion.js +2 -2
  199. package/dist/src/connectors/connected-source-understanding.js +5 -5
  200. package/dist/src/connectors/connection-recovery-service.js +4 -4
  201. package/dist/src/connectors/content-enrichment.js +1 -1
  202. package/dist/src/connectors/health.js +1 -1
  203. package/dist/src/connectors/instances.js +1 -1
  204. package/dist/src/connectors/runtime-adapter-registry.js +2 -2
  205. package/dist/src/discussions/live-worker.js +1 -1
  206. package/dist/src/discussions/sealer.js +1 -1
  207. package/dist/src/endpoint-tools/index.js +1 -1
  208. package/dist/src/endpoint-tools/runtime.js +2 -2
  209. package/dist/src/execution-environments/local-worktree-manager.js +1 -1
  210. package/dist/src/extensions/activation-context.js +3 -3
  211. package/dist/src/extensions/agent-plugins/auth.js +1 -1
  212. package/dist/src/extensions/agent-plugins/skill-catalog.js +3 -3
  213. package/dist/src/extensions/agent-plugins/source-http-fetch.js +1 -1
  214. package/dist/src/extensions/agent-plugins/validation.js +1 -1
  215. package/dist/src/extensions/api.js +3 -3
  216. package/dist/src/extensions/bundled-extension-activation.js +1 -1
  217. package/dist/src/extensions/index.js +3 -3
  218. package/dist/src/extensions/loader.js +2 -2
  219. package/dist/src/extensions/lockfile.js +1 -1
  220. package/dist/src/extensions/sdk/index.js +1 -1
  221. package/dist/src/extensions/sdk/media.js +1 -1
  222. package/dist/src/gateway/agents-admin.js +2 -2
  223. package/dist/src/gateway/device-routes.js +1 -1
  224. package/dist/src/gateway/file-path-classifier.js +1 -1
  225. package/dist/src/gateway/global-defaults-admin.js +1 -1
  226. package/dist/src/gateway/hono/app.js +2 -2
  227. package/dist/src/gateway/hono/lib/config-payload.js +2 -2
  228. package/dist/src/gateway/hono/oauth-async.js +1 -1
  229. package/dist/src/gateway/hono/routes/agent-plugins.js +1 -1
  230. package/dist/src/gateway/hono/routes/agents.js +1 -1
  231. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
  232. package/dist/src/gateway/hono/routes/commands-skills.js +4 -4
  233. package/dist/src/gateway/hono/routes/config-patch/gateway.js +1 -1
  234. package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -1
  235. package/dist/src/gateway/hono/routes/connectors.js +1 -1
  236. package/dist/src/gateway/hono/routes/context-sources.js +1 -1
  237. package/dist/src/gateway/hono/routes/endpoint-tools.js +1 -1
  238. package/dist/src/gateway/hono/routes/home.js +1 -1
  239. package/dist/src/gateway/hono/routes/location-sharing.js +1 -1
  240. package/dist/src/gateway/hono/routes/mcp.js +1 -1
  241. package/dist/src/gateway/hono/routes/memory-learning.js +3 -3
  242. package/dist/src/gateway/hono/routes/models.js +16 -9
  243. package/dist/src/gateway/hono/routes/notes.js +3 -3
  244. package/dist/src/gateway/hono/routes/phone-dependencies.js +1 -1
  245. package/dist/src/gateway/hono/routes/phone-setup.js +3 -2
  246. package/dist/src/gateway/hono/routes/phone.js +3 -2
  247. package/dist/src/gateway/hono/routes/projects.js +5 -5
  248. package/dist/src/gateway/hono/routes/runtime-tools.js +1 -1
  249. package/dist/src/gateway/hono/routes/session-command-handler.js +2 -2
  250. package/dist/src/gateway/hono/routes/session-input-handler.js +5 -5
  251. package/dist/src/gateway/hono/routes/sessions.js +3 -3
  252. package/dist/src/gateway/hono/routes/shares.js +1 -1
  253. package/dist/src/gateway/hono/routes/side-chats.js +1 -1
  254. package/dist/src/gateway/hono/routes/tasks.js +2 -2
  255. package/dist/src/gateway/hono/routes/user-model.js +7 -7
  256. package/dist/src/gateway/hono/routes/voice.js +7 -7
  257. package/dist/src/gateway/image-generation-setup.js +1 -1
  258. package/dist/src/gateway/lock.js +11 -11
  259. package/dist/src/gateway/media-access.js +1 -1
  260. package/dist/src/gateway/mobile-privacy.js +2 -2
  261. package/dist/src/gateway/ports.js +6 -6
  262. package/dist/src/gateway/provider-model-setup.js +1 -1
  263. package/dist/src/gateway/server.js +1 -1
  264. package/dist/src/gateway/service/agent-runner.js +2 -2
  265. package/dist/src/gateway/service/config-coordinator.js +2 -2
  266. package/dist/src/gateway/service/marketplace-service.js +2 -2
  267. package/dist/src/gateway/service/run-gateway-agent.js +6 -7
  268. package/dist/src/gateway/service/session-command-service.js +2 -2
  269. package/dist/src/gateway/service/session-input-coordinator.js +1 -1
  270. package/dist/src/gateway/service.js +47 -47
  271. package/dist/src/gateway/session-context-summary.js +4 -4
  272. package/dist/src/gateway/session-reset-service.js +1 -1
  273. package/dist/src/gateway/workspace-editor-path.js +2 -2
  274. package/dist/src/gateway/xopc-cloud-capability-setup.js +5 -2
  275. package/dist/src/home-intelligence/generator.js +2 -2
  276. package/dist/src/imports/importService.js +1 -1
  277. package/dist/src/imports/inventory.js +2 -2
  278. package/dist/src/imports/productImport.js +1 -1
  279. package/dist/src/imports/runtime.js +1 -1
  280. package/dist/src/infra/gateway-processes.js +2 -2
  281. package/dist/src/infra/path-env.js +3 -3
  282. package/dist/src/infra/update-global.js +9 -9
  283. package/dist/src/knowledge/connected-knowledge-pipeline.js +1 -1
  284. package/dist/src/knowledge/index.js +1 -1
  285. package/dist/src/knowledge-memory/repository.js +1 -1
  286. package/dist/src/knowledge-memory/usage-policy.js +1 -1
  287. package/dist/src/local-apps/service.js +3 -3
  288. package/dist/src/mcp/gateway-http-client.js +1 -1
  289. package/dist/src/media-understanding/openai-compatible-audio.js +1 -1
  290. package/dist/src/memory-learning/source-learning.js +5 -5
  291. package/dist/src/memory-learning/task-receipts.js +1 -1
  292. package/dist/src/notes/agent-context.js +4 -4
  293. package/dist/src/notes/index.js +1 -1
  294. package/dist/src/notes/service.js +3 -3
  295. package/dist/src/observability/runtime.d.ts +2 -0
  296. package/dist/src/observability/runtime.js +12 -1
  297. package/dist/src/personal-agent/capability-service.js +2 -2
  298. package/dist/src/personal-agent/proactivity/routes.js +1 -1
  299. package/dist/src/personal-agent/proactivity/service.js +7 -7
  300. package/dist/src/personal-agent/prompt-context.js +7 -7
  301. package/dist/src/personal-agent/prompts.js +2 -2
  302. package/dist/src/personal-agent/reply-composer.js +9 -9
  303. package/dist/src/personal-agent/request-delivery.js +2 -2
  304. package/dist/src/personal-agent/request-service.js +7 -7
  305. package/dist/src/personal-agent/result-reader.js +1 -1
  306. package/dist/src/personal-agent/service.js +2 -2
  307. package/dist/src/phone/contracts.d.ts +2 -0
  308. package/dist/src/phone/contracts.js +1 -0
  309. package/dist/src/phone/model-adapter.d.ts +1 -1
  310. package/dist/src/phone/model-adapter.js +30 -7
  311. package/dist/src/phone/model-policy.d.ts +4 -0
  312. package/dist/src/phone/model-policy.js +30 -0
  313. package/dist/src/phone/repository.js +1 -1
  314. package/dist/src/phone/runtime.js +4 -4
  315. package/dist/src/phone/structured-model.d.ts +6 -0
  316. package/dist/src/phone/structured-model.js +87 -0
  317. package/dist/src/projects/index.js +2 -2
  318. package/dist/src/projects/project-agent-suggestion.js +1 -1
  319. package/dist/src/projects/project-service.js +2 -2
  320. package/dist/src/projects/project-skill-service.js +2 -2
  321. package/dist/src/projects/workspace.js +1 -1
  322. package/dist/src/providers/model-catalog-types.d.ts +1 -1
  323. package/dist/src/providers/model-reference-auditor.js +3 -2
  324. package/dist/src/providers/presentation.js +5 -3
  325. package/dist/src/realtime/runtime.js +1 -1
  326. package/dist/src/remote-access/exposure-manager.js +1 -1
  327. package/dist/src/runtime-tools/archive.js +1 -1
  328. package/dist/src/runtime-tools/phone-dependencies.js +2 -2
  329. package/dist/src/session/index.js +2 -2
  330. package/dist/src/session/init-session-turn.js +1 -1
  331. package/dist/src/session/resolve-session.js +1 -1
  332. package/dist/src/session/store.js +5 -5
  333. package/dist/src/session/thinking-resolve.js +1 -1
  334. package/dist/src/share/hosted-session-share.js +2 -2
  335. package/dist/src/share/session-share-service.js +1 -1
  336. package/dist/src/share/share-store.js +1 -1
  337. package/dist/src/share/share-thumbnail.js +1 -1
  338. package/dist/src/share/site-proxy.js +1 -1
  339. package/dist/src/share/site-share-store.js +1 -1
  340. package/dist/src/storage/sqlite/connection.js +9 -9
  341. package/dist/src/storage/sqlite/schema.d.ts +2 -2
  342. package/dist/src/storage/sqlite/schema.js +7 -7
  343. package/dist/src/storage/sqlite/upgrades/261_session_input_task_origins.sql +6 -0
  344. package/dist/src/tasks/capabilities/read.js +2 -2
  345. package/dist/src/tasks/capabilities/write.js +2 -2
  346. package/dist/src/tasks/home-query-service.js +1 -1
  347. package/dist/src/tasks/index.js +5 -5
  348. package/dist/src/tasks/task-allocation-service.js +5 -5
  349. package/dist/src/tasks/task-application-service.js +5 -5
  350. package/dist/src/tasks/task-collaboration-delivery.js +1 -1
  351. package/dist/src/tasks/task-context-assembler.js +2 -2
  352. package/dist/src/tasks/task-contract-planner.js +2 -2
  353. package/dist/src/tasks/task-handoff-service.js +1 -1
  354. package/dist/src/tasks/task-handoff.js +4 -4
  355. package/dist/src/tasks/task-main-update-decision-service.js +3 -3
  356. package/dist/src/tasks/task-model-call.js +1 -1
  357. package/dist/src/tasks/task-research-result.js +4 -4
  358. package/dist/src/tasks/task-result-delivery-repository.js +1 -1
  359. package/dist/src/tasks/task-result-delivery-service.js +2 -2
  360. package/dist/src/tasks/task-run-coordinator.js +3 -3
  361. package/dist/src/tasks/task-run-dispatcher.js +1 -1
  362. package/dist/src/tui/backends/embedded-backend.js +12 -12
  363. package/dist/src/tui/backends/gateway-realtime-backend.js +2 -2
  364. package/dist/src/tui/extension-host/load-extensions.js +1 -1
  365. package/dist/src/tui/tui-commands.js +5 -5
  366. package/dist/src/tui/tui-picker-overlay.js +1 -1
  367. package/dist/src/tui/tui-skills-autocomplete.js +1 -1
  368. package/dist/src/tui/tui-startup-resources.js +3 -3
  369. package/dist/src/tui/tui.js +4 -4
  370. package/dist/src/tunnel/gateway-lifecycle.js +1 -1
  371. package/dist/src/user-context/access-policy.js +2 -2
  372. package/dist/src/user-model/bootstrap.js +1 -1
  373. package/dist/src/user-model/capture/executor.js +1 -1
  374. package/dist/src/user-model/index.js +2 -2
  375. package/dist/src/user-model/usage-policy.js +1 -1
  376. package/dist/src/voice/platform-catalog.d.ts +1 -1
  377. package/dist/src/voice/realtime/memory-context.js +5 -5
  378. package/dist/src/voice/realtime/omniRoute.js +1 -1
  379. package/dist/src/voice/realtime/persona-context.js +1 -1
  380. package/dist/src/voice/realtime/runtime.js +4 -4
  381. package/dist/src/voice/stt/index.js +2 -2
  382. package/dist/src/voice/stt/preflight.js +1 -1
  383. package/dist/src/voice/stt/providers/alibaba-transcription.js +1 -1
  384. package/dist/src/voice/stt/providers/bailian-plan-transcription.js +1 -1
  385. package/dist/src/voice/stt/providers/xopc-cloud-transcription.js +1 -1
  386. package/dist/src/voice/stt/transcribe-core.js +1 -1
  387. package/dist/src/voice/tts/index.js +3 -3
  388. package/dist/src/voice/tts/merge-config.js +1 -1
  389. package/dist/src/voice/tts/payload.js +1 -1
  390. package/dist/src/voice/tts/providers/bailian-plan-speech.js +1 -1
  391. package/dist/src/voice/tts/providers/xopc-cloud-speech.js +1 -1
  392. package/dist/src/voice/tts/speak-core.js +1 -1
  393. package/dist/src/work-discovery/service.js +7 -7
  394. package/package.json +1 -1
  395. package/dist/gateway/static/root/assets/model-selector-DJSVr3LM.js +0 -1
  396. package/dist/gateway/static/root/assets/phone-model-picker-CU37sziM.js +0 -1
@@ -9,43 +9,43 @@ import { getClarification, getClarificationResumeInput, isClarificationSuspended
9
9
  import "../../storage/sqlite/index.js";
10
10
  import { ProviderUsageScopeError, init_model_usage } from "../../providers/model-usage.js";
11
11
  import { resolveEffectiveAgentConfigForSession } from "../../config/agent-profile.js";
12
- import { setTraceIdentity, traceOperation, traceRun, traceTools } from "../../observability/runtime.js";
12
+ import { recordTraceLatency, setTraceIdentity, traceOperation, traceRun, traceTools } from "../../observability/runtime.js";
13
13
  import { continuesAfterTool, trackAiUsageStream } from "../../usage/recorder.js";
14
14
  import { cloudCreditBudgetStopMessage, isCloudCreditBudgetExhausted, reportCloudCreditError, withCloudCreditBudget } from "../../providers/xopc-cloud-credit-budget.js";
15
- import { originalReadAuthorizationNotice, projectForgottenHistoryMessages, projectSuppressedMemoryBlocks } from "../../memory-learning/forgotten-history.js";
16
- import { resolveAgentAbortReason } from "../orchestration/run-termination.js";
17
- import { isAgentTurnTimeoutError, isAgentTurnUnsettledError, resolveAgentTurnTimeoutMs, runAgentTurnWithTimeout } from "../orchestration/run-agent-turn-with-timeout.js";
18
- import { isContextOverflowError } from "../orchestration/context-overflow.js";
19
- import { ACCEPTANCE_REPAIR_READ_TOOLS, canResumeAfterModelFailure, completedRecoveryToolResult } from "../orchestration/turn-recovery.js";
20
- import { getAssistantTurnErrorMessage, isAssistantTurnAborted, isAssistantTurnFailed, maybeRetryTurnAfterTransientLlmFailure, stripTrailingErrorAssistantMessages } from "../orchestration/llm-turn-retry.js";
21
- import { allowsExecutionTool, filterExecutionTools, resolveExecutionToolPolicy } from "./execution-tool-policy.js";
22
- import { isPhoneAssistanceSuspended, phoneAssistance, phoneResumeForRun } from "../../phone/assistance.js";
23
15
  import { runWithEmbeddedExecutionSession } from "./execution-context.js";
24
- import { externalPolicyContext, getXopcToolMetadata } from "./tool-metadata.js";
25
- import { withDelegationScope } from "../orchestration/delegation-scope.js";
26
- import { getMcpSetupResumeInput } from "../mcp/continuation-input.js";
27
- import { isNestedCodemodePolicy } from "./codemode-extension.js";
28
- import { isComputerControlActive, isComputerLeaseTool, stopComputerControl } from "../../computer/control-guard.js";
29
16
  import { bindComputerAgentTurn, computerImagesForRequest, computerRequestFrameCleanup, endComputerAgentTurn, setComputerProgramAuthorization } from "../../computer/agent-context.js";
17
+ import { isComputerControlActive, isComputerLeaseTool, stopComputerControl } from "../../computer/control-guard.js";
18
+ import { resolveAgentAbortReason } from "../orchestration/run-termination.js";
30
19
  import { EmbeddedRunConflictError, abortEmbeddedRun, acquireEmbeddedRunLease, queueEmbeddedSteer } from "./runs.js";
31
- import { lastAssistantPlainText, subscribeEmbeddedSessionEvents } from "./subscribe-session.js";
32
- import { detectToolLoops } from "../orchestration/loop-guard.js";
33
- import { tryApplySessionTranscriptHygiene } from "../transcript/transcript-hygiene.js";
34
- import { restoreCurrentTurnImages } from "./current-turn-images.js";
20
+ import { externalPolicyContext, getXopcToolMetadata } from "./tool-metadata.js";
21
+ import { isPhoneAssistanceSuspended, phoneAssistance, phoneResumeForRun } from "../../phone/assistance.js";
35
22
  import { getActiveTranscriptUserText } from "../inbound/attachment-pipeline.js";
36
23
  import { resolvePromptCachePolicy } from "../../providers/prompt-cache-plan.js";
37
24
  import { wrapStreamFnForXopcExtensions } from "./xopc-stream-bridge.js";
25
+ import { isNestedCodemodePolicy } from "./codemode-extension.js";
26
+ import { allowsExecutionTool, filterExecutionTools, resolveExecutionToolPolicy } from "./execution-tool-policy.js";
38
27
  import { acquireEmbeddedSessionRunner, evictEmbeddedSessionRunner } from "./session-runner.js";
28
+ import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
29
+ import { markTurnToolResult } from "../memory/turn-provenance.js";
30
+ import { ACCEPTANCE_REPAIR_READ_TOOLS, canResumeAfterModelFailure, completedRecoveryToolResult } from "../orchestration/turn-recovery.js";
31
+ import { getMcpSetupResumeInput } from "../mcp/continuation-input.js";
32
+ import { lastAssistantPlainText, subscribeEmbeddedSessionEvents } from "./subscribe-session.js";
33
+ import { isContextOverflowError } from "../orchestration/context-overflow.js";
34
+ import { getAssistantTurnErrorMessage, isAssistantTurnAborted, isAssistantTurnFailed, maybeRetryTurnAfterTransientLlmFailure, stripTrailingErrorAssistantMessages } from "../orchestration/llm-turn-retry.js";
35
+ import { isAgentTurnTimeoutError, isAgentTurnUnsettledError, resolveAgentTurnTimeoutMs, runAgentTurnWithTimeout } from "../orchestration/run-agent-turn-with-timeout.js";
36
+ import { detectToolLoops } from "../orchestration/loop-guard.js";
37
+ import { tryApplySessionTranscriptHygiene } from "../transcript/transcript-hygiene.js";
38
+ import { restoreCurrentTurnImages } from "./current-turn-images.js";
39
39
  import { configurationCapabilityCorrection } from "./configuration-capability-correction.js";
40
40
  import { createSqliteTranscriptRuntime } from "./transcript-runtime.js";
41
41
  import { assessContext, recoverContext as recoverContext$1 } from "../memory/context-recovery.js";
42
- import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
43
42
  import { buildPromptCacheSnapshot, observePromptCacheSnapshot } from "../../providers/prompt-cache-observability.js";
44
43
  import { isPromptCacheExpired, recordPromptCacheTouch } from "../../providers/prompt-cache-lifecycle.js";
45
- import { markTurnToolResult } from "../memory/turn-provenance.js";
46
44
  import { RepositoryInstructions } from "../coding/repository-instructions.js";
47
45
  import { RunVerification } from "../coding/run-verification.js";
48
46
  import { projectWorkEvidence } from "../coding/projectEvidence.js";
47
+ import { withDelegationScope } from "../orchestration/delegation-scope.js";
48
+ import { originalReadAuthorizationNotice, projectForgottenHistoryMessages, projectSuppressedMemoryBlocks } from "../../memory-learning/forgotten-history.js";
49
49
  import { getModelThinking } from "../../providers/model-thinking.js";
50
50
  import "../messaging/no-reply.js";
51
51
  import { createAssistantMessageEventStream, getCurrentSystemPrompt, getCurrentTools, isRecoverableLength } from "@earendil-works/pi-ai";
@@ -645,6 +645,7 @@ async function runXopcEmbeddedTurnInner(params) {
645
645
  latencyReasoning = options?.reasoning;
646
646
  if (firstModelRequestAt === void 0) {
647
647
  firstModelRequestAt = currentModelRequestAt;
648
+ recordTraceLatency({ embeddedPreparationMs: firstModelRequestAt - preparationStartedAt });
648
649
  log.info({
649
650
  conversationId,
650
651
  runId,
@@ -674,7 +675,8 @@ async function runXopcEmbeddedTurnInner(params) {
674
675
  session.agent.streamFunction = loggingStreamFn;
675
676
  const verification = await RunVerification.open(workspaceDir, {
676
677
  required: params.verifyChanges === true,
677
- toolNames: tools.map((tool) => tool.name)
678
+ toolNames: tools.map((tool) => tool.name),
679
+ trackWorkspace: executionToolPolicy.surface !== "personal_main"
678
680
  });
679
681
  const checkpoints = runner.piSm.getBranch?.() ?? [];
680
682
  const recoveryTurn = params.resumeLastUserMessage === true || Boolean(params.recoveryMessage);
@@ -898,14 +900,20 @@ async function runXopcEmbeddedTurnInner(params) {
898
900
  unsubscribe = subscribeEmbeddedSessionEvents(session, (event) => {
899
901
  if (!firstModelTextSeen && firstModelRequestAt !== void 0 && currentModelRequestAt !== void 0 && event.type === "message_update" && event.assistantMessageEvent?.type === "text_delta" && event.assistantMessageEvent.delta.trim()) {
900
902
  firstModelTextSeen = true;
903
+ const textSeenAt = performance.now();
904
+ recordTraceLatency({
905
+ modelFirstTextMs: textSeenAt - currentModelRequestAt,
906
+ firstRequestToTextMs: textSeenAt - firstModelRequestAt,
907
+ modelRequestNumber
908
+ });
901
909
  log.info({
902
910
  conversationId,
903
911
  runId,
904
912
  modelRef: latencyModelRef,
905
913
  thinking: latencyReasoning ?? "off",
906
914
  phase: "first_model_text",
907
- modelFirstTextMs: performance.now() - currentModelRequestAt,
908
- firstRequestToTextMs: performance.now() - firstModelRequestAt,
915
+ modelFirstTextMs: textSeenAt - currentModelRequestAt,
916
+ firstRequestToTextMs: textSeenAt - firstModelRequestAt,
909
917
  modelRequestNumber
910
918
  }, "Embedded first response text ready");
911
919
  }
@@ -1,20 +1,20 @@
1
1
  import { createLogger } from "../../utils/logger/index.js";
2
2
  import { init_logger } from "../../utils/logger.js";
3
- import { filterExecutionTools, resolveExecutionToolPolicy } from "./execution-tool-policy.js";
4
- import { deferredToolContract, getXopcToolMetadata } from "./tool-metadata.js";
5
- import { isCodemodeCoreRead } from "../tools/codemode-permissions.js";
6
3
  import { createEmbeddedModelRuntime, resolveEmbeddedProviderApiKeySync } from "./model-runtime.js";
7
4
  import { getNativePiAgentDir } from "../mcp/native-mcp.js";
8
5
  import { createXopcMcpTransport } from "../mcp/transport.js";
9
6
  import { createAutomationMcpSourceGuard } from "../../automations/mcp-source.js";
10
- import { createXopcCodemodeExtension } from "./codemode-extension.js";
11
7
  import { abortEmbeddedRun } from "./runs.js";
8
+ import { deferredToolContract, getXopcToolMetadata } from "./tool-metadata.js";
12
9
  import { guardSessionManager } from "./session-tool-result-guard.js";
13
10
  import { transformUserMessageForPersistence } from "../inbound/attachment-pipeline.js";
14
11
  import { wrapStreamFnForXopcExtensions } from "./xopc-stream-bridge.js";
15
12
  import { xopcToolsToDefinitions } from "./xopc-tools-bridge.js";
13
+ import { isCodemodeCoreRead } from "../tools/codemode-permissions.js";
14
+ import { createXopcCodemodeExtension } from "./codemode-extension.js";
16
15
  import { TOOL_DISCOVERY_STATE, createXopcToolSearchExtension } from "./tool-search-extension.js";
17
16
  import { createMcpSetupContinuationGuard } from "../mcp/continuation-guard.js";
17
+ import { filterExecutionTools, resolveExecutionToolPolicy } from "./execution-tool-policy.js";
18
18
  import { AGENT_PROFILE_CONTEXT_STATE, createAgentProfileContextExtension } from "./agent-profile-context.js";
19
19
  import { join } from "node:path";
20
20
  import { createHash } from "node:crypto";
@@ -3,9 +3,9 @@ import { formatContextLimitTruncationNotice } from "./tool-result-context-guard.
3
3
  import { resolveLiveToolResultMaxChars, truncateToolResultMessage } from "./tool-result-truncation.js";
4
4
  import { emitSessionTranscriptUpdate } from "../../session/transcript-events.js";
5
5
  import { sanitizeSearchInfo } from "../tools/search/search-info.js";
6
+ import { boundedJsonUtf8Bytes, firstEnumerableOwnKeys, jsonUtf8BytesOrInfinity } from "../../infra/json-utf8-bytes.js";
6
7
  import { extractToolCallsFromAssistant, extractToolResultId } from "../transcript/tool-call-id.js";
7
8
  import { makeMissingToolResult, sanitizeToolCallInputs } from "../transcript/session-transcript-repair.js";
8
- import { boundedJsonUtf8Bytes, firstEnumerableOwnKeys, jsonUtf8BytesOrInfinity } from "../../infra/json-utf8-bytes.js";
9
9
  //#region src/agent/embedded/session-tool-result-guard.ts
10
10
  init_string_coerce();
11
11
  /**
@@ -1,6 +1,6 @@
1
+ import { recordPersonalPerformance } from "../../personal-agent/performance.js";
1
2
  import { getXopcToolMetadata } from "./tool-metadata.js";
2
3
  import { withDataToolPermissions } from "../tools/dataBatch.js";
3
- import { recordPersonalPerformance } from "../../personal-agent/performance.js";
4
4
  //#region src/agent/embedded/xopc-tools-bridge.ts
5
5
  const APPLY_PATCH_BEGIN_MARKER = "*** Begin Patch";
6
6
  const APPLY_PATCH_END_MARKER = "*** End Patch";
@@ -5,17 +5,17 @@ import { getConnectorAccount, init_connector_account_repository } from "../../st
5
5
  import { appendConnectorExecutionAudit, consumeConnectorApproval, createConnectorApproval, getConnectorApproval, getConnectorConnection, getConnectorInstallation, init_connector_repository } from "../../storage/sqlite/connector-repository.js";
6
6
  import { connectorObjectiveScope, init_connection_wait_repository, publishConnectionWait, requireSessionConnection } from "../../storage/sqlite/connection-wait-repository.js";
7
7
  import "../../storage/sqlite/index.js";
8
- import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
9
- import { connectorPrincipalForSession } from "../../connectors/principal.js";
10
8
  import { CapabilityError } from "../../capabilities/runtime/errors.js";
11
9
  import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
12
10
  import "../../capabilities/runtime/dispatcher.js";
13
- import { selectConnectorAccount } from "../../connectors/account-selection.js";
14
- import { cliContextPath } from "../../connectors/cli/process.js";
11
+ import { connectorPrincipalForSession } from "../../connectors/principal.js";
15
12
  import { getCliAdapter } from "../../connectors/cli/adapterRegistry.js";
16
13
  import { evaluateConnectorExecutionPolicy } from "../../connectors/policy.js";
17
14
  import { listConnectorInstances } from "../../connectors/instances.js";
15
+ import { cliContextPath } from "../../connectors/cli/process.js";
18
16
  import { cliOwnerId, recoverCliExecutions } from "../../connectors/cli/store.js";
17
+ import { selectConnectorAccount } from "../../connectors/account-selection.js";
18
+ import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
19
19
  import { validateActionInput } from "../../connectors/cli/protocol.js";
20
20
  import { describeCliAction, executeCliAction } from "../../connectors/cli/runtime.js";
21
21
  import { externalToolRef, parseExternalToolRef } from "./refs.js";
@@ -5,19 +5,19 @@ import { getConnectorAccount } from "../../storage/sqlite/connector-account-repo
5
5
  import { consumeConnectorApproval, createConnectorApproval, getConnectorApproval, getConnectorConnection, getConnectorInstallation, listConnectorActionMetadata, listConnectorConnections, listConnectorInstallations, upsertConnectorActionMetadata, upsertConnectorInstallation } from "../../storage/sqlite/connector-repository.js";
6
6
  import { bindObjectiveAccount, connectionBinding, connectionBindings, connectorObjectiveScope, init_connection_wait_repository, publishConnectionWait, requireSessionConnection } from "../../storage/sqlite/connection-wait-repository.js";
7
7
  import "../../storage/sqlite/index.js";
8
- import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
9
- import { canAccessConnectorAccount, currentAccountConnections } from "../../connectors/account-access.js";
10
- import { connectorPrincipalForSession } from "../../connectors/principal.js";
11
8
  import { CapabilityError } from "../../capabilities/runtime/errors.js";
12
9
  import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
10
+ import { canAccessConnectorAccount, currentAccountConnections } from "../../connectors/account-access.js";
11
+ import { connectorPrincipalForSession } from "../../connectors/principal.js";
13
12
  import { connectorIdentitySummary } from "../../connectors/connector-identity.js";
14
13
  import { evaluateConnectorExecutionPolicy } from "../../connectors/policy.js";
15
14
  import { ComposioSessionsAdapter } from "../../connectors/composio-sessions.js";
16
15
  import { getComposioToolkitScope, getConfiguredComposioAuthConfigs, isComposioActionAllowedByCatalog, scopeForComposioAction } from "../../connectors/composio.js";
17
16
  import { getConnectorDefinition } from "../../connectors/catalog.js";
18
17
  import { listConnectorInstances } from "../../connectors/instances.js";
19
- import { externalToolRef, parseExternalToolRef } from "./refs.js";
18
+ import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
20
19
  import { isToolInputSchema } from "../../connectors/connection-capabilities.js";
20
+ import { externalToolRef, parseExternalToolRef } from "./refs.js";
21
21
  import { ExternalToolSearchError } from "./search-error.js";
22
22
  //#region src/agent/external-tools/composio-provider.ts
23
23
  init_session_input_repository();
@@ -1,15 +1,15 @@
1
- import { init_src } from "../../../packages/computer-control-contract/src/index.js";
2
- import "../../../packages/browser-control-contract/src/index.js";
3
1
  import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
4
2
  import { canonicalCapabilityJson } from "../../capabilities/runtime/dispatcher.js";
5
- import { externalToolRef, parseExternalToolRef } from "./refs.js";
3
+ import { init_src } from "../../../packages/computer-control-contract/src/index.js";
4
+ import "../../../packages/browser-control-contract/src/index.js";
6
5
  import { extractDocumentText } from "../../document-understanding/extract.js";
7
- import { prepareImageForModel } from "../image/prepare-image-for-model.js";
6
+ import { EndpointToolExecutionError } from "../../endpoint-tools/invocation-service.js";
8
7
  import { processLocationTask } from "../../endpoint-tools/location-task.js";
9
8
  import { projectDeviceReading } from "../../endpoint-tools/result-projector.js";
10
- import { getEndpointDeviceSettings } from "../../storage/sqlite/endpoint-device-settings-repository.js";
11
9
  import { DeviceTargetResolver } from "../../endpoint-tools/target-resolver.js";
12
- import { EndpointToolExecutionError } from "../../endpoint-tools/invocation-service.js";
10
+ import { getEndpointDeviceSettings } from "../../storage/sqlite/endpoint-device-settings-repository.js";
11
+ import { externalToolRef, parseExternalToolRef } from "./refs.js";
12
+ import { prepareImageForModel } from "../image/prepare-image-for-model.js";
13
13
  import { createHash } from "node:crypto";
14
14
  //#region src/agent/external-tools/endpoint-provider.ts
15
15
  init_src();
@@ -1,6 +1,6 @@
1
- import { getXopcToolMetadata } from "../embedded/tool-metadata.js";
2
1
  import { externalToolRef, parseExternalToolRef } from "./refs.js";
3
2
  import { executeToolWithProtection } from "../tools/executor.js";
3
+ import { getXopcToolMetadata } from "../embedded/tool-metadata.js";
4
4
  //#region src/agent/external-tools/extension-provider.ts
5
5
  function toolSummary(tool) {
6
6
  return tool.description || tool.label || tool.name;
@@ -6,12 +6,12 @@ import { connectionBindings, getActiveConnectionWait, init_connection_wait_repos
6
6
  import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
7
7
  import { init_session_repository } from "../../storage/sqlite/session-repository.js";
8
8
  import { connectorPrincipalForSession } from "../../connectors/principal.js";
9
- import { setXopcToolMetadata } from "../embedded/tool-metadata.js";
10
9
  import { listConnectorInstances } from "../../connectors/instances.js";
11
- import { parseExternalToolRef } from "./refs.js";
12
10
  import { getStoreConnectorInstallPlan, parseStoreConnectorCandidateRef, searchStoreConnectorInstallCandidates } from "../../capabilities/store-connector.js";
13
- import { assertPersonalRequestAccountAccess } from "../../personal-agent/request-access.js";
14
11
  import { connectionCandidates, resolveConnectionCandidate } from "../../connectors/connection-candidates.js";
12
+ import { parseExternalToolRef } from "./refs.js";
13
+ import { setXopcToolMetadata } from "../embedded/tool-metadata.js";
14
+ import { assertPersonalRequestAccountAccess } from "../../personal-agent/request-access.js";
15
15
  import { ExternalToolService } from "./service.js";
16
16
  import { EXTERNAL_TOOL_SOURCES } from "./types.js";
17
17
  import { bindExternalToolRegistry } from "./tool-registry.js";
@@ -1,6 +1,6 @@
1
- import { getXopcToolMetadata } from "../embedded/tool-metadata.js";
2
1
  import { externalToolRef, parseExternalToolRef } from "./refs.js";
3
2
  import { executeToolWithProtection } from "../tools/executor.js";
3
+ import { getXopcToolMetadata } from "../embedded/tool-metadata.js";
4
4
  //#region src/agent/external-tools/memory-provider.ts
5
5
  function toolSummary(tool) {
6
6
  return tool.description || tool.label || tool.name;
@@ -5,10 +5,10 @@ import { privateNetworkPolicyToSsrfGuardOptions } from "../../../media-shared/ht
5
5
  import { resolveProviderHttpRequestConfig } from "../../../media-shared/http/resolve-provider-http-request-config.js";
6
6
  import { postJsonRequest, postMultipartRequest, readJsonResponseLimited } from "../../../media-shared/http/provider-http.js";
7
7
  import "../../../media-shared/http/index.js";
8
- import { imageFileExtensionForMimeType } from "./image-assets.js";
9
8
  import { ImageProviderError, validateImageRequest } from "../../../../packages/image-providers/src/validation.js";
10
9
  import { decodeBase64, imageFromBytes } from "../../../../packages/image-providers/src/http.js";
11
10
  import "../../../../packages/image-providers/src/index.js";
11
+ import { imageFileExtensionForMimeType } from "./image-assets.js";
12
12
  //#region src/agent/image/generation/openai-images-provider.ts
13
13
  /** Strict implementation of the OpenAI Images REST protocol. */
14
14
  init_logger();
@@ -4,12 +4,12 @@ import { assertProviderUsage, init_model_usage } from "../../../providers/model-
4
4
  import { PROVIDER_ENV_MAP, init_env_keys } from "../../../providers/env-keys.js";
5
5
  import { ImageProviderError, normalizeImageGeometry } from "../../../../packages/image-providers/src/validation.js";
6
6
  import "../../../../packages/image-providers/src/index.js";
7
+ import { getImageGenerationProvider, listImageGenerationProviders, listImageGenerationProvidersSummary as listImageGenerationProvidersSummary$1 } from "./provider-registry.js";
7
8
  import { describeFailoverError, isFailoverError } from "../../failover-error.js";
8
9
  import { buildNoCapabilityModelConfiguredMessage, recordCapabilityCandidateFailure, resolveCapabilityModelCandidates, throwCapabilityGenerationFailure } from "../../media-generation/runtime-shared.js";
9
10
  import "../../media-generation/index.js";
10
11
  import { parseImageGenerationModelRef } from "./model-ref.js";
11
12
  import { validateImageGenerationRequest } from "./validation.js";
12
- import { getImageGenerationProvider, listImageGenerationProviders, listImageGenerationProvidersSummary as listImageGenerationProvidersSummary$1 } from "./provider-registry.js";
13
13
  //#region src/agent/image/generation/runtime.ts
14
14
  init_model_usage();
15
15
  init_env_keys();
@@ -1,9 +1,9 @@
1
+ import { getImageGenerationProvider, listImageGenerationProviders } from "./generation/provider-registry.js";
1
2
  import { getImageUnderstandingProvider, listImageUnderstandingProviders, registerImageUnderstandingProvider } from "./understanding/provider-registry.js";
2
3
  import { resolveImageModelConfigForTool } from "./tool-model-config.js";
3
4
  import { describeImages, describeImagesWithFallback } from "./understanding/runtime.js";
4
5
  import { modelSupportsVision, resolveImageHandlingStrategy } from "./vision-detection.js";
5
6
  import { runWithImageModelFallback } from "./image-model-fallback.js";
6
7
  import { loadImageForToolInput } from "./load-image-media.js";
7
- import { getImageGenerationProvider, listImageGenerationProviders } from "./generation/provider-registry.js";
8
8
  import { generateImage, listImageGenerationProvidersSummary } from "./generation/runtime.js";
9
9
  export { describeImages, describeImagesWithFallback, generateImage, getImageGenerationProvider, getImageUnderstandingProvider, listImageGenerationProviders, listImageGenerationProvidersSummary, listImageUnderstandingProviders, loadImageForToolInput, modelSupportsVision, registerImageUnderstandingProvider, resolveImageHandlingStrategy, resolveImageModelConfigForTool, runWithImageModelFallback };
@@ -1,10 +1,10 @@
1
1
  import { stripRuntimeUserMessageEnvelope } from "../../../packages/gateway-contract/src/user-message-display.js";
2
2
  import { init_src } from "../../../packages/gateway-contract/src/index.js";
3
3
  import { readAgentMessageContent } from "../memory/agent-message-access.js";
4
- import { extractProfileAgentId } from "../../config/agent-profile.js";
5
- import { isPersonalConversation } from "../../personal-agent/repository.js";
6
4
  import { mimeTypeFromMediaPath } from "../../media/store.js";
7
5
  import { readMediaReference } from "../../media/media-reference.js";
6
+ import { isPersonalConversation } from "../../personal-agent/repository.js";
7
+ import { extractProfileAgentId } from "../../config/agent-profile.js";
8
8
  import { MODEL_IMAGE_MAX_BYTES, MODEL_IMAGE_SOURCE_MAX_BYTES, prepareImageForModel } from "../image/prepare-image-for-model.js";
9
9
  import { isImageInboundAttachment } from "../../channels/attachments/attachment-classifiers.js";
10
10
  import "../../channels/attachments/inbound-persist.js";
@@ -1,10 +1,10 @@
1
1
  import { runWithLogContext, updateAsyncLogContext } from "../../utils/logger/context.js";
2
2
  import { init_logger } from "../../utils/logger.js";
3
3
  import { init_model_usage, withModelUsageOrigin } from "../../providers/model-usage.js";
4
- import { shouldSkipResetOverlapCommand } from "../../session/reset-triggers.js";
5
- import { initSessionTurn } from "../../session/init-session-turn.js";
6
4
  import { MessageBusShutdownError } from "../../infra/bus/queue.js";
7
5
  import "../../infra/bus/index.js";
6
+ import { shouldSkipResetOverlapCommand } from "../../session/reset-triggers.js";
7
+ import { initSessionTurn } from "../../session/init-session-turn.js";
8
8
  import { runEmbeddedTurnForSession } from "../embedded/run-for-session.js";
9
9
  import { inboundMessageLogRequestId } from "../service-inbound-utils.js";
10
10
  //#region src/agent/inbound/inbound-loop.ts
@@ -1,8 +1,8 @@
1
1
  import { withoutCloudCreditBudget } from "../providers/xopc-cloud-credit-budget.js";
2
2
  import { withoutEmbeddedExecutionSession } from "./embedded/execution-context.js";
3
- import { withoutDelegationScope } from "./orchestration/delegation-scope.js";
4
- import { withoutDataToolPermissions } from "./tools/dataBatch.js";
5
3
  import { withoutSearchCache } from "./tools/search/cache.js";
4
+ import { withoutDataToolPermissions } from "./tools/dataBatch.js";
5
+ import { withoutDelegationScope } from "./orchestration/delegation-scope.js";
6
6
  //#region src/agent/independent-execution.ts
7
7
  /** Discard caller-owned execution scopes before resolving the target Agent. */
8
8
  function runInIndependentAgentExecution(run) {
@@ -1,14 +1,14 @@
1
- import { resolveTranscriptPolicy } from "./transcript/transcript-policy.js";
2
- import { dropThinkingBlocks } from "./transcript/thinking.js";
3
1
  import { extractToolCallsFromAssistant, extractToolResultId, sanitizeToolCallId, sanitizeToolCallIdsForCloudCodeAssist } from "./transcript/tool-call-id.js";
4
2
  import { makeMissingToolResult, repairToolUseResultPairing, sanitizeToolCallInputs, sanitizeToolUseResultPairing, stripToolResultDetails } from "./transcript/session-transcript-repair.js";
3
+ import { resolveTranscriptPolicy } from "./transcript/transcript-policy.js";
4
+ import { dropThinkingBlocks } from "./transcript/thinking.js";
5
5
  import { applySessionTranscriptHygiene, applySessionTranscriptHygieneForPersistence, applySessionTranscriptHygieneWithPolicy, resolvePolicyForModel, tryApplySessionTranscriptHygiene, tryApplySessionTranscriptHygieneForPersistence } from "./transcript/transcript-hygiene.js";
6
+ import { AgentService } from "./service.js";
6
7
  import { createResponseMessage, createSignalMessage, createTaskMessage, isValidIPCMessage } from "./ipc/types.js";
7
8
  import { AgentInbox } from "./ipc/inbox.js";
8
9
  import { AgentBus } from "./ipc/bus.js";
9
10
  import { AgentSocketClient, AgentSocketServer, isSocketAvailable } from "./ipc/socket.js";
10
11
  import "./ipc/index.js";
11
- import { AgentService } from "./service.js";
12
12
  import { stripToolMessages } from "./transcript/strip-tool-messages.js";
13
13
  import "./transcript/index.js";
14
14
  export { AgentBus, AgentInbox, AgentService, AgentSocketClient, AgentSocketServer, applySessionTranscriptHygiene, applySessionTranscriptHygieneForPersistence, applySessionTranscriptHygieneWithPolicy, createResponseMessage, createSignalMessage, createTaskMessage, dropThinkingBlocks, extractToolCallsFromAssistant, extractToolResultId, isSocketAvailable, isValidIPCMessage, makeMissingToolResult, repairToolUseResultPairing, resolvePolicyForModel, resolveTranscriptPolicy, sanitizeToolCallId, sanitizeToolCallIdsForCloudCodeAssist, sanitizeToolCallInputs, sanitizeToolUseResultPairing, stripToolMessages, stripToolResultDetails, tryApplySessionTranscriptHygiene, tryApplySessionTranscriptHygieneForPersistence };
@@ -1,9 +1,9 @@
1
1
  import { McpServerSchema, init_schema } from "../../config/schema.js";
2
- import { getWorkspacePath } from "../../config/workspace-path-helpers.js";
3
2
  import { isManagedConnectorServer } from "../../connectors/materialize.js";
4
3
  import { createNativeMcpCredentials } from "./credential-store.js";
5
4
  import { loadMergedMcpConfig } from "./config.js";
6
5
  import { discoverMcpTools } from "./tool-catalog.js";
6
+ import { getWorkspacePath } from "../../config/workspace-path-helpers.js";
7
7
  import { cancelMcpAuthorization, getMcpAuthorization, probeMcpConnection, startMcpAuthorization, submitMcpRedirect } from "./connection-setup.js";
8
8
  import { createHash, randomUUID } from "node:crypto";
9
9
  //#region src/agent/mcp/connection-drafts.ts
@@ -8,8 +8,8 @@ import { retryAfter } from "./transport.js";
8
8
  import { McpAuthenticationRequiredError, discoverMcpTools, signInNativeMcp } from "./tool-catalog.js";
9
9
  import { classifyMcpConnectionError } from "./connection-errors.js";
10
10
  import { createHash, randomUUID } from "node:crypto";
11
- import { lookup } from "node:dns";
12
11
  import { Agent } from "undici";
12
+ import { lookup } from "node:dns";
13
13
  //#region src/agent/mcp/connection-setup.ts
14
14
  init_logger();
15
15
  const log = createLogger("McpConnectionSetup");
@@ -3,9 +3,9 @@ import { init_logger } from "../../utils/logger.js";
3
3
  import { getActiveConnectionWait, init_connection_wait_repository } from "../../storage/sqlite/connection-wait-repository.js";
4
4
  import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
5
5
  import { init_session_repository } from "../../storage/sqlite/session-repository.js";
6
- import { CredentialResolver, init_credentials } from "../../auth/credentials.js";
7
6
  import { connectorPrincipalForSession } from "../../connectors/principal.js";
8
7
  import { DurableState } from "../../storage/sqlite/durable-state.js";
8
+ import { CredentialResolver, init_credentials } from "../../auth/credentials.js";
9
9
  import { connectorSecretProviderId } from "../../connectors/secret-store.js";
10
10
  import { isManagedConnectorServer } from "../../connectors/materialize.js";
11
11
  import { classifyMcpConnectionError } from "./connection-errors.js";
@@ -1,10 +1,10 @@
1
1
  import { getSessionMetadata, init_session_read_repository } from "../../storage/sqlite/session-read-repository.js";
2
2
  import { loadTranscriptRowsForSession } from "../../storage/sqlite/transcript-repository.js";
3
- import { checkUrlSafety } from "../tools/url-safety.js";
4
3
  import { DurableState } from "../../storage/sqlite/durable-state.js";
4
+ import { checkUrlSafety } from "../tools/url-safety.js";
5
+ import { fetchPublicText } from "../tools/fetch-text.js";
5
6
  import { SearchProviderRegistry } from "../tools/search/registry.js";
6
7
  import { resolveWebSearchConfig } from "../tools/search/resolve-config.js";
7
- import { fetchPublicText } from "../tools/fetch-text.js";
8
8
  import { extractReadableText } from "../tools/web.js";
9
9
  import { connectionPlanSchema } from "./setup-plan.js";
10
10
  import { createHash, randomUUID } from "node:crypto";
@@ -1,8 +1,8 @@
1
1
  import { checkUrlSafety } from "../tools/url-safety.js";
2
2
  import { mcpStdioSupervisor } from "../../process/mcp-stdio-supervisor.js";
3
3
  import { resolve } from "node:path";
4
- import { lookup } from "node:dns";
5
4
  import { Agent, fetch } from "undici";
5
+ import { lookup } from "node:dns";
6
6
  import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";
7
7
  import { StdioTransport, StreamableHttpTransport } from "@earendil-works/pi-mcp";
8
8
  //#region src/agent/mcp/transport.ts
@@ -1,6 +1,6 @@
1
+ import { buildUserContextBlock, sanitizeUserContextFenceEscapes } from "./context-fence.js";
1
2
  import { isMemorySubsystemEnabled } from "./memory-config.js";
2
3
  import { extractAgentUserPlainText } from "./user-message-text.js";
3
- import { buildUserContextBlock, sanitizeUserContextFenceEscapes } from "./context-fence.js";
4
4
  import { MemoryManager } from "./manager.js";
5
5
  import { discoverMemoryPlugins } from "./plugin-discovery.js";
6
6
  import { createMemoryManagerFromConfig } from "./create-memory-manager.js";
@@ -1,6 +1,6 @@
1
1
  import { isTransientProviderErrorMessage } from "../../providers/model-response.js";
2
- import { isContextOverflowError } from "./context-overflow.js";
3
2
  import { canResumeAfterModelFailure } from "./turn-recovery.js";
3
+ import { isContextOverflowError } from "./context-overflow.js";
4
4
  //#region src/agent/orchestration/llm-turn-retry.ts
5
5
  function isTransientLlmErrorMessage(message) {
6
6
  return isTransientProviderErrorMessage(message);
@@ -2,8 +2,8 @@ import { isXopcDatabaseOpen } from "../../storage/sqlite/connection.js";
2
2
  import { TaskRepository, init_task_repository } from "../../tasks/task-repository.js";
3
3
  import { getSessionConfig } from "../../storage/sqlite/config-repository.js";
4
4
  import "../../storage/sqlite/index.js";
5
- import { init_response_language, resolveResponseLanguage } from "../../i18n/response-language.js";
6
5
  import { resolveTaskLocale } from "../../tasks/task-language.js";
6
+ import { init_response_language, resolveResponseLanguage } from "../../i18n/response-language.js";
7
7
  import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
8
8
  //#region src/agent/prompt/response-language.ts
9
9
  init_response_language();
@@ -6,14 +6,14 @@ import { getInteractionState } from "../../storage/sqlite/interaction-state-repo
6
6
  import { DEFAULT_USER_TRUST_LEVEL } from "../../user-context/trust-policy.js";
7
7
  import { getUserTrustPolicy } from "../../storage/sqlite/user-trust-repository.js";
8
8
  import "../../storage/sqlite/index.js";
9
- import { appendStablePromptSection } from "./cache-boundary.js";
10
9
  import { getUserTimezone } from "../../user-model/repository.js";
11
10
  import "../../user-model/index.js";
11
+ import { appendStablePromptSection } from "./cache-boundary.js";
12
+ import { mergeTtsConfigFromAppConfig } from "../../voice/tts/merge-config.js";
13
+ import { buildTtsSystemPromptHint } from "../../voice/tts/directives.js";
12
14
  import { resolveResponseLanguageForSession } from "./response-language.js";
13
15
  import { resolveSystemPromptBuildParams } from "./system-prompt-params.js";
14
16
  import { buildSystemPrompt } from "./system-prompt.js";
15
- import { buildTtsSystemPromptHint } from "../../voice/tts/directives.js";
16
- import { mergeTtsConfigFromAppConfig } from "../../voice/tts/merge-config.js";
17
17
  import { getConversationalConfigurationGuide } from "./conversational-configuration-guide.js";
18
18
  //#region src/agent/prompt/service-prompt-builder.ts
19
19
  init_logger();
@@ -2,8 +2,8 @@ import { PACKAGE_VERSION, init_package_version } from "../../package-version.js"
2
2
  import { getConversationRouting } from "../../storage/sqlite/conversation-repository.js";
3
3
  import { isCronConversationId, isSubagentConversationId } from "../../routing/agent-session-key.js";
4
4
  import { init_session_key } from "../../routing/session-key.js";
5
- import { normalizePromptSection } from "./cache-boundary.js";
6
5
  import { isPersonalConversation } from "../../personal-agent/repository.js";
6
+ import { normalizePromptSection } from "./cache-boundary.js";
7
7
  import { listChannelPlugins } from "../../channels/plugins/registry.js";
8
8
  //#region src/agent/prompt/system-prompt-params.ts
9
9
  init_package_version();
@@ -1,7 +1,7 @@
1
1
  import { createLogger } from "../../utils/logger/index.js";
2
2
  import { init_logger } from "../../utils/logger.js";
3
- import { validatePath, validateWritePath } from "./path-policy.js";
4
3
  import { prepareSafeToolEnv } from "./sanitize-env-vars.js";
4
+ import { validatePath, validateWritePath } from "./path-policy.js";
5
5
  import { auditCommand, validateCommand } from "./command-validator.js";
6
6
  import { DEFAULT_SANDBOX_CONFIG } from "./types.js";
7
7
  import { resolve } from "node:path";
@@ -1,19 +1,19 @@
1
1
  import { getConnectionResumeInput, init_connection_wait_repository } from "../../storage/sqlite/connection-wait-repository.js";
2
2
  import { getClarificationResumeInput } from "../../storage/sqlite/clarification-wait-repository.js";
3
3
  import { isPersonalConversation } from "../../personal-agent/repository.js";
4
- import { phoneResumeForRun } from "../../phone/assistance.js";
5
- import { buildDelegatedTaskDirective, buildTaskExecutionDirective } from "../../tasks/task-context-assembler.js";
6
- import { getMcpSetupResumeInput } from "../mcp/continuation-input.js";
7
- import { resolveImageHandlingStrategy } from "../image/vision-detection.js";
8
- import { hydrateUserTurnForLlm } from "../inbound/attachment-pipeline.js";
9
- import { shouldSkipResetOverlapCommand } from "../../session/reset-triggers.js";
10
4
  import { parseSlashCommand } from "../../chat-commands/command-parse.js";
11
5
  import { personalCommandRejection } from "../../chat-commands/personal-command-policy.js";
12
6
  import { commandRegistry } from "../../chat-commands/registry.js";
13
7
  import "../../chat-commands/index.js";
8
+ import { phoneResumeForRun } from "../../phone/assistance.js";
9
+ import { resolveImageHandlingStrategy } from "../image/vision-detection.js";
10
+ import { hydrateUserTurnForLlm } from "../inbound/attachment-pipeline.js";
11
+ import { shouldSkipResetOverlapCommand } from "../../session/reset-triggers.js";
12
+ import { getMcpSetupResumeInput } from "../mcp/continuation-input.js";
14
13
  import { getTaskContinuation } from "../../tasks/task-continuation.js";
15
14
  import { runEmbeddedTurnForSession } from "../embedded/run-for-session.js";
16
15
  import { injectSourceContextsIntoUserMessage } from "../source-context/injector.js";
16
+ import { buildDelegatedTaskDirective, buildTaskExecutionDirective } from "../../tasks/task-context-assembler.js";
17
17
  import crypto from "node:crypto";
18
18
  //#region src/agent/service/direct-turn-helpers.ts
19
19
  /**
@@ -119,15 +119,18 @@ async function runDirectAgentTurn(deps, input) {
119
119
  const isConnectionResume = Boolean(getConnectionResumeInput(input.conversationId, turnId));
120
120
  const isClarificationResume = Boolean(getClarificationResumeInput(input.conversationId, turnId));
121
121
  const isResume = Boolean(phoneResumeForRun(input.conversationId, turnId)) || isConnectionResume || isClarificationResume || Boolean(getTaskContinuation(input.conversationId, turnId)) || Boolean(getMcpSetupResumeInput(input.conversationId, turnId));
122
- const userContext = await deps.agentManager.prepareUserTurnContext(input.userMessage, input.conversationId, turnId);
123
- const sourceContexts = input.sourceContexts ?? [];
124
- const sourceEnrichedMessage = injectSourceContextsIntoUserMessage(input.userMessage, sourceContexts);
125
- const taskContext = [buildTaskExecutionDirective(input.conversationId), buildDelegatedTaskDirective(input.conversationId)].filter(Boolean).join("\n");
126
122
  const modelRef = deps.modelManager.getModelForSession(input.conversationId);
127
- const llmTurn = await hydrateUserTurnForLlm({
123
+ const [contextResult, mediaResult] = await Promise.allSettled([deps.agentManager.prepareUserTurnContext(input.userMessage, input.conversationId, turnId), hydrateUserTurnForLlm({
128
124
  message: input.userMessage,
129
125
  modelRef
130
- });
126
+ })]);
127
+ if (contextResult.status === "rejected") throw contextResult.reason;
128
+ if (mediaResult.status === "rejected") throw mediaResult.reason;
129
+ const userContext = contextResult.value;
130
+ const llmTurn = mediaResult.value;
131
+ const sourceContexts = input.sourceContexts ?? [];
132
+ const sourceEnrichedMessage = injectSourceContextsIntoUserMessage(input.userMessage, sourceContexts);
133
+ const taskContext = [buildTaskExecutionDirective(input.conversationId), buildDelegatedTaskDirective(input.conversationId)].filter(Boolean).join("\n");
131
134
  const contextImages = sourceContexts.flatMap((context) => context.images ?? []);
132
135
  const sourceImages = resolveImageHandlingStrategy(modelRef) === "native" ? [...input.sourceImages ?? [], ...contextImages] : [];
133
136
  const llmImages = [...llmTurn.images, ...sourceImages];
@@ -5,23 +5,23 @@ import { getConnectionResumeInput, init_connection_wait_repository } from "../..
5
5
  import { readAgentMessageContent } from "../memory/agent-message-access.js";
6
6
  import { getClarificationResumeInput } from "../../storage/sqlite/clarification-wait-repository.js";
7
7
  import { init_agent_scope, resolveDefaultAgentId } from "../agent-scope.js";
8
- import { init_model_usage, modelUsageOriginFromTurn, withModelUsageOrigin } from "../../providers/model-usage.js";
9
8
  import { init_agent_session_key, resolveAgentMainConversationId } from "../../routing/agent-session-key.js";
10
- import { phoneResumeForRun } from "../../phone/assistance.js";
9
+ import { isSessionSourceBinding, summarizeSourceContext } from "../source-context/types.js";
10
+ import { init_model_usage, modelUsageOriginFromTurn, withModelUsageOrigin } from "../../providers/model-usage.js";
11
+ import { stripEnvelopeTimestampPrefix } from "../../channels/envelope-timestamp.js";
11
12
  import { mergeSttConfigFromAppConfig } from "../../voice/stt/config.js";
12
13
  import "../../voice/stt/index.js";
13
- import { isSessionSourceBinding, summarizeSourceContext } from "../source-context/types.js";
14
- import { getMcpSetupResumeInput } from "../mcp/continuation-input.js";
15
14
  import { abortEmbeddedRun } from "../embedded/runs.js";
15
+ import { phoneResumeForRun } from "../../phone/assistance.js";
16
16
  import { clearPendingTranscriptUserMessage, setPendingTranscriptUserMessage } from "../inbound/attachment-pipeline.js";
17
- import { formatAgentRunErrorForClient } from "../client-error-format.js";
18
17
  import { resolveConfiguredActivityDetailDefault, resolveEffectiveReasoningLevel } from "../../session/thinking-resolve.js";
19
18
  import { initSessionTurn } from "../../session/init-session-turn.js";
20
19
  import "../../session/index.js";
20
+ import { getMcpSetupResumeInput } from "../mcp/continuation-input.js";
21
21
  import { getTaskContinuation } from "../../tasks/task-continuation.js";
22
- import { stripEnvelopeTimestampPrefix } from "../../channels/envelope-timestamp.js";
23
22
  import { isVoiceLikeAttachment, mergeVoiceTranscriptsIntoUserText, requestsOriginalVoiceInspection } from "../../channels/attachments/voice-stt-webchat.js";
24
23
  import { applyReasoningVisibility } from "../streaming/reasoning-visibility.js";
24
+ import { formatAgentRunErrorForClient } from "../client-error-format.js";
25
25
  import { injectSourceContextsIntoUserMessage } from "../source-context/injector.js";
26
26
  import { AsyncQueue, AsyncQueueOverflowError } from "./async-queue.js";
27
27
  import { hydratePerTurnState, runDirectAgentTurn, tryRunSlashCommand } from "./direct-turn-helpers.js";