@bastani/atomic 0.9.16-alpha.1 → 0.9.16-alpha.3

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 (714) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/builtin/intercom/broker/spawn.ts +22 -2
  3. package/dist/builtin/intercom/index.bundle.mjs +61694 -0
  4. package/dist/builtin/intercom/package.json +3 -3
  5. package/dist/builtin/mcp/index.bundle.mjs +64901 -0
  6. package/dist/builtin/mcp/package.json +2 -2
  7. package/dist/builtin/subagents/CHANGELOG.md +13 -0
  8. package/dist/builtin/subagents/README.md +17 -105
  9. package/dist/builtin/subagents/package.json +2 -6
  10. package/dist/builtin/subagents/skills/subagent/SKILL.md +18 -88
  11. package/dist/builtin/subagents/src/extension/index.bundle.mjs +85671 -0
  12. package/dist/builtin/web-access/index.bundle.mjs +67413 -0
  13. package/dist/builtin/web-access/package.json +2 -2
  14. package/dist/builtin/workflows/CHANGELOG.md +6 -0
  15. package/dist/builtin/workflows/package.json +3 -3
  16. package/dist/builtin/workflows/skills/bro/LICENSE.txt +21 -0
  17. package/dist/builtin/workflows/skills/bro/SKILL.md +14 -0
  18. package/dist/builtin/workflows/skills/how/LICENSE.txt +21 -0
  19. package/dist/builtin/workflows/skills/how/SKILL.md +162 -0
  20. package/dist/builtin/workflows/skills/how/references/critic-prompt.md +59 -0
  21. package/dist/builtin/workflows/skills/how/references/critique-rubric.md +58 -0
  22. package/dist/builtin/workflows/skills/how/references/explainer-prompt.md +55 -0
  23. package/dist/builtin/workflows/skills/how/references/explorer-prompt.md +52 -0
  24. package/dist/builtin/workflows/skills/teach/LICENSE.txt +21 -0
  25. package/dist/builtin/workflows/skills/teach/SKILL.md +28 -0
  26. package/dist/builtin/workflows/skills/unslop/LICENSE.txt +21 -0
  27. package/dist/builtin/workflows/skills/unslop/SKILL.md +87 -0
  28. package/dist/builtin/workflows/skills/why/LICENSE.txt +21 -0
  29. package/dist/builtin/workflows/skills/why/SKILL.md +267 -0
  30. package/dist/builtin/workflows/skills/why/references/epistemics.md +144 -0
  31. package/dist/builtin/workflows/skills/why/references/investigator-prompt.md +103 -0
  32. package/dist/builtin/workflows/skills/why/references/source-playbook.md +17 -0
  33. package/dist/builtin/workflows/skills/why/references/sources/code-archaeology.md +88 -0
  34. package/dist/builtin/workflows/skills/why/references/sources/databricks.md +70 -0
  35. package/dist/builtin/workflows/skills/why/references/sources/datadog.md +99 -0
  36. package/dist/builtin/workflows/skills/why/references/sources/incident-postmortem.md +15 -0
  37. package/dist/builtin/workflows/skills/why/references/sources/linear.md +48 -0
  38. package/dist/builtin/workflows/skills/why/references/sources/notion.md +55 -0
  39. package/dist/builtin/workflows/skills/why/references/sources/sentry.md +100 -0
  40. package/dist/builtin/workflows/skills/why/references/sources/slack.md +54 -0
  41. package/dist/builtin/workflows/skills/why/references/synthesizer-prompt.md +135 -0
  42. package/dist/builtin/workflows/src/extension/index.bundle.mjs +76391 -96336
  43. package/dist/builtin/workflows/src/index.bundle.mjs +73244 -0
  44. package/dist/core/agent-session-auto-compaction.js +10 -10
  45. package/dist/core/agent-session-auto-compaction.js.map +1 -1
  46. package/dist/core/agent-session-events.d.ts.map +1 -1
  47. package/dist/core/agent-session-events.js +11 -13
  48. package/dist/core/agent-session-events.js.map +1 -1
  49. package/dist/core/agent-session-methods.d.ts +1 -1
  50. package/dist/core/agent-session-methods.d.ts.map +1 -1
  51. package/dist/core/agent-session-methods.js.map +1 -1
  52. package/dist/core/agent-session-models.d.ts.map +1 -1
  53. package/dist/core/agent-session-models.js +5 -7
  54. package/dist/core/agent-session-models.js.map +1 -1
  55. package/dist/core/agent-session-prompt.js +4 -4
  56. package/dist/core/agent-session-prompt.js.map +1 -1
  57. package/dist/core/agent-session-retry.d.ts +4 -4
  58. package/dist/core/agent-session-retry.d.ts.map +1 -1
  59. package/dist/core/agent-session-retry.js +8 -34
  60. package/dist/core/agent-session-retry.js.map +1 -1
  61. package/dist/core/agent-session-tool-hooks.js +4 -4
  62. package/dist/core/agent-session-tool-hooks.js.map +1 -1
  63. package/dist/core/atomic-guide-command.d.ts.map +1 -1
  64. package/dist/core/atomic-guide-command.js +3 -10
  65. package/dist/core/atomic-guide-command.js.map +1 -1
  66. package/dist/core/builtin-install-layout.d.ts +22 -0
  67. package/dist/core/builtin-install-layout.d.ts.map +1 -0
  68. package/dist/core/builtin-install-layout.js +23 -0
  69. package/dist/core/builtin-install-layout.js.map +1 -0
  70. package/dist/core/builtin-packages.d.ts.map +1 -1
  71. package/dist/core/builtin-packages.js +8 -32
  72. package/dist/core/builtin-packages.js.map +1 -1
  73. package/dist/core/slash-commands.d.ts.map +1 -1
  74. package/dist/core/slash-commands.js +0 -3
  75. package/dist/core/slash-commands.js.map +1 -1
  76. package/dist/core/system-prompt.d.ts.map +1 -1
  77. package/dist/core/system-prompt.js +0 -12
  78. package/dist/core/system-prompt.js.map +1 -1
  79. package/dist/modes/interactive-engine/remote-command-catalog.d.ts +1 -1
  80. package/dist/modes/interactive-engine/remote-command-catalog.js +1 -1
  81. package/dist/modes/interactive-engine/remote-command-catalog.js.map +1 -1
  82. package/docs/intercom.md +1 -1
  83. package/docs/settings.md +2 -2
  84. package/docs/subagents.md +6 -7
  85. package/docs/usage.md +0 -9
  86. package/npm-shrinkwrap.json +32 -32
  87. package/package.json +3 -3
  88. package/dist/builtin/intercom/closed-workflow-stage-message.ts +0 -66
  89. package/dist/builtin/intercom/config.ts +0 -121
  90. package/dist/builtin/intercom/contact-supervisor-tool.ts +0 -328
  91. package/dist/builtin/intercom/foreground-detach-handoff.ts +0 -164
  92. package/dist/builtin/intercom/group.ts +0 -85
  93. package/dist/builtin/intercom/inbound-idle-queue.ts +0 -82
  94. package/dist/builtin/intercom/inbound-message-admission.ts +0 -79
  95. package/dist/builtin/intercom/incoming-message-delivery.ts +0 -49
  96. package/dist/builtin/intercom/index-heavy.ts +0 -539
  97. package/dist/builtin/intercom/index.ts +0 -503
  98. package/dist/builtin/intercom/intercom-test-seams.ts +0 -6
  99. package/dist/builtin/intercom/intercom-tool.ts +0 -602
  100. package/dist/builtin/intercom/intercom-utils.ts +0 -427
  101. package/dist/builtin/intercom/late-stage-message-router.ts +0 -148
  102. package/dist/builtin/intercom/lazy-heavy-proxy.ts +0 -108
  103. package/dist/builtin/intercom/lazy-subagent-ack.ts +0 -25
  104. package/dist/builtin/intercom/lazy-tool-execution.ts +0 -39
  105. package/dist/builtin/intercom/lifecycle-lease.ts +0 -51
  106. package/dist/builtin/intercom/lifecycle.ts +0 -144
  107. package/dist/builtin/intercom/overlay.ts +0 -96
  108. package/dist/builtin/intercom/parent-ask-handoff.ts +0 -72
  109. package/dist/builtin/intercom/reconnect-backoff.ts +0 -6
  110. package/dist/builtin/intercom/reply-routing.ts +0 -17
  111. package/dist/builtin/intercom/reply-tracker.ts +0 -110
  112. package/dist/builtin/intercom/reply-waiter.ts +0 -115
  113. package/dist/builtin/intercom/result-renderers.ts +0 -77
  114. package/dist/builtin/intercom/runtime-group.ts +0 -13
  115. package/dist/builtin/intercom/session-target.ts +0 -54
  116. package/dist/builtin/intercom/source-ownership.ts +0 -31
  117. package/dist/builtin/intercom/stable-delivery-retry.ts +0 -32
  118. package/dist/builtin/intercom/subagent-relay.ts +0 -290
  119. package/dist/builtin/intercom/supervisor-authorization-registry.ts +0 -22
  120. package/dist/builtin/intercom/terminal-ordering-barrier.ts +0 -247
  121. package/dist/builtin/intercom/types.ts +0 -66
  122. package/dist/builtin/intercom/ui/compose.ts +0 -159
  123. package/dist/builtin/intercom/ui/inline-message.ts +0 -78
  124. package/dist/builtin/intercom/ui/session-list.ts +0 -195
  125. package/dist/builtin/intercom/workflow-reply-tracker.ts +0 -19
  126. package/dist/builtin/intercom/workflow-stage-admission.ts +0 -43
  127. package/dist/builtin/intercom/workflow-stage-delivery-failure.ts +0 -77
  128. package/dist/builtin/mcp/agent-dir.ts +0 -30
  129. package/dist/builtin/mcp/apps-cancellation.ts +0 -32
  130. package/dist/builtin/mcp/call-tool-result.ts +0 -9
  131. package/dist/builtin/mcp/caller-wait.ts +0 -50
  132. package/dist/builtin/mcp/cli.js +0 -191
  133. package/dist/builtin/mcp/command-registration.ts +0 -82
  134. package/dist/builtin/mcp/commands.ts +0 -424
  135. package/dist/builtin/mcp/config-write-utils.ts +0 -104
  136. package/dist/builtin/mcp/config.ts +0 -498
  137. package/dist/builtin/mcp/consent-manager.ts +0 -64
  138. package/dist/builtin/mcp/direct-tool-executor.ts +0 -280
  139. package/dist/builtin/mcp/direct-tools.ts +0 -216
  140. package/dist/builtin/mcp/errors.ts +0 -219
  141. package/dist/builtin/mcp/glimpse-ui.ts +0 -81
  142. package/dist/builtin/mcp/host-html-template.ts +0 -426
  143. package/dist/builtin/mcp/index.ts +0 -443
  144. package/dist/builtin/mcp/init.ts +0 -319
  145. package/dist/builtin/mcp/lifecycle.ts +0 -93
  146. package/dist/builtin/mcp/logger.ts +0 -169
  147. package/dist/builtin/mcp/mcp-auth-flow.ts +0 -372
  148. package/dist/builtin/mcp/mcp-auth.ts +0 -297
  149. package/dist/builtin/mcp/mcp-callback-server.ts +0 -306
  150. package/dist/builtin/mcp/mcp-oauth-provider.ts +0 -324
  151. package/dist/builtin/mcp/mcp-panel-renderer.ts +0 -243
  152. package/dist/builtin/mcp/mcp-panel-state.ts +0 -227
  153. package/dist/builtin/mcp/mcp-panel-types.ts +0 -86
  154. package/dist/builtin/mcp/mcp-panel.ts +0 -393
  155. package/dist/builtin/mcp/mcp-setup-panel.ts +0 -502
  156. package/dist/builtin/mcp/metadata-cache.ts +0 -201
  157. package/dist/builtin/mcp/metadata-hydration.ts +0 -52
  158. package/dist/builtin/mcp/npx-resolver.ts +0 -425
  159. package/dist/builtin/mcp/oauth-handler.ts +0 -60
  160. package/dist/builtin/mcp/onboarding-state.ts +0 -68
  161. package/dist/builtin/mcp/proxy-auth.ts +0 -61
  162. package/dist/builtin/mcp/proxy-call.ts +0 -447
  163. package/dist/builtin/mcp/proxy-connect.ts +0 -78
  164. package/dist/builtin/mcp/proxy-info-modes.ts +0 -409
  165. package/dist/builtin/mcp/proxy-modes.ts +0 -3
  166. package/dist/builtin/mcp/proxy-types.ts +0 -3
  167. package/dist/builtin/mcp/resource-tools.ts +0 -17
  168. package/dist/builtin/mcp/sampling-handler.ts +0 -273
  169. package/dist/builtin/mcp/server-manager.ts +0 -372
  170. package/dist/builtin/mcp/session-cleanup-barrier.ts +0 -43
  171. package/dist/builtin/mcp/startup-warmup.ts +0 -110
  172. package/dist/builtin/mcp/state-lease.ts +0 -12
  173. package/dist/builtin/mcp/state.ts +0 -41
  174. package/dist/builtin/mcp/tool-call-timeout.ts +0 -101
  175. package/dist/builtin/mcp/tool-metadata.ts +0 -152
  176. package/dist/builtin/mcp/tool-registrar.ts +0 -46
  177. package/dist/builtin/mcp/tool-result-renderer.ts +0 -66
  178. package/dist/builtin/mcp/types.ts +0 -445
  179. package/dist/builtin/mcp/ui-resource-handler.ts +0 -145
  180. package/dist/builtin/mcp/ui-server-http.ts +0 -81
  181. package/dist/builtin/mcp/ui-server.ts +0 -499
  182. package/dist/builtin/mcp/ui-session.ts +0 -378
  183. package/dist/builtin/mcp/ui-stream-types.ts +0 -89
  184. package/dist/builtin/mcp/utils.ts +0 -165
  185. package/dist/builtin/subagents/prompts/gather-context-and-clarify.md +0 -27
  186. package/dist/builtin/subagents/prompts/parallel-cleanup.md +0 -61
  187. package/dist/builtin/subagents/prompts/parallel-context-build.md +0 -43
  188. package/dist/builtin/subagents/prompts/parallel-handoff-plan.md +0 -47
  189. package/dist/builtin/subagents/prompts/parallel-research.md +0 -34
  190. package/dist/builtin/subagents/prompts/parallel-review.md +0 -47
  191. package/dist/builtin/subagents/prompts/review-loop.md +0 -39
  192. package/dist/builtin/subagents/src/agents/agent-discovery.ts +0 -116
  193. package/dist/builtin/subagents/src/agents/agent-loaders.ts +0 -216
  194. package/dist/builtin/subagents/src/agents/agent-management-helpers.ts +0 -221
  195. package/dist/builtin/subagents/src/agents/agent-management.ts +0 -315
  196. package/dist/builtin/subagents/src/agents/agent-overrides.ts +0 -450
  197. package/dist/builtin/subagents/src/agents/agent-paths.ts +0 -69
  198. package/dist/builtin/subagents/src/agents/agent-scope.ts +0 -6
  199. package/dist/builtin/subagents/src/agents/agent-selection.ts +0 -23
  200. package/dist/builtin/subagents/src/agents/agent-serializer.ts +0 -113
  201. package/dist/builtin/subagents/src/agents/agent-types.ts +0 -97
  202. package/dist/builtin/subagents/src/agents/agents.ts +0 -25
  203. package/dist/builtin/subagents/src/agents/frontmatter.ts +0 -74
  204. package/dist/builtin/subagents/src/agents/identity.ts +0 -37
  205. package/dist/builtin/subagents/src/agents/skills-paths.ts +0 -380
  206. package/dist/builtin/subagents/src/agents/skills.ts +0 -398
  207. package/dist/builtin/subagents/src/extension/api-lifecycle.ts +0 -64
  208. package/dist/builtin/subagents/src/extension/config.ts +0 -16
  209. package/dist/builtin/subagents/src/extension/control-notices.ts +0 -91
  210. package/dist/builtin/subagents/src/extension/doctor.ts +0 -188
  211. package/dist/builtin/subagents/src/extension/index.ts +0 -420
  212. package/dist/builtin/subagents/src/extension/notification-content.ts +0 -85
  213. package/dist/builtin/subagents/src/extension/prompt-guidance.ts +0 -11
  214. package/dist/builtin/subagents/src/extension/schemas.ts +0 -208
  215. package/dist/builtin/subagents/src/extension/startup-maintenance.ts +0 -133
  216. package/dist/builtin/subagents/src/extension/tool-description.ts +0 -19
  217. package/dist/builtin/subagents/src/extension/tool-rendering.ts +0 -53
  218. package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +0 -429
  219. package/dist/builtin/subagents/src/intercom/result-intercom.ts +0 -246
  220. package/dist/builtin/subagents/src/intercom/supervisor-authorization.ts +0 -30
  221. package/dist/builtin/subagents/src/runs/foreground/completion-notification.ts +0 -42
  222. package/dist/builtin/subagents/src/runs/foreground/detached-cleanup-barrier.ts +0 -26
  223. package/dist/builtin/subagents/src/runs/foreground/execution-detach-reservations.ts +0 -58
  224. package/dist/builtin/subagents/src/runs/foreground/execution-detach-route.ts +0 -19
  225. package/dist/builtin/subagents/src/runs/foreground/execution-intercom-detach.ts +0 -51
  226. package/dist/builtin/subagents/src/runs/foreground/execution-parent-ask-handoff.ts +0 -78
  227. package/dist/builtin/subagents/src/runs/foreground/execution-run-sync.ts +0 -1
  228. package/dist/builtin/subagents/src/runs/foreground/execution-updates.ts +0 -26
  229. package/dist/builtin/subagents/src/runs/foreground/execution-utils.ts +0 -61
  230. package/dist/builtin/subagents/src/runs/foreground/execution.ts +0 -6
  231. package/dist/builtin/subagents/src/runs/foreground/inprocess-run-sync.ts +0 -512
  232. package/dist/builtin/subagents/src/runs/foreground/notify.ts +0 -355
  233. package/dist/builtin/subagents/src/runs/foreground/parent-ask-output.ts +0 -48
  234. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-burst-display.ts +0 -46
  235. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-burst.ts +0 -403
  236. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +0 -223
  237. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-cwd.ts +0 -6
  238. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +0 -139
  239. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-live-update.ts +0 -11
  240. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +0 -268
  241. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +0 -327
  242. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parent-ask-projection.ts +0 -11
  243. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-runtime.ts +0 -12
  244. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +0 -350
  245. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +0 -246
  246. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +0 -131
  247. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-worktree.ts +0 -102
  248. package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +0 -254
  249. package/dist/builtin/subagents/src/runs/inprocess/child-policy.ts +0 -27
  250. package/dist/builtin/subagents/src/runs/inprocess/control-registry.ts +0 -55
  251. package/dist/builtin/subagents/src/runs/inprocess/control-status.ts +0 -72
  252. package/dist/builtin/subagents/src/runs/inprocess/index.ts +0 -27
  253. package/dist/builtin/subagents/src/runs/inprocess/prompt-behavior.ts +0 -168
  254. package/dist/builtin/subagents/src/runs/inprocess/runner.ts +0 -1280
  255. package/dist/builtin/subagents/src/runs/inprocess/runtime-support/temp-cleanup.ts +0 -69
  256. package/dist/builtin/subagents/src/runs/inprocess.ts +0 -1
  257. package/dist/builtin/subagents/src/runs/shared/intercom-group.ts +0 -67
  258. package/dist/builtin/subagents/src/runs/shared/long-running-guard.ts +0 -182
  259. package/dist/builtin/subagents/src/runs/shared/mcp-direct-tool-allowlist.ts +0 -391
  260. package/dist/builtin/subagents/src/runs/shared/model-candidate-filter.ts +0 -56
  261. package/dist/builtin/subagents/src/runs/shared/model-fallback.ts +0 -88
  262. package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +0 -70
  263. package/dist/builtin/subagents/src/runs/shared/progress-trend.ts +0 -69
  264. package/dist/builtin/subagents/src/runs/shared/run-history.ts +0 -64
  265. package/dist/builtin/subagents/src/runs/shared/single-output.ts +0 -169
  266. package/dist/builtin/subagents/src/runs/shared/subagent-control.ts +0 -234
  267. package/dist/builtin/subagents/src/runs/shared/worktree-post-create.ts +0 -111
  268. package/dist/builtin/subagents/src/runs/shared/worktree-root.ts +0 -67
  269. package/dist/builtin/subagents/src/runs/shared/worktree.ts +0 -552
  270. package/dist/builtin/subagents/src/shared/artifacts.ts +0 -240
  271. package/dist/builtin/subagents/src/shared/atomic-json.ts +0 -16
  272. package/dist/builtin/subagents/src/shared/event-jsonl-writer.ts +0 -330
  273. package/dist/builtin/subagents/src/shared/exclusive-file-publication.ts +0 -44
  274. package/dist/builtin/subagents/src/shared/fast-mode.ts +0 -87
  275. package/dist/builtin/subagents/src/shared/file-coalescer.ts +0 -40
  276. package/dist/builtin/subagents/src/shared/fork-context.ts +0 -79
  277. package/dist/builtin/subagents/src/shared/formatters.ts +0 -89
  278. package/dist/builtin/subagents/src/shared/jsonl-writer.ts +0 -83
  279. package/dist/builtin/subagents/src/shared/model-info.ts +0 -101
  280. package/dist/builtin/subagents/src/shared/model-resolution.ts +0 -78
  281. package/dist/builtin/subagents/src/shared/session-identity.ts +0 -10
  282. package/dist/builtin/subagents/src/shared/session-tokens.ts +0 -45
  283. package/dist/builtin/subagents/src/shared/settings.ts +0 -118
  284. package/dist/builtin/subagents/src/shared/status-format.ts +0 -50
  285. package/dist/builtin/subagents/src/shared/types-config.ts +0 -206
  286. package/dist/builtin/subagents/src/shared/types-depth.ts +0 -46
  287. package/dist/builtin/subagents/src/shared/types-foreground-state.ts +0 -48
  288. package/dist/builtin/subagents/src/shared/types-output.ts +0 -63
  289. package/dist/builtin/subagents/src/shared/types-results.ts +0 -259
  290. package/dist/builtin/subagents/src/shared/types-runtime.ts +0 -115
  291. package/dist/builtin/subagents/src/shared/types.ts +0 -13
  292. package/dist/builtin/subagents/src/shared/utils.ts +0 -342
  293. package/dist/builtin/subagents/src/slash/bridge-settlement.ts +0 -87
  294. package/dist/builtin/subagents/src/slash/prompt-template-bridge.ts +0 -455
  295. package/dist/builtin/subagents/src/slash/slash-bridge.ts +0 -194
  296. package/dist/builtin/subagents/src/slash/slash-commands.ts +0 -469
  297. package/dist/builtin/subagents/src/slash/slash-live-state.ts +0 -259
  298. package/dist/builtin/subagents/src/tui/render-event-formatting.ts +0 -7
  299. package/dist/builtin/subagents/src/tui/render-helpers.ts +0 -90
  300. package/dist/builtin/subagents/src/tui/render-layout.ts +0 -157
  301. package/dist/builtin/subagents/src/tui/render-progress.ts +0 -89
  302. package/dist/builtin/subagents/src/tui/render-result-animation.ts +0 -47
  303. package/dist/builtin/subagents/src/tui/render-result-compact.ts +0 -248
  304. package/dist/builtin/subagents/src/tui/render-result.ts +0 -438
  305. package/dist/builtin/subagents/src/tui/render-stable-output.ts +0 -50
  306. package/dist/builtin/subagents/src/tui/render-status-progress.ts +0 -168
  307. package/dist/builtin/subagents/src/tui/render.ts +0 -23
  308. package/dist/builtin/web-access/activity.ts +0 -101
  309. package/dist/builtin/web-access/chrome-cookies.ts +0 -323
  310. package/dist/builtin/web-access/code-search.ts +0 -107
  311. package/dist/builtin/web-access/config-paths.ts +0 -11
  312. package/dist/builtin/web-access/content-tools.ts +0 -354
  313. package/dist/builtin/web-access/curator-page-assets/script-1.ts +0 -400
  314. package/dist/builtin/web-access/curator-page-assets/script-2.ts +0 -400
  315. package/dist/builtin/web-access/curator-page-assets/script-3.ts +0 -400
  316. package/dist/builtin/web-access/curator-page-assets/script-4.ts +0 -400
  317. package/dist/builtin/web-access/curator-page-assets/script-5.ts +0 -398
  318. package/dist/builtin/web-access/curator-page-assets/styles-1.ts +0 -394
  319. package/dist/builtin/web-access/curator-page-assets/styles-2.ts +0 -394
  320. package/dist/builtin/web-access/curator-page-assets/styles-3.ts +0 -393
  321. package/dist/builtin/web-access/curator-page.ts +0 -196
  322. package/dist/builtin/web-access/curator-server-helpers.ts +0 -115
  323. package/dist/builtin/web-access/curator-server.ts +0 -494
  324. package/dist/builtin/web-access/exa-mcp.ts +0 -218
  325. package/dist/builtin/web-access/exa.ts +0 -317
  326. package/dist/builtin/web-access/extract-frames.ts +0 -229
  327. package/dist/builtin/web-access/extract.ts +0 -500
  328. package/dist/builtin/web-access/flat-string.ts +0 -37
  329. package/dist/builtin/web-access/gemini-api.ts +0 -111
  330. package/dist/builtin/web-access/gemini-search.ts +0 -363
  331. package/dist/builtin/web-access/gemini-url-context.ts +0 -126
  332. package/dist/builtin/web-access/gemini-web-config.ts +0 -53
  333. package/dist/builtin/web-access/gemini-web.ts +0 -397
  334. package/dist/builtin/web-access/github-api.ts +0 -198
  335. package/dist/builtin/web-access/github-config.ts +0 -156
  336. package/dist/builtin/web-access/github-extract.ts +0 -487
  337. package/dist/builtin/web-access/index-heavy.ts +0 -164
  338. package/dist/builtin/web-access/index.ts +0 -401
  339. package/dist/builtin/web-access/lifecycle-lease.ts +0 -38
  340. package/dist/builtin/web-access/pdf-extract.ts +0 -192
  341. package/dist/builtin/web-access/perplexity.ts +0 -194
  342. package/dist/builtin/web-access/result-renderers.ts +0 -366
  343. package/dist/builtin/web-access/rsc-extract.ts +0 -338
  344. package/dist/builtin/web-access/storage.ts +0 -72
  345. package/dist/builtin/web-access/subprocess.ts +0 -102
  346. package/dist/builtin/web-access/summary-review.ts +0 -287
  347. package/dist/builtin/web-access/utils.ts +0 -44
  348. package/dist/builtin/web-access/video-extract.ts +0 -375
  349. package/dist/builtin/web-access/web-search-activity.ts +0 -102
  350. package/dist/builtin/web-access/web-search-browser.ts +0 -124
  351. package/dist/builtin/web-access/web-search-command.ts +0 -242
  352. package/dist/builtin/web-access/web-search-config.ts +0 -157
  353. package/dist/builtin/web-access/web-search-curator.ts +0 -214
  354. package/dist/builtin/web-access/web-search-features.ts +0 -181
  355. package/dist/builtin/web-access/web-search-formatting.ts +0 -117
  356. package/dist/builtin/web-access/web-search-return.ts +0 -143
  357. package/dist/builtin/web-access/web-search-summary.ts +0 -177
  358. package/dist/builtin/web-access/web-search-tool.ts +0 -286
  359. package/dist/builtin/web-access/web-search-types.ts +0 -50
  360. package/dist/builtin/web-access/web-search-workflow.ts +0 -10
  361. package/dist/builtin/web-access/youtube-extract.ts +0 -309
  362. package/dist/builtin/workflows/src/authoring/keep-context.ts +0 -46
  363. package/dist/builtin/workflows/src/authoring/typebox-defaults.d.ts +0 -41
  364. package/dist/builtin/workflows/src/authoring/typebox-defaults.ts +0 -180
  365. package/dist/builtin/workflows/src/authoring/workflow.ts +0 -206
  366. package/dist/builtin/workflows/src/durable/backend.ts +0 -598
  367. package/dist/builtin/workflows/src/durable/boundary-lifecycle.ts +0 -172
  368. package/dist/builtin/workflows/src/durable/boundary-topology.ts +0 -475
  369. package/dist/builtin/workflows/src/durable/child-invocation.ts +0 -14
  370. package/dist/builtin/workflows/src/durable/child-primitive.ts +0 -124
  371. package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +0 -385
  372. package/dist/builtin/workflows/src/durable/completed-catalog.ts +0 -685
  373. package/dist/builtin/workflows/src/durable/completed-inspection.ts +0 -157
  374. package/dist/builtin/workflows/src/durable/completed-subtree.ts +0 -50
  375. package/dist/builtin/workflows/src/durable/dbos-backend.ts +0 -580
  376. package/dist/builtin/workflows/src/durable/dbos-embedded-postgres-root.ts +0 -681
  377. package/dist/builtin/workflows/src/durable/dbos-embedded-postgres.ts +0 -717
  378. package/dist/builtin/workflows/src/durable/dbos-envelope.ts +0 -516
  379. package/dist/builtin/workflows/src/durable/dbos-lifecycle.ts +0 -208
  380. package/dist/builtin/workflows/src/durable/dbos-local-postgres.ts +0 -166
  381. package/dist/builtin/workflows/src/durable/dbos-metadata.ts +0 -196
  382. package/dist/builtin/workflows/src/durable/dbos-process-owner.ts +0 -87
  383. package/dist/builtin/workflows/src/durable/dbos-prompt-reservations.ts +0 -377
  384. package/dist/builtin/workflows/src/durable/dbos-registration-diagnostics.ts +0 -113
  385. package/dist/builtin/workflows/src/durable/dbos-sdk-handle.ts +0 -182
  386. package/dist/builtin/workflows/src/durable/dbos-status-transition.ts +0 -67
  387. package/dist/builtin/workflows/src/durable/dbos-tombstone.ts +0 -27
  388. package/dist/builtin/workflows/src/durable/durable-hash.ts +0 -18
  389. package/dist/builtin/workflows/src/durable/factory.ts +0 -93
  390. package/dist/builtin/workflows/src/durable/format-version.ts +0 -6
  391. package/dist/builtin/workflows/src/durable/index.ts +0 -82
  392. package/dist/builtin/workflows/src/durable/local-command.ts +0 -135
  393. package/dist/builtin/workflows/src/durable/prompt-reservation-state.ts +0 -184
  394. package/dist/builtin/workflows/src/durable/prompt-reservations.ts +0 -36
  395. package/dist/builtin/workflows/src/durable/resume-catalog.ts +0 -20
  396. package/dist/builtin/workflows/src/durable/resume-eligibility.ts +0 -106
  397. package/dist/builtin/workflows/src/durable/resume-runtime.ts +0 -344
  398. package/dist/builtin/workflows/src/durable/retention-policy.ts +0 -43
  399. package/dist/builtin/workflows/src/durable/run-timing.ts +0 -151
  400. package/dist/builtin/workflows/src/durable/scoped-backend.ts +0 -308
  401. package/dist/builtin/workflows/src/durable/stage-primitive.ts +0 -553
  402. package/dist/builtin/workflows/src/durable/stage-topology-validation.ts +0 -247
  403. package/dist/builtin/workflows/src/durable/stage-topology.ts +0 -53
  404. package/dist/builtin/workflows/src/durable/targeted-inspection.ts +0 -110
  405. package/dist/builtin/workflows/src/durable/tool-failure-checkpoint.ts +0 -54
  406. package/dist/builtin/workflows/src/durable/tool-outcome.ts +0 -130
  407. package/dist/builtin/workflows/src/durable/tool-primitive.ts +0 -861
  408. package/dist/builtin/workflows/src/durable/types.ts +0 -343
  409. package/dist/builtin/workflows/src/durable/ui-primitive.ts +0 -263
  410. package/dist/builtin/workflows/src/durable/workflow-child-result.ts +0 -63
  411. package/dist/builtin/workflows/src/durable/workflow-heartbeat-anchor.ts +0 -153
  412. package/dist/builtin/workflows/src/durable/workflow-status-transition.ts +0 -31
  413. package/dist/builtin/workflows/src/engine/graph-inference.ts +0 -100
  414. package/dist/builtin/workflows/src/engine/options.ts +0 -44
  415. package/dist/builtin/workflows/src/engine/primitives/chain.ts +0 -34
  416. package/dist/builtin/workflows/src/engine/primitives/exit.ts +0 -2
  417. package/dist/builtin/workflows/src/engine/primitives/parallel.ts +0 -74
  418. package/dist/builtin/workflows/src/engine/primitives/task.ts +0 -127
  419. package/dist/builtin/workflows/src/engine/primitives/ui.ts +0 -54
  420. package/dist/builtin/workflows/src/engine/primitives/workflow.ts +0 -219
  421. package/dist/builtin/workflows/src/engine/replay.ts +0 -8
  422. package/dist/builtin/workflows/src/engine/run-budget.ts +0 -308
  423. package/dist/builtin/workflows/src/engine/run-durable-admission.ts +0 -50
  424. package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +0 -97
  425. package/dist/builtin/workflows/src/engine/run-durable-stage-session.ts +0 -65
  426. package/dist/builtin/workflows/src/engine/run-durable-topology.ts +0 -295
  427. package/dist/builtin/workflows/src/engine/run-returned-status.ts +0 -86
  428. package/dist/builtin/workflows/src/engine/run-terminal-event.ts +0 -39
  429. package/dist/builtin/workflows/src/engine/run-terminal-failure.ts +0 -53
  430. package/dist/builtin/workflows/src/engine/run-tool-admission-boundary.ts +0 -99
  431. package/dist/builtin/workflows/src/engine/run-tool-control-registry.ts +0 -187
  432. package/dist/builtin/workflows/src/engine/run-tool-execution-tracker.ts +0 -164
  433. package/dist/builtin/workflows/src/engine/run-tool-node-lifecycle.ts +0 -158
  434. package/dist/builtin/workflows/src/engine/run.ts +0 -841
  435. package/dist/builtin/workflows/src/engine/runtime.ts +0 -220
  436. package/dist/builtin/workflows/src/engine/workflow-activity.ts +0 -13
  437. package/dist/builtin/workflows/src/engine/workflow-tool-abort.ts +0 -92
  438. package/dist/builtin/workflows/src/extension/adopt-session-run-state.ts +0 -20
  439. package/dist/builtin/workflows/src/extension/atomic-stage-session.ts +0 -168
  440. package/dist/builtin/workflows/src/extension/background-ui-adapter.ts +0 -154
  441. package/dist/builtin/workflows/src/extension/companions.ts +0 -210
  442. package/dist/builtin/workflows/src/extension/completed-stage-intercom-ask.ts +0 -167
  443. package/dist/builtin/workflows/src/extension/config-file-loader.ts +0 -185
  444. package/dist/builtin/workflows/src/extension/config-loader.ts +0 -439
  445. package/dist/builtin/workflows/src/extension/discovery-loaders.ts +0 -112
  446. package/dist/builtin/workflows/src/extension/discovery.ts +0 -424
  447. package/dist/builtin/workflows/src/extension/dispatcher.ts +0 -273
  448. package/dist/builtin/workflows/src/extension/extension-factory.ts +0 -133
  449. package/dist/builtin/workflows/src/extension/extension-lifecycle.ts +0 -174
  450. package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +0 -596
  451. package/dist/builtin/workflows/src/extension/hil-answer-notifications.ts +0 -367
  452. package/dist/builtin/workflows/src/extension/index.ts +0 -42
  453. package/dist/builtin/workflows/src/extension/lifecycle-notification-delivery.ts +0 -83
  454. package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +0 -849
  455. package/dist/builtin/workflows/src/extension/mcp.ts +0 -121
  456. package/dist/builtin/workflows/src/extension/postmortem-deps.ts +0 -70
  457. package/dist/builtin/workflows/src/extension/public-types.ts +0 -234
  458. package/dist/builtin/workflows/src/extension/render-call.ts +0 -115
  459. package/dist/builtin/workflows/src/extension/render-component.ts +0 -12
  460. package/dist/builtin/workflows/src/extension/render-result.ts +0 -558
  461. package/dist/builtin/workflows/src/extension/renderers.ts +0 -89
  462. package/dist/builtin/workflows/src/extension/runtime-active-block-claim.ts +0 -78
  463. package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +0 -174
  464. package/dist/builtin/workflows/src/extension/runtime.ts +0 -439
  465. package/dist/builtin/workflows/src/extension/status-writer.ts +0 -182
  466. package/dist/builtin/workflows/src/extension/ui-surface.ts +0 -387
  467. package/dist/builtin/workflows/src/extension/wiring.ts +0 -490
  468. package/dist/builtin/workflows/src/extension/workflow-command-completions.ts +0 -129
  469. package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +0 -296
  470. package/dist/builtin/workflows/src/extension/workflow-command-surfaces.ts +0 -114
  471. package/dist/builtin/workflows/src/extension/workflow-command-utils.ts +0 -175
  472. package/dist/builtin/workflows/src/extension/workflow-durable-resume-command.ts +0 -270
  473. package/dist/builtin/workflows/src/extension/workflow-heartbeat-delivery.ts +0 -241
  474. package/dist/builtin/workflows/src/extension/workflow-heartbeat-notice.ts +0 -115
  475. package/dist/builtin/workflows/src/extension/workflow-heartbeat-scheduler.ts +0 -962
  476. package/dist/builtin/workflows/src/extension/workflow-model-catalog.ts +0 -24
  477. package/dist/builtin/workflows/src/extension/workflow-module-loader.ts +0 -162
  478. package/dist/builtin/workflows/src/extension/workflow-policy.ts +0 -13
  479. package/dist/builtin/workflows/src/extension/workflow-ports.ts +0 -45
  480. package/dist/builtin/workflows/src/extension/workflow-prompts.ts +0 -73
  481. package/dist/builtin/workflows/src/extension/workflow-reload-coordinator.ts +0 -66
  482. package/dist/builtin/workflows/src/extension/workflow-reload-report.ts +0 -42
  483. package/dist/builtin/workflows/src/extension/workflow-request-abort.ts +0 -15
  484. package/dist/builtin/workflows/src/extension/workflow-resume-picker-rows.ts +0 -96
  485. package/dist/builtin/workflows/src/extension/workflow-resume-shadow.ts +0 -53
  486. package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +0 -562
  487. package/dist/builtin/workflows/src/extension/workflow-schema.ts +0 -192
  488. package/dist/builtin/workflows/src/extension/workflow-stage-results.ts +0 -252
  489. package/dist/builtin/workflows/src/extension/workflow-status-summary.ts +0 -276
  490. package/dist/builtin/workflows/src/extension/workflow-targets.ts +0 -210
  491. package/dist/builtin/workflows/src/extension/workflow-tool-content.ts +0 -265
  492. package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +0 -547
  493. package/dist/builtin/workflows/src/extension/workflow-tool-inspection.ts +0 -153
  494. package/dist/builtin/workflows/src/extension/workflow-tool-registration.ts +0 -145
  495. package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +0 -488
  496. package/dist/builtin/workflows/src/extension/workflow-tool.ts +0 -188
  497. package/dist/builtin/workflows/src/index.ts +0 -8
  498. package/dist/builtin/workflows/src/intercom/intercom-bridge.ts +0 -90
  499. package/dist/builtin/workflows/src/intercom/intercom-routing.ts +0 -131
  500. package/dist/builtin/workflows/src/intercom/result-intercom.ts +0 -271
  501. package/dist/builtin/workflows/src/runs/background/cancellation-registry.ts +0 -135
  502. package/dist/builtin/workflows/src/runs/background/durable-resume-transition.ts +0 -63
  503. package/dist/builtin/workflows/src/runs/background/job-tracker.ts +0 -125
  504. package/dist/builtin/workflows/src/runs/background/quit-tool-node.ts +0 -71
  505. package/dist/builtin/workflows/src/runs/background/quit.ts +0 -417
  506. package/dist/builtin/workflows/src/runs/background/resume-acknowledgements.ts +0 -99
  507. package/dist/builtin/workflows/src/runs/background/run-inspect.ts +0 -126
  508. package/dist/builtin/workflows/src/runs/background/runner.ts +0 -185
  509. package/dist/builtin/workflows/src/runs/background/startup-admission.ts +0 -73
  510. package/dist/builtin/workflows/src/runs/background/status.ts +0 -511
  511. package/dist/builtin/workflows/src/runs/background/workflow-lifecycle-aggregate.ts +0 -43
  512. package/dist/builtin/workflows/src/runs/foreground/executor-abort.ts +0 -441
  513. package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +0 -263
  514. package/dist/builtin/workflows/src/runs/foreground/executor-child-helpers.ts +0 -79
  515. package/dist/builtin/workflows/src/runs/foreground/executor-child-workflow.ts +0 -1
  516. package/dist/builtin/workflows/src/runs/foreground/executor-continuation.ts +0 -207
  517. package/dist/builtin/workflows/src/runs/foreground/executor-direct-helpers.ts +0 -321
  518. package/dist/builtin/workflows/src/runs/foreground/executor-exit-manager.ts +0 -224
  519. package/dist/builtin/workflows/src/runs/foreground/executor-hil.ts +0 -403
  520. package/dist/builtin/workflows/src/runs/foreground/executor-inputs.ts +0 -86
  521. package/dist/builtin/workflows/src/runs/foreground/executor-lifecycle.ts +0 -491
  522. package/dist/builtin/workflows/src/runs/foreground/executor-outputs.ts +0 -156
  523. package/dist/builtin/workflows/src/runs/foreground/executor-prompt-nodes.ts +0 -379
  524. package/dist/builtin/workflows/src/runs/foreground/executor-queued-user-message.ts +0 -75
  525. package/dist/builtin/workflows/src/runs/foreground/executor-run-finalizers.ts +0 -144
  526. package/dist/builtin/workflows/src/runs/foreground/executor-run.ts +0 -1
  527. package/dist/builtin/workflows/src/runs/foreground/executor-scheduler.ts +0 -206
  528. package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +0 -434
  529. package/dist/builtin/workflows/src/runs/foreground/executor-stage-context.ts +0 -153
  530. package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +0 -225
  531. package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +0 -473
  532. package/dist/builtin/workflows/src/runs/foreground/executor-stage-replay.ts +0 -156
  533. package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +0 -72
  534. package/dist/builtin/workflows/src/runs/foreground/executor-task-context.ts +0 -2
  535. package/dist/builtin/workflows/src/runs/foreground/executor-task-prompts.ts +0 -226
  536. package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +0 -186
  537. package/dist/builtin/workflows/src/runs/foreground/executor.ts +0 -25
  538. package/dist/builtin/workflows/src/runs/foreground/postmortem-stage-chat.ts +0 -245
  539. package/dist/builtin/workflows/src/runs/foreground/stage-control-registry.ts +0 -466
  540. package/dist/builtin/workflows/src/runs/foreground/stage-delivery-activity.ts +0 -86
  541. package/dist/builtin/workflows/src/runs/foreground/stage-queued-user-messages.ts +0 -95
  542. package/dist/builtin/workflows/src/runs/foreground/stage-runner-candidate.ts +0 -21
  543. package/dist/builtin/workflows/src/runs/foreground/stage-runner-context.ts +0 -330
  544. package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +0 -1472
  545. package/dist/builtin/workflows/src/runs/foreground/stage-runner-message-admission.ts +0 -196
  546. package/dist/builtin/workflows/src/runs/foreground/stage-runner-messages.ts +0 -177
  547. package/dist/builtin/workflows/src/runs/foreground/stage-runner-options.ts +0 -97
  548. package/dist/builtin/workflows/src/runs/foreground/stage-runner-output.ts +0 -278
  549. package/dist/builtin/workflows/src/runs/foreground/stage-runner-pause.ts +0 -206
  550. package/dist/builtin/workflows/src/runs/foreground/stage-runner-replacement.ts +0 -41
  551. package/dist/builtin/workflows/src/runs/foreground/stage-runner-send-user-message.ts +0 -134
  552. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session-options.ts +0 -38
  553. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session.ts +0 -66
  554. package/dist/builtin/workflows/src/runs/foreground/stage-runner-structured-output.ts +0 -120
  555. package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +0 -211
  556. package/dist/builtin/workflows/src/runs/foreground/stage-runner-unresolved-overflow.ts +0 -42
  557. package/dist/builtin/workflows/src/runs/foreground/stage-runner.ts +0 -22
  558. package/dist/builtin/workflows/src/runs/foreground/stage-session-heartbeat.ts +0 -88
  559. package/dist/builtin/workflows/src/runs/foreground/stage-tool-execution-buffer.ts +0 -49
  560. package/dist/builtin/workflows/src/runs/shared/concurrency.ts +0 -76
  561. package/dist/builtin/workflows/src/runs/shared/graph-inference.ts +0 -2
  562. package/dist/builtin/workflows/src/runs/shared/model-fallback-candidates.ts +0 -325
  563. package/dist/builtin/workflows/src/runs/shared/model-fallback-failures.ts +0 -19
  564. package/dist/builtin/workflows/src/runs/shared/model-fallback.ts +0 -2
  565. package/dist/builtin/workflows/src/runs/shared/prompt-callsite.ts +0 -96
  566. package/dist/builtin/workflows/src/runs/shared/retry.ts +0 -44
  567. package/dist/builtin/workflows/src/runs/shared/validate-inputs.ts +0 -111
  568. package/dist/builtin/workflows/src/runs/shared/worktree-cache-lifecycle.ts +0 -23
  569. package/dist/builtin/workflows/src/runs/shared/worktree-cwd.ts +0 -116
  570. package/dist/builtin/workflows/src/runs/shared/worktree-diff.ts +0 -172
  571. package/dist/builtin/workflows/src/runs/shared/worktree-generation.ts +0 -57
  572. package/dist/builtin/workflows/src/runs/shared/worktree-git-runner.ts +0 -107
  573. package/dist/builtin/workflows/src/runs/shared/worktree-git.ts +0 -407
  574. package/dist/builtin/workflows/src/runs/shared/worktree-post-create.ts +0 -137
  575. package/dist/builtin/workflows/src/runs/shared/worktree-root.ts +0 -84
  576. package/dist/builtin/workflows/src/runs/shared/worktree-setup.ts +0 -372
  577. package/dist/builtin/workflows/src/runs/shared/worktree-types.ts +0 -102
  578. package/dist/builtin/workflows/src/runs/shared/worktree.ts +0 -21
  579. package/dist/builtin/workflows/src/sdk-surface.ts +0 -70
  580. package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +0 -403
  581. package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +0 -489
  582. package/dist/builtin/workflows/src/shared/authoring-contract-ui.d.ts +0 -327
  583. package/dist/builtin/workflows/src/shared/authoring-contract-ui.ts +0 -437
  584. package/dist/builtin/workflows/src/shared/budget-meter.ts +0 -34
  585. package/dist/builtin/workflows/src/shared/budget.d.ts +0 -67
  586. package/dist/builtin/workflows/src/shared/budget.ts +0 -127
  587. package/dist/builtin/workflows/src/shared/expanded-workflow-graph.ts +0 -434
  588. package/dist/builtin/workflows/src/shared/flat-string.ts +0 -33
  589. package/dist/builtin/workflows/src/shared/graph-store-snapshot.ts +0 -188
  590. package/dist/builtin/workflows/src/shared/intercom-group.ts +0 -58
  591. package/dist/builtin/workflows/src/shared/persistence-compaction-policy.ts +0 -72
  592. package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +0 -613
  593. package/dist/builtin/workflows/src/shared/persistence-restore.ts +0 -306
  594. package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +0 -303
  595. package/dist/builtin/workflows/src/shared/prompt-answer.ts +0 -130
  596. package/dist/builtin/workflows/src/shared/prompt-callsite-context.ts +0 -13
  597. package/dist/builtin/workflows/src/shared/render-inputs-schema.ts +0 -161
  598. package/dist/builtin/workflows/src/shared/resume-continuation.ts +0 -2
  599. package/dist/builtin/workflows/src/shared/returned-run-status.ts +0 -164
  600. package/dist/builtin/workflows/src/shared/run-id.ts +0 -36
  601. package/dist/builtin/workflows/src/shared/run-indicator-status.ts +0 -75
  602. package/dist/builtin/workflows/src/shared/run-visibility.ts +0 -9
  603. package/dist/builtin/workflows/src/shared/schema-introspection.ts +0 -111
  604. package/dist/builtin/workflows/src/shared/serializable.ts +0 -118
  605. package/dist/builtin/workflows/src/shared/session-scoped-singleton.ts +0 -98
  606. package/dist/builtin/workflows/src/shared/session-transcript.ts +0 -79
  607. package/dist/builtin/workflows/src/shared/stage-prompt.ts +0 -338
  608. package/dist/builtin/workflows/src/shared/stage-ui-broker.ts +0 -340
  609. package/dist/builtin/workflows/src/shared/store-factory.ts +0 -26
  610. package/dist/builtin/workflows/src/shared/store-internal.ts +0 -252
  611. package/dist/builtin/workflows/src/shared/store-observation.ts +0 -10
  612. package/dist/builtin/workflows/src/shared/store-prompt-methods.ts +0 -215
  613. package/dist/builtin/workflows/src/shared/store-public-types.ts +0 -282
  614. package/dist/builtin/workflows/src/shared/store-run-methods.ts +0 -305
  615. package/dist/builtin/workflows/src/shared/store-stage-methods.ts +0 -331
  616. package/dist/builtin/workflows/src/shared/store-tool-node-methods.ts +0 -60
  617. package/dist/builtin/workflows/src/shared/store-types.ts +0 -439
  618. package/dist/builtin/workflows/src/shared/store.ts +0 -15
  619. package/dist/builtin/workflows/src/shared/timing.ts +0 -71
  620. package/dist/builtin/workflows/src/shared/tool-payload-bounds.ts +0 -576
  621. package/dist/builtin/workflows/src/shared/types.ts +0 -523
  622. package/dist/builtin/workflows/src/shared/workflow-artifact-env.ts +0 -21
  623. package/dist/builtin/workflows/src/shared/workflow-artifacts.ts +0 -259
  624. package/dist/builtin/workflows/src/shared/workflow-authoring-types.d.ts +0 -60
  625. package/dist/builtin/workflows/src/shared/workflow-authoring-types.ts +0 -111
  626. package/dist/builtin/workflows/src/shared/workflow-failures-classifier.ts +0 -292
  627. package/dist/builtin/workflows/src/shared/workflow-failures-contract.ts +0 -74
  628. package/dist/builtin/workflows/src/shared/workflow-failures-decisions.ts +0 -458
  629. package/dist/builtin/workflows/src/shared/workflow-failures-signals.ts +0 -303
  630. package/dist/builtin/workflows/src/shared/workflow-failures.ts +0 -13
  631. package/dist/builtin/workflows/src/shared/workflow-heartbeat-contract.d.ts +0 -21
  632. package/dist/builtin/workflows/src/shared/workflow-heartbeat-contract.ts +0 -25
  633. package/dist/builtin/workflows/src/shared/workflow-run-ownership.ts +0 -49
  634. package/dist/builtin/workflows/src/tui/chat-surface-message.ts +0 -319
  635. package/dist/builtin/workflows/src/tui/chat-surface.ts +0 -477
  636. package/dist/builtin/workflows/src/tui/color-utils.ts +0 -55
  637. package/dist/builtin/workflows/src/tui/connectors.ts +0 -84
  638. package/dist/builtin/workflows/src/tui/dispatch-confirm.ts +0 -334
  639. package/dist/builtin/workflows/src/tui/edge.ts +0 -25
  640. package/dist/builtin/workflows/src/tui/graph-canvas.ts +0 -185
  641. package/dist/builtin/workflows/src/tui/graph-theme.ts +0 -292
  642. package/dist/builtin/workflows/src/tui/graph-view-constants.ts +0 -49
  643. package/dist/builtin/workflows/src/tui/graph-view-graph-render.ts +0 -157
  644. package/dist/builtin/workflows/src/tui/graph-view-input.ts +0 -427
  645. package/dist/builtin/workflows/src/tui/graph-view-layout.ts +0 -297
  646. package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +0 -294
  647. package/dist/builtin/workflows/src/tui/graph-view-render.ts +0 -361
  648. package/dist/builtin/workflows/src/tui/graph-view-state.ts +0 -547
  649. package/dist/builtin/workflows/src/tui/graph-view-types.ts +0 -79
  650. package/dist/builtin/workflows/src/tui/graph-view.ts +0 -25
  651. package/dist/builtin/workflows/src/tui/header.ts +0 -210
  652. package/dist/builtin/workflows/src/tui/host-input-form.ts +0 -64
  653. package/dist/builtin/workflows/src/tui/inline-form-card.ts +0 -438
  654. package/dist/builtin/workflows/src/tui/inline-form-editor-text.ts +0 -120
  655. package/dist/builtin/workflows/src/tui/inline-form-editor.ts +0 -496
  656. package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +0 -317
  657. package/dist/builtin/workflows/src/tui/inline-form-store.ts +0 -90
  658. package/dist/builtin/workflows/src/tui/inputs-overlay.ts +0 -185
  659. package/dist/builtin/workflows/src/tui/inputs-picker-editing.ts +0 -147
  660. package/dist/builtin/workflows/src/tui/inputs-picker-input.ts +0 -357
  661. package/dist/builtin/workflows/src/tui/inputs-picker-render.ts +0 -312
  662. package/dist/builtin/workflows/src/tui/inputs-picker-types.ts +0 -161
  663. package/dist/builtin/workflows/src/tui/inputs-picker.ts +0 -20
  664. package/dist/builtin/workflows/src/tui/keybindings-adapter.ts +0 -167
  665. package/dist/builtin/workflows/src/tui/layout.ts +0 -150
  666. package/dist/builtin/workflows/src/tui/mouse-input.ts +0 -61
  667. package/dist/builtin/workflows/src/tui/node-card.ts +0 -357
  668. package/dist/builtin/workflows/src/tui/overlay-adapter.ts +0 -449
  669. package/dist/builtin/workflows/src/tui/overlay-terminal-modes.ts +0 -39
  670. package/dist/builtin/workflows/src/tui/prompt-card-input.ts +0 -215
  671. package/dist/builtin/workflows/src/tui/prompt-card-render.ts +0 -584
  672. package/dist/builtin/workflows/src/tui/prompt-card-select.ts +0 -94
  673. package/dist/builtin/workflows/src/tui/prompt-card-state.ts +0 -61
  674. package/dist/builtin/workflows/src/tui/prompt-card-text.ts +0 -122
  675. package/dist/builtin/workflows/src/tui/prompt-card.ts +0 -12
  676. package/dist/builtin/workflows/src/tui/renderers.ts +0 -14
  677. package/dist/builtin/workflows/src/tui/run-detail.ts +0 -438
  678. package/dist/builtin/workflows/src/tui/run-identity-rows.ts +0 -97
  679. package/dist/builtin/workflows/src/tui/session-list.ts +0 -38
  680. package/dist/builtin/workflows/src/tui/session-overlays.ts +0 -161
  681. package/dist/builtin/workflows/src/tui/session-picker.ts +0 -482
  682. package/dist/builtin/workflows/src/tui/stage-chat-composer-drafts.ts +0 -19
  683. package/dist/builtin/workflows/src/tui/stage-chat-layout.ts +0 -81
  684. package/dist/builtin/workflows/src/tui/stage-chat-view-archive-history.ts +0 -462
  685. package/dist/builtin/workflows/src/tui/stage-chat-view-custom-ui.ts +0 -115
  686. package/dist/builtin/workflows/src/tui/stage-chat-view-delivery-activity.ts +0 -113
  687. package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +0 -219
  688. package/dist/builtin/workflows/src/tui/stage-chat-view-input.ts +0 -216
  689. package/dist/builtin/workflows/src/tui/stage-chat-view-live-events.ts +0 -65
  690. package/dist/builtin/workflows/src/tui/stage-chat-view-pending-tools.ts +0 -7
  691. package/dist/builtin/workflows/src/tui/stage-chat-view-render-helpers.ts +0 -149
  692. package/dist/builtin/workflows/src/tui/stage-chat-view-render-settings.ts +0 -49
  693. package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +0 -575
  694. package/dist/builtin/workflows/src/tui/stage-chat-view-status.ts +0 -35
  695. package/dist/builtin/workflows/src/tui/stage-chat-view-transcript.ts +0 -226
  696. package/dist/builtin/workflows/src/tui/stage-chat-view-types.ts +0 -156
  697. package/dist/builtin/workflows/src/tui/stage-chat-view.ts +0 -309
  698. package/dist/builtin/workflows/src/tui/status-helpers.ts +0 -85
  699. package/dist/builtin/workflows/src/tui/status-list.ts +0 -447
  700. package/dist/builtin/workflows/src/tui/store-widget-installer.ts +0 -338
  701. package/dist/builtin/workflows/src/tui/submit-pane.ts +0 -148
  702. package/dist/builtin/workflows/src/tui/switcher.ts +0 -172
  703. package/dist/builtin/workflows/src/tui/text-helpers.ts +0 -208
  704. package/dist/builtin/workflows/src/tui/tool-detail.ts +0 -367
  705. package/dist/builtin/workflows/src/tui/widget.ts +0 -427
  706. package/dist/builtin/workflows/src/tui/workflow-attach-pane-handle.ts +0 -21
  707. package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +0 -77
  708. package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +0 -477
  709. package/dist/builtin/workflows/src/tui/workflow-list.ts +0 -189
  710. package/dist/builtin/workflows/src/tui/workflow-notice-card.ts +0 -167
  711. package/dist/builtin/workflows/src/tui/workflow-resume-selector.ts +0 -334
  712. package/dist/builtin/workflows/src/tui/workflow-status.ts +0 -12
  713. package/dist/builtin/workflows/src/workflows/identity.ts +0 -39
  714. package/dist/builtin/workflows/src/workflows/registry.ts +0 -115
@@ -1,60 +0,0 @@
1
- // oauth-handler.ts - OAuth token management for MCP servers
2
- import { existsSync, readFileSync } from "node:fs";
3
- import { join } from "node:path";
4
- import { getAgentPath } from "./agent-dir.ts";
5
- import type { OAuthTokens } from "@modelcontextprotocol/sdk/shared/auth.js";
6
-
7
- // Token storage path for a server
8
- function getTokensPath(serverName: string): string {
9
- const override = process.env.MCP_OAUTH_DIR?.trim();
10
- const authDir = override ? override : getAgentPath("mcp-oauth");
11
- return join(authDir, serverName, "tokens.json");
12
- }
13
-
14
- /**
15
- * Get stored OAuth tokens for a server (if any).
16
- * Returns undefined if no tokens or tokens are expired.
17
- *
18
- * Token file location: $MCP_OAUTH_DIR/<server>/tokens.json when set,
19
- * otherwise <Pi agent dir>/mcp-oauth/<server>/tokens.json
20
- *
21
- * Expected format:
22
- * {
23
- * "access_token": "...",
24
- * "token_type": "bearer",
25
- * "refresh_token": "...", // optional
26
- * "expires_in": 3600, // optional, seconds
27
- * "expiresAt": 1234567890 // optional, absolute timestamp ms
28
- * }
29
- */
30
- export function getStoredTokens(serverName: string): OAuthTokens | undefined {
31
- const tokensPath = getTokensPath(serverName);
32
-
33
- if (!existsSync(tokensPath)) return undefined;
34
-
35
- try {
36
- const stored = JSON.parse(readFileSync(tokensPath, "utf-8"));
37
-
38
- // Validate required field
39
- if (!stored.access_token || typeof stored.access_token !== "string") {
40
- return undefined;
41
- }
42
-
43
- // Check expiration if expiresAt is set
44
- if (stored.expiresAt && typeof stored.expiresAt === "number") {
45
- if (Date.now() > stored.expiresAt) {
46
- // Token expired
47
- return undefined;
48
- }
49
- }
50
-
51
- return {
52
- access_token: stored.access_token,
53
- token_type: stored.token_type ?? "bearer",
54
- refresh_token: stored.refresh_token,
55
- expires_in: stored.expires_in,
56
- };
57
- } catch {
58
- return undefined;
59
- }
60
- }
@@ -1,68 +0,0 @@
1
- import { existsSync, mkdirSync, readFileSync, writeFileSync, renameSync } from "node:fs";
2
- import { dirname } from "node:path";
3
- import { getAgentPath } from "./agent-dir.ts";
4
-
5
- export interface McpOnboardingState {
6
- version: 1;
7
- sharedConfigHintShown: boolean;
8
- setupCompleted: boolean;
9
- lastDiscoveryFingerprint?: string;
10
- }
11
-
12
- const DEFAULT_STATE: McpOnboardingState = {
13
- version: 1,
14
- sharedConfigHintShown: false,
15
- setupCompleted: false,
16
- };
17
-
18
- export function getOnboardingStatePath(): string {
19
- return getAgentPath("mcp-onboarding.json");
20
- }
21
-
22
- export function loadOnboardingState(): McpOnboardingState {
23
- const path = getOnboardingStatePath();
24
- if (!existsSync(path)) return { ...DEFAULT_STATE };
25
-
26
- try {
27
- const raw = JSON.parse(readFileSync(path, "utf-8")) as Partial<McpOnboardingState>;
28
- if (!raw || typeof raw !== "object") return { ...DEFAULT_STATE };
29
- return {
30
- version: 1,
31
- sharedConfigHintShown: raw.sharedConfigHintShown === true,
32
- setupCompleted: raw.setupCompleted === true,
33
- lastDiscoveryFingerprint: typeof raw.lastDiscoveryFingerprint === "string" ? raw.lastDiscoveryFingerprint : undefined,
34
- };
35
- } catch {
36
- return { ...DEFAULT_STATE };
37
- }
38
- }
39
-
40
- export function saveOnboardingState(state: McpOnboardingState): void {
41
- const path = getOnboardingStatePath();
42
- mkdirSync(dirname(path), { recursive: true });
43
- const tmpPath = `${path}.${process.pid}.tmp`;
44
- writeFileSync(tmpPath, `${JSON.stringify(state, null, 2)}\n`, "utf-8");
45
- renameSync(tmpPath, path);
46
- }
47
-
48
- export function updateOnboardingState(updater: (state: McpOnboardingState) => McpOnboardingState): McpOnboardingState {
49
- const next = updater(loadOnboardingState());
50
- saveOnboardingState(next);
51
- return next;
52
- }
53
-
54
- export function markSharedConfigHintShown(fingerprint?: string): McpOnboardingState {
55
- return updateOnboardingState((state) => ({
56
- ...state,
57
- sharedConfigHintShown: true,
58
- lastDiscoveryFingerprint: fingerprint ?? state.lastDiscoveryFingerprint,
59
- }));
60
- }
61
-
62
- export function markSetupCompleted(fingerprint?: string): McpOnboardingState {
63
- return updateOnboardingState((state) => ({
64
- ...state,
65
- setupCompleted: true,
66
- lastDiscoveryFingerprint: fingerprint ?? state.lastDiscoveryFingerprint,
67
- }));
68
- }
@@ -1,61 +0,0 @@
1
- import type { McpExtensionState } from "./state.js";
2
- import { authenticate, supportsOAuth } from "./mcp-auth-flow.js";
3
- import { formatAuthRequiredMessage } from "./utils.js";
4
-
5
- export type AutoAuthResult =
6
- | { status: "skipped" }
7
- | { status: "success" }
8
- | { status: "failed"; message: string };
9
-
10
- export function getAuthRequiredMessage(
11
- state: McpExtensionState,
12
- serverName: string,
13
- defaultMessage = `Server "${serverName}" requires OAuth authentication. Run /mcp-auth ${serverName} first.`,
14
- ): string {
15
- return formatAuthRequiredMessage(state.config, serverName, defaultMessage);
16
- }
17
-
18
- function getAuthFailedMessage(state: McpExtensionState, serverName: string, message: string): string {
19
- const customGuidance = state.config.settings?.authRequiredMessage;
20
- if (customGuidance) {
21
- return `OAuth authentication failed for "${serverName}": ${message}. ${getAuthRequiredMessage(state, serverName)}`;
22
- }
23
- return `OAuth authentication failed for "${serverName}": ${message}. Run /mcp-auth ${serverName} first.`;
24
- }
25
-
26
- export async function attemptAutoAuth(
27
- state: McpExtensionState,
28
- serverName: string,
29
- ): Promise<AutoAuthResult> {
30
- if (state.config.settings?.autoAuth !== true) {
31
- return { status: "skipped" };
32
- }
33
-
34
- const definition = state.config.mcpServers[serverName];
35
- if (!definition || !supportsOAuth(definition) || !definition.url) {
36
- return { status: "skipped" };
37
- }
38
-
39
- const grantType = definition.oauth ? definition.oauth.grantType ?? "authorization_code" : "authorization_code";
40
- if (!state.ui && grantType !== "client_credentials") {
41
- return {
42
- status: "failed",
43
- message: getAuthRequiredMessage(
44
- state,
45
- serverName,
46
- `Server "${serverName}" requires OAuth authentication. Run /mcp-auth ${serverName} in an interactive session.`,
47
- ),
48
- };
49
- }
50
-
51
- try {
52
- await authenticate(serverName, definition.url, definition);
53
- return { status: "success" };
54
- } catch (error) {
55
- const message = error instanceof Error ? error.message : String(error);
56
- return {
57
- status: "failed",
58
- message: getAuthFailedMessage(state, serverName, message),
59
- };
60
- }
61
- }
@@ -1,447 +0,0 @@
1
- import type { ToolInfo } from "@bastani/atomic";
2
- import type { McpExtensionState } from "./state.js";
3
- import type { McpContent, ToolMetadata } from "./types.ts";
4
- import { getServerPrefix } from "./types.ts";
5
- import { lazyConnect, updateServerMetadata, updateMetadataCache, getFailureAgeSeconds, updateStatusBar } from "./init.js";
6
- import { getToolNames, findToolByName, formatSchema } from "./tool-metadata.js";
7
- import { transformMcpContent } from "./tool-registrar.js";
8
- import { maybeStartUiSession, type UiSessionRuntime } from "./ui-session.js";
9
- import { unflattenToolArguments } from "./utils.js";
10
- import { attemptAutoAuth, getAuthRequiredMessage, type AutoAuthResult } from "./proxy-auth.js";
11
- import type { ProxyToolResult } from "./proxy-types.js";
12
- import { waitForCaller, waitForCallerWithLateCleanup } from "./caller-wait.js";
13
- import { notifyUiCancellation, rethrowHostAbortAfterUiCancellation } from "./apps-cancellation.js";
14
- import { asCallToolResult } from "./call-tool-result.js";
15
- import { assertMcpStateLease, McpStateChangedError, type AssertMcpStateLease } from "./state-lease.js";
16
- import { callToolWithConfiguredTimeout, formatMcpToolCallFailure } from "./tool-call-timeout.js";
17
-
18
- export async function executeCall(
19
- state: McpExtensionState,
20
- toolName: string,
21
- args?: Record<string, unknown>,
22
- serverOverride?: string,
23
- getPiTools?: () => ToolInfo[],
24
- signal?: AbortSignal,
25
- startAutoAuth: (state: McpExtensionState, serverName: string) => Promise<AutoAuthResult> = attemptAutoAuth,
26
- assertActive?: AssertMcpStateLease,
27
- ): Promise<ProxyToolResult> {
28
- signal?.throwIfAborted();
29
- assertMcpStateLease(assertActive);
30
- let serverName: string | undefined = serverOverride;
31
- let toolMeta: ToolMetadata | undefined;
32
- let autoAuthAttempted = false;
33
- const prefixMode = state.config.settings?.toolPrefix ?? "server";
34
-
35
- if (serverName && !state.config.mcpServers[serverName]) {
36
- return {
37
- content: [{ type: "text" as const, text: `Server "${serverName}" not found. Use mcp({}) to see available servers.` }],
38
- details: { mode: "call", error: "server_not_found", server: serverName },
39
- };
40
- }
41
-
42
- if (serverName) {
43
- toolMeta = findToolByName(state.toolMetadata.get(serverName), toolName);
44
- } else {
45
- for (const [server, metadata] of state.toolMetadata.entries()) {
46
- const found = findToolByName(metadata, toolName);
47
- if (found) {
48
- serverName = server;
49
- toolMeta = found;
50
- break;
51
- }
52
- }
53
- }
54
-
55
- if (serverName && !toolMeta) {
56
- const connected = await waitForCaller(() => lazyConnect(state, serverName!), signal);
57
- signal?.throwIfAborted();
58
- assertMcpStateLease(assertActive);
59
- if (connected) {
60
- toolMeta = findToolByName(state.toolMetadata.get(serverName), toolName);
61
- } else {
62
- const needsAuthConnection = state.manager.getConnection(serverName);
63
- if (needsAuthConnection?.status === "needs-auth") {
64
- autoAuthAttempted = true;
65
- const autoAuth = await waitForCaller(() => startAutoAuth(state, serverName!), signal);
66
- signal?.throwIfAborted();
67
- assertMcpStateLease(assertActive);
68
- if (autoAuth.status === "failed") {
69
- return {
70
- content: [{ type: "text" as const, text: autoAuth.message }],
71
- details: { mode: "call", error: "auth_required", server: serverName, message: autoAuth.message },
72
- };
73
- }
74
- if (autoAuth.status === "success") {
75
- await waitForCaller(() => state.manager.close(serverName!), signal);
76
- signal?.throwIfAborted();
77
- assertMcpStateLease(assertActive);
78
- state.failureTracker.delete(serverName);
79
- const connectedAfterAuth = await waitForCaller(() => lazyConnect(state, serverName!), signal);
80
- signal?.throwIfAborted();
81
- assertMcpStateLease(assertActive);
82
- if (connectedAfterAuth) {
83
- toolMeta = findToolByName(state.toolMetadata.get(serverName), toolName);
84
- if (!toolMeta) {
85
- return {
86
- content: [{ type: "text" as const, text: `Tool "${toolName}" not found on "${serverName}" after reconnect.` }],
87
- details: { mode: "call", error: "tool_not_found_after_reconnect", requestedTool: toolName },
88
- };
89
- }
90
- }
91
- }
92
-
93
- if (!toolMeta && state.manager.getConnection(serverName)?.status === "needs-auth") {
94
- const message = getAuthRequiredMessage(state, serverName);
95
- return {
96
- content: [{ type: "text" as const, text: message }],
97
- details: { mode: "call", error: "auth_required", server: serverName, message },
98
- };
99
- }
100
- }
101
-
102
- if (!toolMeta) {
103
- const failedAgo = getFailureAgeSeconds(state, serverName);
104
- if (failedAgo !== null) {
105
- return {
106
- content: [{ type: "text" as const, text: `Server "${serverName}" not available (last failed ${failedAgo}s ago)` }],
107
- details: { mode: "call", error: "server_backoff", server: serverName },
108
- };
109
- }
110
- }
111
- }
112
- }
113
-
114
- let prefixMatchedServer: string | undefined;
115
-
116
- if (!serverName && !toolMeta && prefixMode !== "none") {
117
- const candidates = Object.keys(state.config.mcpServers)
118
- .map(name => ({ name, prefix: getServerPrefix(name, prefixMode) }))
119
- .filter(c => c.prefix && toolName.startsWith(c.prefix + "_"))
120
- .sort((a, b) => b.prefix.length - a.prefix.length);
121
-
122
- for (const { name: configuredServer } of candidates) {
123
- const existingConnection = state.manager.getConnection(configuredServer);
124
- const failedAgo = getFailureAgeSeconds(state, configuredServer);
125
- if (failedAgo !== null && existingConnection?.status !== "needs-auth") continue;
126
-
127
- let connected = await waitForCaller(() => lazyConnect(state, configuredServer), signal);
128
- signal?.throwIfAborted();
129
- assertMcpStateLease(assertActive);
130
- if (!connected && state.manager.getConnection(configuredServer)?.status === "needs-auth" && !autoAuthAttempted) {
131
- autoAuthAttempted = true;
132
- const autoAuth = await waitForCaller(() => startAutoAuth(state, configuredServer), signal);
133
- signal?.throwIfAborted();
134
- assertMcpStateLease(assertActive);
135
- if (autoAuth.status === "failed") {
136
- return {
137
- content: [{ type: "text" as const, text: autoAuth.message }],
138
- details: { mode: "call", error: "auth_required", server: configuredServer, message: autoAuth.message },
139
- };
140
- }
141
- if (autoAuth.status === "success") {
142
- await waitForCaller(() => state.manager.close(configuredServer), signal);
143
- signal?.throwIfAborted();
144
- assertMcpStateLease(assertActive);
145
- state.failureTracker.delete(configuredServer);
146
- connected = await waitForCaller(() => lazyConnect(state, configuredServer), signal);
147
- signal?.throwIfAborted();
148
- assertMcpStateLease(assertActive);
149
- }
150
- }
151
-
152
- if (!connected) continue;
153
- if (!prefixMatchedServer) prefixMatchedServer = configuredServer;
154
- toolMeta = findToolByName(state.toolMetadata.get(configuredServer), toolName);
155
- if (toolMeta) {
156
- serverName = configuredServer;
157
- break;
158
- }
159
- }
160
- }
161
-
162
- if (!serverName || !toolMeta) {
163
- const nativeTool = !serverOverride
164
- ? getPiTools?.().find((tool) => tool.name === toolName && tool.name !== "mcp")
165
- : undefined;
166
- if (nativeTool) {
167
- return {
168
- content: [{ type: "text" as const, text: `"${toolName}" is a native Pi tool. Call ${toolName} directly instead of using mcp({ tool: "${toolName}" }).` }],
169
- details: { mode: "call", error: "native_tool", requestedTool: toolName },
170
- };
171
- }
172
-
173
- const hintServer = serverName ?? prefixMatchedServer;
174
- const available = hintServer ? getToolNames(state, hintServer) : [];
175
- let msg = `Tool "${toolName}" not found.`;
176
- if (available.length > 0) {
177
- msg += ` Server "${hintServer}" has: ${available.join(", ")}`;
178
- } else {
179
- msg += ` Use mcp({ search: "..." }) to search.`;
180
- }
181
- return {
182
- content: [{ type: "text" as const, text: msg }],
183
- details: { mode: "call", error: "tool_not_found", requestedTool: toolName, hintServer },
184
- };
185
- }
186
-
187
- let connection = state.manager.getConnection(serverName);
188
- if (connection?.status === "needs-auth") {
189
- if (!autoAuthAttempted) {
190
- autoAuthAttempted = true;
191
- const autoAuth = await waitForCaller(() => startAutoAuth(state, serverName!), signal);
192
- signal?.throwIfAborted();
193
- assertMcpStateLease(assertActive);
194
- if (autoAuth.status === "failed") {
195
- return {
196
- content: [{ type: "text" as const, text: autoAuth.message }],
197
- details: { mode: "call", error: "auth_required", server: serverName, message: autoAuth.message },
198
- };
199
- }
200
- if (autoAuth.status === "success") {
201
- await waitForCaller(() => state.manager.close(serverName!), signal);
202
- signal?.throwIfAborted();
203
- assertMcpStateLease(assertActive);
204
- state.failureTracker.delete(serverName);
205
- connection = state.manager.getConnection(serverName);
206
- }
207
- }
208
-
209
- if (connection?.status === "needs-auth") {
210
- const message = getAuthRequiredMessage(state, serverName);
211
- return {
212
- content: [{ type: "text" as const, text: message }],
213
- details: { mode: "call", error: "auth_required", server: serverName, message },
214
- };
215
- }
216
- }
217
- if (!connection || connection.status !== "connected") {
218
- const failedAgo = getFailureAgeSeconds(state, serverName);
219
- if (failedAgo !== null) {
220
- return {
221
- content: [{ type: "text" as const, text: `Server "${serverName}" not available (last failed ${failedAgo}s ago)` }],
222
- details: { mode: "call", error: "server_backoff", server: serverName },
223
- };
224
- }
225
-
226
- const definition = state.config.mcpServers[serverName];
227
- if (!definition) {
228
- return {
229
- content: [{ type: "text" as const, text: `Server "${serverName}" not connected` }],
230
- details: { mode: "call", error: "server_not_connected", server: serverName },
231
- };
232
- }
233
-
234
- try {
235
- assertMcpStateLease(assertActive);
236
- if (state.ui) {
237
- state.ui.setStatus("mcp", `MCP: connecting to ${serverName}...`);
238
- }
239
- connection = await waitForCaller(() => state.manager.connect(serverName, definition), signal);
240
- signal?.throwIfAborted();
241
- assertMcpStateLease(assertActive);
242
- if (connection.status === "needs-auth") {
243
- if (!autoAuthAttempted) {
244
- autoAuthAttempted = true;
245
- const autoAuth = await waitForCaller(() => startAutoAuth(state, serverName!), signal);
246
- signal?.throwIfAborted();
247
- assertMcpStateLease(assertActive);
248
- if (autoAuth.status === "failed") {
249
- return {
250
- content: [{ type: "text" as const, text: autoAuth.message }],
251
- details: { mode: "call", error: "auth_required", server: serverName, message: autoAuth.message },
252
- };
253
- }
254
- if (autoAuth.status === "success") {
255
- await waitForCaller(() => state.manager.close(serverName!), signal);
256
- signal?.throwIfAborted();
257
- assertMcpStateLease(assertActive);
258
- connection = await waitForCaller(() => state.manager.connect(serverName, definition), signal);
259
- signal?.throwIfAborted();
260
- assertMcpStateLease(assertActive);
261
- }
262
- }
263
-
264
- if (connection.status === "needs-auth") {
265
- const message = getAuthRequiredMessage(state, serverName);
266
- return {
267
- content: [{ type: "text" as const, text: message }],
268
- details: { mode: "call", error: "auth_required", server: serverName, message },
269
- };
270
- }
271
- }
272
- assertMcpStateLease(assertActive);
273
- state.failureTracker.delete(serverName);
274
- updateServerMetadata(state, serverName);
275
- updateMetadataCache(state, serverName);
276
- updateStatusBar(state);
277
- toolMeta = findToolByName(state.toolMetadata.get(serverName), toolName);
278
- if (!toolMeta) {
279
- const available = getToolNames(state, serverName);
280
- const hint = available.length > 0
281
- ? `Available tools on "${serverName}": ${available.join(", ")}`
282
- : `Server "${serverName}" has no tools.`;
283
- return {
284
- content: [{ type: "text" as const, text: `Tool "${toolName}" not found on "${serverName}" after reconnect. ${hint}` }],
285
- details: { mode: "call", error: "tool_not_found_after_reconnect", requestedTool: toolName },
286
- };
287
- }
288
- } catch (error) {
289
- signal?.throwIfAborted();
290
- assertMcpStateLease(assertActive);
291
- state.failureTracker.set(serverName, Date.now());
292
- updateStatusBar(state);
293
- const message = error instanceof Error ? error.message : String(error);
294
- return {
295
- content: [{ type: "text" as const, text: `Failed to connect to "${serverName}": ${message}` }],
296
- details: { mode: "call", error: "connect_failed", message },
297
- };
298
- }
299
- }
300
- const definition = state.config.mcpServers[serverName] ?? connection.definition;
301
-
302
- let uiSession: UiSessionRuntime | null = null;
303
-
304
- try {
305
- assertMcpStateLease(assertActive);
306
- state.manager.touch(serverName);
307
- state.manager.incrementInFlight(serverName);
308
-
309
- if (toolMeta.resourceUri) {
310
- assertMcpStateLease(assertActive);
311
- const result = await connection.client.readResource({ uri: toolMeta.resourceUri }, { signal });
312
- signal?.throwIfAborted();
313
- assertMcpStateLease(assertActive);
314
- const content = (result.contents ?? []).map(c => ({
315
- type: "text" as const,
316
- text: "text" in c ? c.text : ("blob" in c ? `[Binary data: ${(c as { mimeType?: string }).mimeType ?? "unknown"}]` : JSON.stringify(c)),
317
- }));
318
- return {
319
- content: content.length > 0 ? content : [{ type: "text" as const, text: "(empty resource)" }],
320
- details: { mode: "call", resourceUri: toolMeta.resourceUri, server: serverName },
321
- };
322
- }
323
-
324
- uiSession = toolMeta.uiResourceUri
325
- ? await waitForCallerWithLateCleanup(
326
- () => maybeStartUiSession(state, {
327
- serverName,
328
- toolName: toolMeta.originalName,
329
- toolArgs: args ?? {},
330
- uiResourceUri: toolMeta.uiResourceUri!,
331
- streamMode: toolMeta.uiStreamMode,
332
- }),
333
- signal,
334
- (lateSession) => {
335
- if (lateSession && !lateSession.reused) lateSession.close("caller cancelled during UI startup");
336
- },
337
- )
338
- : null;
339
- signal?.throwIfAborted();
340
- assertMcpStateLease(assertActive);
341
-
342
- assertMcpStateLease(assertActive);
343
- const resultPromise = callToolWithConfiguredTimeout(connection.client, {
344
- name: toolMeta.originalName,
345
- // Normalize provider-flattened argument keys (e.g. Gemini's `keywords[0]`)
346
- // back into arrays/objects before the MCP server validates them.
347
- // Schema-aware: literal dotted property names (e.g. `filter.name`) are
348
- // preserved unless the schema proves the head is a container.
349
- arguments: unflattenToolArguments(args, toolMeta.inputSchema),
350
- _meta: uiSession?.requestMeta,
351
- }, definition, serverName, signal);
352
-
353
- if (toolMeta.uiResourceUri) {
354
- const sdkResult = await resultPromise;
355
- signal?.throwIfAborted();
356
- assertMcpStateLease(assertActive);
357
- const result = asCallToolResult(sdkResult);
358
- uiSession?.sendToolResult(result);
359
- const mcpContent = (result.content ?? []) as McpContent[];
360
- const content = transformMcpContent(mcpContent);
361
-
362
- const mcpText = content
363
- .filter((c) => c.type === "text")
364
- .map((c) => (c as { text: string }).text)
365
- .join("\n");
366
-
367
- if (result.isError) {
368
- let errorWithSchema = `Error: ${mcpText || "Tool execution failed"}`;
369
- if (toolMeta.inputSchema) {
370
- errorWithSchema += `\n\nExpected parameters:\n${formatSchema(toolMeta.inputSchema)}`;
371
- }
372
- return {
373
- content: [{ type: "text" as const, text: errorWithSchema }],
374
- details: { mode: "call", error: "tool_error", mcpResult: result },
375
- };
376
- }
377
-
378
- const resultText = mcpText || "(empty result)";
379
- const uiMessage = uiSession?.reused
380
- ? "Updated the open UI."
381
- : "📺 Interactive UI is now open in your browser. I'll respond to your prompts and intents as you interact with it.";
382
- return {
383
- content: [{ type: "text" as const, text: `${resultText}\n\n${uiMessage}` }],
384
- details: { mode: "call", mcpResult: result, server: serverName, tool: toolMeta.originalName, uiOpen: true },
385
- };
386
- }
387
-
388
- const sdkResult = await resultPromise;
389
- signal?.throwIfAborted();
390
- assertMcpStateLease(assertActive);
391
- const result = asCallToolResult(sdkResult);
392
-
393
- const mcpContent = (result.content ?? []) as McpContent[];
394
- const content = transformMcpContent(mcpContent);
395
-
396
- if (result.isError) {
397
- const errorText = content
398
- .filter((c) => c.type === "text")
399
- .map((c) => (c as { text: string }).text)
400
- .join("\n") || "Tool execution failed";
401
-
402
- let errorWithSchema = `Error: ${errorText}`;
403
- if (toolMeta.inputSchema) {
404
- errorWithSchema += `\n\nExpected parameters:\n${formatSchema(toolMeta.inputSchema)}`;
405
- }
406
-
407
- return {
408
- content: [{ type: "text" as const, text: errorWithSchema }],
409
- details: { mode: "call", error: "tool_error", mcpResult: result },
410
- };
411
- }
412
-
413
- return {
414
- content: content.length > 0 ? content : [{ type: "text" as const, text: "(empty result)" }],
415
- details: { mode: "call", mcpResult: result, server: serverName, tool: toolMeta.originalName },
416
- };
417
- } catch (error) {
418
- await rethrowHostAbortAfterUiCancellation(signal, uiSession);
419
- const message = error instanceof Error ? error.message : String(error);
420
- await notifyUiCancellation(uiSession, message);
421
- signal?.throwIfAborted();
422
- assertMcpStateLease(assertActive);
423
-
424
- let errorWithSchema = formatMcpToolCallFailure(error, serverName, definition.timeoutMs);
425
- if (toolMeta.inputSchema) {
426
- errorWithSchema += `\n\nExpected parameters:\n${formatSchema(toolMeta.inputSchema)}`;
427
- }
428
-
429
- return {
430
- content: [{ type: "text" as const, text: errorWithSchema }],
431
- details: { mode: "call", error: "call_failed", message },
432
- };
433
- } finally {
434
- let staleState = false;
435
- try {
436
- assertMcpStateLease(assertActive);
437
- } catch (error) {
438
- if (error instanceof McpStateChangedError) staleState = true;
439
- else throw error;
440
- }
441
- if (uiSession && (uiSession.reused || staleState)) {
442
- uiSession.close(staleState ? "stale MCP session" : undefined);
443
- }
444
- state.manager.decrementInFlight(serverName);
445
- if (!staleState) state.manager.touch(serverName);
446
- }
447
- }