mixdog 1.2.2 → 1.2.4

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 (692) hide show
  1. package/README.md +18 -0
  2. package/package.json +2 -1
  3. package/scripts/gate-local.mjs +6 -4
  4. package/scripts/lib/gate-scheduler.mjs +29 -11
  5. package/scripts/probe-provider-catalog.mjs +31 -0
  6. package/scripts/provider-pingpong-live.mjs +599 -0
  7. package/scripts/session-sweep.mjs +5 -25
  8. package/src/agents/advisor/AGENT.md +1 -1
  9. package/src/agents/advisor/agent.json +1 -1
  10. package/src/agents/maintainer/AGENT.md +1 -1
  11. package/src/agents/maintainer/agent.json +1 -1
  12. package/src/agents/reviewer/AGENT.md +2 -4
  13. package/src/agents/security/AGENT.md +1 -2
  14. package/src/agents/writer/AGENT.md +2 -3
  15. package/src/defaults/shipped-history.json +11 -1
  16. package/src/defaults/skills/image/SKILL.md +21 -23
  17. package/src/defaults/skills/setup/SKILL.md +6 -1
  18. package/src/defaults/skills/setup/references/actions.md +44 -22
  19. package/src/defaults/skills/setup/references/surfaces.md +10 -8
  20. package/src/headless-exec.mjs +15 -8
  21. package/src/lib/keychain-cjs.cjs +20 -15
  22. package/src/output-styles/common.md +11 -10
  23. package/src/rules/agent/AGENT.md +6 -4
  24. package/src/rules/lead/LEAD.md +7 -9
  25. package/src/rules/shared/45-destructive.md +4 -0
  26. package/src/runtime/agent/orchestrator/agent-runtime/agent-dispatch/preset.mjs +1 -0
  27. package/src/runtime/agent/orchestrator/agent-runtime/agent-progress-watchdog.mjs +28 -7
  28. package/src/runtime/agent/orchestrator/agent-runtime/cache-strategy.mjs +2 -11
  29. package/src/runtime/agent/orchestrator/agent-trace-io.mjs +92 -61
  30. package/src/runtime/agent/orchestrator/cache-mtime.mjs +10 -1
  31. package/src/runtime/agent/orchestrator/config-providers-merge.mjs +7 -0
  32. package/src/runtime/agent/orchestrator/config.mjs +5 -0
  33. package/src/runtime/agent/orchestrator/context/collect.mjs +1 -0
  34. package/src/runtime/agent/orchestrator/context/deferred-tools.mjs +26 -7
  35. package/src/runtime/agent/orchestrator/context/skill-catalog.mjs +112 -7
  36. package/src/runtime/agent/orchestrator/mcp/child-tree.mjs +101 -23
  37. package/src/runtime/agent/orchestrator/providers/account-pool.mjs +2 -0
  38. package/src/runtime/agent/orchestrator/providers/anthropic-api-key-fetch.mjs +36 -0
  39. package/src/runtime/agent/orchestrator/providers/anthropic-api-request.mjs +48 -20
  40. package/src/runtime/agent/orchestrator/providers/anthropic-error-contract.mjs +3 -1
  41. package/src/runtime/agent/orchestrator/providers/anthropic-max-tokens.mjs +24 -17
  42. package/src/runtime/agent/orchestrator/providers/anthropic-messages.mjs +9 -9
  43. package/src/runtime/agent/orchestrator/providers/anthropic-oauth-client-version.mjs +1 -1
  44. package/src/runtime/agent/orchestrator/providers/anthropic-oauth-request/gzip-post.mjs +26 -44
  45. package/src/runtime/agent/orchestrator/providers/anthropic-oauth.mjs +31 -15
  46. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-blocks.mjs +20 -1
  47. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-events/content-block-delta.mjs +15 -2
  48. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-events/content-block-start.mjs +11 -4
  49. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-events/message-events.mjs +3 -0
  50. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-events.mjs +12 -5
  51. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-outcome.mjs +1 -0
  52. package/src/runtime/agent/orchestrator/providers/anthropic-sse-turn/turn-state.mjs +14 -0
  53. package/src/runtime/agent/orchestrator/providers/anthropic-sse.mjs +2 -0
  54. package/src/runtime/agent/orchestrator/providers/anthropic-turn-result.mjs +9 -0
  55. package/src/runtime/agent/orchestrator/providers/anthropic.mjs +10 -0
  56. package/src/runtime/agent/orchestrator/providers/antigravity-oauth-catalog.mjs +41 -12
  57. package/src/runtime/agent/orchestrator/providers/antigravity-oauth.mjs +13 -1
  58. package/src/runtime/agent/orchestrator/providers/antigravity-request.mjs +131 -9
  59. package/src/runtime/agent/orchestrator/providers/antigravity-response.mjs +29 -10
  60. package/src/runtime/agent/orchestrator/providers/antigravity-retry-policy.mjs +125 -8
  61. package/src/runtime/agent/orchestrator/providers/antigravity-stream.mjs +12 -62
  62. package/src/runtime/agent/orchestrator/providers/antigravity-transport.mjs +117 -41
  63. package/src/runtime/agent/orchestrator/providers/codex-client-meta.mjs +1 -1
  64. package/src/runtime/agent/orchestrator/providers/command-code-oauth.mjs +117 -72
  65. package/src/runtime/agent/orchestrator/providers/compat-request-policy.mjs +78 -2
  66. package/src/runtime/agent/orchestrator/providers/cursor-auth.mjs +39 -5
  67. package/src/runtime/agent/orchestrator/providers/cursor-client-version.mjs +1 -1
  68. package/src/runtime/agent/orchestrator/providers/cursor-native-context.mjs +48 -0
  69. package/src/runtime/agent/orchestrator/providers/cursor-wire-exec.mjs +144 -34
  70. package/src/runtime/agent/orchestrator/providers/cursor-wire-protobuf.mjs +28 -4
  71. package/src/runtime/agent/orchestrator/providers/cursor-wire-request.mjs +8 -4
  72. package/src/runtime/agent/orchestrator/providers/cursor-wire-stream-bridge.mjs +42 -11
  73. package/src/runtime/agent/orchestrator/providers/cursor-wire-stream-messages.mjs +109 -6
  74. package/src/runtime/agent/orchestrator/providers/cursor-wire.mjs +17 -4
  75. package/src/runtime/agent/orchestrator/providers/cursor.mjs +22 -2
  76. package/src/runtime/agent/orchestrator/providers/custom-provider-config.mjs +73 -7
  77. package/src/runtime/agent/orchestrator/providers/custom-provider.mjs +75 -6
  78. package/src/runtime/agent/orchestrator/providers/custom-reasoning.mjs +34 -7
  79. package/src/runtime/agent/orchestrator/providers/custom-tool-wire.mjs +32 -6
  80. package/src/runtime/agent/orchestrator/providers/deepseek.mjs +67 -0
  81. package/src/runtime/agent/orchestrator/providers/effort-configuration.mjs +29 -5
  82. package/src/runtime/agent/orchestrator/providers/gemini-cache-policy.mjs +11 -4
  83. package/src/runtime/agent/orchestrator/providers/gemini-cache.mjs +36 -13
  84. package/src/runtime/agent/orchestrator/providers/gemini-error-contract.mjs +101 -11
  85. package/src/runtime/agent/orchestrator/providers/gemini-request-body.mjs +41 -5
  86. package/src/runtime/agent/orchestrator/providers/gemini-response.mjs +1 -0
  87. package/src/runtime/agent/orchestrator/providers/gemini-rest-stream/watchdogs.mjs +16 -5
  88. package/src/runtime/agent/orchestrator/providers/gemini-retry-policy.mjs +19 -14
  89. package/src/runtime/agent/orchestrator/providers/gemini-schema.mjs +371 -41
  90. package/src/runtime/agent/orchestrator/providers/gemini-sdk-request.mjs +1 -2
  91. package/src/runtime/agent/orchestrator/providers/gemini-stream.mjs +97 -49
  92. package/src/runtime/agent/orchestrator/providers/gemini-thinking.mjs +81 -10
  93. package/src/runtime/agent/orchestrator/providers/gemini.mjs +35 -8
  94. package/src/runtime/agent/orchestrator/providers/grok-client-version.mjs +1 -1
  95. package/src/runtime/agent/orchestrator/providers/grok-oauth.mjs +1 -0
  96. package/src/runtime/agent/orchestrator/providers/lib/action-input-contract.mjs +60 -0
  97. package/src/runtime/agent/orchestrator/providers/lib/anthropic-native-blocks.mjs +1 -0
  98. package/src/runtime/agent/orchestrator/providers/lib/anthropic-request-utils.mjs +253 -42
  99. package/src/runtime/agent/orchestrator/providers/lib/anthropic-server-tool-usage.mjs +18 -0
  100. package/src/runtime/agent/orchestrator/providers/lib/anthropic-system-blocks.mjs +27 -6
  101. package/src/runtime/agent/orchestrator/providers/lib/claude-bridge-schema.mjs +392 -0
  102. package/src/runtime/agent/orchestrator/providers/lib/inclusive-usage.mjs +54 -0
  103. package/src/runtime/agent/orchestrator/providers/lib/origin-bound-fetch.mjs +16 -0
  104. package/src/runtime/agent/orchestrator/providers/lib/request-compression.mjs +86 -0
  105. package/src/runtime/agent/orchestrator/providers/lib/responses-terminal-fields.mjs +11 -0
  106. package/src/runtime/agent/orchestrator/providers/lib/usage-primitives.mjs +8 -0
  107. package/src/runtime/agent/orchestrator/providers/lib/wire-pairing.mjs +50 -22
  108. package/src/runtime/agent/orchestrator/providers/media-normalization.mjs +133 -21
  109. package/src/runtime/agent/orchestrator/providers/mimo-oauth-profile.mjs +13 -15
  110. package/src/runtime/agent/orchestrator/providers/mimo-oauth.mjs +7 -1
  111. package/src/runtime/agent/orchestrator/providers/model-proxy-channel.d.mts +1 -1
  112. package/src/runtime/agent/orchestrator/providers/model-proxy-channel.mjs +1 -0
  113. package/src/runtime/agent/orchestrator/providers/model-proxy-provider.mjs +92 -16
  114. package/src/runtime/agent/orchestrator/providers/oauth-credential-probes.mjs +13 -13
  115. package/src/runtime/agent/orchestrator/providers/openai-codex-metadata.mjs +2 -0
  116. package/src/runtime/agent/orchestrator/providers/openai-compat-chat-send.mjs +133 -62
  117. package/src/runtime/agent/orchestrator/providers/openai-compat-chat-stream/chunk-events.mjs +35 -14
  118. package/src/runtime/agent/orchestrator/providers/openai-compat-chat-stream/stream-result.mjs +5 -2
  119. package/src/runtime/agent/orchestrator/providers/openai-compat-chat-stream/stream-state.mjs +39 -7
  120. package/src/runtime/agent/orchestrator/providers/openai-compat-chat-stream/tool-call-acc.mjs +2 -9
  121. package/src/runtime/agent/orchestrator/providers/openai-compat-chat-stream.mjs +5 -0
  122. package/src/runtime/agent/orchestrator/providers/openai-compat-error-contract.mjs +1 -1
  123. package/src/runtime/agent/orchestrator/providers/openai-compat-models.mjs +84 -2
  124. package/src/runtime/agent/orchestrator/providers/openai-compat-options.mjs +47 -25
  125. package/src/runtime/agent/orchestrator/providers/openai-compat-presets.mjs +5 -1
  126. package/src/runtime/agent/orchestrator/providers/openai-compat-reasoning-field.mjs +155 -0
  127. package/src/runtime/agent/orchestrator/providers/openai-compat-response-normalization.mjs +40 -24
  128. package/src/runtime/agent/orchestrator/providers/openai-compat-responses-events.mjs +63 -25
  129. package/src/runtime/agent/orchestrator/providers/openai-compat-responses-head-parity.json +2901 -0
  130. package/src/runtime/agent/orchestrator/providers/openai-compat-responses-parity.fixtures.mjs +183 -0
  131. package/src/runtime/agent/orchestrator/providers/openai-compat-responses.mjs +87 -6
  132. package/src/runtime/agent/orchestrator/providers/openai-compat-retry-profile.mjs +51 -3
  133. package/src/runtime/agent/orchestrator/providers/openai-compat-stream.mjs +7 -1
  134. package/src/runtime/agent/orchestrator/providers/openai-compat-trace.mjs +2 -0
  135. package/src/runtime/agent/orchestrator/providers/openai-compat-wire.mjs +103 -26
  136. package/src/runtime/agent/orchestrator/providers/openai-compat-xai-send.mjs +23 -4
  137. package/src/runtime/agent/orchestrator/providers/openai-compat-xai.mjs +11 -6
  138. package/src/runtime/agent/orchestrator/providers/openai-compat.mjs +17 -2
  139. package/src/runtime/agent/orchestrator/providers/openai-direct-request.mjs +15 -23
  140. package/src/runtime/agent/orchestrator/providers/openai-http-sse-request.mjs +64 -52
  141. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/response-events/output-items.mjs +23 -10
  142. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/response-events/terminal-frames.mjs +28 -5
  143. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/response-events.mjs +10 -0
  144. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/response-items.mjs +18 -7
  145. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/response-outcome.mjs +4 -0
  146. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/response-state.mjs +5 -0
  147. package/src/runtime/agent/orchestrator/providers/openai-http-sse-response-state/text-relay.mjs +9 -1
  148. package/src/runtime/agent/orchestrator/providers/openai-model-capabilities.mjs +80 -0
  149. package/src/runtime/agent/orchestrator/providers/openai-oauth-dispatch.mjs +3 -1
  150. package/src/runtime/agent/orchestrator/providers/openai-oauth-http-sse.mjs +7 -0
  151. package/src/runtime/agent/orchestrator/providers/openai-oauth.mjs +7 -1
  152. package/src/runtime/agent/orchestrator/providers/openai-responses-input.mjs +72 -24
  153. package/src/runtime/agent/orchestrator/providers/openai-responses-payload-parity.fixture.json +323 -0
  154. package/src/runtime/agent/orchestrator/providers/openai-responses-payload.mjs +50 -16
  155. package/src/runtime/agent/orchestrator/providers/openai-ws-delta.mjs +7 -19
  156. package/src/runtime/agent/orchestrator/providers/openai-ws-response-state/refusals.mjs +60 -0
  157. package/src/runtime/agent/orchestrator/providers/openai-ws-response-state/tool-calls.mjs +51 -36
  158. package/src/runtime/agent/orchestrator/providers/openai-ws-response-state.mjs +30 -0
  159. package/src/runtime/agent/orchestrator/providers/openai-ws-stream/event-switch.mjs +12 -0
  160. package/src/runtime/agent/orchestrator/providers/openai-ws-stream/terminal-frames.mjs +25 -6
  161. package/src/runtime/agent/orchestrator/providers/openai-ws.mjs +18 -9
  162. package/src/runtime/agent/orchestrator/providers/opencode-go-gemini.mjs +181 -0
  163. package/src/runtime/agent/orchestrator/providers/opencode-go.mjs +78 -70
  164. package/src/runtime/agent/orchestrator/providers/openrouter.mjs +74 -0
  165. package/src/runtime/agent/orchestrator/providers/provider-error-kind.mjs +150 -10
  166. package/src/runtime/agent/orchestrator/providers/registry.mjs +13 -2
  167. package/src/runtime/agent/orchestrator/providers/retry-classification.mjs +7 -1
  168. package/src/runtime/agent/orchestrator/providers/transport-scope.d.mts +6 -0
  169. package/src/runtime/agent/orchestrator/providers/transport-scope.mjs +28 -0
  170. package/src/runtime/agent/orchestrator/providers/wire-gateway.mjs +164 -0
  171. package/src/runtime/agent/orchestrator/providers/wire-route.mjs +522 -0
  172. package/src/runtime/agent/orchestrator/providers/xai-tool-search-head-parity.json +1131 -0
  173. package/src/runtime/agent/orchestrator/providers/xai-tool-search.fixtures.mjs +195 -0
  174. package/src/runtime/agent/orchestrator/runtime-core/ask-user-tool-defs.mjs +104 -0
  175. package/src/runtime/agent/orchestrator/runtime-core/config-helpers.mjs +8 -6
  176. package/src/runtime/agent/orchestrator/runtime-core/deferred-tool-availability.mjs +24 -0
  177. package/src/runtime/agent/orchestrator/runtime-core/effort.mjs +15 -0
  178. package/src/runtime/agent/orchestrator/runtime-core/goal-store.mjs +30 -2
  179. package/src/runtime/agent/orchestrator/runtime-core/goal-turns.mjs +3 -2
  180. package/src/runtime/agent/orchestrator/runtime-core/orchestration.mjs +8 -3
  181. package/src/runtime/agent/orchestrator/runtime-core/provider-request-snapshot.mjs +7 -3
  182. package/src/runtime/agent/orchestrator/runtime-core/session-title.mjs +21 -1
  183. package/src/runtime/agent/orchestrator/runtime-core/skill-tool-loading.mjs +16 -3
  184. package/src/runtime/agent/orchestrator/runtime-core/tool-bridge-contract.mjs +6 -0
  185. package/src/runtime/agent/orchestrator/runtime-core/tool-bridge.mjs +526 -0
  186. package/src/runtime/agent/orchestrator/runtime-core/tool-catalog-data.mjs +3 -0
  187. package/src/runtime/agent/orchestrator/runtime-core/tool-catalog-schema.mjs +10 -7
  188. package/src/runtime/agent/orchestrator/runtime-core/tool-catalog.mjs +178 -71
  189. package/src/runtime/agent/orchestrator/runtime-core/tool-defs.mjs +102 -12
  190. package/src/runtime/agent/orchestrator/runtime-core/tool-exposure.mjs +96 -0
  191. package/src/runtime/agent/orchestrator/runtime-core/workflow.mjs +10 -8
  192. package/src/runtime/agent/orchestrator/session/agent-loop.mjs +1 -2
  193. package/src/runtime/agent/orchestrator/session/agent-pool-progress.mjs +24 -0
  194. package/src/runtime/agent/orchestrator/session/cache/tool-result-reuse.mjs +10 -2
  195. package/src/runtime/agent/orchestrator/session/catalog-db/index.mjs +2 -3
  196. package/src/runtime/agent/orchestrator/session/catalog-db/schema.mjs +5 -11
  197. package/src/runtime/agent/orchestrator/session/catalog-db/worker.mjs +6 -22
  198. package/src/runtime/agent/orchestrator/session/compact/constants.mjs +3 -2
  199. package/src/runtime/agent/orchestrator/session/compact/messages.mjs +16 -93
  200. package/src/runtime/agent/orchestrator/session/compact/runner.mjs +16 -2
  201. package/src/runtime/agent/orchestrator/session/compact/summary-anchor.mjs +5 -0
  202. package/src/runtime/agent/orchestrator/session/compact/user-message-kind.mjs +148 -0
  203. package/src/runtime/agent/orchestrator/session/compaction-archive-capture.mjs +1 -1
  204. package/src/runtime/agent/orchestrator/session/context-tool-schema.mjs +17 -2
  205. package/src/runtime/agent/orchestrator/session/context-utils.mjs +8 -4
  206. package/src/runtime/agent/orchestrator/session/conversation-import/claude.mjs +0 -6
  207. package/src/runtime/agent/orchestrator/session/conversation-import/codex.mjs +0 -6
  208. package/src/runtime/agent/orchestrator/session/eager-dispatch/admission.mjs +3 -2
  209. package/src/runtime/agent/orchestrator/session/eager-dispatch.mjs +6 -1
  210. package/src/runtime/agent/orchestrator/session/historical-session-closure.mjs +10 -0
  211. package/src/runtime/agent/orchestrator/session/loop/assistant-commit.mjs +2 -5
  212. package/src/runtime/agent/orchestrator/session/loop/compact-policy.mjs +89 -1
  213. package/src/runtime/agent/orchestrator/session/loop/completion-guards.mjs +1 -1
  214. package/src/runtime/agent/orchestrator/session/loop/context-overflow.mjs +56 -0
  215. package/src/runtime/agent/orchestrator/session/loop/deferred-call-through.mjs +18 -8
  216. package/src/runtime/agent/orchestrator/session/loop/loop-state.mjs +1 -27
  217. package/src/runtime/agent/orchestrator/session/loop/no-tool-turn/output-limit.mjs +1 -1
  218. package/src/runtime/agent/orchestrator/session/loop/no-tool-turn/segments.mjs +4 -10
  219. package/src/runtime/agent/orchestrator/session/loop/no-tool-turn.mjs +2 -9
  220. package/src/runtime/agent/orchestrator/session/loop/pre-dispatch-deny.mjs +24 -10
  221. package/src/runtime/agent/orchestrator/session/loop/provider-tool-exclusions.mjs +135 -0
  222. package/src/runtime/agent/orchestrator/session/loop/request-boundary.mjs +31 -4
  223. package/src/runtime/agent/orchestrator/session/loop/route-fallback.mjs +76 -0
  224. package/src/runtime/agent/orchestrator/session/loop/send-phase.mjs +67 -20
  225. package/src/runtime/agent/orchestrator/session/loop/step-auto-effort.mjs +10 -10
  226. package/src/runtime/agent/orchestrator/session/loop/tool-call-resolution.mjs +95 -0
  227. package/src/runtime/agent/orchestrator/session/loop/tool-classify.mjs +6 -0
  228. package/src/runtime/agent/orchestrator/session/loop/tool-exec/before-hook.mjs +30 -3
  229. package/src/runtime/agent/orchestrator/session/loop/tool-exec/dispatch.mjs +29 -5
  230. package/src/runtime/agent/orchestrator/session/loop/tool-exec.mjs +15 -1
  231. package/src/runtime/agent/orchestrator/session/loop/tool-exposure-migration.mjs +147 -0
  232. package/src/runtime/agent/orchestrator/session/loop/tool-phase.mjs +7 -5
  233. package/src/runtime/agent/orchestrator/session/manager/ask-session.mjs +33 -3
  234. package/src/runtime/agent/orchestrator/session/manager/ask-support.mjs +0 -4
  235. package/src/runtime/agent/orchestrator/session/manager/ask-turn-auto-effort.mjs +23 -2
  236. package/src/runtime/agent/orchestrator/session/manager/ask-turn-commit.mjs +34 -12
  237. package/src/runtime/agent/orchestrator/session/manager/ask-turn-execute.mjs +54 -13
  238. package/src/runtime/agent/orchestrator/session/manager/ask-turn-failure.mjs +33 -0
  239. package/src/runtime/agent/orchestrator/session/manager/ask-turn-loop-options.mjs +57 -25
  240. package/src/runtime/agent/orchestrator/session/manager/ask-turn-prepare.mjs +11 -0
  241. package/src/runtime/agent/orchestrator/session/manager/ask-turn-settle.mjs +22 -0
  242. package/src/runtime/agent/orchestrator/session/manager/ask-turn-state.mjs +57 -13
  243. package/src/runtime/agent/orchestrator/session/manager/compaction-runner.mjs +8 -0
  244. package/src/runtime/agent/orchestrator/session/manager/failed-turn-rewind.mjs +16 -0
  245. package/src/runtime/agent/orchestrator/session/manager/pending-messages.mjs +6 -120
  246. package/src/runtime/agent/orchestrator/session/manager/pending-persist-queue.mjs +1 -1
  247. package/src/runtime/agent/orchestrator/session/manager/prompt-utils.mjs +231 -16
  248. package/src/runtime/agent/orchestrator/session/manager/runtime-liveness.mjs +42 -49
  249. package/src/runtime/agent/orchestrator/session/manager/runtime-state.mjs +50 -0
  250. package/src/runtime/agent/orchestrator/session/manager/session-close.mjs +47 -17
  251. package/src/runtime/agent/orchestrator/session/manager/session-crud.mjs +26 -4
  252. package/src/runtime/agent/orchestrator/session/manager/session-fallback-title.mjs +82 -0
  253. package/src/runtime/agent/orchestrator/session/manager/session-lifecycle.mjs +36 -35
  254. package/src/runtime/agent/orchestrator/session/manager/session-prompt-composition.mjs +29 -13
  255. package/src/runtime/agent/orchestrator/session/manager/session-record.mjs +6 -3
  256. package/src/runtime/agent/orchestrator/session/manager/tool-resolution.mjs +4 -1
  257. package/src/runtime/agent/orchestrator/session/manager/turn-checkpoint-recovery.mjs +45 -0
  258. package/src/runtime/agent/orchestrator/session/manager.mjs +4 -10
  259. package/src/runtime/agent/orchestrator/session/pre-send-compact.mjs +6 -0
  260. package/src/runtime/agent/orchestrator/session/send-instrumentation.mjs +2 -1
  261. package/src/runtime/agent/orchestrator/session/send-with-recovery.mjs +17 -1
  262. package/src/runtime/agent/orchestrator/session/side-question-store.mjs +96 -0
  263. package/src/runtime/agent/orchestrator/session/side-question.mjs +197 -0
  264. package/src/runtime/agent/orchestrator/session/store/lifecycle-barriers.mjs +22 -15
  265. package/src/runtime/agent/orchestrator/session/store/lifecycle-read.mjs +1 -1
  266. package/src/runtime/agent/orchestrator/session/store/listing.mjs +2 -6
  267. package/src/runtime/agent/orchestrator/session/store/live-cache-eviction.mjs +1 -1
  268. package/src/runtime/agent/orchestrator/session/store/live-state.mjs +23 -0
  269. package/src/runtime/agent/orchestrator/session/store/liveness-veto.mjs +46 -37
  270. package/src/runtime/agent/orchestrator/session/store/load-cache.mjs +1 -1
  271. package/src/runtime/agent/orchestrator/session/store/load-session.mjs +1 -1
  272. package/src/runtime/agent/orchestrator/session/store/session-delete.mjs +44 -37
  273. package/src/runtime/agent/orchestrator/session/store/session-observers.mjs +4 -2
  274. package/src/runtime/agent/orchestrator/session/store/session-paths.mjs +59 -0
  275. package/src/runtime/agent/orchestrator/session/store/summary-cache.mjs +1 -1
  276. package/src/runtime/agent/orchestrator/session/store/sweep/stale-sweep.mjs +1 -1
  277. package/src/runtime/agent/orchestrator/session/store/sweep/sweep-finish.mjs +27 -21
  278. package/src/runtime/agent/orchestrator/session/store/sweep/sweep-plan.mjs +0 -8
  279. package/src/runtime/agent/orchestrator/session/store/sweep/sweep-record.mjs +6 -18
  280. package/src/runtime/agent/orchestrator/session/store/sweep/sweep-row.mjs +33 -106
  281. package/src/runtime/agent/orchestrator/session/store/write-admission.mjs +4 -2
  282. package/src/runtime/agent/orchestrator/session/store-agent-worker-pool.mjs +5 -8
  283. package/src/runtime/agent/orchestrator/session/store-agent-worker-rows.mjs +136 -196
  284. package/src/runtime/agent/orchestrator/session/store-summary-archived-agent.mjs +34 -15
  285. package/src/runtime/agent/orchestrator/session/store-summary-catalog.mjs +53 -115
  286. package/src/runtime/agent/orchestrator/session/store-summary-fields.mjs +8 -0
  287. package/src/runtime/agent/orchestrator/session/store-summary-index.mjs +10 -1
  288. package/src/runtime/agent/orchestrator/session/store-summary-locations.mjs +3 -29
  289. package/src/runtime/agent/orchestrator/session/store-summary-reader-catalog-fixture.mjs +1 -1
  290. package/src/runtime/agent/orchestrator/session/store-summary-reader.mjs +17 -10
  291. package/src/runtime/agent/orchestrator/session/store-transcript-projection.mjs +9 -20
  292. package/src/runtime/agent/orchestrator/session/store.mjs +22 -19
  293. package/src/runtime/agent/orchestrator/session/tool-batch/execute-call.mjs +12 -12
  294. package/src/runtime/agent/orchestrator/session/tool-batch/finalize.mjs +38 -14
  295. package/src/runtime/agent/orchestrator/session/tool-batch/pre-dispatch.mjs +15 -4
  296. package/src/runtime/agent/orchestrator/session/tool-batch/record-outcome.mjs +1 -1
  297. package/src/runtime/agent/orchestrator/session/tool-batch/state.mjs +7 -1
  298. package/src/runtime/agent/orchestrator/session/tool-result-offload.mjs +4 -0
  299. package/src/runtime/agent/orchestrator/session/tool-schema-rejection.mjs +79 -0
  300. package/src/runtime/agent/orchestrator/session/transcript-restore/restore.mjs +72 -15
  301. package/src/runtime/agent/orchestrator/session/turn-failure.mjs +45 -0
  302. package/src/runtime/agent/orchestrator/stall-policy.mjs +50 -0
  303. package/src/runtime/agent/orchestrator/tools/bash-policy-scan.mjs +8 -2
  304. package/src/runtime/agent/orchestrator/tools/builtin/bash-tool/command-preflight.mjs +3 -3
  305. package/src/runtime/agent/orchestrator/tools/builtin/bash-tool/completed-result.mjs +5 -1
  306. package/src/runtime/agent/orchestrator/tools/builtin/bash-tool/inline-hoist.mjs +6 -2
  307. package/src/runtime/agent/orchestrator/tools/builtin/bash-tool.mjs +4 -1
  308. package/src/runtime/agent/orchestrator/tools/builtin/external-tool-adapters.mjs +218 -20
  309. package/src/runtime/agent/orchestrator/tools/builtin/git-command-tool.mjs +160 -39
  310. package/src/runtime/agent/orchestrator/tools/builtin/git-partial-stage.mjs +7 -5
  311. package/src/runtime/agent/orchestrator/tools/builtin/grep-formatting.mjs +14 -5
  312. package/src/runtime/agent/orchestrator/tools/builtin/lib/grep-context-expander.mjs +4 -3
  313. package/src/runtime/agent/orchestrator/tools/builtin/lib/grep-output.mjs +2 -1
  314. package/src/runtime/agent/orchestrator/tools/builtin/lib/grep-path-fanout.mjs +48 -44
  315. package/src/runtime/agent/orchestrator/tools/builtin/lib/search-input-helpers.mjs +10 -3
  316. package/src/runtime/agent/orchestrator/tools/builtin/lib/shell-job-records.mjs +247 -49
  317. package/src/runtime/agent/orchestrator/tools/builtin/lib/shell-task-output.mjs +5 -4
  318. package/src/runtime/agent/orchestrator/tools/builtin/read-formatting.mjs +6 -1
  319. package/src/runtime/agent/orchestrator/tools/builtin/runtime-capabilities.mjs +23 -1
  320. package/src/runtime/agent/orchestrator/tools/builtin/shell-analysis.mjs +20 -0
  321. package/src/runtime/agent/orchestrator/tools/builtin/shell-jobs.mjs +101 -2
  322. package/src/runtime/agent/orchestrator/tools/code-graph/dispatch/root-resolution.mjs +1 -1
  323. package/src/runtime/agent/orchestrator/tools/code-graph/search.mjs +1 -1
  324. package/src/runtime/agent/orchestrator/tools/code-graph-prewarm-worker.mjs +1 -1
  325. package/src/runtime/agent/orchestrator/tools/lib/owned-shell-trees.mjs +67 -0
  326. package/src/runtime/agent/orchestrator/tools/lib/process-table-fixture.mjs +50 -0
  327. package/src/runtime/agent/orchestrator/tools/lib/shell-descendants.mjs +303 -63
  328. package/src/runtime/agent/orchestrator/tools/lib/shell-run-background/promote-job.mjs +2 -0
  329. package/src/runtime/agent/orchestrator/tools/lib/shell-run-settle.mjs +108 -18
  330. package/src/runtime/agent/orchestrator/tools/lib/shell-run-spawn.mjs +77 -11
  331. package/src/runtime/agent/orchestrator/tools/lib/shell-run-state.mjs +81 -5
  332. package/src/runtime/agent/orchestrator/tools/patch/ui-diff.mjs +73 -39
  333. package/src/runtime/agent/orchestrator/tools/progress-message.mjs +18 -1
  334. package/src/runtime/agent/orchestrator/tools/shell-command.mjs +7 -4
  335. package/src/runtime/agent/orchestrator/tools/shell-exec-policy.mjs +88 -12
  336. package/src/runtime/agent/orchestrator/tools/shell-policy.mjs +2 -0
  337. package/src/runtime/attachments/store.d.mts +9 -0
  338. package/src/runtime/attachments/store.mjs +80 -9
  339. package/src/runtime/browser-bridge/browser-action-contract.d.mts +0 -1
  340. package/src/runtime/browser-bridge/browser-action-contract.mjs +0 -2
  341. package/src/runtime/computer-bridge/action-schema.mjs +219 -196
  342. package/src/runtime/computer-bridge/linux-readiness.d.mts +0 -2
  343. package/src/runtime/computer-bridge/linux-readiness.mjs +0 -16
  344. package/src/runtime/effort-judge/judge-client.mjs +21 -4
  345. package/src/runtime/effort-judge/judge-worker.mjs +4 -1
  346. package/src/runtime/github/tool.mjs +208 -17
  347. package/src/runtime/media/adapters/codex-image.mjs +140 -21
  348. package/src/runtime/media/catalog.mjs +4 -4
  349. package/src/runtime/media/chatgpt-usage.mjs +55 -0
  350. package/src/runtime/media/defaults.mjs +37 -0
  351. package/src/runtime/media/jobs.mjs +12 -2
  352. package/src/runtime/media/lanes.mjs +12 -0
  353. package/src/runtime/media/tool-defs.mjs +15 -4
  354. package/src/runtime/media/tool.mjs +41 -12
  355. package/src/runtime/media/upstream-error.mjs +72 -6
  356. package/src/runtime/memory/index.mjs +1 -0
  357. package/src/runtime/memory/lib/http-router/ingest-routes.mjs +22 -1
  358. package/src/runtime/memory/lib/ingest/transcript-offsets.mjs +2 -0
  359. package/src/runtime/memory/lib/ingest/transcript-rows.mjs +1 -0
  360. package/src/runtime/memory/lib/pg/adapter.mjs +98 -1
  361. package/src/runtime/memory/lib/pg/process.mjs +36 -33
  362. package/src/runtime/memory/lib/pg/run-child.mjs +49 -0
  363. package/src/runtime/memory/lib/pg/supervisor.mjs +112 -4
  364. package/src/runtime/memory/lib/runtime-fetcher.mjs +12 -13
  365. package/src/runtime/memory/lib/transcript-ingest.mjs +14 -0
  366. package/src/runtime/office/README.md +1 -1
  367. package/src/runtime/office/authoring/docx-html-runner.mjs +1 -1
  368. package/src/runtime/office/authoring/html-browser.mjs +18 -8
  369. package/src/runtime/office/authoring/html-document-author.mjs +2 -0
  370. package/src/runtime/office/authoring/pdf-html-runner.mjs +1 -1
  371. package/src/runtime/office/authoring/pptx-contact-sheet.mjs +2 -0
  372. package/src/runtime/office/authoring/pptx-html-measure.mjs +3 -1
  373. package/src/runtime/office/authoring/pptx-html-runner.mjs +2 -0
  374. package/src/runtime/office/authoring/xlsx-html-runner.mjs +3 -1
  375. package/src/runtime/office/core/office-actions-read.mjs +3 -0
  376. package/src/runtime/office/core/office-render-preview.mjs +2 -0
  377. package/src/runtime/office/core/office-session-dispatch.mjs +7 -0
  378. package/src/runtime/office/core/office-sessionless-actions.mjs +8 -0
  379. package/src/runtime/office/core/office-sessions.mjs +5 -0
  380. package/src/runtime/office/core/office-transactions.mjs +3 -0
  381. package/src/runtime/office/core/office-write-ledger.mjs +94 -0
  382. package/src/runtime/office/design/library/templates/mixdog-executive.mixdog-edit.pptx +0 -0
  383. package/src/runtime/office/index.mjs +29 -0
  384. package/src/runtime/office/pdf/pdf-analysis.mjs +0 -68
  385. package/src/runtime/office/pdf/pdf-edit-document.mjs +2 -0
  386. package/src/runtime/office/pdf/pdf-render.mjs +23 -7
  387. package/src/runtime/office/pdf/pdf-security.mjs +2 -0
  388. package/src/runtime/office/portable/portable-opc.mjs +4 -1
  389. package/src/runtime/office/quality/visual-diff.mjs +2 -0
  390. package/src/runtime/session-search/session-search-ingest.mjs +1 -1
  391. package/src/runtime/shared/agent-reap-state.mjs +13 -0
  392. package/src/runtime/shared/atomic-file.d.mts +1 -1
  393. package/src/runtime/shared/background-tasks.mjs +6 -1
  394. package/src/runtime/shared/bounded-file-read.mjs +13 -0
  395. package/src/runtime/shared/bounded-line-diff.mjs +191 -0
  396. package/src/runtime/shared/browser-launch.mjs +15 -0
  397. package/src/runtime/shared/buffered-appender.mjs +18 -0
  398. package/src/runtime/shared/config.mjs +78 -18
  399. package/src/runtime/shared/err-text.mjs +48 -4
  400. package/src/runtime/shared/file-lock.mjs +6 -5
  401. package/src/runtime/shared/file-permissions.d.mts +6 -1
  402. package/src/runtime/shared/file-permissions.mjs +54 -6
  403. package/src/runtime/shared/llm/anthropic-betas.mjs +1 -2
  404. package/src/runtime/shared/llm/anthropic-effort.mjs +6 -0
  405. package/src/runtime/shared/llm/provider-model-identities.mjs +1 -0
  406. package/src/runtime/shared/llm/usage-accounting.mjs +5 -2
  407. package/src/runtime/shared/llm/usage-ledger-rollup.mjs +3 -0
  408. package/src/runtime/shared/loopback-listener.mjs +9 -0
  409. package/src/runtime/shared/model-route-chain.d.mts +8 -0
  410. package/src/runtime/shared/model-route-chain.mjs +48 -0
  411. package/src/runtime/shared/model-route-fallback.mjs +22 -0
  412. package/src/runtime/shared/pid-liveness.mjs +12 -0
  413. package/src/runtime/shared/provider-api-key.mjs +8 -0
  414. package/src/runtime/shared/provider-timeout-phase.mjs +17 -0
  415. package/src/runtime/shared/quiet-progress.d.mts +35 -0
  416. package/src/runtime/shared/quiet-progress.mjs +101 -0
  417. package/src/runtime/shared/quota-resume-store.mjs +32 -1
  418. package/src/runtime/shared/read-row-numbers.mjs +44 -0
  419. package/src/runtime/shared/remote-intent.mjs +2 -42
  420. package/src/runtime/shared/review-diff.mjs +52 -0
  421. package/src/runtime/shared/session-sidebar-host.d.mts +4 -0
  422. package/src/runtime/shared/session-sidebar-host.mjs +38 -0
  423. package/src/runtime/shared/slow-span.mjs +121 -0
  424. package/src/runtime/shared/statusline/statusline-segments.mjs +52 -6
  425. package/src/runtime/shared/tool-card-model/card-header.mjs +7 -1
  426. package/src/runtime/shared/tool-card-model/generic-detail.mjs +39 -5
  427. package/src/runtime/shared/tool-card-model.mjs +5 -2
  428. package/src/runtime/shared/tool-output-budget.mjs +2 -0
  429. package/src/runtime/shared/tool-output-limit.mjs +4 -0
  430. package/src/runtime/shared/tool-primitives.mjs +13 -0
  431. package/src/runtime/shared/tool-result-summary.mjs +22 -1
  432. package/src/runtime/shared/tool-status.mjs +3 -2
  433. package/src/runtime/shared/tool-surface.mjs +20 -6
  434. package/src/runtime/shared/tool-work-units.mjs +54 -11
  435. package/src/runtime/shared/transcript-metadata.mjs +49 -1
  436. package/src/runtime/shared/transcript-turn-keys.mjs +33 -0
  437. package/src/runtime/shared/transcript-writer/purge.mjs +74 -0
  438. package/src/runtime/shared/transcript-writer/transcript-file.mjs +10 -1
  439. package/src/runtime/shared/transcript-writer.mjs +24 -6
  440. package/src/runtime/shared/turn-changes.mjs +269 -100
  441. package/src/runtime/shared/turn-review-reply.mjs +8 -39
  442. package/src/runtime/shared/turn-snapshot-store.mjs +19 -108
  443. package/src/runtime/shared/turn-snapshot.mjs +865 -683
  444. package/src/runtime/shared/turn-worktree-snapshot.mjs +183 -255
  445. package/src/runtime/shared/user-data-guard.mjs +262 -49
  446. package/src/runtime/shared/worktrees/activity-gate.mjs +175 -0
  447. package/src/runtime/shared/worktrees/branch-management.mjs +179 -0
  448. package/src/runtime/shared/worktrees/carry.mjs +533 -0
  449. package/src/runtime/shared/worktrees/contract.mjs +60 -0
  450. package/src/runtime/shared/worktrees/dependencies.mjs +456 -0
  451. package/src/runtime/shared/worktrees/file-recovery.mjs +84 -0
  452. package/src/runtime/shared/worktrees/git-head.mjs +214 -0
  453. package/src/runtime/shared/worktrees/git.mjs +8 -3
  454. package/src/runtime/shared/worktrees/include.mjs +125 -7
  455. package/src/runtime/shared/worktrees/lock.mjs +1 -1
  456. package/src/runtime/shared/worktrees/maintenance.mjs +20 -2
  457. package/src/runtime/shared/worktrees/manager.mjs +525 -31
  458. package/src/runtime/shared/worktrees/merge.mjs +31 -21
  459. package/src/runtime/shared/worktrees/owner.mjs +2 -1
  460. package/src/runtime/shared/worktrees/paths.d.mts +6 -0
  461. package/src/runtime/shared/worktrees/preparation-report.mjs +79 -0
  462. package/src/runtime/shared/worktrees/setup-commands.mjs +232 -0
  463. package/src/runtime/shared/worktrees/workspace-visibility.mjs +17 -0
  464. package/src/runtime/terminal-bridge/client.mjs +57 -20
  465. package/src/runtime/terminal-bridge/tool-defs.mjs +13 -6
  466. package/src/runtime/tidy/apply.mjs +47 -2
  467. package/src/runtime/tidy/run-engines.mjs +11 -5
  468. package/src/session-runtime/agent-tool-routing.mjs +19 -13
  469. package/src/session-runtime/boot/apis.mjs +20 -6
  470. package/src/session-runtime/boot/config.mjs +2 -0
  471. package/src/session-runtime/boot/facade.mjs +4 -0
  472. package/src/session-runtime/boot/infrastructure.mjs +6 -1
  473. package/src/session-runtime/boot/session.mjs +3 -3
  474. package/src/session-runtime/boot/tools.mjs +7 -1
  475. package/src/session-runtime/conversation-import/service.mjs +1 -1
  476. package/src/session-runtime/cwd-plugins/cwd-apply.mjs +12 -5
  477. package/src/session-runtime/goal-facade-api.mjs +2 -2
  478. package/src/session-runtime/internal-tool-executor/ask-user-tool.mjs +91 -0
  479. package/src/session-runtime/internal-tool-executor/bridge-tools.mjs +3 -1
  480. package/src/session-runtime/internal-tool-executor/knowledge-tools.mjs +15 -5
  481. package/src/session-runtime/internal-tool-executor/workspace-tools.mjs +137 -26
  482. package/src/session-runtime/internal-tool-executor.mjs +8 -2
  483. package/src/session-runtime/lifecycle/cold-heir.mjs +187 -0
  484. package/src/session-runtime/lifecycle/inheritance.mjs +71 -27
  485. package/src/session-runtime/lifecycle/session-catalog.mjs +25 -18
  486. package/src/session-runtime/lifecycle/session-switch/resume.mjs +6 -0
  487. package/src/session-runtime/lifecycle/session-switch/session-delete.mjs +36 -48
  488. package/src/session-runtime/lifecycle/session-switch.mjs +1 -1
  489. package/src/session-runtime/lifecycle/shared.mjs +5 -6
  490. package/src/session-runtime/lifecycle/teardown/session-close.mjs +6 -5
  491. package/src/session-runtime/lifecycle/teardown.mjs +70 -14
  492. package/src/session-runtime/lifecycle-api.mjs +1 -0
  493. package/src/session-runtime/mcp-glue/connect.mjs +17 -5
  494. package/src/session-runtime/media-api.mjs +8 -0
  495. package/src/session-runtime/model-route/route-ownership.mjs +60 -0
  496. package/src/session-runtime/model-route/route-persist.mjs +3 -2
  497. package/src/session-runtime/model-route/set-route.mjs +116 -36
  498. package/src/session-runtime/model-route/web-search-route.mjs +7 -2
  499. package/src/session-runtime/model-route-api.mjs +4 -2
  500. package/src/session-runtime/native-web-search/routes.mjs +37 -24
  501. package/src/session-runtime/native-web-search-usage.mjs +51 -0
  502. package/src/session-runtime/native-web-search.mjs +19 -9
  503. package/src/session-runtime/new-session-config.mjs +4 -2
  504. package/src/session-runtime/provider-auth/login.mjs +4 -0
  505. package/src/session-runtime/provider-auth/setup.mjs +4 -0
  506. package/src/session-runtime/provider-models/catalog-load.mjs +9 -0
  507. package/src/session-runtime/provider-models/web-search-catalog.mjs +23 -3
  508. package/src/session-runtime/provider-models.mjs +1 -0
  509. package/src/session-runtime/provider-usage.mjs +4 -0
  510. package/src/session-runtime/resource-scope-decorate.mjs +10 -3
  511. package/src/session-runtime/route-resolution.mjs +3 -1
  512. package/src/session-runtime/runtime-core.mjs +4 -0
  513. package/src/session-runtime/runtime-facade.mjs +6 -0
  514. package/src/session-runtime/runtime-review-api.mjs +8 -2
  515. package/src/session-runtime/services/agent-task-status.mjs +2 -0
  516. package/src/session-runtime/services/agent-tool/close-flow/close-all.mjs +0 -3
  517. package/src/session-runtime/services/agent-tool/close-flow.mjs +6 -7
  518. package/src/session-runtime/services/agent-tool/execute-send.mjs +2 -2
  519. package/src/session-runtime/services/agent-tool/execute-spawn.mjs +36 -3
  520. package/src/session-runtime/services/agent-tool/execute.mjs +9 -1
  521. package/src/session-runtime/services/agent-tool/helpers.mjs +30 -7
  522. package/src/session-runtime/services/agent-tool/index-write-queue.mjs +81 -20
  523. package/src/session-runtime/services/agent-tool/job-task-reconcile.mjs +7 -2
  524. package/src/session-runtime/services/agent-tool/job-views/session-progress.mjs +6 -3
  525. package/src/session-runtime/services/agent-tool/lead-worker-index/forgotten-leads.mjs +29 -0
  526. package/src/session-runtime/services/agent-tool/lead-worker-index/index-file.mjs +1 -1
  527. package/src/session-runtime/services/agent-tool/lead-worker-index/lead-rows.mjs +3 -4
  528. package/src/session-runtime/services/agent-tool/lead-worker-index/reap-timers.mjs +9 -3
  529. package/src/session-runtime/services/agent-tool/lead-worker-index/row-settlement.mjs +7 -18
  530. package/src/session-runtime/services/agent-tool/lead-worker-index.mjs +82 -13
  531. package/src/session-runtime/services/agent-tool/model-select.mjs +82 -0
  532. package/src/session-runtime/services/agent-tool/send-flow.mjs +24 -6
  533. package/src/session-runtime/services/agent-tool/spawn-flow/job-start.mjs +3 -1
  534. package/src/session-runtime/services/agent-tool/spawn-flow/spawn-prep.mjs +19 -5
  535. package/src/session-runtime/services/agent-tool/spawn-flow/spawn-run.mjs +5 -4
  536. package/src/session-runtime/services/agent-tool/spawn-flow.mjs +2 -1
  537. package/src/session-runtime/services/agent-tool/spawn-preset.mjs +3 -0
  538. package/src/session-runtime/services/agent-tool/tag-registry/tag-lookup.mjs +1 -3
  539. package/src/session-runtime/services/agent-tool/tag-registry/tag-refresh.mjs +1 -3
  540. package/src/session-runtime/services/agent-tool/tag-registry.mjs +18 -10
  541. package/src/session-runtime/services/agent-tool/terminal-reaper/scan-admission.mjs +8 -41
  542. package/src/session-runtime/services/agent-tool/terminal-reaper/stale-rows.mjs +3 -3
  543. package/src/session-runtime/services/agent-tool/terminal-reaper.mjs +6 -23
  544. package/src/session-runtime/services/agent-tool/terminal-trace.mjs +0 -1
  545. package/src/session-runtime/services/agent-tool/tool-def.mjs +7 -0
  546. package/src/session-runtime/services/agent-tool/worker-index/row-liveness.mjs +32 -20
  547. package/src/session-runtime/services/agent-tool/worker-index/row-shape.mjs +5 -2
  548. package/src/session-runtime/services/agent-tool/worker-index/row-store.mjs +10 -1
  549. package/src/session-runtime/services/agent-tool/worker-index.mjs +74 -15
  550. package/src/session-runtime/services/agent-tool.mjs +7 -0
  551. package/src/session-runtime/services/agent-watchdog-registry.mjs +2 -0
  552. package/src/session-runtime/services/channel-admin.mjs +19 -3
  553. package/src/session-runtime/services/memory-runtime-proxy/calls.mjs +4 -0
  554. package/src/session-runtime/services/memory-runtime-proxy.mjs +1 -0
  555. package/src/session-runtime/services/provider-admin.mjs +158 -15
  556. package/src/session-runtime/session-create/session-options.mjs +7 -5
  557. package/src/session-runtime/session-create/session-start-hook.mjs +2 -1
  558. package/src/session-runtime/session-transcript-purge.mjs +32 -0
  559. package/src/session-runtime/session-transcript.mjs +4 -5
  560. package/src/session-runtime/session-turn-api.mjs +17 -14
  561. package/src/session-runtime/settings-builtin-tools-api.mjs +18 -6
  562. package/src/session-runtime/setup-tool/executor.mjs +57 -9
  563. package/src/session-runtime/setup-tool/extended-actions.mjs +86 -6
  564. package/src/session-runtime/setup-tool/settings-contract.mjs +18 -3
  565. package/src/session-runtime/setup-tool/tool-defs.mjs +25 -4
  566. package/src/session-runtime/skills-api.mjs +3 -5
  567. package/src/session-runtime/tool-policy-refresh.mjs +83 -32
  568. package/src/session-runtime/tool-surface.mjs +5 -1
  569. package/src/session-runtime/turn/agent-ops.mjs +49 -2
  570. package/src/session-runtime/turn/compaction-gate.mjs +25 -0
  571. package/src/session-runtime/turn/session-ops.mjs +7 -5
  572. package/src/session-runtime/turn/side-question-ops.mjs +19 -0
  573. package/src/session-runtime/turn/turn-run/ask-callbacks.mjs +7 -1
  574. package/src/session-runtime/turn/turn-run/turn-prepare.mjs +12 -3
  575. package/src/session-runtime/turn/turn-run/turn-settle.mjs +18 -2
  576. package/src/session-runtime/turn/turn-run/turn-timing.mjs +4 -3
  577. package/src/session-runtime/turn/turn-run.mjs +26 -45
  578. package/src/session-runtime/usage-stats-api.mjs +46 -11
  579. package/src/session-runtime/workflow-agents-api/agent-route.mjs +16 -1
  580. package/src/session-runtime/workspace/admission-gate.mjs +44 -15
  581. package/src/session-runtime/workspace/project-branches.mjs +35 -41
  582. package/src/session-runtime/workspace/transition-steps.mjs +215 -116
  583. package/src/session-runtime/workspace/transitions.mjs +428 -73
  584. package/src/standalone/channel-transport.mjs +3 -4
  585. package/src/standalone/daemon-agent-control.mjs +9 -1
  586. package/src/standalone/daemon-desktop-runtime.mjs +32 -1
  587. package/src/standalone/daemon-local-session-bridge.mjs +14 -1
  588. package/src/standalone/daemon-owner.mjs +17 -4
  589. package/src/standalone/daemon-pg-stop.mjs +49 -0
  590. package/src/standalone/daemon-session-control.mjs +88 -0
  591. package/src/standalone/daemon-stop-budget.d.mts +2 -0
  592. package/src/standalone/daemon-stop-budget.mjs +18 -0
  593. package/src/standalone/daemon-stored-session-views.mjs +25 -3
  594. package/src/standalone/daemon-telemetry.mjs +19 -0
  595. package/src/standalone/daemon.mjs +63 -1
  596. package/src/standalone/desktop-service-registry.mjs +5 -0
  597. package/src/standalone/local-session-runtime.mjs +80 -30
  598. package/src/standalone/session-client.mjs +42 -0
  599. package/src/standalone/session-protocol.mjs +14 -0
  600. package/src/standalone/session-proxy/projection.mjs +41 -4
  601. package/src/standalone/session-runtime-inline-host/boot-loaders.mjs +15 -1
  602. package/src/standalone/session-runtime-inline-host.mjs +3 -0
  603. package/src/standalone/session-service/agent-tree/agent-cancel.mjs +91 -49
  604. package/src/standalone/session-service/agent-tree/agent-child.mjs +19 -1
  605. package/src/standalone/session-service/agent-tree/agent-registry.mjs +25 -0
  606. package/src/standalone/session-service/agent-tree/agent-turns.mjs +9 -1
  607. package/src/standalone/session-service/agent-tree.mjs +28 -2
  608. package/src/standalone/session-service/entries/session-loads.mjs +16 -5
  609. package/src/standalone/session-service/entries.mjs +1 -0
  610. package/src/standalone/session-service/projection/transcript-window.mjs +39 -0
  611. package/src/standalone/session-service/quota-resume.mjs +28 -13
  612. package/src/standalone/session-service/session-calls/session-action.mjs +18 -3
  613. package/src/standalone/session-service/session-calls/session-turns.mjs +17 -6
  614. package/src/standalone/session-service/session-calls/session-views.mjs +6 -0
  615. package/src/standalone/session-service-api.mjs +6 -1
  616. package/src/standalone/session-state-patch.d.mts +2 -1
  617. package/src/standalone/session-state-patch.mjs +41 -1
  618. package/src/standalone/session-tool-output.mjs +82 -0
  619. package/src/tui/App.jsx +25 -0
  620. package/src/tui/app/app-view/floating-panel.jsx +26 -1
  621. package/src/tui/app/app-view.jsx +2 -1
  622. package/src/tui/app/btw-controller.mjs +118 -0
  623. package/src/tui/app/create-app-pickers.mjs +2 -0
  624. package/src/tui/app/provider-setup/provider-items.mjs +8 -0
  625. package/src/tui/app/provider-setup-picker.mjs +15 -3
  626. package/src/tui/app/shell-layout/row-budgets.mjs +11 -1
  627. package/src/tui/app/shell-layout/surfaces.mjs +3 -1
  628. package/src/tui/app/slash-commands.mjs +19 -3
  629. package/src/tui/app/slash-dispatch/session-commands.mjs +68 -6
  630. package/src/tui/app/use-global-key-input/approval-shortcut.mjs +12 -0
  631. package/src/tui/app/use-global-key-input.mjs +5 -12
  632. package/src/tui/app/use-prompt-handlers.mjs +11 -0
  633. package/src/tui/components/BtwPanel.jsx +53 -0
  634. package/src/tui/components/QuestionPanel.jsx +275 -0
  635. package/src/tui/components/Spinner.jsx +4 -0
  636. package/src/tui/components/SpinnerByline.jsx +21 -2
  637. package/src/tui/components/question-panel-model.mjs +156 -0
  638. package/src/tui/components/status-line/local-line.mjs +10 -2
  639. package/src/tui/dist/index.mjs +2897 -1722
  640. package/src/tui/session/active-tool-summary.mjs +1 -1
  641. package/src/tui/session/context-state.mjs +4 -5
  642. package/src/tui/session/goal-continuation/continuation-queue.mjs +2 -3
  643. package/src/tui/session/goal-continuation/deadline-delivery.mjs +4 -2
  644. package/src/tui/session/goal-continuation/session-boundary.mjs +21 -0
  645. package/src/tui/session/quota-resume.mjs +140 -61
  646. package/src/tui/session/session-api/commands.mjs +14 -10
  647. package/src/tui/session/session-api/controls.mjs +14 -2
  648. package/src/tui/session/session-api/integrations.mjs +9 -2
  649. package/src/tui/session/session-api/lifecycle/dispose.mjs +3 -9
  650. package/src/tui/session/session-api/lifecycle/resume.mjs +2 -7
  651. package/src/tui/session/session-api/lifecycle.mjs +14 -11
  652. package/src/tui/session/session-api/media.mjs +2 -0
  653. package/src/tui/session/session-api/routes.mjs +81 -57
  654. package/src/tui/session/session-api/settings.mjs +9 -3
  655. package/src/tui/session/session-api/worktree.mjs +3 -2
  656. package/src/tui/session/session-api.mjs +1 -0
  657. package/src/tui/session/session-flow/auto-clear.mjs +1 -3
  658. package/src/tui/session/session-flow/drain.mjs +6 -4
  659. package/src/tui/session/session-flow/queue/entry-shape.mjs +2 -0
  660. package/src/tui/session/session-flow/queue/take-entries.mjs +2 -1
  661. package/src/tui/session/session-flow/queue.mjs +1 -1
  662. package/src/tui/session/tool-approval.mjs +20 -8
  663. package/src/tui/session/transcript-spill.mjs +14 -7
  664. package/src/tui/session/transcript-store/streaming-tail.mjs +1 -1
  665. package/src/tui/session/tui-steering-persist.mjs +3 -5
  666. package/src/tui/session/turn-quiet.mjs +53 -0
  667. package/src/tui/session/turn-stream.mjs +179 -32
  668. package/src/tui/session/turn.mjs +50 -36
  669. package/src/tui/session/worktree-setup-notice.mjs +38 -0
  670. package/src/tui/spinner-meta.mjs +10 -0
  671. package/src/tui/spinner-verbs.mjs +3 -0
  672. package/src/ui/statusline.mjs +13 -3
  673. package/src/workflows/default/WORKFLOW.md +3 -1
  674. package/src/runtime/agent/orchestrator/providers/model-pricing-rates.mjs +0 -1
  675. package/src/runtime/agent/orchestrator/session/manager/foreign-pending-messages.mjs +0 -346
  676. package/src/runtime/agent/orchestrator/session/manager/session-owner-liveness.mjs +0 -117
  677. package/src/runtime/agent/orchestrator/session/store/paths-heartbeat.mjs +0 -246
  678. package/src/session-runtime/services/agent-tool/terminal-reaper/reap-timers.mjs +0 -142
  679. package/src/session-runtime/turn/share-ops.mjs +0 -77
  680. package/src/tui/session/cross-surface-share.mjs +0 -406
  681. package/src/tui/session/live-share/delta.mjs +0 -153
  682. package/src/tui/session/live-share/mirror.mjs +0 -106
  683. package/src/tui/session/live-share/owner.mjs +0 -254
  684. package/src/tui/session/live-share/retry.mjs +0 -54
  685. package/src/tui/session/live-share/viewer/frame-router.mjs +0 -32
  686. package/src/tui/session/live-share/viewer/pipe-client.mjs +0 -108
  687. package/src/tui/session/live-share/viewer/submit-acks.mjs +0 -65
  688. package/src/tui/session/live-share/viewer/sync-waiters.mjs +0 -53
  689. package/src/tui/session/live-share/viewer.mjs +0 -99
  690. package/src/tui/session/live-share/wire.mjs +0 -44
  691. package/src/tui/session/live-share.mjs +0 -154
  692. package/src/tui/session/shared-dir-watch.mjs +0 -69
@@ -0,0 +1,1131 @@
1
+ {
2
+ "http/native/plain-tools": {
3
+ "model": "grok-4",
4
+ "input": [
5
+ {
6
+ "role": "user",
7
+ "content": [
8
+ {
9
+ "type": "input_text",
10
+ "text": "go"
11
+ }
12
+ ]
13
+ },
14
+ {
15
+ "type": "function_call",
16
+ "call_id": "ts1",
17
+ "name": "load_tool",
18
+ "arguments": "{\"names\":[\"x\"]}"
19
+ },
20
+ {
21
+ "type": "function_call",
22
+ "call_id": "cu1",
23
+ "name": "apply_patch",
24
+ "arguments": "{\"patch\":\"P\"}"
25
+ },
26
+ {
27
+ "type": "function_call",
28
+ "call_id": "fn1",
29
+ "name": "Read",
30
+ "arguments": "{\"path\":\"a\"}"
31
+ },
32
+ {
33
+ "type": "function_call_output",
34
+ "call_id": "ts1",
35
+ "output": "loaded"
36
+ },
37
+ {
38
+ "type": "function_call_output",
39
+ "call_id": "cu1",
40
+ "output": "patched"
41
+ },
42
+ {
43
+ "type": "function_call_output",
44
+ "call_id": "fn1",
45
+ "output": "file"
46
+ },
47
+ {
48
+ "role": "user",
49
+ "content": [
50
+ {
51
+ "type": "input_text",
52
+ "text": "next"
53
+ }
54
+ ]
55
+ }
56
+ ],
57
+ "store": false,
58
+ "include": [
59
+ "reasoning.encrypted_content"
60
+ ],
61
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
62
+ "tools": [
63
+ {
64
+ "type": "function",
65
+ "name": "Read",
66
+ "description": "Read a file",
67
+ "parameters": {
68
+ "type": "object",
69
+ "properties": {
70
+ "path": {
71
+ "type": "string"
72
+ }
73
+ }
74
+ },
75
+ "strict": false
76
+ },
77
+ {
78
+ "type": "function",
79
+ "name": "load_tool",
80
+ "description": "Load tools",
81
+ "parameters": {
82
+ "type": "object",
83
+ "properties": {
84
+ "names": {
85
+ "type": "array"
86
+ }
87
+ }
88
+ },
89
+ "strict": false
90
+ }
91
+ ],
92
+ "parallel_tool_calls": true,
93
+ "stream": true
94
+ },
95
+ "ws/native/plain-tools": {
96
+ "model": "grok-4",
97
+ "input": [
98
+ {
99
+ "role": "user",
100
+ "content": [
101
+ {
102
+ "type": "input_text",
103
+ "text": "go"
104
+ }
105
+ ]
106
+ },
107
+ {
108
+ "type": "function_call",
109
+ "call_id": "ts1",
110
+ "name": "load_tool",
111
+ "arguments": "{\"names\":[\"x\"]}"
112
+ },
113
+ {
114
+ "type": "function_call",
115
+ "call_id": "cu1",
116
+ "name": "apply_patch",
117
+ "arguments": "{\"patch\":\"P\"}"
118
+ },
119
+ {
120
+ "type": "function_call",
121
+ "call_id": "fn1",
122
+ "name": "Read",
123
+ "arguments": "{\"path\":\"a\"}"
124
+ },
125
+ {
126
+ "type": "function_call_output",
127
+ "call_id": "ts1",
128
+ "output": "loaded"
129
+ },
130
+ {
131
+ "type": "function_call_output",
132
+ "call_id": "cu1",
133
+ "output": "patched"
134
+ },
135
+ {
136
+ "type": "function_call_output",
137
+ "call_id": "fn1",
138
+ "output": "file"
139
+ },
140
+ {
141
+ "role": "user",
142
+ "content": [
143
+ {
144
+ "type": "input_text",
145
+ "text": "next"
146
+ }
147
+ ]
148
+ }
149
+ ],
150
+ "store": false,
151
+ "include": [
152
+ "reasoning.encrypted_content"
153
+ ],
154
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
155
+ "tools": [
156
+ {
157
+ "type": "function",
158
+ "name": "Read",
159
+ "description": "Read a file",
160
+ "parameters": {
161
+ "type": "object",
162
+ "properties": {
163
+ "path": {
164
+ "type": "string"
165
+ }
166
+ }
167
+ },
168
+ "strict": false
169
+ },
170
+ {
171
+ "type": "function",
172
+ "name": "load_tool",
173
+ "description": "Load tools",
174
+ "parameters": {
175
+ "type": "object",
176
+ "properties": {
177
+ "names": {
178
+ "type": "array"
179
+ }
180
+ }
181
+ },
182
+ "strict": false
183
+ }
184
+ ],
185
+ "parallel_tool_calls": true
186
+ },
187
+ "http/oauth/plain-tools": {
188
+ "model": "grok-4",
189
+ "input": [
190
+ {
191
+ "role": "system",
192
+ "content": [
193
+ {
194
+ "type": "input_text",
195
+ "text": "sys"
196
+ }
197
+ ]
198
+ },
199
+ {
200
+ "role": "user",
201
+ "content": [
202
+ {
203
+ "type": "input_text",
204
+ "text": "go"
205
+ }
206
+ ]
207
+ },
208
+ {
209
+ "role": "assistant",
210
+ "content": [
211
+ {
212
+ "type": "output_text",
213
+ "text": "working"
214
+ }
215
+ ]
216
+ },
217
+ {
218
+ "role": "assistant",
219
+ "content": [
220
+ {
221
+ "type": "output_text",
222
+ "text": "looking"
223
+ }
224
+ ]
225
+ },
226
+ {
227
+ "type": "function_call",
228
+ "call_id": "ts1",
229
+ "name": "load_tool",
230
+ "arguments": "{\"names\":[\"x\"]}"
231
+ },
232
+ {
233
+ "type": "function_call",
234
+ "call_id": "cu1",
235
+ "name": "apply_patch",
236
+ "arguments": "{\"patch\":\"P\"}"
237
+ },
238
+ {
239
+ "type": "function_call",
240
+ "call_id": "sk1",
241
+ "name": "Skill",
242
+ "arguments": "{\"name\":\"s\"}"
243
+ },
244
+ {
245
+ "type": "function_call_output",
246
+ "call_id": "ts1",
247
+ "output": "loaded"
248
+ },
249
+ {
250
+ "type": "function_call_output",
251
+ "call_id": "cu1",
252
+ "output": "patched"
253
+ },
254
+ {
255
+ "type": "function_call_output",
256
+ "call_id": "sk1",
257
+ "output": "skill"
258
+ },
259
+ {
260
+ "type": "function_call",
261
+ "call_id": "f2",
262
+ "name": "Read",
263
+ "arguments": "{\"path\":\"a\"}"
264
+ },
265
+ {
266
+ "type": "function_call_output",
267
+ "call_id": "f2",
268
+ "output": "file"
269
+ },
270
+ {
271
+ "role": "user",
272
+ "content": [
273
+ {
274
+ "type": "input_text",
275
+ "text": "next"
276
+ }
277
+ ]
278
+ }
279
+ ],
280
+ "store": false,
281
+ "include": [
282
+ "reasoning.encrypted_content"
283
+ ],
284
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
285
+ "tools": [
286
+ {
287
+ "type": "function",
288
+ "name": "Read",
289
+ "description": "Read a file",
290
+ "parameters": {
291
+ "type": "object",
292
+ "properties": {
293
+ "path": {
294
+ "type": "string"
295
+ }
296
+ }
297
+ },
298
+ "strict": false
299
+ },
300
+ {
301
+ "type": "function",
302
+ "name": "load_tool",
303
+ "description": "Load tools",
304
+ "parameters": {
305
+ "type": "object",
306
+ "properties": {
307
+ "names": {
308
+ "type": "array"
309
+ }
310
+ }
311
+ },
312
+ "strict": false
313
+ }
314
+ ],
315
+ "parallel_tool_calls": true,
316
+ "stream": true
317
+ },
318
+ "ws/oauth/plain-tools": {
319
+ "model": "grok-4",
320
+ "input": [
321
+ {
322
+ "role": "user",
323
+ "content": [
324
+ {
325
+ "type": "input_text",
326
+ "text": "go"
327
+ }
328
+ ]
329
+ },
330
+ {
331
+ "role": "assistant",
332
+ "content": [
333
+ {
334
+ "type": "output_text",
335
+ "text": "working"
336
+ }
337
+ ]
338
+ },
339
+ {
340
+ "role": "assistant",
341
+ "content": [
342
+ {
343
+ "type": "output_text",
344
+ "text": "looking"
345
+ }
346
+ ]
347
+ },
348
+ {
349
+ "type": "function_call",
350
+ "call_id": "ts1",
351
+ "name": "load_tool",
352
+ "arguments": "{\"names\":[\"x\"]}"
353
+ },
354
+ {
355
+ "type": "function_call",
356
+ "call_id": "cu1",
357
+ "name": "apply_patch",
358
+ "arguments": "{\"patch\":\"P\"}"
359
+ },
360
+ {
361
+ "type": "function_call",
362
+ "call_id": "sk1",
363
+ "name": "Skill",
364
+ "arguments": "{\"name\":\"s\"}"
365
+ },
366
+ {
367
+ "type": "function_call_output",
368
+ "call_id": "ts1",
369
+ "output": "loaded"
370
+ },
371
+ {
372
+ "type": "function_call_output",
373
+ "call_id": "cu1",
374
+ "output": "patched"
375
+ },
376
+ {
377
+ "type": "function_call_output",
378
+ "call_id": "sk1",
379
+ "output": "skill"
380
+ },
381
+ {
382
+ "type": "function_call",
383
+ "call_id": "f2",
384
+ "name": "Read",
385
+ "arguments": "{\"path\":\"a\"}"
386
+ },
387
+ {
388
+ "type": "function_call_output",
389
+ "call_id": "f2",
390
+ "output": "file"
391
+ },
392
+ {
393
+ "role": "user",
394
+ "content": [
395
+ {
396
+ "type": "input_text",
397
+ "text": "next"
398
+ }
399
+ ]
400
+ }
401
+ ],
402
+ "store": false,
403
+ "include": [
404
+ "reasoning.encrypted_content"
405
+ ],
406
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
407
+ "instructions": "sys",
408
+ "tools": [
409
+ {
410
+ "type": "function",
411
+ "name": "Read",
412
+ "description": "Read a file",
413
+ "parameters": {
414
+ "type": "object",
415
+ "properties": {
416
+ "path": {
417
+ "type": "string"
418
+ }
419
+ }
420
+ },
421
+ "strict": false
422
+ },
423
+ {
424
+ "type": "function",
425
+ "name": "load_tool",
426
+ "description": "Load tools",
427
+ "parameters": {
428
+ "type": "object",
429
+ "properties": {
430
+ "names": {
431
+ "type": "array"
432
+ }
433
+ }
434
+ },
435
+ "strict": false
436
+ }
437
+ ],
438
+ "parallel_tool_calls": true
439
+ },
440
+ "http/server-replay/plain-tools": {
441
+ "model": "grok-4",
442
+ "input": [
443
+ {
444
+ "role": "user",
445
+ "content": [
446
+ {
447
+ "type": "input_text",
448
+ "text": "weather in Seoul?"
449
+ }
450
+ ]
451
+ },
452
+ {
453
+ "type": "reasoning",
454
+ "id": "rs_1",
455
+ "encrypted_content": "ENC",
456
+ "summary": []
457
+ },
458
+ {
459
+ "type": "tool_search_call",
460
+ "id": "tsc_1",
461
+ "call_id": null,
462
+ "execution": "server",
463
+ "status": "completed",
464
+ "arguments": {
465
+ "query": "mcp__weather__forecast",
466
+ "limit": 1
467
+ }
468
+ },
469
+ {
470
+ "type": "tool_search_output",
471
+ "id": "tso_1",
472
+ "call_id": null,
473
+ "execution": "server",
474
+ "status": "completed",
475
+ "tools": [
476
+ {
477
+ "type": "function",
478
+ "name": "mcp__weather__forecast",
479
+ "description": "Forecast",
480
+ "parameters": {
481
+ "type": "object",
482
+ "properties": {
483
+ "city": {
484
+ "type": "string"
485
+ }
486
+ }
487
+ },
488
+ "defer_loading": true
489
+ }
490
+ ]
491
+ },
492
+ {
493
+ "type": "function_call",
494
+ "id": "fc_1",
495
+ "call_id": "call_w",
496
+ "name": "mcp__weather__forecast",
497
+ "arguments": "{\"city\":\"Seoul\"}",
498
+ "status": "completed"
499
+ },
500
+ {
501
+ "type": "function_call_output",
502
+ "call_id": "call_w",
503
+ "output": "sunny"
504
+ },
505
+ {
506
+ "role": "user",
507
+ "content": [
508
+ {
509
+ "type": "input_text",
510
+ "text": "and Busan?"
511
+ }
512
+ ]
513
+ }
514
+ ],
515
+ "store": false,
516
+ "include": [
517
+ "reasoning.encrypted_content"
518
+ ],
519
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
520
+ "tools": [
521
+ {
522
+ "type": "function",
523
+ "name": "Read",
524
+ "description": "Read a file",
525
+ "parameters": {
526
+ "type": "object",
527
+ "properties": {
528
+ "path": {
529
+ "type": "string"
530
+ }
531
+ }
532
+ },
533
+ "strict": false
534
+ },
535
+ {
536
+ "type": "function",
537
+ "name": "load_tool",
538
+ "description": "Load tools",
539
+ "parameters": {
540
+ "type": "object",
541
+ "properties": {
542
+ "names": {
543
+ "type": "array"
544
+ }
545
+ }
546
+ },
547
+ "strict": false
548
+ }
549
+ ],
550
+ "parallel_tool_calls": true,
551
+ "stream": true
552
+ },
553
+ "ws/server-replay/plain-tools": {
554
+ "model": "grok-4",
555
+ "input": [
556
+ {
557
+ "role": "user",
558
+ "content": [
559
+ {
560
+ "type": "input_text",
561
+ "text": "weather in Seoul?"
562
+ }
563
+ ]
564
+ },
565
+ {
566
+ "type": "reasoning",
567
+ "id": "rs_1",
568
+ "encrypted_content": "ENC",
569
+ "summary": []
570
+ },
571
+ {
572
+ "type": "tool_search_call",
573
+ "id": "tsc_1",
574
+ "call_id": null,
575
+ "execution": "server",
576
+ "status": "completed",
577
+ "arguments": {
578
+ "query": "mcp__weather__forecast",
579
+ "limit": 1
580
+ }
581
+ },
582
+ {
583
+ "type": "tool_search_output",
584
+ "id": "tso_1",
585
+ "call_id": null,
586
+ "execution": "server",
587
+ "status": "completed",
588
+ "tools": [
589
+ {
590
+ "type": "function",
591
+ "name": "mcp__weather__forecast",
592
+ "description": "Forecast",
593
+ "parameters": {
594
+ "type": "object",
595
+ "properties": {
596
+ "city": {
597
+ "type": "string"
598
+ }
599
+ }
600
+ },
601
+ "defer_loading": true
602
+ }
603
+ ]
604
+ },
605
+ {
606
+ "type": "function_call",
607
+ "id": "fc_1",
608
+ "call_id": "call_w",
609
+ "name": "mcp__weather__forecast",
610
+ "arguments": "{\"city\":\"Seoul\"}",
611
+ "status": "completed"
612
+ },
613
+ {
614
+ "type": "function_call_output",
615
+ "call_id": "call_w",
616
+ "output": "sunny"
617
+ },
618
+ {
619
+ "role": "user",
620
+ "content": [
621
+ {
622
+ "type": "input_text",
623
+ "text": "and Busan?"
624
+ }
625
+ ]
626
+ }
627
+ ],
628
+ "store": false,
629
+ "include": [
630
+ "reasoning.encrypted_content"
631
+ ],
632
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
633
+ "tools": [
634
+ {
635
+ "type": "function",
636
+ "name": "Read",
637
+ "description": "Read a file",
638
+ "parameters": {
639
+ "type": "object",
640
+ "properties": {
641
+ "path": {
642
+ "type": "string"
643
+ }
644
+ }
645
+ },
646
+ "strict": false
647
+ },
648
+ {
649
+ "type": "function",
650
+ "name": "load_tool",
651
+ "description": "Load tools",
652
+ "parameters": {
653
+ "type": "object",
654
+ "properties": {
655
+ "names": {
656
+ "type": "array"
657
+ }
658
+ }
659
+ },
660
+ "strict": false
661
+ }
662
+ ],
663
+ "parallel_tool_calls": true
664
+ },
665
+ "http/server-replay/deferred-tools": {
666
+ "model": "grok-4",
667
+ "input": [
668
+ {
669
+ "role": "user",
670
+ "content": [
671
+ {
672
+ "type": "input_text",
673
+ "text": "weather in Seoul?"
674
+ }
675
+ ]
676
+ },
677
+ {
678
+ "type": "reasoning",
679
+ "id": "rs_1",
680
+ "encrypted_content": "ENC",
681
+ "summary": []
682
+ },
683
+ {
684
+ "type": "tool_search_call",
685
+ "id": "tsc_1",
686
+ "call_id": null,
687
+ "execution": "server",
688
+ "status": "completed",
689
+ "arguments": {
690
+ "query": "mcp__weather__forecast",
691
+ "limit": 1
692
+ }
693
+ },
694
+ {
695
+ "type": "tool_search_output",
696
+ "id": "tso_1",
697
+ "call_id": null,
698
+ "execution": "server",
699
+ "status": "completed",
700
+ "tools": [
701
+ {
702
+ "type": "function",
703
+ "name": "mcp__weather__forecast",
704
+ "description": "Forecast",
705
+ "parameters": {
706
+ "type": "object",
707
+ "properties": {
708
+ "city": {
709
+ "type": "string"
710
+ }
711
+ }
712
+ },
713
+ "defer_loading": true
714
+ }
715
+ ]
716
+ },
717
+ {
718
+ "type": "function_call",
719
+ "id": "fc_1",
720
+ "call_id": "call_w",
721
+ "name": "mcp__weather__forecast",
722
+ "arguments": "{\"city\":\"Seoul\"}",
723
+ "status": "completed"
724
+ },
725
+ {
726
+ "type": "function_call_output",
727
+ "call_id": "call_w",
728
+ "output": "sunny"
729
+ },
730
+ {
731
+ "role": "user",
732
+ "content": [
733
+ {
734
+ "type": "input_text",
735
+ "text": "and Busan?"
736
+ }
737
+ ]
738
+ }
739
+ ],
740
+ "store": false,
741
+ "include": [
742
+ "reasoning.encrypted_content"
743
+ ],
744
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
745
+ "tools": [
746
+ {
747
+ "type": "function",
748
+ "name": "Read",
749
+ "description": "Read a file",
750
+ "parameters": {
751
+ "type": "object",
752
+ "properties": {
753
+ "path": {
754
+ "type": "string"
755
+ }
756
+ }
757
+ },
758
+ "strict": false
759
+ },
760
+ {
761
+ "type": "function",
762
+ "name": "load_tool",
763
+ "description": "Load tools",
764
+ "parameters": {
765
+ "type": "object",
766
+ "properties": {
767
+ "names": {
768
+ "type": "array"
769
+ }
770
+ }
771
+ },
772
+ "strict": false
773
+ },
774
+ {
775
+ "type": "function",
776
+ "name": "mcp__weather__forecast",
777
+ "description": "Forecast",
778
+ "parameters": {
779
+ "type": "object",
780
+ "properties": {
781
+ "city": {
782
+ "type": "string"
783
+ }
784
+ }
785
+ },
786
+ "strict": false
787
+ }
788
+ ],
789
+ "parallel_tool_calls": true,
790
+ "stream": true
791
+ },
792
+ "ws/server-replay/deferred-tools": {
793
+ "model": "grok-4",
794
+ "input": [
795
+ {
796
+ "role": "user",
797
+ "content": [
798
+ {
799
+ "type": "input_text",
800
+ "text": "weather in Seoul?"
801
+ }
802
+ ]
803
+ },
804
+ {
805
+ "type": "reasoning",
806
+ "id": "rs_1",
807
+ "encrypted_content": "ENC",
808
+ "summary": []
809
+ },
810
+ {
811
+ "type": "tool_search_call",
812
+ "id": "tsc_1",
813
+ "call_id": null,
814
+ "execution": "server",
815
+ "status": "completed",
816
+ "arguments": {
817
+ "query": "mcp__weather__forecast",
818
+ "limit": 1
819
+ }
820
+ },
821
+ {
822
+ "type": "tool_search_output",
823
+ "id": "tso_1",
824
+ "call_id": null,
825
+ "execution": "server",
826
+ "status": "completed",
827
+ "tools": [
828
+ {
829
+ "type": "function",
830
+ "name": "mcp__weather__forecast",
831
+ "description": "Forecast",
832
+ "parameters": {
833
+ "type": "object",
834
+ "properties": {
835
+ "city": {
836
+ "type": "string"
837
+ }
838
+ }
839
+ },
840
+ "defer_loading": true
841
+ }
842
+ ]
843
+ },
844
+ {
845
+ "type": "function_call",
846
+ "id": "fc_1",
847
+ "call_id": "call_w",
848
+ "name": "mcp__weather__forecast",
849
+ "arguments": "{\"city\":\"Seoul\"}",
850
+ "status": "completed"
851
+ },
852
+ {
853
+ "type": "function_call_output",
854
+ "call_id": "call_w",
855
+ "output": "sunny"
856
+ },
857
+ {
858
+ "role": "user",
859
+ "content": [
860
+ {
861
+ "type": "input_text",
862
+ "text": "and Busan?"
863
+ }
864
+ ]
865
+ }
866
+ ],
867
+ "store": false,
868
+ "include": [
869
+ "reasoning.encrypted_content"
870
+ ],
871
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
872
+ "tools": [
873
+ {
874
+ "type": "function",
875
+ "name": "Read",
876
+ "description": "Read a file",
877
+ "parameters": {
878
+ "type": "object",
879
+ "properties": {
880
+ "path": {
881
+ "type": "string"
882
+ }
883
+ }
884
+ },
885
+ "strict": false
886
+ },
887
+ {
888
+ "type": "function",
889
+ "name": "load_tool",
890
+ "description": "Load tools",
891
+ "parameters": {
892
+ "type": "object",
893
+ "properties": {
894
+ "names": {
895
+ "type": "array"
896
+ }
897
+ }
898
+ },
899
+ "strict": false
900
+ },
901
+ {
902
+ "type": "function",
903
+ "name": "mcp__weather__forecast",
904
+ "description": "Forecast",
905
+ "parameters": {
906
+ "type": "object",
907
+ "properties": {
908
+ "city": {
909
+ "type": "string"
910
+ }
911
+ }
912
+ },
913
+ "strict": false
914
+ }
915
+ ],
916
+ "parallel_tool_calls": true
917
+ },
918
+ "http/native/deferred-tools": {
919
+ "model": "grok-4",
920
+ "input": [
921
+ {
922
+ "role": "user",
923
+ "content": [
924
+ {
925
+ "type": "input_text",
926
+ "text": "go"
927
+ }
928
+ ]
929
+ },
930
+ {
931
+ "type": "function_call",
932
+ "call_id": "ts1",
933
+ "name": "load_tool",
934
+ "arguments": "{\"names\":[\"x\"]}"
935
+ },
936
+ {
937
+ "type": "function_call",
938
+ "call_id": "cu1",
939
+ "name": "apply_patch",
940
+ "arguments": "{\"patch\":\"P\"}"
941
+ },
942
+ {
943
+ "type": "function_call",
944
+ "call_id": "fn1",
945
+ "name": "Read",
946
+ "arguments": "{\"path\":\"a\"}"
947
+ },
948
+ {
949
+ "type": "function_call_output",
950
+ "call_id": "ts1",
951
+ "output": "loaded"
952
+ },
953
+ {
954
+ "type": "function_call_output",
955
+ "call_id": "cu1",
956
+ "output": "patched"
957
+ },
958
+ {
959
+ "type": "function_call_output",
960
+ "call_id": "fn1",
961
+ "output": "file"
962
+ },
963
+ {
964
+ "role": "user",
965
+ "content": [
966
+ {
967
+ "type": "input_text",
968
+ "text": "next"
969
+ }
970
+ ]
971
+ }
972
+ ],
973
+ "store": false,
974
+ "include": [
975
+ "reasoning.encrypted_content"
976
+ ],
977
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
978
+ "tools": [
979
+ {
980
+ "type": "function",
981
+ "name": "Read",
982
+ "description": "Read a file",
983
+ "parameters": {
984
+ "type": "object",
985
+ "properties": {
986
+ "path": {
987
+ "type": "string"
988
+ }
989
+ }
990
+ },
991
+ "strict": false
992
+ },
993
+ {
994
+ "type": "function",
995
+ "name": "load_tool",
996
+ "description": "Load tools",
997
+ "parameters": {
998
+ "type": "object",
999
+ "properties": {
1000
+ "names": {
1001
+ "type": "array"
1002
+ }
1003
+ }
1004
+ },
1005
+ "strict": false
1006
+ },
1007
+ {
1008
+ "type": "function",
1009
+ "name": "mcp__weather__forecast",
1010
+ "description": "Forecast",
1011
+ "parameters": {
1012
+ "type": "object",
1013
+ "properties": {
1014
+ "city": {
1015
+ "type": "string"
1016
+ }
1017
+ }
1018
+ },
1019
+ "strict": false
1020
+ }
1021
+ ],
1022
+ "parallel_tool_calls": true,
1023
+ "stream": true
1024
+ },
1025
+ "ws/native/deferred-tools": {
1026
+ "model": "grok-4",
1027
+ "input": [
1028
+ {
1029
+ "role": "user",
1030
+ "content": [
1031
+ {
1032
+ "type": "input_text",
1033
+ "text": "go"
1034
+ }
1035
+ ]
1036
+ },
1037
+ {
1038
+ "type": "function_call",
1039
+ "call_id": "ts1",
1040
+ "name": "load_tool",
1041
+ "arguments": "{\"names\":[\"x\"]}"
1042
+ },
1043
+ {
1044
+ "type": "function_call",
1045
+ "call_id": "cu1",
1046
+ "name": "apply_patch",
1047
+ "arguments": "{\"patch\":\"P\"}"
1048
+ },
1049
+ {
1050
+ "type": "function_call",
1051
+ "call_id": "fn1",
1052
+ "name": "Read",
1053
+ "arguments": "{\"path\":\"a\"}"
1054
+ },
1055
+ {
1056
+ "type": "function_call_output",
1057
+ "call_id": "ts1",
1058
+ "output": "loaded"
1059
+ },
1060
+ {
1061
+ "type": "function_call_output",
1062
+ "call_id": "cu1",
1063
+ "output": "patched"
1064
+ },
1065
+ {
1066
+ "type": "function_call_output",
1067
+ "call_id": "fn1",
1068
+ "output": "file"
1069
+ },
1070
+ {
1071
+ "role": "user",
1072
+ "content": [
1073
+ {
1074
+ "type": "input_text",
1075
+ "text": "next"
1076
+ }
1077
+ ]
1078
+ }
1079
+ ],
1080
+ "store": false,
1081
+ "include": [
1082
+ "reasoning.encrypted_content"
1083
+ ],
1084
+ "prompt_cache_key": "f0858c98-2db1-4764-9d18-e6e1ec2ea4c7",
1085
+ "tools": [
1086
+ {
1087
+ "type": "function",
1088
+ "name": "Read",
1089
+ "description": "Read a file",
1090
+ "parameters": {
1091
+ "type": "object",
1092
+ "properties": {
1093
+ "path": {
1094
+ "type": "string"
1095
+ }
1096
+ }
1097
+ },
1098
+ "strict": false
1099
+ },
1100
+ {
1101
+ "type": "function",
1102
+ "name": "load_tool",
1103
+ "description": "Load tools",
1104
+ "parameters": {
1105
+ "type": "object",
1106
+ "properties": {
1107
+ "names": {
1108
+ "type": "array"
1109
+ }
1110
+ }
1111
+ },
1112
+ "strict": false
1113
+ },
1114
+ {
1115
+ "type": "function",
1116
+ "name": "mcp__weather__forecast",
1117
+ "description": "Forecast",
1118
+ "parameters": {
1119
+ "type": "object",
1120
+ "properties": {
1121
+ "city": {
1122
+ "type": "string"
1123
+ }
1124
+ }
1125
+ },
1126
+ "strict": false
1127
+ }
1128
+ ],
1129
+ "parallel_tool_calls": true
1130
+ }
1131
+ }