@bastani/atomic 0.9.11-alpha.1 → 0.9.11-alpha.11

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 (2353) hide show
  1. package/CHANGELOG.md +278 -0
  2. package/README.md +16 -11
  3. package/dist/builtin/intercom/package.json +3 -3
  4. package/dist/builtin/intercom/subagent-relay.ts +8 -5
  5. package/dist/builtin/mcp/CHANGELOG.md +12 -0
  6. package/dist/builtin/mcp/README.md +3 -3
  7. package/dist/builtin/mcp/cli.js +0 -1
  8. package/dist/builtin/mcp/commands.ts +7 -3
  9. package/dist/builtin/mcp/config.ts +0 -2
  10. package/dist/builtin/mcp/package.json +6 -6
  11. package/dist/builtin/mcp/sampling-handler.ts +1 -5
  12. package/dist/builtin/mcp/types.ts +0 -1
  13. package/dist/builtin/subagents/CHANGELOG.md +34 -0
  14. package/dist/builtin/subagents/README.md +10 -1
  15. package/dist/builtin/subagents/agents/code-simplifier.md +48 -103
  16. package/dist/builtin/subagents/agents/codebase-analyzer.md +28 -131
  17. package/dist/builtin/subagents/agents/codebase-locator.md +25 -84
  18. package/dist/builtin/subagents/agents/codebase-online-researcher.md +61 -260
  19. package/dist/builtin/subagents/agents/codebase-pattern-finder.md +30 -208
  20. package/dist/builtin/subagents/agents/codebase-research-analyzer.md +29 -151
  21. package/dist/builtin/subagents/agents/codebase-research-locator.md +22 -119
  22. package/dist/builtin/subagents/agents/debugger.md +29 -65
  23. package/dist/builtin/subagents/agents/worker.md +24 -31
  24. package/dist/builtin/subagents/package.json +5 -5
  25. package/dist/builtin/subagents/prompts/gather-context-and-clarify.md +18 -11
  26. package/dist/builtin/subagents/prompts/parallel-cleanup.md +34 -33
  27. package/dist/builtin/subagents/prompts/parallel-context-build.md +22 -36
  28. package/dist/builtin/subagents/prompts/parallel-handoff-plan.md +20 -52
  29. package/dist/builtin/subagents/prompts/parallel-research.md +17 -41
  30. package/dist/builtin/subagents/prompts/parallel-review.md +23 -28
  31. package/dist/builtin/subagents/prompts/review-loop.md +18 -27
  32. package/dist/builtin/subagents/skills/subagent/SKILL.md +6 -6
  33. package/dist/builtin/subagents/src/agents/agent-discovery.ts +26 -15
  34. package/dist/builtin/subagents/src/agents/agent-loaders.ts +48 -34
  35. package/dist/builtin/subagents/src/agents/agent-management-helpers.ts +80 -31
  36. package/dist/builtin/subagents/src/agents/agent-management.ts +194 -55
  37. package/dist/builtin/subagents/src/agents/agent-overrides.ts +85 -32
  38. package/dist/builtin/subagents/src/agents/agent-paths.ts +4 -1
  39. package/dist/builtin/subagents/src/agents/agent-selection.ts +1 -1
  40. package/dist/builtin/subagents/src/agents/agent-serializer.ts +1 -4
  41. package/dist/builtin/subagents/src/agents/agents.ts +9 -9
  42. package/dist/builtin/subagents/src/agents/chain-serializer.ts +9 -5
  43. package/dist/builtin/subagents/src/agents/identity.ts +12 -3
  44. package/dist/builtin/subagents/src/agents/skills-paths.ts +64 -24
  45. package/dist/builtin/subagents/src/agents/skills.ts +29 -26
  46. package/dist/builtin/subagents/src/extension/doctor.ts +31 -20
  47. package/dist/builtin/subagents/src/extension/fanout-child.ts +27 -12
  48. package/dist/builtin/subagents/src/extension/index.ts +119 -43
  49. package/dist/builtin/subagents/src/extension/notification-content.ts +14 -9
  50. package/dist/builtin/subagents/src/extension/prompt-guidance.ts +4 -2
  51. package/dist/builtin/subagents/src/extension/schemas.ts +304 -177
  52. package/dist/builtin/subagents/src/extension/startup-maintenance.ts +137 -73
  53. package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +49 -21
  54. package/dist/builtin/subagents/src/intercom/result-intercom.ts +76 -38
  55. package/dist/builtin/subagents/src/runs/background/async-event-journal.ts +12 -6
  56. package/dist/builtin/subagents/src/runs/background/async-execution-chain.ts +183 -57
  57. package/dist/builtin/subagents/src/runs/background/async-execution-common.ts +15 -18
  58. package/dist/builtin/subagents/src/runs/background/async-execution-single.ts +67 -26
  59. package/dist/builtin/subagents/src/runs/background/async-execution-types.ts +8 -8
  60. package/dist/builtin/subagents/src/runs/background/async-execution.ts +1 -1
  61. package/dist/builtin/subagents/src/runs/background/async-job-tracker.ts +86 -32
  62. package/dist/builtin/subagents/src/runs/background/async-resume.ts +93 -36
  63. package/dist/builtin/subagents/src/runs/background/async-status.ts +82 -27
  64. package/dist/builtin/subagents/src/runs/background/completion-claims.ts +12 -5
  65. package/dist/builtin/subagents/src/runs/background/completion-dedupe.ts +3 -1
  66. package/dist/builtin/subagents/src/runs/background/completion-notification.ts +3 -1
  67. package/dist/builtin/subagents/src/runs/background/notify.ts +57 -21
  68. package/dist/builtin/subagents/src/runs/background/parallel-groups.ts +28 -14
  69. package/dist/builtin/subagents/src/runs/background/result-delivery-processor.ts +147 -79
  70. package/dist/builtin/subagents/src/runs/background/result-file-claims.ts +20 -5
  71. package/dist/builtin/subagents/src/runs/background/result-quarantine.ts +7 -2
  72. package/dist/builtin/subagents/src/runs/background/result-status.ts +11 -5
  73. package/dist/builtin/subagents/src/runs/background/result-watcher-data.ts +18 -5
  74. package/dist/builtin/subagents/src/runs/background/result-watcher.ts +104 -35
  75. package/dist/builtin/subagents/src/runs/background/run-id-resolver.ts +28 -7
  76. package/dist/builtin/subagents/src/runs/background/run-status.ts +120 -32
  77. package/dist/builtin/subagents/src/runs/background/stale-run-reconciler.ts +98 -39
  78. package/dist/builtin/subagents/src/runs/background/subagent-runner-dynamic.ts +185 -37
  79. package/dist/builtin/subagents/src/runs/background/subagent-runner-finalize.ts +23 -9
  80. package/dist/builtin/subagents/src/runs/background/subagent-runner-output.ts +6 -2
  81. package/dist/builtin/subagents/src/runs/background/subagent-runner-parallel-helpers.ts +34 -18
  82. package/dist/builtin/subagents/src/runs/background/subagent-runner-parallel.ts +175 -26
  83. package/dist/builtin/subagents/src/runs/background/subagent-runner-sequential.ts +68 -23
  84. package/dist/builtin/subagents/src/runs/background/subagent-runner-state.ts +200 -49
  85. package/dist/builtin/subagents/src/runs/background/subagent-runner-step.ts +82 -49
  86. package/dist/builtin/subagents/src/runs/background/subagent-runner-streaming.ts +33 -11
  87. package/dist/builtin/subagents/src/runs/background/subagent-runner-types.ts +16 -6
  88. package/dist/builtin/subagents/src/runs/background/subagent-runner-utils.ts +2 -3
  89. package/dist/builtin/subagents/src/runs/background/subagent-runner.ts +11 -8
  90. package/dist/builtin/subagents/src/runs/foreground/chain-execution-details.ts +5 -2
  91. package/dist/builtin/subagents/src/runs/foreground/chain-execution-dynamic-step.ts +115 -31
  92. package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-runner.ts +71 -54
  93. package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-step.ts +104 -37
  94. package/dist/builtin/subagents/src/runs/foreground/chain-execution-sequential-step.ts +102 -61
  95. package/dist/builtin/subagents/src/runs/foreground/chain-execution-types.ts +24 -10
  96. package/dist/builtin/subagents/src/runs/foreground/chain-execution.ts +9 -6
  97. package/dist/builtin/subagents/src/runs/foreground/detached-cleanup-barrier.ts +22 -22
  98. package/dist/builtin/subagents/src/runs/foreground/execution-attempt-control.ts +45 -40
  99. package/dist/builtin/subagents/src/runs/foreground/execution-attempt-finalize.ts +6 -5
  100. package/dist/builtin/subagents/src/runs/foreground/execution-attempt.ts +118 -43
  101. package/dist/builtin/subagents/src/runs/foreground/execution-detach-reservations.ts +17 -7
  102. package/dist/builtin/subagents/src/runs/foreground/execution-detach-route.ts +5 -3
  103. package/dist/builtin/subagents/src/runs/foreground/execution-intercom-detach.ts +39 -35
  104. package/dist/builtin/subagents/src/runs/foreground/execution-run-sync.ts +81 -42
  105. package/dist/builtin/subagents/src/runs/foreground/execution-structured-retries.ts +27 -21
  106. package/dist/builtin/subagents/src/runs/foreground/execution-updates.ts +2 -5
  107. package/dist/builtin/subagents/src/runs/foreground/execution-utils.ts +9 -4
  108. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-async.ts +69 -25
  109. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-chain.ts +36 -19
  110. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +95 -62
  111. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +30 -9
  112. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +106 -96
  113. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +68 -36
  114. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-resume.ts +262 -83
  115. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-runtime.ts +6 -1
  116. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +67 -41
  117. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +129 -44
  118. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +20 -3
  119. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-worktree.ts +8 -6
  120. package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +65 -47
  121. package/dist/builtin/subagents/src/runs/shared/chain-outputs.ts +37 -12
  122. package/dist/builtin/subagents/src/runs/shared/dynamic-fanout.ts +120 -34
  123. package/dist/builtin/subagents/src/runs/shared/final-drain.ts +12 -7
  124. package/dist/builtin/subagents/src/runs/shared/intercom-group.ts +3 -2
  125. package/dist/builtin/subagents/src/runs/shared/long-running-guard.ts +8 -3
  126. package/dist/builtin/subagents/src/runs/shared/mcp-direct-tool-allowlist.ts +42 -20
  127. package/dist/builtin/subagents/src/runs/shared/model-candidate-filter.ts +8 -4
  128. package/dist/builtin/subagents/src/runs/shared/model-fallback.ts +103 -38
  129. package/dist/builtin/subagents/src/runs/shared/nested-events-control.ts +30 -20
  130. package/dist/builtin/subagents/src/runs/shared/nested-events-core.ts +45 -20
  131. package/dist/builtin/subagents/src/runs/shared/nested-events-projection.ts +57 -23
  132. package/dist/builtin/subagents/src/runs/shared/nested-events-registry.ts +77 -29
  133. package/dist/builtin/subagents/src/runs/shared/nested-events-sanitize.ts +99 -42
  134. package/dist/builtin/subagents/src/runs/shared/nested-events.ts +32 -26
  135. package/dist/builtin/subagents/src/runs/shared/nested-path.ts +22 -17
  136. package/dist/builtin/subagents/src/runs/shared/nested-render.ts +31 -10
  137. package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +10 -8
  138. package/dist/builtin/subagents/src/runs/shared/pi-args.ts +59 -33
  139. package/dist/builtin/subagents/src/runs/shared/pi-spawn.ts +17 -13
  140. package/dist/builtin/subagents/src/runs/shared/run-history.ts +13 -6
  141. package/dist/builtin/subagents/src/runs/shared/single-output.ts +11 -6
  142. package/dist/builtin/subagents/src/runs/shared/spawn-env.ts +21 -0
  143. package/dist/builtin/subagents/src/runs/shared/structured-output.ts +33 -19
  144. package/dist/builtin/subagents/src/runs/shared/subagent-control.ts +59 -48
  145. package/dist/builtin/subagents/src/runs/shared/subagent-prompt-runtime.ts +18 -11
  146. package/dist/builtin/subagents/src/runs/shared/workflow-graph.ts +41 -11
  147. package/dist/builtin/subagents/src/runs/shared/worktree-post-create.ts +46 -10
  148. package/dist/builtin/subagents/src/runs/shared/worktree-root.ts +21 -5
  149. package/dist/builtin/subagents/src/runs/shared/worktree.ts +89 -34
  150. package/dist/builtin/subagents/src/shared/artifacts.ts +137 -7
  151. package/dist/builtin/subagents/src/shared/event-jsonl-writer.ts +49 -13
  152. package/dist/builtin/subagents/src/shared/fast-mode.ts +13 -6
  153. package/dist/builtin/subagents/src/shared/fork-context.ts +7 -4
  154. package/dist/builtin/subagents/src/shared/formatters.ts +14 -9
  155. package/dist/builtin/subagents/src/shared/jsonl-writer.ts +2 -1
  156. package/dist/builtin/subagents/src/shared/model-info.ts +10 -3
  157. package/dist/builtin/subagents/src/shared/post-exit-stdio-guard.ts +7 -6
  158. package/dist/builtin/subagents/src/shared/session-tokens.ts +2 -1
  159. package/dist/builtin/subagents/src/shared/settings.ts +43 -43
  160. package/dist/builtin/subagents/src/shared/status-format.ts +10 -2
  161. package/dist/builtin/subagents/src/shared/types-async.ts +22 -19
  162. package/dist/builtin/subagents/src/shared/types-config.ts +1 -1
  163. package/dist/builtin/subagents/src/shared/types-depth.ts +23 -11
  164. package/dist/builtin/subagents/src/shared/types-results.ts +49 -6
  165. package/dist/builtin/subagents/src/shared/types-runtime.ts +16 -17
  166. package/dist/builtin/subagents/src/shared/types.ts +2 -2
  167. package/dist/builtin/subagents/src/shared/utils.ts +34 -20
  168. package/dist/builtin/subagents/src/slash/prompt-template-bridge.ts +44 -47
  169. package/dist/builtin/subagents/src/slash/saved-chain-mapping.ts +5 -7
  170. package/dist/builtin/subagents/src/slash/slash-bridge.ts +3 -3
  171. package/dist/builtin/subagents/src/slash/slash-commands.ts +78 -52
  172. package/dist/builtin/subagents/src/slash/slash-live-state.ts +59 -32
  173. package/dist/builtin/subagents/src/tui/render-chain-graph.ts +120 -32
  174. package/dist/builtin/subagents/src/tui/render-event-formatting.ts +85 -22
  175. package/dist/builtin/subagents/src/tui/render-helpers.ts +16 -6
  176. package/dist/builtin/subagents/src/tui/render-layout.ts +8 -3
  177. package/dist/builtin/subagents/src/tui/render-result-compact.ts +125 -43
  178. package/dist/builtin/subagents/src/tui/render-result.ts +128 -85
  179. package/dist/builtin/subagents/src/tui/render-stable-output.ts +17 -13
  180. package/dist/builtin/subagents/src/tui/render-status-progress.ts +52 -20
  181. package/dist/builtin/subagents/src/tui/render-widget-graph.ts +130 -28
  182. package/dist/builtin/subagents/src/tui/render-widget.ts +54 -27
  183. package/dist/builtin/subagents/src/tui/render.ts +10 -3
  184. package/dist/builtin/web-access/CHANGELOG.md +6 -0
  185. package/dist/builtin/web-access/content-tools.ts +1 -0
  186. package/dist/builtin/web-access/flat-string.ts +37 -0
  187. package/dist/builtin/web-access/github-api.ts +2 -1
  188. package/dist/builtin/web-access/github-extract.ts +3 -2
  189. package/dist/builtin/web-access/package.json +2 -2
  190. package/dist/builtin/workflows/CHANGELOG.md +120 -0
  191. package/dist/builtin/workflows/README.md +78 -70
  192. package/dist/builtin/workflows/ambient.d.ts +0 -5
  193. package/dist/builtin/workflows/builtin/adversarial-verification-prompts.ts +7 -4
  194. package/dist/builtin/workflows/builtin/adversarial-verification-runner.ts +1 -1
  195. package/dist/builtin/workflows/builtin/adversarial-verification.ts +2 -1
  196. package/dist/builtin/workflows/builtin/classify-and-act-prompts.ts +5 -2
  197. package/dist/builtin/workflows/builtin/classify-and-act-runner.ts +5 -7
  198. package/dist/builtin/workflows/builtin/classify-and-act.ts +3 -2
  199. package/dist/builtin/workflows/builtin/fan-out-and-synthesize-prompts.ts +6 -3
  200. package/dist/builtin/workflows/builtin/fan-out-and-synthesize-runner.ts +5 -5
  201. package/dist/builtin/workflows/builtin/fan-out-and-synthesize.ts +3 -2
  202. package/dist/builtin/workflows/builtin/generate-and-filter-prompts.ts +7 -4
  203. package/dist/builtin/workflows/builtin/generate-and-filter-runner.ts +6 -3
  204. package/dist/builtin/workflows/builtin/generate-and-filter.ts +3 -2
  205. package/dist/builtin/workflows/builtin/goal-artifacts.ts +1 -1
  206. package/dist/builtin/workflows/builtin/goal-ledger.ts +6 -4
  207. package/dist/builtin/workflows/builtin/goal-models.ts +39 -39
  208. package/dist/builtin/workflows/builtin/goal-orchestrator-prompts.ts +94 -0
  209. package/dist/builtin/workflows/builtin/goal-prompts.ts +70 -285
  210. package/dist/builtin/workflows/builtin/goal-reducer.ts +1 -1
  211. package/dist/builtin/workflows/builtin/goal-runner.ts +74 -117
  212. package/dist/builtin/workflows/builtin/goal.ts +13 -12
  213. package/dist/builtin/workflows/builtin/index.d.ts +17 -112
  214. package/dist/builtin/workflows/builtin/index.ts +1 -2
  215. package/dist/builtin/workflows/builtin/loop-until-done-prompts.ts +20 -12
  216. package/dist/builtin/workflows/builtin/loop-until-done-runner.ts +3 -0
  217. package/dist/builtin/workflows/builtin/loop-until-done.ts +3 -2
  218. package/dist/builtin/workflows/builtin/open-claude-design-phases.ts +149 -88
  219. package/dist/builtin/workflows/builtin/open-claude-design-runner.ts +102 -78
  220. package/dist/builtin/workflows/builtin/open-claude-design-setup.ts +164 -56
  221. package/dist/builtin/workflows/builtin/open-claude-design-utils.ts +16 -21
  222. package/dist/builtin/workflows/builtin/open-claude-design.ts +2 -1
  223. package/dist/builtin/workflows/builtin/ralph-core.ts +67 -64
  224. package/dist/builtin/workflows/builtin/ralph-forked-prompts.ts +40 -46
  225. package/dist/builtin/workflows/builtin/ralph-models.ts +37 -47
  226. package/dist/builtin/workflows/builtin/ralph-reviewer-prompt.ts +37 -117
  227. package/dist/builtin/workflows/builtin/ralph-runner.ts +88 -116
  228. package/dist/builtin/workflows/builtin/ralph.ts +8 -6
  229. package/dist/builtin/workflows/builtin/shared-prompts.ts +117 -70
  230. package/dist/builtin/workflows/builtin/steering-context.ts +51 -0
  231. package/dist/builtin/workflows/builtin/tournament-prompts.ts +21 -12
  232. package/dist/builtin/workflows/builtin/tournament-runner.ts +3 -0
  233. package/dist/builtin/workflows/builtin/tournament.ts +3 -2
  234. package/dist/builtin/workflows/package.json +4 -4
  235. package/dist/builtin/workflows/skills/create-spec/SKILL.md +1 -1
  236. package/dist/builtin/workflows/skills/impeccable/SKILL.md +33 -129
  237. package/dist/builtin/workflows/skills/impeccable/agents/impeccable_asset_producer.toml +11 -3
  238. package/dist/builtin/workflows/skills/impeccable/agents/impeccable_documenter.toml +26 -0
  239. package/dist/builtin/workflows/skills/impeccable/agents/impeccable_finish_reviewer.toml +35 -0
  240. package/dist/builtin/workflows/skills/impeccable/reference/android.md +1 -1
  241. package/dist/builtin/workflows/skills/impeccable/reference/animate.md +72 -189
  242. package/dist/builtin/workflows/skills/impeccable/reference/audit.md +10 -9
  243. package/dist/builtin/workflows/skills/impeccable/reference/audit.native.md +2 -2
  244. package/dist/builtin/workflows/skills/impeccable/reference/bolder.md +19 -108
  245. package/dist/builtin/workflows/skills/impeccable/reference/clarify.md +59 -253
  246. package/dist/builtin/workflows/skills/impeccable/reference/colorize.md +51 -222
  247. package/dist/builtin/workflows/skills/impeccable/reference/craft-floor.md +45 -0
  248. package/dist/builtin/workflows/skills/impeccable/reference/craft.md +3 -121
  249. package/dist/builtin/workflows/skills/impeccable/reference/critique.md +28 -20
  250. package/dist/builtin/workflows/skills/impeccable/reference/degraded/asset-producer.md +97 -0
  251. package/dist/builtin/workflows/skills/impeccable/reference/degraded/documenter.md +23 -0
  252. package/dist/builtin/workflows/skills/impeccable/reference/degraded/finish-reviewer.md +32 -0
  253. package/dist/builtin/workflows/skills/impeccable/reference/degraded/manual-edit-applier.md +92 -0
  254. package/dist/builtin/workflows/skills/impeccable/reference/delight.md +47 -279
  255. package/dist/builtin/workflows/skills/impeccable/reference/distill.md +2 -2
  256. package/dist/builtin/workflows/skills/impeccable/reference/doctor.md +53 -0
  257. package/dist/builtin/workflows/skills/impeccable/reference/document.md +60 -73
  258. package/dist/builtin/workflows/skills/impeccable/reference/harden.md +1 -12
  259. package/dist/builtin/workflows/skills/impeccable/reference/hooks.md +23 -12
  260. package/dist/builtin/workflows/skills/impeccable/reference/init.md +64 -163
  261. package/dist/builtin/workflows/skills/impeccable/reference/ios.md +1 -1
  262. package/dist/builtin/workflows/skills/impeccable/reference/layout.md +52 -153
  263. package/dist/builtin/workflows/skills/impeccable/reference/live.md +47 -36
  264. package/dist/builtin/workflows/skills/impeccable/reference/new-work.md +105 -0
  265. package/dist/builtin/workflows/skills/impeccable/reference/{product.md → operate.md} +6 -5
  266. package/dist/builtin/workflows/skills/impeccable/reference/optimize.md +4 -4
  267. package/dist/builtin/workflows/skills/impeccable/reference/overdrive.md +1 -4
  268. package/dist/builtin/workflows/skills/impeccable/reference/polish.md +68 -212
  269. package/dist/builtin/workflows/skills/impeccable/reference/quieter.md +3 -3
  270. package/dist/builtin/workflows/skills/impeccable/reference/routing.md +18 -0
  271. package/dist/builtin/workflows/skills/impeccable/reference/shape.md +38 -144
  272. package/dist/builtin/workflows/skills/impeccable/reference/typeset.md +48 -269
  273. package/dist/builtin/workflows/skills/impeccable/reference/visualize.md +38 -0
  274. package/dist/builtin/workflows/skills/impeccable/scripts/command-metadata.json +1 -1
  275. package/dist/builtin/workflows/skills/impeccable/scripts/concept-seed.mjs +584 -0
  276. package/dist/builtin/workflows/skills/impeccable/scripts/context-signals.mjs +117 -9
  277. package/dist/builtin/workflows/skills/impeccable/scripts/context.mjs +486 -59
  278. package/dist/builtin/workflows/skills/impeccable/scripts/critique-storage.mjs +16 -45
  279. package/dist/builtin/workflows/skills/impeccable/scripts/detector/browser/injected/index.mjs +96 -10
  280. package/dist/builtin/workflows/skills/impeccable/scripts/detector/cli/main.mjs +143 -26
  281. package/dist/builtin/workflows/skills/impeccable/scripts/detector/design-system.mjs +181 -12
  282. package/dist/builtin/workflows/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +3187 -182
  283. package/dist/builtin/workflows/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +102 -7
  284. package/dist/builtin/workflows/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +282 -70
  285. package/dist/builtin/workflows/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +183 -15
  286. package/dist/builtin/workflows/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +22 -7
  287. package/dist/builtin/workflows/skills/impeccable/scripts/detector/findings.mjs +7 -1
  288. package/dist/builtin/workflows/skills/impeccable/scripts/detector/node/file-system.mjs +16 -2
  289. package/dist/builtin/workflows/skills/impeccable/scripts/detector/registry/antipatterns.mjs +155 -42
  290. package/dist/builtin/workflows/skills/impeccable/scripts/detector/rules/checks.mjs +2988 -155
  291. package/dist/builtin/workflows/skills/impeccable/scripts/detector/shared/constants.mjs +11 -0
  292. package/dist/builtin/workflows/skills/impeccable/scripts/doctor.mjs +336 -0
  293. package/dist/builtin/workflows/skills/impeccable/scripts/generate-image.mjs +232 -0
  294. package/dist/builtin/workflows/skills/impeccable/scripts/hook-admin.mjs +92 -30
  295. package/dist/builtin/workflows/skills/impeccable/scripts/hook-lib.mjs +414 -120
  296. package/dist/builtin/workflows/skills/impeccable/scripts/hook.mjs +25 -8
  297. package/dist/builtin/workflows/skills/impeccable/scripts/lib/artifact-schema.mjs +93 -0
  298. package/dist/builtin/workflows/skills/impeccable/scripts/lib/composition-catalog.mjs +165 -0
  299. package/dist/builtin/workflows/skills/impeccable/scripts/lib/concept-catalog.mjs +329 -0
  300. package/dist/builtin/workflows/skills/impeccable/scripts/lib/impeccable-config.mjs +20 -5
  301. package/dist/builtin/workflows/skills/impeccable/scripts/lib/impeccable-paths.mjs +16 -8
  302. package/dist/builtin/workflows/skills/impeccable/scripts/lib/provider.mjs +1 -0
  303. package/dist/builtin/workflows/skills/impeccable/scripts/lib/staleness-deep.mjs +455 -0
  304. package/dist/builtin/workflows/skills/impeccable/scripts/lib/staleness-notice.mjs +169 -0
  305. package/dist/builtin/workflows/skills/impeccable/scripts/lib/staleness.mjs +457 -0
  306. package/dist/builtin/workflows/skills/impeccable/scripts/lib/surface-briefs.mjs +151 -0
  307. package/dist/builtin/workflows/skills/impeccable/scripts/lib/target-slug.mjs +33 -0
  308. package/dist/builtin/workflows/skills/impeccable/scripts/lib/template-extensions.mjs +146 -0
  309. package/dist/builtin/workflows/skills/impeccable/scripts/live/completion.mjs +10 -1
  310. package/dist/builtin/workflows/skills/impeccable/scripts/live/event-validation.mjs +15 -0
  311. package/dist/builtin/workflows/skills/impeccable/scripts/live/generation-preflight.mjs +149 -0
  312. package/dist/builtin/workflows/skills/impeccable/scripts/live/poll-lanes.mjs +14 -0
  313. package/dist/builtin/workflows/skills/impeccable/scripts/live/session-store.mjs +109 -32
  314. package/dist/builtin/workflows/skills/impeccable/scripts/live/source-lock.mjs +105 -0
  315. package/dist/builtin/workflows/skills/impeccable/scripts/live/source-search.mjs +105 -0
  316. package/dist/builtin/workflows/skills/impeccable/scripts/live/sveltekit-adapter.mjs +8 -6
  317. package/dist/builtin/workflows/skills/impeccable/scripts/live/tanstack-adapter.mjs +280 -0
  318. package/dist/builtin/workflows/skills/impeccable/scripts/live-accept.mjs +212 -69
  319. package/dist/builtin/workflows/skills/impeccable/scripts/live-browser-dom.js +5 -1
  320. package/dist/builtin/workflows/skills/impeccable/scripts/live-browser-session.js +7 -1
  321. package/dist/builtin/workflows/skills/impeccable/scripts/live-browser.js +565 -115
  322. package/dist/builtin/workflows/skills/impeccable/scripts/live-commit-manual-edits.mjs +3 -0
  323. package/dist/builtin/workflows/skills/impeccable/scripts/live-inject.mjs +198 -14
  324. package/dist/builtin/workflows/skills/impeccable/scripts/live-insert.mjs +24 -6
  325. package/dist/builtin/workflows/skills/impeccable/scripts/live-manual-edit-evidence.mjs +11 -3
  326. package/dist/builtin/workflows/skills/impeccable/scripts/live-poll.mjs +44 -14
  327. package/dist/builtin/workflows/skills/impeccable/scripts/live-server.mjs +405 -34
  328. package/dist/builtin/workflows/skills/impeccable/scripts/live-status.mjs +9 -5
  329. package/dist/builtin/workflows/skills/impeccable/scripts/live-wrap.mjs +81 -67
  330. package/dist/builtin/workflows/skills/impeccable/scripts/live.mjs +7 -2
  331. package/dist/builtin/workflows/skills/impeccable/scripts/palette.mjs +76 -81
  332. package/dist/builtin/workflows/skills/impeccable/scripts/pin.mjs +4 -4
  333. package/dist/builtin/workflows/skills/impeccable/scripts/serve-question.mjs +890 -0
  334. package/dist/builtin/workflows/skills/impeccable/scripts/surface-brief.mjs +74 -0
  335. package/dist/builtin/workflows/skills/prompt-engineer/SKILL.md +57 -252
  336. package/dist/builtin/workflows/skills/prompt-engineer/references/advanced_patterns.md +70 -226
  337. package/dist/builtin/workflows/skills/prompt-engineer/references/core_prompting.md +64 -103
  338. package/dist/builtin/workflows/skills/prompt-engineer/references/quality_improvement.md +81 -155
  339. package/dist/builtin/workflows/src/authoring/typebox-defaults.d.ts +5 -5
  340. package/dist/builtin/workflows/src/authoring/typebox-defaults.ts +160 -197
  341. package/dist/builtin/workflows/src/authoring/workflow.ts +137 -132
  342. package/dist/builtin/workflows/src/authoring.d.ts +7 -3
  343. package/dist/builtin/workflows/src/durable/backend.ts +510 -383
  344. package/dist/builtin/workflows/src/durable/boundary-lifecycle.ts +172 -0
  345. package/dist/builtin/workflows/src/durable/boundary-topology.ts +475 -0
  346. package/dist/builtin/workflows/src/durable/child-invocation.ts +14 -0
  347. package/dist/builtin/workflows/src/durable/child-primitive.ts +115 -74
  348. package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +290 -0
  349. package/dist/builtin/workflows/src/durable/completed-catalog.ts +425 -189
  350. package/dist/builtin/workflows/src/durable/completed-inspection.ts +117 -105
  351. package/dist/builtin/workflows/src/durable/completed-subtree.ts +35 -0
  352. package/dist/builtin/workflows/src/durable/dbos-backend.ts +484 -414
  353. package/dist/builtin/workflows/src/durable/dbos-embedded-postgres-root.ts +86 -87
  354. package/dist/builtin/workflows/src/durable/dbos-embedded-postgres.ts +171 -149
  355. package/dist/builtin/workflows/src/durable/dbos-envelope.ts +415 -189
  356. package/dist/builtin/workflows/src/durable/dbos-lifecycle.ts +128 -106
  357. package/dist/builtin/workflows/src/durable/dbos-local-postgres.ts +75 -68
  358. package/dist/builtin/workflows/src/durable/dbos-metadata.ts +138 -101
  359. package/dist/builtin/workflows/src/durable/dbos-prompt-reservations.ts +316 -259
  360. package/dist/builtin/workflows/src/durable/dbos-sdk-handle.ts +138 -117
  361. package/dist/builtin/workflows/src/durable/dbos-status-transition.ts +48 -43
  362. package/dist/builtin/workflows/src/durable/dbos-tombstone.ts +14 -14
  363. package/dist/builtin/workflows/src/durable/durable-hash.ts +9 -11
  364. package/dist/builtin/workflows/src/durable/factory.ts +54 -29
  365. package/dist/builtin/workflows/src/durable/format-version.ts +1 -1
  366. package/dist/builtin/workflows/src/durable/index.ts +69 -68
  367. package/dist/builtin/workflows/src/durable/local-command.ts +47 -43
  368. package/dist/builtin/workflows/src/durable/prompt-reservation-state.ts +156 -149
  369. package/dist/builtin/workflows/src/durable/prompt-reservations.ts +16 -16
  370. package/dist/builtin/workflows/src/durable/resume-catalog.ts +11 -11
  371. package/dist/builtin/workflows/src/durable/resume-eligibility.ts +69 -25
  372. package/dist/builtin/workflows/src/durable/resume-runtime.ts +262 -224
  373. package/dist/builtin/workflows/src/durable/retention-policy.ts +31 -30
  374. package/dist/builtin/workflows/src/durable/run-timing.ts +42 -41
  375. package/dist/builtin/workflows/src/durable/scoped-backend.ts +261 -193
  376. package/dist/builtin/workflows/src/durable/stage-primitive.ts +466 -370
  377. package/dist/builtin/workflows/src/durable/stage-topology-validation.ts +247 -0
  378. package/dist/builtin/workflows/src/durable/stage-topology.ts +53 -0
  379. package/dist/builtin/workflows/src/durable/tool-failure-checkpoint.ts +49 -0
  380. package/dist/builtin/workflows/src/durable/tool-outcome.ts +130 -0
  381. package/dist/builtin/workflows/src/durable/tool-primitive.ts +650 -137
  382. package/dist/builtin/workflows/src/durable/types.ts +243 -132
  383. package/dist/builtin/workflows/src/durable/ui-primitive.ts +243 -164
  384. package/dist/builtin/workflows/src/durable/workflow-child-result.ts +61 -0
  385. package/dist/builtin/workflows/src/durable/workflow-status-transition.ts +16 -15
  386. package/dist/builtin/workflows/src/engine/graph-inference.ts +76 -76
  387. package/dist/builtin/workflows/src/engine/options.ts +35 -35
  388. package/dist/builtin/workflows/src/engine/primitives/chain.ts +27 -22
  389. package/dist/builtin/workflows/src/engine/primitives/exit.ts +1 -1
  390. package/dist/builtin/workflows/src/engine/primitives/parallel.ts +64 -52
  391. package/dist/builtin/workflows/src/engine/primitives/task.ts +110 -95
  392. package/dist/builtin/workflows/src/engine/primitives/ui.ts +46 -50
  393. package/dist/builtin/workflows/src/engine/primitives/workflow.ts +194 -151
  394. package/dist/builtin/workflows/src/engine/replay.ts +6 -6
  395. package/dist/builtin/workflows/src/engine/run-durable-admission.ts +50 -0
  396. package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +64 -37
  397. package/dist/builtin/workflows/src/engine/run-durable-stage-session.ts +30 -24
  398. package/dist/builtin/workflows/src/engine/run-durable-topology.ts +288 -0
  399. package/dist/builtin/workflows/src/engine/run-returned-status.ts +60 -57
  400. package/dist/builtin/workflows/src/engine/run-terminal-event.ts +39 -0
  401. package/dist/builtin/workflows/src/engine/run-terminal-failure.ts +53 -0
  402. package/dist/builtin/workflows/src/engine/run-tool-admission-boundary.ts +99 -0
  403. package/dist/builtin/workflows/src/engine/run-tool-control-registry.ts +179 -0
  404. package/dist/builtin/workflows/src/engine/run-tool-execution-tracker.ts +164 -0
  405. package/dist/builtin/workflows/src/engine/run-tool-node-lifecycle.ts +152 -0
  406. package/dist/builtin/workflows/src/engine/run.ts +681 -477
  407. package/dist/builtin/workflows/src/engine/runtime.ts +160 -140
  408. package/dist/builtin/workflows/src/engine/workflow-activity.ts +7 -3
  409. package/dist/builtin/workflows/src/engine/workflow-tool-abort.ts +92 -0
  410. package/dist/builtin/workflows/src/extension/atomic-stage-session.ts +123 -120
  411. package/dist/builtin/workflows/src/extension/background-ui-adapter.ts +108 -112
  412. package/dist/builtin/workflows/src/extension/companions.ts +116 -116
  413. package/dist/builtin/workflows/src/extension/completed-stage-intercom-ask.ts +123 -111
  414. package/dist/builtin/workflows/src/extension/config-file-loader.ts +153 -148
  415. package/dist/builtin/workflows/src/extension/config-loader.ts +264 -283
  416. package/dist/builtin/workflows/src/extension/discovery-loaders.ts +81 -84
  417. package/dist/builtin/workflows/src/extension/discovery.ts +267 -272
  418. package/dist/builtin/workflows/src/extension/dispatcher.ts +214 -217
  419. package/dist/builtin/workflows/src/extension/extension-factory.ts +103 -93
  420. package/dist/builtin/workflows/src/extension/extension-lifecycle.ts +127 -111
  421. package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +418 -409
  422. package/dist/builtin/workflows/src/extension/hil-answer-notifications.ts +273 -261
  423. package/dist/builtin/workflows/src/extension/index.bundle.mjs +75711 -0
  424. package/dist/builtin/workflows/src/extension/index.ts +37 -37
  425. package/dist/builtin/workflows/src/extension/lifecycle-notification-delivery.ts +64 -64
  426. package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +389 -369
  427. package/dist/builtin/workflows/src/extension/mcp.ts +35 -35
  428. package/dist/builtin/workflows/src/extension/postmortem-deps.ts +32 -35
  429. package/dist/builtin/workflows/src/extension/public-types.ts +160 -182
  430. package/dist/builtin/workflows/src/extension/render-call.ts +85 -88
  431. package/dist/builtin/workflows/src/extension/render-component.ts +9 -11
  432. package/dist/builtin/workflows/src/extension/render-result.ts +443 -375
  433. package/dist/builtin/workflows/src/extension/renderers.ts +35 -35
  434. package/dist/builtin/workflows/src/extension/runtime-active-block-claim.ts +37 -37
  435. package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +143 -138
  436. package/dist/builtin/workflows/src/extension/runtime.ts +346 -258
  437. package/dist/builtin/workflows/src/extension/status-writer.ts +95 -95
  438. package/dist/builtin/workflows/src/extension/ui-surface.ts +224 -218
  439. package/dist/builtin/workflows/src/extension/wiring.ts +307 -281
  440. package/dist/builtin/workflows/src/extension/workflow-command-completions.ts +109 -108
  441. package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +253 -224
  442. package/dist/builtin/workflows/src/extension/workflow-command-surfaces.ts +84 -83
  443. package/dist/builtin/workflows/src/extension/workflow-command-utils.ts +126 -132
  444. package/dist/builtin/workflows/src/extension/workflow-durable-resume-command.ts +213 -202
  445. package/dist/builtin/workflows/src/extension/workflow-model-catalog.ts +24 -0
  446. package/dist/builtin/workflows/src/extension/workflow-module-loader.ts +110 -95
  447. package/dist/builtin/workflows/src/extension/workflow-policy.ts +7 -9
  448. package/dist/builtin/workflows/src/extension/workflow-ports.ts +30 -34
  449. package/dist/builtin/workflows/src/extension/workflow-prompts.ts +41 -20
  450. package/dist/builtin/workflows/src/extension/workflow-reload-coordinator.ts +46 -46
  451. package/dist/builtin/workflows/src/extension/workflow-reload-report.ts +28 -25
  452. package/dist/builtin/workflows/src/extension/workflow-resume-picker-rows.ts +61 -46
  453. package/dist/builtin/workflows/src/extension/workflow-resume-shadow.ts +29 -31
  454. package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +531 -453
  455. package/dist/builtin/workflows/src/extension/workflow-schema.ts +149 -92
  456. package/dist/builtin/workflows/src/extension/workflow-stage-results.ts +182 -194
  457. package/dist/builtin/workflows/src/extension/workflow-status-summary.ts +151 -118
  458. package/dist/builtin/workflows/src/extension/workflow-targets.ts +159 -128
  459. package/dist/builtin/workflows/src/extension/workflow-tool-content.ts +204 -217
  460. package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +485 -372
  461. package/dist/builtin/workflows/src/extension/workflow-tool-inspection.ts +124 -150
  462. package/dist/builtin/workflows/src/extension/workflow-tool-registration.ts +43 -46
  463. package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +346 -206
  464. package/dist/builtin/workflows/src/extension/workflow-tool.ts +113 -129
  465. package/dist/builtin/workflows/src/intercom/intercom-bridge.ts +17 -20
  466. package/dist/builtin/workflows/src/intercom/intercom-routing.ts +62 -62
  467. package/dist/builtin/workflows/src/intercom/result-intercom.ts +123 -123
  468. package/dist/builtin/workflows/src/runs/background/cancellation-registry.ts +72 -59
  469. package/dist/builtin/workflows/src/runs/background/durable-resume-transition.ts +45 -45
  470. package/dist/builtin/workflows/src/runs/background/job-tracker.ts +69 -34
  471. package/dist/builtin/workflows/src/runs/background/quit-tool-node.ts +71 -0
  472. package/dist/builtin/workflows/src/runs/background/quit.ts +360 -138
  473. package/dist/builtin/workflows/src/runs/background/resume-acknowledgements.ts +70 -69
  474. package/dist/builtin/workflows/src/runs/background/run-inspect.ts +90 -79
  475. package/dist/builtin/workflows/src/runs/background/runner.ts +122 -121
  476. package/dist/builtin/workflows/src/runs/background/startup-admission.ts +56 -60
  477. package/dist/builtin/workflows/src/runs/background/status.ts +325 -284
  478. package/dist/builtin/workflows/src/runs/background/workflow-lifecycle-aggregate.ts +25 -26
  479. package/dist/builtin/workflows/src/runs/foreground/executor-abort.ts +311 -309
  480. package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +229 -199
  481. package/dist/builtin/workflows/src/runs/foreground/executor-child-helpers.ts +56 -51
  482. package/dist/builtin/workflows/src/runs/foreground/executor-continuation.ts +168 -152
  483. package/dist/builtin/workflows/src/runs/foreground/executor-direct-helpers.ts +258 -220
  484. package/dist/builtin/workflows/src/runs/foreground/executor-exit-manager.ts +178 -173
  485. package/dist/builtin/workflows/src/runs/foreground/executor-hil.ts +273 -269
  486. package/dist/builtin/workflows/src/runs/foreground/executor-inputs.ts +59 -56
  487. package/dist/builtin/workflows/src/runs/foreground/executor-lifecycle.ts +379 -351
  488. package/dist/builtin/workflows/src/runs/foreground/executor-outputs.ts +123 -127
  489. package/dist/builtin/workflows/src/runs/foreground/executor-prompt-nodes.ts +360 -295
  490. package/dist/builtin/workflows/src/runs/foreground/executor-queued-user-message.ts +47 -47
  491. package/dist/builtin/workflows/src/runs/foreground/executor-run-finalizers.ts +125 -104
  492. package/dist/builtin/workflows/src/runs/foreground/executor-scheduler.ts +191 -189
  493. package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +309 -242
  494. package/dist/builtin/workflows/src/runs/foreground/executor-stage-context.ts +141 -127
  495. package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +219 -179
  496. package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +410 -354
  497. package/dist/builtin/workflows/src/runs/foreground/executor-stage-replay.ts +143 -126
  498. package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +50 -47
  499. package/dist/builtin/workflows/src/runs/foreground/executor-task-context.ts +1 -1
  500. package/dist/builtin/workflows/src/runs/foreground/executor-task-prompts.ts +153 -153
  501. package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +157 -110
  502. package/dist/builtin/workflows/src/runs/foreground/executor.ts +10 -10
  503. package/dist/builtin/workflows/src/runs/foreground/postmortem-stage-chat.ts +176 -100
  504. package/dist/builtin/workflows/src/runs/foreground/stage-control-registry.ts +363 -257
  505. package/dist/builtin/workflows/src/runs/foreground/stage-delivery-activity.ts +86 -0
  506. package/dist/builtin/workflows/src/runs/foreground/stage-queued-user-messages.ts +95 -0
  507. package/dist/builtin/workflows/src/runs/foreground/stage-runner-candidate.ts +8 -8
  508. package/dist/builtin/workflows/src/runs/foreground/stage-runner-context.ts +277 -219
  509. package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +636 -494
  510. package/dist/builtin/workflows/src/runs/foreground/stage-runner-message-admission.ts +182 -181
  511. package/dist/builtin/workflows/src/runs/foreground/stage-runner-messages.ts +80 -80
  512. package/dist/builtin/workflows/src/runs/foreground/stage-runner-options.ts +78 -74
  513. package/dist/builtin/workflows/src/runs/foreground/stage-runner-output.ts +235 -106
  514. package/dist/builtin/workflows/src/runs/foreground/stage-runner-pause.ts +200 -0
  515. package/dist/builtin/workflows/src/runs/foreground/stage-runner-replacement.ts +31 -32
  516. package/dist/builtin/workflows/src/runs/foreground/stage-runner-send-user-message.ts +115 -98
  517. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session-options.ts +29 -42
  518. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session.ts +44 -52
  519. package/dist/builtin/workflows/src/runs/foreground/stage-runner-structured-output.ts +63 -58
  520. package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +161 -124
  521. package/dist/builtin/workflows/src/runs/foreground/stage-runner-unresolved-overflow.ts +27 -23
  522. package/dist/builtin/workflows/src/runs/foreground/stage-runner.ts +10 -10
  523. package/dist/builtin/workflows/src/runs/foreground/stage-tool-execution-buffer.ts +33 -31
  524. package/dist/builtin/workflows/src/runs/shared/concurrency.ts +53 -53
  525. package/dist/builtin/workflows/src/runs/shared/graph-inference.ts +1 -1
  526. package/dist/builtin/workflows/src/runs/shared/model-fallback-candidates.ts +257 -385
  527. package/dist/builtin/workflows/src/runs/shared/model-fallback-failures.ts +378 -363
  528. package/dist/builtin/workflows/src/runs/shared/prompt-callsite.ts +55 -55
  529. package/dist/builtin/workflows/src/runs/shared/validate-inputs.ts +75 -84
  530. package/dist/builtin/workflows/src/runs/shared/worktree-cache-lifecycle.ts +1 -3
  531. package/dist/builtin/workflows/src/runs/shared/worktree-cwd.ts +96 -83
  532. package/dist/builtin/workflows/src/runs/shared/worktree-diff.ts +9 -2
  533. package/dist/builtin/workflows/src/runs/shared/worktree-git-runner.ts +21 -6
  534. package/dist/builtin/workflows/src/runs/shared/worktree-git.ts +60 -30
  535. package/dist/builtin/workflows/src/runs/shared/worktree-post-create.ts +12 -5
  536. package/dist/builtin/workflows/src/runs/shared/worktree-setup.ts +51 -30
  537. package/dist/builtin/workflows/src/runs/shared/worktree.ts +4 -4
  538. package/dist/builtin/workflows/src/sdk-surface.ts +38 -19
  539. package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +17 -16
  540. package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +299 -280
  541. package/dist/builtin/workflows/src/shared/authoring-contract-ui.d.ts +78 -10
  542. package/dist/builtin/workflows/src/shared/authoring-contract-ui.ts +313 -219
  543. package/dist/builtin/workflows/src/shared/expanded-workflow-graph.ts +400 -152
  544. package/dist/builtin/workflows/src/shared/flat-string.ts +33 -0
  545. package/dist/builtin/workflows/src/shared/graph-store-snapshot.ts +144 -0
  546. package/dist/builtin/workflows/src/shared/intercom-group.ts +33 -26
  547. package/dist/builtin/workflows/src/shared/persistence-compaction-policy.ts +30 -30
  548. package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +435 -379
  549. package/dist/builtin/workflows/src/shared/persistence-restore.ts +187 -181
  550. package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +211 -208
  551. package/dist/builtin/workflows/src/shared/prompt-callsite-context.ts +3 -3
  552. package/dist/builtin/workflows/src/shared/render-inputs-schema.ts +87 -94
  553. package/dist/builtin/workflows/src/shared/resume-continuation.ts +1 -1
  554. package/dist/builtin/workflows/src/shared/returned-run-status.ts +91 -77
  555. package/dist/builtin/workflows/src/shared/run-id.ts +36 -0
  556. package/dist/builtin/workflows/src/shared/run-visibility.ts +2 -2
  557. package/dist/builtin/workflows/src/shared/schema-introspection.ts +50 -60
  558. package/dist/builtin/workflows/src/shared/serializable.ts +72 -86
  559. package/dist/builtin/workflows/src/shared/session-transcript.ts +44 -39
  560. package/dist/builtin/workflows/src/shared/stage-prompt.ts +183 -202
  561. package/dist/builtin/workflows/src/shared/stage-ui-broker.ts +270 -274
  562. package/dist/builtin/workflows/src/shared/store-factory.ts +9 -7
  563. package/dist/builtin/workflows/src/shared/store-internal.ts +201 -168
  564. package/dist/builtin/workflows/src/shared/store-observation.ts +10 -0
  565. package/dist/builtin/workflows/src/shared/store-prompt-methods.ts +196 -200
  566. package/dist/builtin/workflows/src/shared/store-public-types.ts +216 -196
  567. package/dist/builtin/workflows/src/shared/store-run-methods.ts +252 -222
  568. package/dist/builtin/workflows/src/shared/store-stage-methods.ts +284 -283
  569. package/dist/builtin/workflows/src/shared/store-tool-node-methods.ts +53 -0
  570. package/dist/builtin/workflows/src/shared/store-types.ts +273 -235
  571. package/dist/builtin/workflows/src/shared/store.ts +7 -7
  572. package/dist/builtin/workflows/src/shared/timing.ts +36 -34
  573. package/dist/builtin/workflows/src/shared/types.ts +259 -217
  574. package/dist/builtin/workflows/src/shared/workflow-artifacts.ts +261 -0
  575. package/dist/builtin/workflows/src/shared/workflow-authoring-types.d.ts +11 -4
  576. package/dist/builtin/workflows/src/shared/workflow-authoring-types.ts +81 -58
  577. package/dist/builtin/workflows/src/shared/workflow-failures-classifier.ts +247 -221
  578. package/dist/builtin/workflows/src/shared/workflow-failures-contract.ts +45 -46
  579. package/dist/builtin/workflows/src/shared/workflow-failures-decisions.ts +330 -351
  580. package/dist/builtin/workflows/src/shared/workflow-failures-signals.ts +212 -157
  581. package/dist/builtin/workflows/src/shared/workflow-failures.ts +10 -10
  582. package/dist/builtin/workflows/src/shared/workflow-run-ownership.ts +49 -0
  583. package/dist/builtin/workflows/src/tui/chat-surface-message.ts +157 -184
  584. package/dist/builtin/workflows/src/tui/chat-surface.ts +332 -355
  585. package/dist/builtin/workflows/src/tui/color-utils.ts +21 -30
  586. package/dist/builtin/workflows/src/tui/connectors.ts +57 -61
  587. package/dist/builtin/workflows/src/tui/dispatch-confirm.ts +192 -200
  588. package/dist/builtin/workflows/src/tui/edge.ts +10 -9
  589. package/dist/builtin/workflows/src/tui/graph-canvas.ts +148 -134
  590. package/dist/builtin/workflows/src/tui/graph-theme.ts +139 -148
  591. package/dist/builtin/workflows/src/tui/graph-view-constants.ts +9 -6
  592. package/dist/builtin/workflows/src/tui/graph-view-graph-render.ts +147 -183
  593. package/dist/builtin/workflows/src/tui/graph-view-input.ts +295 -329
  594. package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +291 -320
  595. package/dist/builtin/workflows/src/tui/graph-view-render.ts +160 -192
  596. package/dist/builtin/workflows/src/tui/graph-view-state.ts +487 -308
  597. package/dist/builtin/workflows/src/tui/graph-view-types.ts +65 -58
  598. package/dist/builtin/workflows/src/tui/header.ts +140 -156
  599. package/dist/builtin/workflows/src/tui/host-input-form.ts +47 -45
  600. package/dist/builtin/workflows/src/tui/inline-form-card.ts +277 -266
  601. package/dist/builtin/workflows/src/tui/inline-form-editor-text.ts +61 -62
  602. package/dist/builtin/workflows/src/tui/inline-form-editor.ts +407 -412
  603. package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +203 -214
  604. package/dist/builtin/workflows/src/tui/inline-form-store.ts +24 -24
  605. package/dist/builtin/workflows/src/tui/inputs-overlay.ts +116 -129
  606. package/dist/builtin/workflows/src/tui/inputs-picker-editing.ts +111 -115
  607. package/dist/builtin/workflows/src/tui/inputs-picker-input.ts +255 -269
  608. package/dist/builtin/workflows/src/tui/inputs-picker-render.ts +248 -236
  609. package/dist/builtin/workflows/src/tui/inputs-picker-types.ts +111 -140
  610. package/dist/builtin/workflows/src/tui/inputs-picker.ts +12 -12
  611. package/dist/builtin/workflows/src/tui/keybindings-adapter.ts +49 -57
  612. package/dist/builtin/workflows/src/tui/layout.ts +130 -133
  613. package/dist/builtin/workflows/src/tui/mouse-input.ts +45 -47
  614. package/dist/builtin/workflows/src/tui/node-card.ts +247 -223
  615. package/dist/builtin/workflows/src/tui/overlay-adapter.ts +383 -398
  616. package/dist/builtin/workflows/src/tui/overlay-terminal-modes.ts +20 -19
  617. package/dist/builtin/workflows/src/tui/prompt-card-input.ts +183 -194
  618. package/dist/builtin/workflows/src/tui/prompt-card-render.ts +529 -318
  619. package/dist/builtin/workflows/src/tui/prompt-card-select.ts +76 -98
  620. package/dist/builtin/workflows/src/tui/prompt-card-state.ts +40 -40
  621. package/dist/builtin/workflows/src/tui/prompt-card-text.ts +76 -83
  622. package/dist/builtin/workflows/src/tui/prompt-card.ts +3 -3
  623. package/dist/builtin/workflows/src/tui/renderers.ts +6 -7
  624. package/dist/builtin/workflows/src/tui/run-detail.ts +320 -259
  625. package/dist/builtin/workflows/src/tui/run-identity-rows.ts +97 -0
  626. package/dist/builtin/workflows/src/tui/session-list.ts +19 -18
  627. package/dist/builtin/workflows/src/tui/session-overlays.ts +103 -87
  628. package/dist/builtin/workflows/src/tui/session-picker.ts +318 -282
  629. package/dist/builtin/workflows/src/tui/stage-chat-composer-drafts.ts +11 -11
  630. package/dist/builtin/workflows/src/tui/stage-chat-layout.ts +55 -62
  631. package/dist/builtin/workflows/src/tui/stage-chat-view-archive-history.ts +384 -263
  632. package/dist/builtin/workflows/src/tui/stage-chat-view-custom-ui.ts +91 -102
  633. package/dist/builtin/workflows/src/tui/stage-chat-view-delivery-activity.ts +113 -0
  634. package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +189 -209
  635. package/dist/builtin/workflows/src/tui/stage-chat-view-input.ts +178 -208
  636. package/dist/builtin/workflows/src/tui/stage-chat-view-live-events.ts +53 -23
  637. package/dist/builtin/workflows/src/tui/stage-chat-view-pending-tools.ts +2 -4
  638. package/dist/builtin/workflows/src/tui/stage-chat-view-render-helpers.ts +85 -88
  639. package/dist/builtin/workflows/src/tui/stage-chat-view-render-settings.ts +39 -17
  640. package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +475 -409
  641. package/dist/builtin/workflows/src/tui/stage-chat-view-status.ts +24 -25
  642. package/dist/builtin/workflows/src/tui/stage-chat-view-transcript.ts +181 -197
  643. package/dist/builtin/workflows/src/tui/stage-chat-view-types.ts +128 -129
  644. package/dist/builtin/workflows/src/tui/stage-chat-view.ts +211 -205
  645. package/dist/builtin/workflows/src/tui/status-helpers.ts +65 -69
  646. package/dist/builtin/workflows/src/tui/status-list.ts +349 -305
  647. package/dist/builtin/workflows/src/tui/store-widget-installer.ts +214 -214
  648. package/dist/builtin/workflows/src/tui/submit-pane.ts +114 -130
  649. package/dist/builtin/workflows/src/tui/switcher.ts +120 -128
  650. package/dist/builtin/workflows/src/tui/text-helpers.ts +136 -145
  651. package/dist/builtin/workflows/src/tui/widget.ts +284 -295
  652. package/dist/builtin/workflows/src/tui/workflow-attach-pane-handle.ts +12 -17
  653. package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +81 -91
  654. package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +473 -479
  655. package/dist/builtin/workflows/src/tui/workflow-list.ts +130 -145
  656. package/dist/builtin/workflows/src/tui/workflow-notice-card.ts +127 -144
  657. package/dist/builtin/workflows/src/tui/workflow-resume-selector.ts +231 -218
  658. package/dist/builtin/workflows/src/tui/workflow-status.ts +7 -0
  659. package/dist/builtin/workflows/src/workflows/identity.ts +12 -12
  660. package/dist/builtin/workflows/src/workflows/registry.ts +66 -68
  661. package/dist/bun/cli.js.map +1 -1
  662. package/dist/bun/internal-intercom-broker.d.ts.map +1 -1
  663. package/dist/bun/internal-intercom-broker.js +1 -1
  664. package/dist/bun/internal-intercom-broker.js.map +1 -1
  665. package/dist/bun/register-bedrock.js +1 -1
  666. package/dist/bun/register-bedrock.js.map +1 -1
  667. package/dist/cli/args.d.ts +8 -1
  668. package/dist/cli/args.d.ts.map +1 -1
  669. package/dist/cli/args.js +28 -22
  670. package/dist/cli/args.js.map +1 -1
  671. package/dist/cli/config-selector.d.ts +4 -2
  672. package/dist/cli/config-selector.d.ts.map +1 -1
  673. package/dist/cli/config-selector.js +2 -2
  674. package/dist/cli/config-selector.js.map +1 -1
  675. package/dist/cli/credential-print.d.ts +170 -0
  676. package/dist/cli/credential-print.d.ts.map +1 -0
  677. package/dist/cli/credential-print.js +513 -0
  678. package/dist/cli/credential-print.js.map +1 -0
  679. package/dist/cli/list-models.d.ts +2 -2
  680. package/dist/cli/list-models.d.ts.map +1 -1
  681. package/dist/cli/list-models.js +6 -7
  682. package/dist/cli/list-models.js.map +1 -1
  683. package/dist/cli/project-trust.d.ts +1 -1
  684. package/dist/cli/project-trust.d.ts.map +1 -1
  685. package/dist/cli/project-trust.js.map +1 -1
  686. package/dist/cli/session-picker.d.ts.map +1 -1
  687. package/dist/cli/session-picker.js +2 -1
  688. package/dist/cli/session-picker.js.map +1 -1
  689. package/dist/cli/startup-ui.d.ts +3 -0
  690. package/dist/cli/startup-ui.d.ts.map +1 -1
  691. package/dist/cli/startup-ui.js +58 -2
  692. package/dist/cli/startup-ui.js.map +1 -1
  693. package/dist/cli.js +2 -0
  694. package/dist/cli.js.map +1 -1
  695. package/dist/config-command-parser.d.ts +9 -0
  696. package/dist/config-command-parser.d.ts.map +1 -0
  697. package/dist/config-command-parser.js +22 -0
  698. package/dist/config-command-parser.js.map +1 -0
  699. package/dist/config-self-update.d.ts +6 -2
  700. package/dist/config-self-update.d.ts.map +1 -1
  701. package/dist/config-self-update.js +23 -13
  702. package/dist/config-self-update.js.map +1 -1
  703. package/dist/config.d.ts +5 -3
  704. package/dist/config.d.ts.map +1 -1
  705. package/dist/config.js +36 -14
  706. package/dist/config.js.map +1 -1
  707. package/dist/core/agent-session-accessors.d.ts.map +1 -1
  708. package/dist/core/agent-session-accessors.js +130 -24
  709. package/dist/core/agent-session-accessors.js.map +1 -1
  710. package/dist/core/agent-session-auto-compaction.d.ts +4 -3
  711. package/dist/core/agent-session-auto-compaction.d.ts.map +1 -1
  712. package/dist/core/agent-session-auto-compaction.js +64 -64
  713. package/dist/core/agent-session-auto-compaction.js.map +1 -1
  714. package/dist/core/agent-session-bash.d.ts +10 -7
  715. package/dist/core/agent-session-bash.d.ts.map +1 -1
  716. package/dist/core/agent-session-bash.js +34 -13
  717. package/dist/core/agent-session-bash.js.map +1 -1
  718. package/dist/core/agent-session-compaction.d.ts +11 -1
  719. package/dist/core/agent-session-compaction.d.ts.map +1 -1
  720. package/dist/core/agent-session-compaction.js +141 -27
  721. package/dist/core/agent-session-compaction.js.map +1 -1
  722. package/dist/core/agent-session-custom-message-commit.d.ts +14 -0
  723. package/dist/core/agent-session-custom-message-commit.d.ts.map +1 -0
  724. package/dist/core/agent-session-custom-message-commit.js +145 -0
  725. package/dist/core/agent-session-custom-message-commit.js.map +1 -0
  726. package/dist/core/agent-session-delivery-forwarding.d.ts +9 -0
  727. package/dist/core/agent-session-delivery-forwarding.d.ts.map +1 -0
  728. package/dist/core/agent-session-delivery-forwarding.js +36 -0
  729. package/dist/core/agent-session-delivery-forwarding.js.map +1 -0
  730. package/dist/core/agent-session-events.d.ts +1 -1
  731. package/dist/core/agent-session-events.d.ts.map +1 -1
  732. package/dist/core/agent-session-events.js +58 -19
  733. package/dist/core/agent-session-events.js.map +1 -1
  734. package/dist/core/agent-session-export.d.ts +1 -1
  735. package/dist/core/agent-session-export.d.ts.map +1 -1
  736. package/dist/core/agent-session-export.js +32 -25
  737. package/dist/core/agent-session-export.js.map +1 -1
  738. package/dist/core/agent-session-extension-bindings.d.ts +2 -6
  739. package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
  740. package/dist/core/agent-session-extension-bindings.js +38 -18
  741. package/dist/core/agent-session-extension-bindings.js.map +1 -1
  742. package/dist/core/agent-session-message-queue.d.ts +10 -11
  743. package/dist/core/agent-session-message-queue.d.ts.map +1 -1
  744. package/dist/core/agent-session-message-queue.js +123 -106
  745. package/dist/core/agent-session-message-queue.js.map +1 -1
  746. package/dist/core/agent-session-methods.d.ts +55 -46
  747. package/dist/core/agent-session-methods.d.ts.map +1 -1
  748. package/dist/core/agent-session-methods.js.map +1 -1
  749. package/dist/core/agent-session-models.d.ts +3 -39
  750. package/dist/core/agent-session-models.d.ts.map +1 -1
  751. package/dist/core/agent-session-models.js +22 -160
  752. package/dist/core/agent-session-models.js.map +1 -1
  753. package/dist/core/agent-session-persistent-custom-messages.d.ts +47 -0
  754. package/dist/core/agent-session-persistent-custom-messages.d.ts.map +1 -0
  755. package/dist/core/agent-session-persistent-custom-messages.js +272 -0
  756. package/dist/core/agent-session-persistent-custom-messages.js.map +1 -0
  757. package/dist/core/agent-session-post-tool-compaction.d.ts +1 -1
  758. package/dist/core/agent-session-post-tool-compaction.d.ts.map +1 -1
  759. package/dist/core/agent-session-post-tool-compaction.js +45 -13
  760. package/dist/core/agent-session-post-tool-compaction.js.map +1 -1
  761. package/dist/core/agent-session-prompt.d.ts +2 -0
  762. package/dist/core/agent-session-prompt.d.ts.map +1 -1
  763. package/dist/core/agent-session-prompt.js +52 -25
  764. package/dist/core/agent-session-prompt.js.map +1 -1
  765. package/dist/core/agent-session-queue-pause.d.ts +10 -0
  766. package/dist/core/agent-session-queue-pause.d.ts.map +1 -0
  767. package/dist/core/agent-session-queue-pause.js +87 -0
  768. package/dist/core/agent-session-queue-pause.js.map +1 -0
  769. package/dist/core/agent-session-retry.d.ts +0 -11
  770. package/dist/core/agent-session-retry.d.ts.map +1 -1
  771. package/dist/core/agent-session-retry.js +38 -64
  772. package/dist/core/agent-session-retry.js.map +1 -1
  773. package/dist/core/agent-session-runtime-auth.d.ts +6 -0
  774. package/dist/core/agent-session-runtime-auth.d.ts.map +1 -0
  775. package/dist/core/agent-session-runtime-auth.js +18 -0
  776. package/dist/core/agent-session-runtime-auth.js.map +1 -0
  777. package/dist/core/agent-session-runtime.d.ts +25 -3
  778. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  779. package/dist/core/agent-session-runtime.js +55 -11
  780. package/dist/core/agent-session-runtime.js.map +1 -1
  781. package/dist/core/agent-session-services.d.ts +4 -9
  782. package/dist/core/agent-session-services.d.ts.map +1 -1
  783. package/dist/core/agent-session-services.js +25 -25
  784. package/dist/core/agent-session-services.js.map +1 -1
  785. package/dist/core/agent-session-state.d.ts +1 -1
  786. package/dist/core/agent-session-state.d.ts.map +1 -1
  787. package/dist/core/agent-session-state.js +3 -0
  788. package/dist/core/agent-session-state.js.map +1 -1
  789. package/dist/core/agent-session-tool-hooks.d.ts.map +1 -1
  790. package/dist/core/agent-session-tool-hooks.js +8 -7
  791. package/dist/core/agent-session-tool-hooks.js.map +1 -1
  792. package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
  793. package/dist/core/agent-session-tool-registry.js +6 -20
  794. package/dist/core/agent-session-tool-registry.js.map +1 -1
  795. package/dist/core/agent-session-transfer.d.ts +4 -0
  796. package/dist/core/agent-session-transfer.d.ts.map +1 -0
  797. package/dist/core/agent-session-transfer.js +67 -0
  798. package/dist/core/agent-session-transfer.js.map +1 -0
  799. package/dist/core/agent-session-tree.d.ts +1 -1
  800. package/dist/core/agent-session-tree.d.ts.map +1 -1
  801. package/dist/core/agent-session-tree.js +17 -3
  802. package/dist/core/agent-session-tree.js.map +1 -1
  803. package/dist/core/agent-session-types.d.ts +32 -14
  804. package/dist/core/agent-session-types.d.ts.map +1 -1
  805. package/dist/core/agent-session-types.js +4 -4
  806. package/dist/core/agent-session-types.js.map +1 -1
  807. package/dist/core/agent-session.d.ts +28 -13
  808. package/dist/core/agent-session.d.ts.map +1 -1
  809. package/dist/core/agent-session.js +18 -12
  810. package/dist/core/agent-session.js.map +1 -1
  811. package/dist/core/anthropic-thinking-guard.d.ts.map +1 -1
  812. package/dist/core/anthropic-thinking-guard.js +4 -2
  813. package/dist/core/anthropic-thinking-guard.js.map +1 -1
  814. package/dist/core/async/format.d.ts +1 -1
  815. package/dist/core/async/format.d.ts.map +1 -1
  816. package/dist/core/async/format.js +3 -1
  817. package/dist/core/async/format.js.map +1 -1
  818. package/dist/core/async/job-manager.d.ts.map +1 -1
  819. package/dist/core/async/job-manager.js +20 -5
  820. package/dist/core/async/job-manager.js.map +1 -1
  821. package/dist/core/async/session-manager.d.ts.map +1 -1
  822. package/dist/core/async/session-manager.js.map +1 -1
  823. package/dist/core/atomic-guide-command.d.ts.map +1 -1
  824. package/dist/core/atomic-guide-command.js +32 -35
  825. package/dist/core/atomic-guide-command.js.map +1 -1
  826. package/dist/core/auth-guidance.d.ts.map +1 -1
  827. package/dist/core/auth-guidance.js.map +1 -1
  828. package/dist/core/auth-storage-backends.d.ts +1 -0
  829. package/dist/core/auth-storage-backends.d.ts.map +1 -1
  830. package/dist/core/auth-storage-backends.js +30 -5
  831. package/dist/core/auth-storage-backends.js.map +1 -1
  832. package/dist/core/auth-storage.d.ts +13 -136
  833. package/dist/core/auth-storage.d.ts.map +1 -1
  834. package/dist/core/auth-storage.js +69 -375
  835. package/dist/core/auth-storage.js.map +1 -1
  836. package/dist/core/bash-executor.d.ts +5 -3
  837. package/dist/core/bash-executor.d.ts.map +1 -1
  838. package/dist/core/bash-executor.js +5 -4
  839. package/dist/core/bash-executor.js.map +1 -1
  840. package/dist/core/bounded-model-refresh.d.ts +14 -0
  841. package/dist/core/bounded-model-refresh.d.ts.map +1 -0
  842. package/dist/core/bounded-model-refresh.js +38 -0
  843. package/dist/core/bounded-model-refresh.js.map +1 -0
  844. package/dist/core/builtin-packages.d.ts.map +1 -1
  845. package/dist/core/builtin-packages.js +1 -10
  846. package/dist/core/builtin-packages.js.map +1 -1
  847. package/dist/core/cache-stats.d.ts +25 -0
  848. package/dist/core/cache-stats.d.ts.map +1 -0
  849. package/dist/core/cache-stats.js +70 -0
  850. package/dist/core/cache-stats.js.map +1 -0
  851. package/dist/core/callback-activity.d.ts.map +1 -1
  852. package/dist/core/callback-activity.js.map +1 -1
  853. package/dist/core/codex-errors.d.ts.map +1 -1
  854. package/dist/core/codex-errors.js +1 -1
  855. package/dist/core/codex-errors.js.map +1 -1
  856. package/dist/core/codex-fast-mode.d.ts.map +1 -1
  857. package/dist/core/codex-fast-mode.js.map +1 -1
  858. package/dist/core/compaction/branch-summarization.d.ts +15 -5
  859. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  860. package/dist/core/compaction/branch-summarization.js +23 -12
  861. package/dist/core/compaction/branch-summarization.js.map +1 -1
  862. package/dist/core/compaction/compaction-boundary.d.ts +18 -1
  863. package/dist/core/compaction/compaction-boundary.d.ts.map +1 -1
  864. package/dist/core/compaction/compaction-boundary.js +12 -8
  865. package/dist/core/compaction/compaction-boundary.js.map +1 -1
  866. package/dist/core/compaction/compaction-runner.d.ts +63 -6
  867. package/dist/core/compaction/compaction-runner.d.ts.map +1 -1
  868. package/dist/core/compaction/compaction-runner.js +244 -17
  869. package/dist/core/compaction/compaction-runner.js.map +1 -1
  870. package/dist/core/compaction/compaction-types.d.ts +53 -2
  871. package/dist/core/compaction/compaction-types.d.ts.map +1 -1
  872. package/dist/core/compaction/compaction-types.js.map +1 -1
  873. package/dist/core/compaction/compaction.d.ts.map +1 -1
  874. package/dist/core/compaction/compaction.js +5 -1
  875. package/dist/core/compaction/compaction.js.map +1 -1
  876. package/dist/core/compaction/deleted-ranges.d.ts.map +1 -1
  877. package/dist/core/compaction/deleted-ranges.js.map +1 -1
  878. package/dist/core/compaction/fallback-planner.d.ts +64 -0
  879. package/dist/core/compaction/fallback-planner.d.ts.map +1 -0
  880. package/dist/core/compaction/fallback-planner.js +75 -0
  881. package/dist/core/compaction/fallback-planner.js.map +1 -0
  882. package/dist/core/compaction/index.d.ts +7 -4
  883. package/dist/core/compaction/index.d.ts.map +1 -1
  884. package/dist/core/compaction/index.js +7 -4
  885. package/dist/core/compaction/index.js.map +1 -1
  886. package/dist/core/compaction/planner-outcome.d.ts +86 -0
  887. package/dist/core/compaction/planner-outcome.d.ts.map +1 -0
  888. package/dist/core/compaction/planner-outcome.js +122 -0
  889. package/dist/core/compaction/planner-outcome.js.map +1 -0
  890. package/dist/core/compaction/range-planner-diagnostics.d.ts +58 -6
  891. package/dist/core/compaction/range-planner-diagnostics.d.ts.map +1 -1
  892. package/dist/core/compaction/range-planner-diagnostics.js +71 -31
  893. package/dist/core/compaction/range-planner-diagnostics.js.map +1 -1
  894. package/dist/core/compaction/range-planner.d.ts +39 -8
  895. package/dist/core/compaction/range-planner.d.ts.map +1 -1
  896. package/dist/core/compaction/range-planner.js +140 -51
  897. package/dist/core/compaction/range-planner.js.map +1 -1
  898. package/dist/core/compaction/region-trimming.d.ts +34 -0
  899. package/dist/core/compaction/region-trimming.d.ts.map +1 -0
  900. package/dist/core/compaction/region-trimming.js +73 -0
  901. package/dist/core/compaction/region-trimming.js.map +1 -0
  902. package/dist/core/compaction/transcript-serialization.d.ts +8 -1
  903. package/dist/core/compaction/transcript-serialization.d.ts.map +1 -1
  904. package/dist/core/compaction/transcript-serialization.js +78 -27
  905. package/dist/core/compaction/transcript-serialization.js.map +1 -1
  906. package/dist/core/context-tool-pairing.d.ts +19 -0
  907. package/dist/core/context-tool-pairing.d.ts.map +1 -0
  908. package/dist/core/context-tool-pairing.js +50 -0
  909. package/dist/core/context-tool-pairing.js.map +1 -0
  910. package/dist/core/copilot-env-routing.d.ts +36 -0
  911. package/dist/core/copilot-env-routing.d.ts.map +1 -0
  912. package/dist/core/copilot-env-routing.js +94 -0
  913. package/dist/core/copilot-env-routing.js.map +1 -0
  914. package/dist/core/diagnostics.d.ts +8 -0
  915. package/dist/core/diagnostics.d.ts.map +1 -1
  916. package/dist/core/diagnostics.js.map +1 -1
  917. package/dist/core/exec.d.ts.map +1 -1
  918. package/dist/core/exec.js +5 -0
  919. package/dist/core/exec.js.map +1 -1
  920. package/dist/core/experimental.d.ts.map +1 -1
  921. package/dist/core/experimental.js +2 -1
  922. package/dist/core/experimental.js.map +1 -1
  923. package/dist/core/extensions/agent-events.d.ts +10 -0
  924. package/dist/core/extensions/agent-events.d.ts.map +1 -1
  925. package/dist/core/extensions/agent-events.js.map +1 -1
  926. package/dist/core/extensions/api-types.d.ts +9 -3
  927. package/dist/core/extensions/api-types.d.ts.map +1 -1
  928. package/dist/core/extensions/api-types.js.map +1 -1
  929. package/dist/core/extensions/context-types.d.ts +10 -1
  930. package/dist/core/extensions/context-types.d.ts.map +1 -1
  931. package/dist/core/extensions/context-types.js.map +1 -1
  932. package/dist/core/extensions/event-types.d.ts +2 -2
  933. package/dist/core/extensions/event-types.d.ts.map +1 -1
  934. package/dist/core/extensions/event-types.js.map +1 -1
  935. package/dist/core/extensions/index.d.ts +7 -5
  936. package/dist/core/extensions/index.d.ts.map +1 -1
  937. package/dist/core/extensions/index.js +2 -2
  938. package/dist/core/extensions/index.js.map +1 -1
  939. package/dist/core/extensions/loader-api.d.ts +1 -1
  940. package/dist/core/extensions/loader-api.d.ts.map +1 -1
  941. package/dist/core/extensions/loader-api.js +63 -29
  942. package/dist/core/extensions/loader-api.js.map +1 -1
  943. package/dist/core/extensions/loader-core.d.ts.map +1 -1
  944. package/dist/core/extensions/loader-core.js +3 -2
  945. package/dist/core/extensions/loader-core.js.map +1 -1
  946. package/dist/core/extensions/loader-discovery.d.ts.map +1 -1
  947. package/dist/core/extensions/loader-discovery.js.map +1 -1
  948. package/dist/core/extensions/loader-resources.d.ts.map +1 -1
  949. package/dist/core/extensions/loader-resources.js.map +1 -1
  950. package/dist/core/extensions/loader-runtime.d.ts +2 -4
  951. package/dist/core/extensions/loader-runtime.d.ts.map +1 -1
  952. package/dist/core/extensions/loader-runtime.js +214 -13
  953. package/dist/core/extensions/loader-runtime.js.map +1 -1
  954. package/dist/core/extensions/loader-virtual-modules.d.ts +17 -0
  955. package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
  956. package/dist/core/extensions/loader-virtual-modules.js +288 -19
  957. package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
  958. package/dist/core/extensions/loader.d.ts.map +1 -1
  959. package/dist/core/extensions/loader.js.map +1 -1
  960. package/dist/core/extensions/message-types.d.ts +12 -4
  961. package/dist/core/extensions/message-types.d.ts.map +1 -1
  962. package/dist/core/extensions/message-types.js.map +1 -1
  963. package/dist/core/extensions/provider-types.d.ts +16 -5
  964. package/dist/core/extensions/provider-types.d.ts.map +1 -1
  965. package/dist/core/extensions/provider-types.js.map +1 -1
  966. package/dist/core/extensions/reactive-widget.d.ts.map +1 -1
  967. package/dist/core/extensions/reactive-widget.js.map +1 -1
  968. package/dist/core/extensions/runner-context.d.ts +29 -1
  969. package/dist/core/extensions/runner-context.d.ts.map +1 -1
  970. package/dist/core/extensions/runner-context.js +56 -0
  971. package/dist/core/extensions/runner-context.js.map +1 -1
  972. package/dist/core/extensions/runner-events.d.ts.map +1 -1
  973. package/dist/core/extensions/runner-events.js.map +1 -1
  974. package/dist/core/extensions/runner-registries.d.ts +2 -1
  975. package/dist/core/extensions/runner-registries.d.ts.map +1 -1
  976. package/dist/core/extensions/runner-registries.js +8 -0
  977. package/dist/core/extensions/runner-registries.js.map +1 -1
  978. package/dist/core/extensions/runner.d.ts +7 -2
  979. package/dist/core/extensions/runner.d.ts.map +1 -1
  980. package/dist/core/extensions/runner.js +65 -23
  981. package/dist/core/extensions/runner.js.map +1 -1
  982. package/dist/core/extensions/runtime-types.d.ts +35 -2
  983. package/dist/core/extensions/runtime-types.d.ts.map +1 -1
  984. package/dist/core/extensions/runtime-types.js.map +1 -1
  985. package/dist/core/extensions/session-events.d.ts.map +1 -1
  986. package/dist/core/extensions/session-events.js.map +1 -1
  987. package/dist/core/extensions/tool-types.d.ts +7 -3
  988. package/dist/core/extensions/tool-types.d.ts.map +1 -1
  989. package/dist/core/extensions/tool-types.js.map +1 -1
  990. package/dist/core/extensions/types.d.ts +15 -2
  991. package/dist/core/extensions/types.d.ts.map +1 -1
  992. package/dist/core/extensions/types.js +1 -1
  993. package/dist/core/extensions/types.js.map +1 -1
  994. package/dist/core/extensions/ui-types.d.ts +34 -6
  995. package/dist/core/extensions/ui-types.d.ts.map +1 -1
  996. package/dist/core/extensions/ui-types.js.map +1 -1
  997. package/dist/core/fallback-models.d.ts +37 -0
  998. package/dist/core/fallback-models.d.ts.map +1 -0
  999. package/dist/core/fallback-models.js +57 -0
  1000. package/dist/core/fallback-models.js.map +1 -0
  1001. package/dist/core/flattened-tool-arguments.d.ts +4 -7
  1002. package/dist/core/flattened-tool-arguments.d.ts.map +1 -1
  1003. package/dist/core/flattened-tool-arguments.js +4 -7
  1004. package/dist/core/flattened-tool-arguments.js.map +1 -1
  1005. package/dist/core/footer-data-provider.d.ts +10 -0
  1006. package/dist/core/footer-data-provider.d.ts.map +1 -1
  1007. package/dist/core/footer-data-provider.js +5 -3
  1008. package/dist/core/footer-data-provider.js.map +1 -1
  1009. package/dist/core/http-dispatcher.d.ts +1 -0
  1010. package/dist/core/http-dispatcher.d.ts.map +1 -1
  1011. package/dist/core/http-dispatcher.js +42 -8
  1012. package/dist/core/http-dispatcher.js.map +1 -1
  1013. package/dist/core/keybindings.d.ts +7 -2
  1014. package/dist/core/keybindings.d.ts.map +1 -1
  1015. package/dist/core/keybindings.js +3 -1
  1016. package/dist/core/keybindings.js.map +1 -1
  1017. package/dist/core/messages.d.ts +29 -5
  1018. package/dist/core/messages.d.ts.map +1 -1
  1019. package/dist/core/messages.js +66 -14
  1020. package/dist/core/messages.js.map +1 -1
  1021. package/dist/core/model-capabilities.d.ts +18 -0
  1022. package/dist/core/model-capabilities.d.ts.map +1 -0
  1023. package/dist/core/model-capabilities.js +22 -0
  1024. package/dist/core/model-capabilities.js.map +1 -0
  1025. package/dist/core/model-config.d.ts +542 -0
  1026. package/dist/core/model-config.d.ts.map +1 -0
  1027. package/dist/core/{model-registry-schemas.js → model-config.js} +92 -32
  1028. package/dist/core/model-config.js.map +1 -0
  1029. package/dist/core/model-refresh-timeout.d.ts +9 -0
  1030. package/dist/core/model-refresh-timeout.d.ts.map +1 -0
  1031. package/dist/core/model-refresh-timeout.js +9 -0
  1032. package/dist/core/model-refresh-timeout.js.map +1 -0
  1033. package/dist/core/model-registry.d.ts +26 -94
  1034. package/dist/core/model-registry.d.ts.map +1 -1
  1035. package/dist/core/model-registry.js +65 -382
  1036. package/dist/core/model-registry.js.map +1 -1
  1037. package/dist/core/model-resolver-cli.d.ts +2 -2
  1038. package/dist/core/model-resolver-cli.d.ts.map +1 -1
  1039. package/dist/core/model-resolver-cli.js +2 -2
  1040. package/dist/core/model-resolver-cli.js.map +1 -1
  1041. package/dist/core/model-resolver-defaults.d.ts.map +1 -1
  1042. package/dist/core/model-resolver-defaults.js +5 -1
  1043. package/dist/core/model-resolver-defaults.js.map +1 -1
  1044. package/dist/core/model-resolver-initial.d.ts +4 -4
  1045. package/dist/core/model-resolver-initial.d.ts.map +1 -1
  1046. package/dist/core/model-resolver-initial.js +26 -17
  1047. package/dist/core/model-resolver-initial.js.map +1 -1
  1048. package/dist/core/model-resolver-patterns.d.ts.map +1 -1
  1049. package/dist/core/model-resolver-patterns.js +0 -2
  1050. package/dist/core/model-resolver-patterns.js.map +1 -1
  1051. package/dist/core/model-resolver-scope.d.ts +5 -3
  1052. package/dist/core/model-resolver-scope.d.ts.map +1 -1
  1053. package/dist/core/model-resolver-scope.js +32 -8
  1054. package/dist/core/model-resolver-scope.js.map +1 -1
  1055. package/dist/core/model-resolver-types.d.ts +2 -0
  1056. package/dist/core/model-resolver-types.d.ts.map +1 -1
  1057. package/dist/core/model-resolver-types.js.map +1 -1
  1058. package/dist/core/model-resolver.d.ts +3 -3
  1059. package/dist/core/model-resolver.d.ts.map +1 -1
  1060. package/dist/core/model-resolver.js +1 -1
  1061. package/dist/core/model-resolver.js.map +1 -1
  1062. package/dist/core/model-runtime-auth.d.ts +7 -0
  1063. package/dist/core/model-runtime-auth.d.ts.map +1 -0
  1064. package/dist/core/model-runtime-auth.js +17 -0
  1065. package/dist/core/model-runtime-auth.js.map +1 -0
  1066. package/dist/core/model-runtime-providers.d.ts +6 -0
  1067. package/dist/core/model-runtime-providers.d.ts.map +1 -0
  1068. package/dist/core/model-runtime-providers.js +22 -0
  1069. package/dist/core/model-runtime-providers.js.map +1 -0
  1070. package/dist/core/model-runtime-restoration.d.ts +6 -0
  1071. package/dist/core/model-runtime-restoration.d.ts.map +1 -0
  1072. package/dist/core/model-runtime-restoration.js +21 -0
  1073. package/dist/core/model-runtime-restoration.js.map +1 -0
  1074. package/dist/core/model-runtime-snapshot.d.ts +19 -0
  1075. package/dist/core/model-runtime-snapshot.d.ts.map +1 -0
  1076. package/dist/core/model-runtime-snapshot.js +111 -0
  1077. package/dist/core/model-runtime-snapshot.js.map +1 -0
  1078. package/dist/core/model-runtime-streaming.d.ts +17 -0
  1079. package/dist/core/model-runtime-streaming.d.ts.map +1 -0
  1080. package/dist/core/model-runtime-streaming.js +66 -0
  1081. package/dist/core/model-runtime-streaming.js.map +1 -0
  1082. package/dist/core/model-runtime-types.d.ts +21 -0
  1083. package/dist/core/model-runtime-types.d.ts.map +1 -0
  1084. package/dist/core/model-runtime-types.js +2 -0
  1085. package/dist/core/model-runtime-types.js.map +1 -0
  1086. package/dist/core/model-runtime.d.ts +79 -0
  1087. package/dist/core/model-runtime.d.ts.map +1 -0
  1088. package/dist/core/model-runtime.js +417 -0
  1089. package/dist/core/model-runtime.js.map +1 -0
  1090. package/dist/core/models-store.d.ts +2 -10
  1091. package/dist/core/models-store.d.ts.map +1 -1
  1092. package/dist/core/models-store.js +2 -29
  1093. package/dist/core/models-store.js.map +1 -1
  1094. package/dist/core/oauth-login.d.ts +24 -0
  1095. package/dist/core/oauth-login.d.ts.map +1 -0
  1096. package/dist/core/oauth-login.js +92 -0
  1097. package/dist/core/oauth-login.js.map +1 -0
  1098. package/dist/core/oauth-provider-metadata.d.ts +5 -0
  1099. package/dist/core/oauth-provider-metadata.d.ts.map +1 -0
  1100. package/dist/core/oauth-provider-metadata.js +33 -0
  1101. package/dist/core/oauth-provider-metadata.js.map +1 -0
  1102. package/dist/core/openai-responses-payload-sanitizer.js.map +1 -1
  1103. package/dist/core/output-guard.d.ts +44 -0
  1104. package/dist/core/output-guard.d.ts.map +1 -1
  1105. package/dist/core/output-guard.js +63 -0
  1106. package/dist/core/output-guard.js.map +1 -1
  1107. package/dist/core/package-manager-auto-resources.d.ts.map +1 -1
  1108. package/dist/core/package-manager-auto-resources.js +18 -5
  1109. package/dist/core/package-manager-auto-resources.js.map +1 -1
  1110. package/dist/core/package-manager-git.d.ts.map +1 -1
  1111. package/dist/core/package-manager-git.js +27 -11
  1112. package/dist/core/package-manager-git.js.map +1 -1
  1113. package/dist/core/package-manager-npm.d.ts.map +1 -1
  1114. package/dist/core/package-manager-npm.js +4 -2
  1115. package/dist/core/package-manager-npm.js.map +1 -1
  1116. package/dist/core/package-manager-operations.d.ts.map +1 -1
  1117. package/dist/core/package-manager-operations.js +2 -2
  1118. package/dist/core/package-manager-operations.js.map +1 -1
  1119. package/dist/core/package-manager-paths.d.ts.map +1 -1
  1120. package/dist/core/package-manager-paths.js.map +1 -1
  1121. package/dist/core/package-manager-resolver.d.ts.map +1 -1
  1122. package/dist/core/package-manager-resolver.js +71 -26
  1123. package/dist/core/package-manager-resolver.js.map +1 -1
  1124. package/dist/core/package-manager-resource-collector.d.ts.map +1 -1
  1125. package/dist/core/package-manager-resource-collector.js +13 -7
  1126. package/dist/core/package-manager-resource-collector.js.map +1 -1
  1127. package/dist/core/package-manager-resource-files.d.ts.map +1 -1
  1128. package/dist/core/package-manager-resource-files.js +4 -3
  1129. package/dist/core/package-manager-resource-files.js.map +1 -1
  1130. package/dist/core/package-manager-resource-patterns.d.ts +1 -0
  1131. package/dist/core/package-manager-resource-patterns.d.ts.map +1 -1
  1132. package/dist/core/package-manager-resource-patterns.js +15 -0
  1133. package/dist/core/package-manager-resource-patterns.js.map +1 -1
  1134. package/dist/core/package-manager-settings.d.ts.map +1 -1
  1135. package/dist/core/package-manager-settings.js +3 -2
  1136. package/dist/core/package-manager-settings.js.map +1 -1
  1137. package/dist/core/package-manager-source.d.ts.map +1 -1
  1138. package/dist/core/package-manager-source.js +16 -9
  1139. package/dist/core/package-manager-source.js.map +1 -1
  1140. package/dist/core/package-manager-types.d.ts +3 -0
  1141. package/dist/core/package-manager-types.d.ts.map +1 -1
  1142. package/dist/core/package-manager-types.js.map +1 -1
  1143. package/dist/core/package-manager.d.ts +1 -1
  1144. package/dist/core/package-manager.d.ts.map +1 -1
  1145. package/dist/core/package-manager.js +2 -3
  1146. package/dist/core/package-manager.js.map +1 -1
  1147. package/dist/core/prompt-templates-async.d.ts.map +1 -1
  1148. package/dist/core/prompt-templates-async.js +15 -7
  1149. package/dist/core/prompt-templates-async.js.map +1 -1
  1150. package/dist/core/prompt-templates.d.ts +1 -0
  1151. package/dist/core/prompt-templates.d.ts.map +1 -1
  1152. package/dist/core/prompt-templates.js +4 -4
  1153. package/dist/core/prompt-templates.js.map +1 -1
  1154. package/dist/core/provider-composer-internal.d.ts +53 -0
  1155. package/dist/core/provider-composer-internal.d.ts.map +1 -0
  1156. package/dist/core/provider-composer-internal.js +273 -0
  1157. package/dist/core/provider-composer-internal.js.map +1 -0
  1158. package/dist/core/provider-composer.d.ts +16 -0
  1159. package/dist/core/provider-composer.d.ts.map +1 -0
  1160. package/dist/core/provider-composer.js +108 -0
  1161. package/dist/core/provider-composer.js.map +1 -0
  1162. package/dist/core/provider-context-usage.d.ts.map +1 -1
  1163. package/dist/core/provider-context-usage.js +2 -1
  1164. package/dist/core/provider-context-usage.js.map +1 -1
  1165. package/dist/core/provider-display-names.d.ts.map +1 -1
  1166. package/dist/core/provider-display-names.js +4 -0
  1167. package/dist/core/provider-display-names.js.map +1 -1
  1168. package/dist/core/remote-catalog-provider.d.ts +1 -1
  1169. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  1170. package/dist/core/remote-catalog-provider.js +82 -105
  1171. package/dist/core/remote-catalog-provider.js.map +1 -1
  1172. package/dist/core/resolve-config-value.d.ts +8 -7
  1173. package/dist/core/resolve-config-value.d.ts.map +1 -1
  1174. package/dist/core/resolve-config-value.js +26 -23
  1175. package/dist/core/resolve-config-value.js.map +1 -1
  1176. package/dist/core/resource-loader-assets.d.ts.map +1 -1
  1177. package/dist/core/resource-loader-assets.js +58 -8
  1178. package/dist/core/resource-loader-assets.js.map +1 -1
  1179. package/dist/core/resource-loader-context-files.d.ts +6 -0
  1180. package/dist/core/resource-loader-context-files.d.ts.map +1 -1
  1181. package/dist/core/resource-loader-context-files.js +85 -4
  1182. package/dist/core/resource-loader-context-files.js.map +1 -1
  1183. package/dist/core/resource-loader-core.d.ts +13 -3
  1184. package/dist/core/resource-loader-core.d.ts.map +1 -1
  1185. package/dist/core/resource-loader-core.js +39 -19
  1186. package/dist/core/resource-loader-core.js.map +1 -1
  1187. package/dist/core/resource-loader-discovery.d.ts.map +1 -1
  1188. package/dist/core/resource-loader-discovery.js.map +1 -1
  1189. package/dist/core/resource-loader-extensions.d.ts +1 -0
  1190. package/dist/core/resource-loader-extensions.d.ts.map +1 -1
  1191. package/dist/core/resource-loader-extensions.js +140 -12
  1192. package/dist/core/resource-loader-extensions.js.map +1 -1
  1193. package/dist/core/resource-loader-helpers.d.ts.map +1 -1
  1194. package/dist/core/resource-loader-helpers.js +1 -0
  1195. package/dist/core/resource-loader-helpers.js.map +1 -1
  1196. package/dist/core/resource-loader-internals.d.ts +14 -7
  1197. package/dist/core/resource-loader-internals.d.ts.map +1 -1
  1198. package/dist/core/resource-loader-internals.js.map +1 -1
  1199. package/dist/core/resource-loader-package-resources.d.ts.map +1 -1
  1200. package/dist/core/resource-loader-package-resources.js +15 -2
  1201. package/dist/core/resource-loader-package-resources.js.map +1 -1
  1202. package/dist/core/resource-loader-paths.js.map +1 -1
  1203. package/dist/core/resource-loader-reload.d.ts.map +1 -1
  1204. package/dist/core/resource-loader-reload.js +29 -13
  1205. package/dist/core/resource-loader-reload.js.map +1 -1
  1206. package/dist/core/resource-loader-source-info.d.ts +1 -1
  1207. package/dist/core/resource-loader-source-info.d.ts.map +1 -1
  1208. package/dist/core/resource-loader-source-info.js +7 -4
  1209. package/dist/core/resource-loader-source-info.js.map +1 -1
  1210. package/dist/core/resource-loader-types.d.ts +12 -6
  1211. package/dist/core/resource-loader-types.d.ts.map +1 -1
  1212. package/dist/core/resource-loader-types.js.map +1 -1
  1213. package/dist/core/resource-loader.d.ts +1 -1
  1214. package/dist/core/resource-loader.d.ts.map +1 -1
  1215. package/dist/core/resource-loader.js +1 -1
  1216. package/dist/core/resource-loader.js.map +1 -1
  1217. package/dist/core/runtime-credentials.d.ts +16 -0
  1218. package/dist/core/runtime-credentials.d.ts.map +1 -0
  1219. package/dist/core/runtime-credentials.js +42 -0
  1220. package/dist/core/runtime-credentials.js.map +1 -0
  1221. package/dist/core/sdk-exports.d.ts +2 -2
  1222. package/dist/core/sdk-exports.d.ts.map +1 -1
  1223. package/dist/core/sdk-exports.js +2 -2
  1224. package/dist/core/sdk-exports.js.map +1 -1
  1225. package/dist/core/sdk-types.d.ts +16 -18
  1226. package/dist/core/sdk-types.d.ts.map +1 -1
  1227. package/dist/core/sdk-types.js.map +1 -1
  1228. package/dist/core/sdk.d.ts +2 -1
  1229. package/dist/core/sdk.d.ts.map +1 -1
  1230. package/dist/core/sdk.js +61 -132
  1231. package/dist/core/sdk.js.map +1 -1
  1232. package/dist/core/session-manager-archive.d.ts.map +1 -1
  1233. package/dist/core/session-manager-archive.js +5 -2
  1234. package/dist/core/session-manager-archive.js.map +1 -1
  1235. package/dist/core/session-manager-classification.js +3 -3
  1236. package/dist/core/session-manager-classification.js.map +1 -1
  1237. package/dist/core/session-manager-core.d.ts +5 -4
  1238. package/dist/core/session-manager-core.d.ts.map +1 -1
  1239. package/dist/core/session-manager-core.js +29 -33
  1240. package/dist/core/session-manager-core.js.map +1 -1
  1241. package/dist/core/session-manager-entries.d.ts +6 -9
  1242. package/dist/core/session-manager-entries.d.ts.map +1 -1
  1243. package/dist/core/session-manager-entries.js +5 -9
  1244. package/dist/core/session-manager-entries.js.map +1 -1
  1245. package/dist/core/session-manager-history.d.ts +8 -3
  1246. package/dist/core/session-manager-history.d.ts.map +1 -1
  1247. package/dist/core/session-manager-history.js +90 -27
  1248. package/dist/core/session-manager-history.js.map +1 -1
  1249. package/dist/core/session-manager-list.d.ts.map +1 -1
  1250. package/dist/core/session-manager-list.js +1 -1
  1251. package/dist/core/session-manager-list.js.map +1 -1
  1252. package/dist/core/session-manager-migrations.js.map +1 -1
  1253. package/dist/core/session-manager-storage.d.ts +6 -0
  1254. package/dist/core/session-manager-storage.d.ts.map +1 -1
  1255. package/dist/core/session-manager-storage.js +38 -5
  1256. package/dist/core/session-manager-storage.js.map +1 -1
  1257. package/dist/core/session-manager-types.d.ts +13 -8
  1258. package/dist/core/session-manager-types.d.ts.map +1 -1
  1259. package/dist/core/session-manager-types.js.map +1 -1
  1260. package/dist/core/session-manager-validation.d.ts.map +1 -1
  1261. package/dist/core/session-manager-validation.js +3 -16
  1262. package/dist/core/session-manager-validation.js.map +1 -1
  1263. package/dist/core/session-manager.d.ts +4 -4
  1264. package/dist/core/session-manager.d.ts.map +1 -1
  1265. package/dist/core/session-manager.js +2 -2
  1266. package/dist/core/session-manager.js.map +1 -1
  1267. package/dist/core/settings-manager-basic-accessors.d.ts +7 -4
  1268. package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
  1269. package/dist/core/settings-manager-basic-accessors.js +35 -50
  1270. package/dist/core/settings-manager-basic-accessors.js.map +1 -1
  1271. package/dist/core/settings-manager-core.d.ts +2 -4
  1272. package/dist/core/settings-manager-core.d.ts.map +1 -1
  1273. package/dist/core/settings-manager-core.js +5 -51
  1274. package/dist/core/settings-manager-core.js.map +1 -1
  1275. package/dist/core/settings-manager-resource-accessors.d.ts +3 -0
  1276. package/dist/core/settings-manager-resource-accessors.d.ts.map +1 -1
  1277. package/dist/core/settings-manager-resource-accessors.js +16 -0
  1278. package/dist/core/settings-manager-resource-accessors.js.map +1 -1
  1279. package/dist/core/settings-manager-ui-accessors.js +2 -1
  1280. package/dist/core/settings-manager-ui-accessors.js.map +1 -1
  1281. package/dist/core/settings-manager.d.ts +1 -1
  1282. package/dist/core/settings-manager.d.ts.map +1 -1
  1283. package/dist/core/settings-manager.js.map +1 -1
  1284. package/dist/core/settings-storage.d.ts +3 -1
  1285. package/dist/core/settings-storage.d.ts.map +1 -1
  1286. package/dist/core/settings-storage.js +23 -1
  1287. package/dist/core/settings-storage.js.map +1 -1
  1288. package/dist/core/settings-types.d.ts +10 -6
  1289. package/dist/core/settings-types.d.ts.map +1 -1
  1290. package/dist/core/settings-types.js.map +1 -1
  1291. package/dist/core/skills-async.d.ts.map +1 -1
  1292. package/dist/core/skills-async.js +18 -8
  1293. package/dist/core/skills-async.js.map +1 -1
  1294. package/dist/core/slash-commands.d.ts +1 -0
  1295. package/dist/core/slash-commands.d.ts.map +1 -1
  1296. package/dist/core/slash-commands.js +127 -24
  1297. package/dist/core/slash-commands.js.map +1 -1
  1298. package/dist/core/source-info.d.ts +3 -1
  1299. package/dist/core/source-info.d.ts.map +1 -1
  1300. package/dist/core/source-info.js +2 -0
  1301. package/dist/core/source-info.js.map +1 -1
  1302. package/dist/core/summarization-retry.d.ts +11 -0
  1303. package/dist/core/summarization-retry.d.ts.map +1 -0
  1304. package/dist/core/summarization-retry.js +21 -0
  1305. package/dist/core/summarization-retry.js.map +1 -0
  1306. package/dist/core/system-prompt.d.ts.map +1 -1
  1307. package/dist/core/system-prompt.js +15 -18
  1308. package/dist/core/system-prompt.js.map +1 -1
  1309. package/dist/core/thinking-blocks.d.ts.map +1 -1
  1310. package/dist/core/thinking-blocks.js +2 -2
  1311. package/dist/core/thinking-blocks.js.map +1 -1
  1312. package/dist/core/tools/artifact-protocol.d.ts.map +1 -1
  1313. package/dist/core/tools/artifact-protocol.js.map +1 -1
  1314. package/dist/core/tools/artifacts.d.ts.map +1 -1
  1315. package/dist/core/tools/artifacts.js.map +1 -1
  1316. package/dist/core/tools/ask-user-question/ask-user-question.d.ts.map +1 -1
  1317. package/dist/core/tools/ask-user-question/ask-user-question.js +1 -1
  1318. package/dist/core/tools/ask-user-question/ask-user-question.js.map +1 -1
  1319. package/dist/core/tools/ask-user-question/state/build-questionnaire.d.ts +1 -1
  1320. package/dist/core/tools/ask-user-question/state/build-questionnaire.d.ts.map +1 -1
  1321. package/dist/core/tools/ask-user-question/state/build-questionnaire.js +1 -1
  1322. package/dist/core/tools/ask-user-question/state/build-questionnaire.js.map +1 -1
  1323. package/dist/core/tools/ask-user-question/state/questionnaire-session.d.ts.map +1 -1
  1324. package/dist/core/tools/ask-user-question/state/questionnaire-session.js +2 -4
  1325. package/dist/core/tools/ask-user-question/state/questionnaire-session.js.map +1 -1
  1326. package/dist/core/tools/ask-user-question/state/state-reducer.d.ts.map +1 -1
  1327. package/dist/core/tools/ask-user-question/state/state-reducer.js.map +1 -1
  1328. package/dist/core/tools/ask-user-question/view/body-residual-spacer.d.ts.map +1 -1
  1329. package/dist/core/tools/ask-user-question/view/body-residual-spacer.js.map +1 -1
  1330. package/dist/core/tools/ask-user-question/view/components/multi-select-view.d.ts.map +1 -1
  1331. package/dist/core/tools/ask-user-question/view/components/multi-select-view.js.map +1 -1
  1332. package/dist/core/tools/ask-user-question/view/components/preview/markdown-content-cache.d.ts +1 -1
  1333. package/dist/core/tools/ask-user-question/view/components/preview/markdown-content-cache.d.ts.map +1 -1
  1334. package/dist/core/tools/ask-user-question/view/components/preview/markdown-content-cache.js.map +1 -1
  1335. package/dist/core/tools/ask-user-question/view/components/preview/preview-block-renderer.d.ts +1 -1
  1336. package/dist/core/tools/ask-user-question/view/components/preview/preview-block-renderer.d.ts.map +1 -1
  1337. package/dist/core/tools/ask-user-question/view/components/preview/preview-block-renderer.js +1 -3
  1338. package/dist/core/tools/ask-user-question/view/components/preview/preview-block-renderer.js.map +1 -1
  1339. package/dist/core/tools/ask-user-question/view/components/submit-picker.d.ts.map +1 -1
  1340. package/dist/core/tools/ask-user-question/view/components/submit-picker.js.map +1 -1
  1341. package/dist/core/tools/ask-user-question/view/components/tab-bar.d.ts.map +1 -1
  1342. package/dist/core/tools/ask-user-question/view/components/tab-bar.js.map +1 -1
  1343. package/dist/core/tools/ask-user-question/view/dialog-builder.d.ts +1 -1
  1344. package/dist/core/tools/ask-user-question/view/dialog-builder.d.ts.map +1 -1
  1345. package/dist/core/tools/ask-user-question/view/dialog-builder.js +1 -1
  1346. package/dist/core/tools/ask-user-question/view/dialog-builder.js.map +1 -1
  1347. package/dist/core/tools/ask-user-question/view/props-adapter.d.ts.map +1 -1
  1348. package/dist/core/tools/ask-user-question/view/props-adapter.js +2 -4
  1349. package/dist/core/tools/ask-user-question/view/props-adapter.js.map +1 -1
  1350. package/dist/core/tools/ask-user-question/view/tab-content-strategy.d.ts +1 -1
  1351. package/dist/core/tools/ask-user-question/view/tab-content-strategy.d.ts.map +1 -1
  1352. package/dist/core/tools/ask-user-question/view/tab-content-strategy.js +2 -9
  1353. package/dist/core/tools/ask-user-question/view/tab-content-strategy.js.map +1 -1
  1354. package/dist/core/tools/bash-async-execution.d.ts.map +1 -1
  1355. package/dist/core/tools/bash-async-execution.js +11 -4
  1356. package/dist/core/tools/bash-async-execution.js.map +1 -1
  1357. package/dist/core/tools/bash-async-jobs.d.ts.map +1 -1
  1358. package/dist/core/tools/bash-async-jobs.js +14 -2
  1359. package/dist/core/tools/bash-async-jobs.js.map +1 -1
  1360. package/dist/core/tools/bash-async-output.d.ts.map +1 -1
  1361. package/dist/core/tools/bash-async-output.js +6 -2
  1362. package/dist/core/tools/bash-async-output.js.map +1 -1
  1363. package/dist/core/tools/bash-interceptor.d.ts.map +1 -1
  1364. package/dist/core/tools/bash-interceptor.js +20 -4
  1365. package/dist/core/tools/bash-interceptor.js.map +1 -1
  1366. package/dist/core/tools/bash-leading-cd.d.ts.map +1 -1
  1367. package/dist/core/tools/bash-leading-cd.js +9 -3
  1368. package/dist/core/tools/bash-leading-cd.js.map +1 -1
  1369. package/dist/core/tools/bash-pty-native.d.ts.map +1 -1
  1370. package/dist/core/tools/bash-pty-native.js.map +1 -1
  1371. package/dist/core/tools/bash-session-environment.d.ts +13 -0
  1372. package/dist/core/tools/bash-session-environment.d.ts.map +1 -0
  1373. package/dist/core/tools/bash-session-environment.js +47 -0
  1374. package/dist/core/tools/bash-session-environment.js.map +1 -0
  1375. package/dist/core/tools/bash.d.ts +4 -1
  1376. package/dist/core/tools/bash.d.ts.map +1 -1
  1377. package/dist/core/tools/bash.js +134 -30
  1378. package/dist/core/tools/bash.js.map +1 -1
  1379. package/dist/core/tools/block-resolver.d.ts.map +1 -1
  1380. package/dist/core/tools/block-resolver.js.map +1 -1
  1381. package/dist/core/tools/conflict-registry.d.ts.map +1 -1
  1382. package/dist/core/tools/conflict-registry.js.map +1 -1
  1383. package/dist/core/tools/directory-tree.d.ts.map +1 -1
  1384. package/dist/core/tools/directory-tree.js +20 -4
  1385. package/dist/core/tools/directory-tree.js.map +1 -1
  1386. package/dist/core/tools/edit.d.ts.map +1 -1
  1387. package/dist/core/tools/edit.js +37 -13
  1388. package/dist/core/tools/edit.js.map +1 -1
  1389. package/dist/core/tools/fetch-url.d.ts.map +1 -1
  1390. package/dist/core/tools/fetch-url.js +127 -41
  1391. package/dist/core/tools/fetch-url.js.map +1 -1
  1392. package/dist/core/tools/find.d.ts.map +1 -1
  1393. package/dist/core/tools/find.js +176 -46
  1394. package/dist/core/tools/find.js.map +1 -1
  1395. package/dist/core/tools/grep.d.ts.map +1 -1
  1396. package/dist/core/tools/grep.js +43 -10
  1397. package/dist/core/tools/grep.js.map +1 -1
  1398. package/dist/core/tools/hashline-engine/apply.d.ts.map +1 -1
  1399. package/dist/core/tools/hashline-engine/apply.js +6 -6
  1400. package/dist/core/tools/hashline-engine/apply.js.map +1 -1
  1401. package/dist/core/tools/hashline-engine/block.js +1 -1
  1402. package/dist/core/tools/hashline-engine/block.js.map +1 -1
  1403. package/dist/core/tools/hashline-engine/format.d.ts.map +1 -1
  1404. package/dist/core/tools/hashline-engine/format.js +1 -1
  1405. package/dist/core/tools/hashline-engine/format.js.map +1 -1
  1406. package/dist/core/tools/hashline-engine/input.d.ts.map +1 -1
  1407. package/dist/core/tools/hashline-engine/input.js +7 -7
  1408. package/dist/core/tools/hashline-engine/input.js.map +1 -1
  1409. package/dist/core/tools/hashline-engine/parser.js +1 -1
  1410. package/dist/core/tools/hashline-engine/parser.js.map +1 -1
  1411. package/dist/core/tools/hashline-engine/patcher.js +5 -5
  1412. package/dist/core/tools/hashline-engine/patcher.js.map +1 -1
  1413. package/dist/core/tools/hashline-engine/prefixes.js +4 -4
  1414. package/dist/core/tools/hashline-engine/prefixes.js.map +1 -1
  1415. package/dist/core/tools/hashline-engine/recovery.d.ts.map +1 -1
  1416. package/dist/core/tools/hashline-engine/recovery.js +4 -2
  1417. package/dist/core/tools/hashline-engine/recovery.js.map +1 -1
  1418. package/dist/core/tools/hashline-engine/snapshots.js +5 -5
  1419. package/dist/core/tools/hashline-engine/snapshots.js.map +1 -1
  1420. package/dist/core/tools/hashline.d.ts.map +1 -1
  1421. package/dist/core/tools/hashline.js +24 -13
  1422. package/dist/core/tools/hashline.js.map +1 -1
  1423. package/dist/core/tools/index.d.ts +6 -6
  1424. package/dist/core/tools/index.d.ts.map +1 -1
  1425. package/dist/core/tools/index.js +6 -6
  1426. package/dist/core/tools/index.js.map +1 -1
  1427. package/dist/core/tools/ls.d.ts.map +1 -1
  1428. package/dist/core/tools/ls.js +2 -1
  1429. package/dist/core/tools/ls.js.map +1 -1
  1430. package/dist/core/tools/notebook.d.ts.map +1 -1
  1431. package/dist/core/tools/notebook.js +13 -3
  1432. package/dist/core/tools/notebook.js.map +1 -1
  1433. package/dist/core/tools/read-document-extract.d.ts.map +1 -1
  1434. package/dist/core/tools/read-document-extract.js +30 -10
  1435. package/dist/core/tools/read-document-extract.js.map +1 -1
  1436. package/dist/core/tools/read-selectors.d.ts.map +1 -1
  1437. package/dist/core/tools/read-selectors.js +59 -15
  1438. package/dist/core/tools/read-selectors.js.map +1 -1
  1439. package/dist/core/tools/read-url.d.ts.map +1 -1
  1440. package/dist/core/tools/read-url.js +41 -7
  1441. package/dist/core/tools/read-url.js.map +1 -1
  1442. package/dist/core/tools/read.d.ts.map +1 -1
  1443. package/dist/core/tools/read.js +307 -72
  1444. package/dist/core/tools/read.js.map +1 -1
  1445. package/dist/core/tools/resource-selectors.d.ts +4 -0
  1446. package/dist/core/tools/resource-selectors.d.ts.map +1 -1
  1447. package/dist/core/tools/resource-selectors.js +324 -84
  1448. package/dist/core/tools/resource-selectors.js.map +1 -1
  1449. package/dist/core/tools/search-details.d.ts.map +1 -1
  1450. package/dist/core/tools/search-details.js +13 -1
  1451. package/dist/core/tools/search-details.js.map +1 -1
  1452. package/dist/core/tools/search-line-ranges.d.ts.map +1 -1
  1453. package/dist/core/tools/search-line-ranges.js +5 -2
  1454. package/dist/core/tools/search-line-ranges.js.map +1 -1
  1455. package/dist/core/tools/search-native.d.ts.map +1 -1
  1456. package/dist/core/tools/search-native.js.map +1 -1
  1457. package/dist/core/tools/search.d.ts.map +1 -1
  1458. package/dist/core/tools/search.js +244 -90
  1459. package/dist/core/tools/search.js.map +1 -1
  1460. package/dist/core/tools/structured-output.d.ts +1 -1
  1461. package/dist/core/tools/structured-output.d.ts.map +1 -1
  1462. package/dist/core/tools/structured-output.js.map +1 -1
  1463. package/dist/core/tools/todos-execute.d.ts.map +1 -1
  1464. package/dist/core/tools/todos-execute.js +4 -4
  1465. package/dist/core/tools/todos-execute.js.map +1 -1
  1466. package/dist/core/tools/todos-locks.d.ts.map +1 -1
  1467. package/dist/core/tools/todos-locks.js.map +1 -1
  1468. package/dist/core/tools/todos-mutations.js +1 -1
  1469. package/dist/core/tools/todos-mutations.js.map +1 -1
  1470. package/dist/core/tools/todos-paths.js +2 -2
  1471. package/dist/core/tools/todos-paths.js.map +1 -1
  1472. package/dist/core/tools/todos-render.d.ts.map +1 -1
  1473. package/dist/core/tools/todos-render.js +2 -2
  1474. package/dist/core/tools/todos-render.js.map +1 -1
  1475. package/dist/core/tools/todos-storage.d.ts.map +1 -1
  1476. package/dist/core/tools/todos-storage.js +1 -2
  1477. package/dist/core/tools/todos-storage.js.map +1 -1
  1478. package/dist/core/tools/todos-types.d.ts.map +1 -1
  1479. package/dist/core/tools/todos-types.js +1 -11
  1480. package/dist/core/tools/todos-types.js.map +1 -1
  1481. package/dist/core/tools/tool-definition-wrapper.d.ts +3 -0
  1482. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  1483. package/dist/core/tools/tool-definition-wrapper.js +9 -5
  1484. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  1485. package/dist/core/tools/url-ip-guards.d.ts.map +1 -1
  1486. package/dist/core/tools/url-ip-guards.js +27 -17
  1487. package/dist/core/tools/url-ip-guards.js.map +1 -1
  1488. package/dist/core/tools/write.d.ts.map +1 -1
  1489. package/dist/core/tools/write.js +88 -29
  1490. package/dist/core/tools/write.js.map +1 -1
  1491. package/dist/core/usage-totals.d.ts +18 -0
  1492. package/dist/core/usage-totals.d.ts.map +1 -0
  1493. package/dist/core/usage-totals.js +43 -0
  1494. package/dist/core/usage-totals.js.map +1 -0
  1495. package/dist/core/workflow-stage-admission.d.ts.map +1 -1
  1496. package/dist/core/workflow-stage-admission.js +8 -2
  1497. package/dist/core/workflow-stage-admission.js.map +1 -1
  1498. package/dist/extensions/index.d.ts +3 -0
  1499. package/dist/extensions/index.d.ts.map +1 -0
  1500. package/dist/extensions/index.js +5 -0
  1501. package/dist/extensions/index.js.map +1 -0
  1502. package/dist/extensions/llama/client.d.ts +61 -0
  1503. package/dist/extensions/llama/client.d.ts.map +1 -0
  1504. package/dist/extensions/llama/client.js +300 -0
  1505. package/dist/extensions/llama/client.js.map +1 -0
  1506. package/dist/extensions/llama/huggingface-ui.d.ts +33 -0
  1507. package/dist/extensions/llama/huggingface-ui.d.ts.map +1 -0
  1508. package/dist/extensions/llama/huggingface-ui.js +166 -0
  1509. package/dist/extensions/llama/huggingface-ui.js.map +1 -0
  1510. package/dist/extensions/llama/huggingface.d.ts +23 -0
  1511. package/dist/extensions/llama/huggingface.d.ts.map +1 -0
  1512. package/dist/extensions/llama/huggingface.js +139 -0
  1513. package/dist/extensions/llama/huggingface.js.map +1 -0
  1514. package/dist/extensions/llama/index.d.ts +3 -0
  1515. package/dist/extensions/llama/index.d.ts.map +1 -0
  1516. package/dist/extensions/llama/index.js +208 -0
  1517. package/dist/extensions/llama/index.js.map +1 -0
  1518. package/dist/extensions/llama/provider.d.ts +10 -0
  1519. package/dist/extensions/llama/provider.d.ts.map +1 -0
  1520. package/dist/extensions/llama/provider.js +107 -0
  1521. package/dist/extensions/llama/provider.js.map +1 -0
  1522. package/dist/extensions/llama/ui.d.ts +42 -0
  1523. package/dist/extensions/llama/ui.d.ts.map +1 -0
  1524. package/dist/extensions/llama/ui.js +237 -0
  1525. package/dist/extensions/llama/ui.js.map +1 -0
  1526. package/dist/index-extensions.d.ts +2 -2
  1527. package/dist/index-extensions.d.ts.map +1 -1
  1528. package/dist/index-extensions.js +1 -1
  1529. package/dist/index-extensions.js.map +1 -1
  1530. package/dist/index.d.ts +22 -23
  1531. package/dist/index.d.ts.map +1 -1
  1532. package/dist/index.js +26 -27
  1533. package/dist/index.js.map +1 -1
  1534. package/dist/main-app-mode.d.ts +1 -0
  1535. package/dist/main-app-mode.d.ts.map +1 -1
  1536. package/dist/main-app-mode.js +3 -0
  1537. package/dist/main-app-mode.js.map +1 -1
  1538. package/dist/main-deferred-startup.d.ts +1 -1
  1539. package/dist/main-deferred-startup.d.ts.map +1 -1
  1540. package/dist/main-deferred-startup.js +16 -15
  1541. package/dist/main-deferred-startup.js.map +1 -1
  1542. package/dist/main-early-input.js.map +1 -1
  1543. package/dist/main-first-time-setup.d.ts +6 -0
  1544. package/dist/main-first-time-setup.d.ts.map +1 -0
  1545. package/dist/main-first-time-setup.js +10 -0
  1546. package/dist/main-first-time-setup.js.map +1 -0
  1547. package/dist/main-runtime-api-key.d.ts +6 -0
  1548. package/dist/main-runtime-api-key.d.ts.map +1 -0
  1549. package/dist/main-runtime-api-key.js +6 -0
  1550. package/dist/main-runtime-api-key.js.map +1 -0
  1551. package/dist/main-session-options.d.ts +2 -2
  1552. package/dist/main-session-options.d.ts.map +1 -1
  1553. package/dist/main-session-options.js +3 -7
  1554. package/dist/main-session-options.js.map +1 -1
  1555. package/dist/main-session.d.ts.map +1 -1
  1556. package/dist/main-session.js +5 -4
  1557. package/dist/main-session.js.map +1 -1
  1558. package/dist/main-types.d.ts +2 -2
  1559. package/dist/main-types.d.ts.map +1 -1
  1560. package/dist/main-types.js.map +1 -1
  1561. package/dist/main.d.ts +1 -1
  1562. package/dist/main.d.ts.map +1 -1
  1563. package/dist/main.js +173 -69
  1564. package/dist/main.js.map +1 -1
  1565. package/dist/migrations-config-values.d.ts.map +1 -1
  1566. package/dist/migrations-config-values.js +3 -1
  1567. package/dist/migrations-config-values.js.map +1 -1
  1568. package/dist/migrations.d.ts.map +1 -1
  1569. package/dist/migrations.js.map +1 -1
  1570. package/dist/modes/index.d.ts +1 -1
  1571. package/dist/modes/index.d.ts.map +1 -1
  1572. package/dist/modes/index.js.map +1 -1
  1573. package/dist/modes/interactive/chat-input-actions.d.ts +1 -1
  1574. package/dist/modes/interactive/chat-input-actions.d.ts.map +1 -1
  1575. package/dist/modes/interactive/chat-input-actions.js +30 -103
  1576. package/dist/modes/interactive/chat-input-actions.js.map +1 -1
  1577. package/dist/modes/interactive/components/atomic-banner.d.ts +9 -8
  1578. package/dist/modes/interactive/components/atomic-banner.d.ts.map +1 -1
  1579. package/dist/modes/interactive/components/atomic-banner.js +68 -22
  1580. package/dist/modes/interactive/components/atomic-banner.js.map +1 -1
  1581. package/dist/modes/interactive/components/atomic-working-status.d.ts +52 -0
  1582. package/dist/modes/interactive/components/atomic-working-status.d.ts.map +1 -0
  1583. package/dist/modes/interactive/components/atomic-working-status.js +215 -0
  1584. package/dist/modes/interactive/components/atomic-working-status.js.map +1 -0
  1585. package/dist/modes/interactive/components/chat-message-renderer.d.ts +1 -1
  1586. package/dist/modes/interactive/components/chat-message-renderer.d.ts.map +1 -1
  1587. package/dist/modes/interactive/components/chat-message-renderer.js +7 -6
  1588. package/dist/modes/interactive/components/chat-message-renderer.js.map +1 -1
  1589. package/dist/modes/interactive/components/chat-session-host-actions.d.ts +10 -4
  1590. package/dist/modes/interactive/components/chat-session-host-actions.d.ts.map +1 -1
  1591. package/dist/modes/interactive/components/chat-session-host-actions.js +105 -20
  1592. package/dist/modes/interactive/components/chat-session-host-actions.js.map +1 -1
  1593. package/dist/modes/interactive/components/chat-session-host-editor.d.ts +7 -5
  1594. package/dist/modes/interactive/components/chat-session-host-editor.d.ts.map +1 -1
  1595. package/dist/modes/interactive/components/chat-session-host-editor.js +14 -9
  1596. package/dist/modes/interactive/components/chat-session-host-editor.js.map +1 -1
  1597. package/dist/modes/interactive/components/chat-session-host-events.d.ts +3 -0
  1598. package/dist/modes/interactive/components/chat-session-host-events.d.ts.map +1 -1
  1599. package/dist/modes/interactive/components/chat-session-host-events.js +86 -16
  1600. package/dist/modes/interactive/components/chat-session-host-events.js.map +1 -1
  1601. package/dist/modes/interactive/components/chat-session-host-rendering.d.ts +1 -1
  1602. package/dist/modes/interactive/components/chat-session-host-rendering.d.ts.map +1 -1
  1603. package/dist/modes/interactive/components/chat-session-host-rendering.js +49 -14
  1604. package/dist/modes/interactive/components/chat-session-host-rendering.js.map +1 -1
  1605. package/dist/modes/interactive/components/chat-session-host-runtime.d.ts +36 -2
  1606. package/dist/modes/interactive/components/chat-session-host-runtime.d.ts.map +1 -1
  1607. package/dist/modes/interactive/components/chat-session-host-runtime.js +129 -25
  1608. package/dist/modes/interactive/components/chat-session-host-runtime.js.map +1 -1
  1609. package/dist/modes/interactive/components/chat-session-host-state.d.ts +11 -2
  1610. package/dist/modes/interactive/components/chat-session-host-state.d.ts.map +1 -1
  1611. package/dist/modes/interactive/components/chat-session-host-state.js +5 -0
  1612. package/dist/modes/interactive/components/chat-session-host-state.js.map +1 -1
  1613. package/dist/modes/interactive/components/chat-session-host-terminal-cleanup.d.ts.map +1 -1
  1614. package/dist/modes/interactive/components/chat-session-host-terminal-cleanup.js.map +1 -1
  1615. package/dist/modes/interactive/components/chat-session-host-types.d.ts +19 -2
  1616. package/dist/modes/interactive/components/chat-session-host-types.d.ts.map +1 -1
  1617. package/dist/modes/interactive/components/chat-session-host-types.js.map +1 -1
  1618. package/dist/modes/interactive/components/chat-session-host-utils.d.ts +1 -1
  1619. package/dist/modes/interactive/components/chat-session-host-utils.d.ts.map +1 -1
  1620. package/dist/modes/interactive/components/chat-session-host-utils.js +3 -8
  1621. package/dist/modes/interactive/components/chat-session-host-utils.js.map +1 -1
  1622. package/dist/modes/interactive/components/chat-session-host.d.ts +33 -6
  1623. package/dist/modes/interactive/components/chat-session-host.d.ts.map +1 -1
  1624. package/dist/modes/interactive/components/chat-session-host.js +57 -7
  1625. package/dist/modes/interactive/components/chat-session-host.js.map +1 -1
  1626. package/dist/modes/interactive/components/chat-transcript.d.ts +1 -1
  1627. package/dist/modes/interactive/components/chat-transcript.d.ts.map +1 -1
  1628. package/dist/modes/interactive/components/chat-transcript.js +5 -12
  1629. package/dist/modes/interactive/components/chat-transcript.js.map +1 -1
  1630. package/dist/modes/interactive/components/compaction-boundary-message.d.ts.map +1 -1
  1631. package/dist/modes/interactive/components/compaction-boundary-message.js +20 -8
  1632. package/dist/modes/interactive/components/compaction-boundary-message.js.map +1 -1
  1633. package/dist/modes/interactive/components/config-selector-list.d.ts +6 -6
  1634. package/dist/modes/interactive/components/config-selector-list.d.ts.map +1 -1
  1635. package/dist/modes/interactive/components/config-selector-list.js +66 -125
  1636. package/dist/modes/interactive/components/config-selector-list.js.map +1 -1
  1637. package/dist/modes/interactive/components/config-selector-project-scope.d.ts +4 -0
  1638. package/dist/modes/interactive/components/config-selector-project-scope.d.ts.map +1 -0
  1639. package/dist/modes/interactive/components/config-selector-project-scope.js +59 -0
  1640. package/dist/modes/interactive/components/config-selector-project-scope.js.map +1 -0
  1641. package/dist/modes/interactive/components/config-selector.d.ts +8 -5
  1642. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  1643. package/dist/modes/interactive/components/config-selector.js +46 -13
  1644. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  1645. package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
  1646. package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
  1647. package/dist/modes/interactive/components/custom-editor.d.ts +11 -0
  1648. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  1649. package/dist/modes/interactive/components/custom-editor.js +21 -5
  1650. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  1651. package/dist/modes/interactive/components/custom-entry.d.ts +16 -0
  1652. package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -0
  1653. package/dist/modes/interactive/components/custom-entry.js +45 -0
  1654. package/dist/modes/interactive/components/custom-entry.js.map +1 -0
  1655. package/dist/modes/interactive/components/custom-message.d.ts +3 -1
  1656. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  1657. package/dist/modes/interactive/components/custom-message.js +10 -5
  1658. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  1659. package/dist/modes/interactive/components/diff.js +2 -2
  1660. package/dist/modes/interactive/components/diff.js.map +1 -1
  1661. package/dist/modes/interactive/components/extension-editor.d.ts +3 -2
  1662. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  1663. package/dist/modes/interactive/components/extension-editor.js +14 -43
  1664. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  1665. package/dist/modes/interactive/components/first-time-setup.d.ts +24 -0
  1666. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -0
  1667. package/dist/modes/interactive/components/first-time-setup.js +80 -0
  1668. package/dist/modes/interactive/components/first-time-setup.js.map +1 -0
  1669. package/dist/modes/interactive/components/footer.d.ts +7 -1
  1670. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  1671. package/dist/modes/interactive/components/footer.js +68 -39
  1672. package/dist/modes/interactive/components/footer.js.map +1 -1
  1673. package/dist/modes/interactive/components/host-input-form-mount.d.ts.map +1 -1
  1674. package/dist/modes/interactive/components/host-input-form-mount.js +4 -2
  1675. package/dist/modes/interactive/components/host-input-form-mount.js.map +1 -1
  1676. package/dist/modes/interactive/components/host-input-form.d.ts +2 -0
  1677. package/dist/modes/interactive/components/host-input-form.d.ts.map +1 -1
  1678. package/dist/modes/interactive/components/host-input-form.js +61 -24
  1679. package/dist/modes/interactive/components/host-input-form.js.map +1 -1
  1680. package/dist/modes/interactive/components/host-session-picker.d.ts.map +1 -1
  1681. package/dist/modes/interactive/components/host-session-picker.js +8 -3
  1682. package/dist/modes/interactive/components/host-session-picker.js.map +1 -1
  1683. package/dist/modes/interactive/components/idle-status.d.ts +8 -0
  1684. package/dist/modes/interactive/components/idle-status.d.ts.map +1 -0
  1685. package/dist/modes/interactive/components/idle-status.js +13 -0
  1686. package/dist/modes/interactive/components/idle-status.js.map +1 -0
  1687. package/dist/modes/interactive/components/index.d.ts +9 -5
  1688. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  1689. package/dist/modes/interactive/components/index.js +5 -2
  1690. package/dist/modes/interactive/components/index.js.map +1 -1
  1691. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  1692. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  1693. package/dist/modes/interactive/components/login-dialog.d.ts +5 -5
  1694. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  1695. package/dist/modes/interactive/components/login-dialog.js +15 -9
  1696. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  1697. package/dist/modes/interactive/components/model-selector.d.ts +3 -3
  1698. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  1699. package/dist/modes/interactive/components/model-selector.js +44 -68
  1700. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  1701. package/dist/modes/interactive/components/oauth-selector.d.ts +4 -3
  1702. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  1703. package/dist/modes/interactive/components/oauth-selector.js +19 -18
  1704. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  1705. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  1706. package/dist/modes/interactive/components/scoped-models-selector.js +22 -13
  1707. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  1708. package/dist/modes/interactive/components/session-selector-list.d.ts +1 -1
  1709. package/dist/modes/interactive/components/session-selector-list.d.ts.map +1 -1
  1710. package/dist/modes/interactive/components/session-selector-list.js.map +1 -1
  1711. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  1712. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  1713. package/dist/modes/interactive/components/settings-selector-handlers.d.ts.map +1 -1
  1714. package/dist/modes/interactive/components/settings-selector-handlers.js +6 -0
  1715. package/dist/modes/interactive/components/settings-selector-handlers.js.map +1 -1
  1716. package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
  1717. package/dist/modes/interactive/components/settings-selector-items.js +14 -0
  1718. package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
  1719. package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
  1720. package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
  1721. package/dist/modes/interactive/components/settings-selector-types.d.ts +4 -0
  1722. package/dist/modes/interactive/components/settings-selector-types.d.ts.map +1 -1
  1723. package/dist/modes/interactive/components/settings-selector-types.js.map +1 -1
  1724. package/dist/modes/interactive/components/startup-identity.d.ts +22 -0
  1725. package/dist/modes/interactive/components/startup-identity.d.ts.map +1 -0
  1726. package/dist/modes/interactive/components/startup-identity.js +58 -0
  1727. package/dist/modes/interactive/components/startup-identity.js.map +1 -0
  1728. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  1729. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  1730. package/dist/modes/interactive/components/tree-selector-content.d.ts.map +1 -1
  1731. package/dist/modes/interactive/components/tree-selector-content.js +0 -6
  1732. package/dist/modes/interactive/components/tree-selector-content.js.map +1 -1
  1733. package/dist/modes/interactive/components/tree-selector-model.d.ts.map +1 -1
  1734. package/dist/modes/interactive/components/tree-selector-model.js +1 -10
  1735. package/dist/modes/interactive/components/tree-selector-model.js.map +1 -1
  1736. package/dist/modes/interactive/components/tree-selector-viewport.d.ts.map +1 -1
  1737. package/dist/modes/interactive/components/tree-selector-viewport.js.map +1 -1
  1738. package/dist/modes/interactive/components/working-status.d.ts +5 -11
  1739. package/dist/modes/interactive/components/working-status.d.ts.map +1 -1
  1740. package/dist/modes/interactive/components/working-status.js +14 -15
  1741. package/dist/modes/interactive/components/working-status.js.map +1 -1
  1742. package/dist/modes/interactive/external-editor.d.ts +23 -0
  1743. package/dist/modes/interactive/external-editor.d.ts.map +1 -0
  1744. package/dist/modes/interactive/external-editor.js +120 -0
  1745. package/dist/modes/interactive/external-editor.js.map +1 -0
  1746. package/dist/modes/interactive/interactive-agent-events.js +73 -28
  1747. package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
  1748. package/dist/modes/interactive/interactive-auth-login.js +36 -28
  1749. package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
  1750. package/dist/modes/interactive/interactive-auth-routing.d.ts +3 -1
  1751. package/dist/modes/interactive/interactive-auth-routing.d.ts.map +1 -1
  1752. package/dist/modes/interactive/interactive-auth-routing.js +86 -64
  1753. package/dist/modes/interactive/interactive-auth-routing.js.map +1 -1
  1754. package/dist/modes/interactive/interactive-autocomplete.js +13 -13
  1755. package/dist/modes/interactive/interactive-autocomplete.js.map +1 -1
  1756. package/dist/modes/interactive/interactive-bash-compact.d.ts +2 -1
  1757. package/dist/modes/interactive/interactive-bash-compact.d.ts.map +1 -1
  1758. package/dist/modes/interactive/interactive-bash-compact.js +26 -8
  1759. package/dist/modes/interactive/interactive-bash-compact.js.map +1 -1
  1760. package/dist/modes/interactive/interactive-deferred-startup.d.ts.map +1 -1
  1761. package/dist/modes/interactive/interactive-deferred-startup.js +61 -27
  1762. package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
  1763. package/dist/modes/interactive/interactive-editor-actions.js +9 -12
  1764. package/dist/modes/interactive/interactive-editor-actions.js.map +1 -1
  1765. package/dist/modes/interactive/interactive-extension-context.js +4 -4
  1766. package/dist/modes/interactive/interactive-extension-context.js.map +1 -1
  1767. package/dist/modes/interactive/interactive-extension-custom-ui.js +15 -8
  1768. package/dist/modes/interactive/interactive-extension-custom-ui.js.map +1 -1
  1769. package/dist/modes/interactive/interactive-extension-dialogs.js +51 -25
  1770. package/dist/modes/interactive/interactive-extension-dialogs.js.map +1 -1
  1771. package/dist/modes/interactive/interactive-extension-runtime.js +15 -6
  1772. package/dist/modes/interactive/interactive-extension-runtime.js.map +1 -1
  1773. package/dist/modes/interactive/interactive-extension-widgets.js +1 -1
  1774. package/dist/modes/interactive/interactive-extension-widgets.js.map +1 -1
  1775. package/dist/modes/interactive/interactive-global-clear.d.ts +55 -3
  1776. package/dist/modes/interactive/interactive-global-clear.d.ts.map +1 -1
  1777. package/dist/modes/interactive/interactive-global-clear.js +61 -3
  1778. package/dist/modes/interactive/interactive-global-clear.js.map +1 -1
  1779. package/dist/modes/interactive/interactive-hotkeys-debug.js +2 -3
  1780. package/dist/modes/interactive/interactive-hotkeys-debug.js.map +1 -1
  1781. package/dist/modes/interactive/interactive-initial-session-binding.d.ts +4 -0
  1782. package/dist/modes/interactive/interactive-initial-session-binding.d.ts.map +1 -0
  1783. package/dist/modes/interactive/interactive-initial-session-binding.js +23 -0
  1784. package/dist/modes/interactive/interactive-initial-session-binding.js.map +1 -0
  1785. package/dist/modes/interactive/interactive-input-handling.d.ts +2 -1
  1786. package/dist/modes/interactive/interactive-input-handling.d.ts.map +1 -1
  1787. package/dist/modes/interactive/interactive-input-handling.js +82 -69
  1788. package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
  1789. package/dist/modes/interactive/interactive-key-identity.d.ts +22 -0
  1790. package/dist/modes/interactive/interactive-key-identity.d.ts.map +1 -0
  1791. package/dist/modes/interactive/interactive-key-identity.js +29 -0
  1792. package/dist/modes/interactive/interactive-key-identity.js.map +1 -0
  1793. package/dist/modes/interactive/interactive-mode-base.d.ts +18 -13
  1794. package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
  1795. package/dist/modes/interactive/interactive-mode-base.js +26 -18
  1796. package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
  1797. package/dist/modes/interactive/interactive-mode-deps.d.ts +20 -22
  1798. package/dist/modes/interactive/interactive-mode-deps.d.ts.map +1 -1
  1799. package/dist/modes/interactive/interactive-mode-deps.js +16 -18
  1800. package/dist/modes/interactive/interactive-mode-deps.js.map +1 -1
  1801. package/dist/modes/interactive/interactive-mode-helpers.d.ts +3 -2
  1802. package/dist/modes/interactive/interactive-mode-helpers.d.ts.map +1 -1
  1803. package/dist/modes/interactive/interactive-mode-helpers.js +8 -18
  1804. package/dist/modes/interactive/interactive-mode-helpers.js.map +1 -1
  1805. package/dist/modes/interactive/interactive-mode-surface.d.ts +32 -18
  1806. package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
  1807. package/dist/modes/interactive/interactive-mode-surface.js +1 -0
  1808. package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
  1809. package/dist/modes/interactive/interactive-mode-types.d.ts +2 -2
  1810. package/dist/modes/interactive/interactive-mode-types.d.ts.map +1 -1
  1811. package/dist/modes/interactive/interactive-mode-types.js.map +1 -1
  1812. package/dist/modes/interactive/interactive-mode.d.ts +1 -0
  1813. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  1814. package/dist/modes/interactive/interactive-mode.js +1 -0
  1815. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  1816. package/dist/modes/interactive/interactive-model-catalog-startup.d.ts +12 -0
  1817. package/dist/modes/interactive/interactive-model-catalog-startup.d.ts.map +1 -0
  1818. package/dist/modes/interactive/interactive-model-catalog-startup.js +22 -0
  1819. package/dist/modes/interactive/interactive-model-catalog-startup.js.map +1 -0
  1820. package/dist/modes/interactive/interactive-model-routing.js +44 -111
  1821. package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
  1822. package/dist/modes/interactive/interactive-onboarding.js +7 -7
  1823. package/dist/modes/interactive/interactive-onboarding.js.map +1 -1
  1824. package/dist/modes/interactive/interactive-pause.d.ts +6 -0
  1825. package/dist/modes/interactive/interactive-pause.d.ts.map +1 -0
  1826. package/dist/modes/interactive/interactive-pause.js +12 -0
  1827. package/dist/modes/interactive/interactive-pause.js.map +1 -0
  1828. package/dist/modes/interactive/interactive-process-lifecycle.js +43 -12
  1829. package/dist/modes/interactive/interactive-process-lifecycle.js.map +1 -1
  1830. package/dist/modes/interactive/interactive-prompt-restore.d.ts +58 -0
  1831. package/dist/modes/interactive/interactive-prompt-restore.d.ts.map +1 -0
  1832. package/dist/modes/interactive/interactive-prompt-restore.js +87 -0
  1833. package/dist/modes/interactive/interactive-prompt-restore.js.map +1 -0
  1834. package/dist/modes/interactive/interactive-prompt-turn.d.ts +2 -0
  1835. package/dist/modes/interactive/interactive-prompt-turn.d.ts.map +1 -0
  1836. package/dist/modes/interactive/interactive-prompt-turn.js +56 -0
  1837. package/dist/modes/interactive/interactive-prompt-turn.js.map +1 -0
  1838. package/dist/modes/interactive/interactive-queueing.js +9 -12
  1839. package/dist/modes/interactive/interactive-queueing.js.map +1 -1
  1840. package/dist/modes/interactive/interactive-render-chat.js +128 -48
  1841. package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
  1842. package/dist/modes/interactive/interactive-resource-disclosure.js +1 -3
  1843. package/dist/modes/interactive/interactive-resource-disclosure.js.map +1 -1
  1844. package/dist/modes/interactive/interactive-resource-paths.js +17 -21
  1845. package/dist/modes/interactive/interactive-resource-paths.js.map +1 -1
  1846. package/dist/modes/interactive/interactive-resource-rendering.js +110 -12
  1847. package/dist/modes/interactive/interactive-resource-rendering.js.map +1 -1
  1848. package/dist/modes/interactive/interactive-selectors.js +13 -5
  1849. package/dist/modes/interactive/interactive-selectors.js.map +1 -1
  1850. package/dist/modes/interactive/interactive-session-routing.js +19 -4
  1851. package/dist/modes/interactive/interactive-session-routing.js.map +1 -1
  1852. package/dist/modes/interactive/interactive-session-runtime.js +12 -1
  1853. package/dist/modes/interactive/interactive-session-runtime.js.map +1 -1
  1854. package/dist/modes/interactive/interactive-slash-commands.js +23 -4
  1855. package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
  1856. package/dist/modes/interactive/interactive-startup-chat-container.d.ts +20 -0
  1857. package/dist/modes/interactive/interactive-startup-chat-container.d.ts.map +1 -0
  1858. package/dist/modes/interactive/interactive-startup-chat-container.js +26 -0
  1859. package/dist/modes/interactive/interactive-startup-chat-container.js.map +1 -0
  1860. package/dist/modes/interactive/interactive-startup.d.ts +1 -1
  1861. package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
  1862. package/dist/modes/interactive/interactive-startup.js +37 -37
  1863. package/dist/modes/interactive/interactive-startup.js.map +1 -1
  1864. package/dist/modes/interactive/interactive-submission.d.ts +24 -0
  1865. package/dist/modes/interactive/interactive-submission.d.ts.map +1 -0
  1866. package/dist/modes/interactive/interactive-submission.js +10 -0
  1867. package/dist/modes/interactive/interactive-submission.js.map +1 -0
  1868. package/dist/modes/interactive/interactive-summarization-retry-events.d.ts +8 -0
  1869. package/dist/modes/interactive/interactive-summarization-retry-events.d.ts.map +1 -0
  1870. package/dist/modes/interactive/interactive-summarization-retry-events.js +48 -0
  1871. package/dist/modes/interactive/interactive-summarization-retry-events.js.map +1 -0
  1872. package/dist/modes/interactive/login-provider-options.d.ts +21 -0
  1873. package/dist/modes/interactive/login-provider-options.d.ts.map +1 -0
  1874. package/dist/modes/interactive/login-provider-options.js +50 -0
  1875. package/dist/modes/interactive/login-provider-options.js.map +1 -0
  1876. package/dist/modes/interactive/theme/catppuccin-frappe.json +1 -1
  1877. package/dist/modes/interactive/theme/catppuccin-latte.json +1 -1
  1878. package/dist/modes/interactive/theme/catppuccin-macchiato.json +1 -1
  1879. package/dist/modes/interactive/theme/catppuccin-mocha.json +9 -1
  1880. package/dist/modes/interactive/theme/dark.json +1 -1
  1881. package/dist/modes/interactive/theme/global-theme.d.ts +1 -1
  1882. package/dist/modes/interactive/theme/global-theme.d.ts.map +1 -1
  1883. package/dist/modes/interactive/theme/global-theme.js.map +1 -1
  1884. package/dist/modes/interactive/theme/light.json +1 -1
  1885. package/dist/modes/interactive/theme/theme-class.d.ts +4 -0
  1886. package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
  1887. package/dist/modes/interactive/theme/theme-class.js +7 -0
  1888. package/dist/modes/interactive/theme/theme-class.js.map +1 -1
  1889. package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
  1890. package/dist/modes/interactive/theme/theme-loading.js +5 -1
  1891. package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
  1892. package/dist/modes/interactive/theme/theme-schema.d.ts +32 -0
  1893. package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -1
  1894. package/dist/modes/interactive/theme/theme-schema.js +8 -0
  1895. package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
  1896. package/dist/modes/interactive/theme/theme-schema.json +15 -2
  1897. package/dist/modes/interactive/theme/theme.d.ts +2 -2
  1898. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  1899. package/dist/modes/interactive/theme/theme.js +2 -2
  1900. package/dist/modes/interactive/theme/theme.js.map +1 -1
  1901. package/dist/modes/interactive/whimsical-messages.d.ts +1 -0
  1902. package/dist/modes/interactive/whimsical-messages.d.ts.map +1 -1
  1903. package/dist/modes/interactive/whimsical-messages.js +2 -2
  1904. package/dist/modes/interactive/whimsical-messages.js.map +1 -1
  1905. package/dist/modes/interactive-engine/activity-watchdog.d.ts +16 -6
  1906. package/dist/modes/interactive-engine/activity-watchdog.d.ts.map +1 -1
  1907. package/dist/modes/interactive-engine/activity-watchdog.js +12 -6
  1908. package/dist/modes/interactive-engine/activity-watchdog.js.map +1 -1
  1909. package/dist/modes/interactive-engine/create-isolated-runtime.d.ts.map +1 -1
  1910. package/dist/modes/interactive-engine/create-isolated-runtime.js +8 -5
  1911. package/dist/modes/interactive-engine/create-isolated-runtime.js.map +1 -1
  1912. package/dist/modes/interactive-engine/engine-args.d.ts.map +1 -1
  1913. package/dist/modes/interactive-engine/engine-args.js +0 -1
  1914. package/dist/modes/interactive-engine/engine-args.js.map +1 -1
  1915. package/dist/modes/interactive-engine/engine-child-liveness.d.ts.map +1 -1
  1916. package/dist/modes/interactive-engine/engine-child-liveness.js +6 -4
  1917. package/dist/modes/interactive-engine/engine-child-liveness.js.map +1 -1
  1918. package/dist/modes/interactive-engine/engine-custom-ui.d.ts +3 -2
  1919. package/dist/modes/interactive-engine/engine-custom-ui.d.ts.map +1 -1
  1920. package/dist/modes/interactive-engine/engine-custom-ui.js +37 -28
  1921. package/dist/modes/interactive-engine/engine-custom-ui.js.map +1 -1
  1922. package/dist/modes/interactive-engine/engine-diagnostic-view.d.ts +16 -0
  1923. package/dist/modes/interactive-engine/engine-diagnostic-view.d.ts.map +1 -0
  1924. package/dist/modes/interactive-engine/engine-diagnostic-view.js +19 -0
  1925. package/dist/modes/interactive-engine/engine-diagnostic-view.js.map +1 -0
  1926. package/dist/modes/interactive-engine/engine-dialog-host.d.ts +33 -0
  1927. package/dist/modes/interactive-engine/engine-dialog-host.d.ts.map +1 -0
  1928. package/dist/modes/interactive-engine/engine-dialog-host.js +129 -0
  1929. package/dist/modes/interactive-engine/engine-dialog-host.js.map +1 -0
  1930. package/dist/modes/interactive-engine/engine-generation.d.ts +29 -0
  1931. package/dist/modes/interactive-engine/engine-generation.d.ts.map +1 -0
  1932. package/dist/modes/interactive-engine/engine-generation.js +11 -0
  1933. package/dist/modes/interactive-engine/engine-generation.js.map +1 -0
  1934. package/dist/modes/interactive-engine/engine-health.d.ts +107 -0
  1935. package/dist/modes/interactive-engine/engine-health.d.ts.map +1 -0
  1936. package/dist/modes/interactive-engine/engine-health.js +250 -0
  1937. package/dist/modes/interactive-engine/engine-health.js.map +1 -0
  1938. package/dist/modes/interactive-engine/engine-input-form.d.ts +1 -1
  1939. package/dist/modes/interactive-engine/engine-input-form.d.ts.map +1 -1
  1940. package/dist/modes/interactive-engine/engine-input-form.js +21 -4
  1941. package/dist/modes/interactive-engine/engine-input-form.js.map +1 -1
  1942. package/dist/modes/interactive-engine/engine-monitor.d.ts +8 -1
  1943. package/dist/modes/interactive-engine/engine-monitor.d.ts.map +1 -1
  1944. package/dist/modes/interactive-engine/engine-monitor.js +19 -16
  1945. package/dist/modes/interactive-engine/engine-monitor.js.map +1 -1
  1946. package/dist/modes/interactive-engine/engine-render-service.d.ts.map +1 -1
  1947. package/dist/modes/interactive-engine/engine-render-service.js +19 -24
  1948. package/dist/modes/interactive-engine/engine-render-service.js.map +1 -1
  1949. package/dist/modes/interactive-engine/engine-session-picker.d.ts.map +1 -1
  1950. package/dist/modes/interactive-engine/engine-session-picker.js +4 -2
  1951. package/dist/modes/interactive-engine/engine-session-picker.js.map +1 -1
  1952. package/dist/modes/interactive-engine/extension-ui-bridge.d.ts +16 -3
  1953. package/dist/modes/interactive-engine/extension-ui-bridge.d.ts.map +1 -1
  1954. package/dist/modes/interactive-engine/extension-ui-bridge.js +35 -45
  1955. package/dist/modes/interactive-engine/extension-ui-bridge.js.map +1 -1
  1956. package/dist/modes/interactive-engine/input-form-host.d.ts +1 -0
  1957. package/dist/modes/interactive-engine/input-form-host.d.ts.map +1 -1
  1958. package/dist/modes/interactive-engine/input-form-host.js +18 -3
  1959. package/dist/modes/interactive-engine/input-form-host.js.map +1 -1
  1960. package/dist/modes/interactive-engine/isolated-auth.d.ts +10 -0
  1961. package/dist/modes/interactive-engine/isolated-auth.d.ts.map +1 -0
  1962. package/dist/modes/interactive-engine/isolated-auth.js +15 -0
  1963. package/dist/modes/interactive-engine/isolated-auth.js.map +1 -0
  1964. package/dist/modes/interactive-engine/isolated-runtime.d.ts +41 -6
  1965. package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
  1966. package/dist/modes/interactive-engine/isolated-runtime.js +166 -84
  1967. package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
  1968. package/dist/modes/interactive-engine/protocol.d.ts +26 -2
  1969. package/dist/modes/interactive-engine/protocol.d.ts.map +1 -1
  1970. package/dist/modes/interactive-engine/protocol.js +192 -63
  1971. package/dist/modes/interactive-engine/protocol.js.map +1 -1
  1972. package/dist/modes/interactive-engine/remote-component.d.ts +38 -0
  1973. package/dist/modes/interactive-engine/remote-component.d.ts.map +1 -1
  1974. package/dist/modes/interactive-engine/remote-component.js +111 -22
  1975. package/dist/modes/interactive-engine/remote-component.js.map +1 -1
  1976. package/dist/modes/interactive-engine/remote-input-ownership.d.ts +48 -0
  1977. package/dist/modes/interactive-engine/remote-input-ownership.d.ts.map +1 -0
  1978. package/dist/modes/interactive-engine/remote-input-ownership.js +42 -0
  1979. package/dist/modes/interactive-engine/remote-input-ownership.js.map +1 -0
  1980. package/dist/modes/interactive-engine/remote-model-catalog.d.ts +2 -0
  1981. package/dist/modes/interactive-engine/remote-model-catalog.d.ts.map +1 -1
  1982. package/dist/modes/interactive-engine/remote-model-catalog.js +23 -10
  1983. package/dist/modes/interactive-engine/remote-model-catalog.js.map +1 -1
  1984. package/dist/modes/interactive-engine/remote-queue-pause.d.ts +13 -0
  1985. package/dist/modes/interactive-engine/remote-queue-pause.d.ts.map +1 -0
  1986. package/dist/modes/interactive-engine/remote-queue-pause.js +38 -0
  1987. package/dist/modes/interactive-engine/remote-queue-pause.js.map +1 -0
  1988. package/dist/modes/interactive-engine/remote-renderer.d.ts +3 -1
  1989. package/dist/modes/interactive-engine/remote-renderer.d.ts.map +1 -1
  1990. package/dist/modes/interactive-engine/remote-renderer.js +41 -10
  1991. package/dist/modes/interactive-engine/remote-renderer.js.map +1 -1
  1992. package/dist/modes/interactive-engine/session-picker-host.d.ts +1 -0
  1993. package/dist/modes/interactive-engine/session-picker-host.d.ts.map +1 -1
  1994. package/dist/modes/interactive-engine/session-picker-host.js +4 -0
  1995. package/dist/modes/interactive-engine/session-picker-host.js.map +1 -1
  1996. package/dist/modes/print-mode.d.ts.map +1 -1
  1997. package/dist/modes/print-mode.js +5 -0
  1998. package/dist/modes/print-mode.js.map +1 -1
  1999. package/dist/modes/rpc/jsonl.d.ts +9 -7
  2000. package/dist/modes/rpc/jsonl.d.ts.map +1 -1
  2001. package/dist/modes/rpc/jsonl.js +23 -24
  2002. package/dist/modes/rpc/jsonl.js.map +1 -1
  2003. package/dist/modes/rpc/queued-writer.d.ts +33 -0
  2004. package/dist/modes/rpc/queued-writer.d.ts.map +1 -0
  2005. package/dist/modes/rpc/queued-writer.js +104 -0
  2006. package/dist/modes/rpc/queued-writer.js.map +1 -0
  2007. package/dist/modes/rpc/rpc-bash-request-owners.d.ts +24 -0
  2008. package/dist/modes/rpc/rpc-bash-request-owners.d.ts.map +1 -0
  2009. package/dist/modes/rpc/rpc-bash-request-owners.js +45 -0
  2010. package/dist/modes/rpc/rpc-bash-request-owners.js.map +1 -0
  2011. package/dist/modes/rpc/rpc-client-api.d.ts +10 -4
  2012. package/dist/modes/rpc/rpc-client-api.d.ts.map +1 -1
  2013. package/dist/modes/rpc/rpc-client-api.js +83 -25
  2014. package/dist/modes/rpc/rpc-client-api.js.map +1 -1
  2015. package/dist/modes/rpc/rpc-client-process.d.ts +11 -4
  2016. package/dist/modes/rpc/rpc-client-process.d.ts.map +1 -1
  2017. package/dist/modes/rpc/rpc-client-process.js +77 -29
  2018. package/dist/modes/rpc/rpc-client-process.js.map +1 -1
  2019. package/dist/modes/rpc/rpc-client-waits.d.ts +17 -1
  2020. package/dist/modes/rpc/rpc-client-waits.d.ts.map +1 -1
  2021. package/dist/modes/rpc/rpc-client-waits.js +25 -0
  2022. package/dist/modes/rpc/rpc-client-waits.js.map +1 -1
  2023. package/dist/modes/rpc/rpc-client.d.ts +68 -9
  2024. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  2025. package/dist/modes/rpc/rpc-client.js +205 -158
  2026. package/dist/modes/rpc/rpc-client.js.map +1 -1
  2027. package/dist/modes/rpc/rpc-command-handler.d.ts +10 -3
  2028. package/dist/modes/rpc/rpc-command-handler.d.ts.map +1 -1
  2029. package/dist/modes/rpc/rpc-command-handler.js +149 -56
  2030. package/dist/modes/rpc/rpc-command-handler.js.map +1 -1
  2031. package/dist/modes/rpc/rpc-command-timeouts.d.ts +30 -0
  2032. package/dist/modes/rpc/rpc-command-timeouts.d.ts.map +1 -0
  2033. package/dist/modes/rpc/rpc-command-timeouts.js +52 -0
  2034. package/dist/modes/rpc/rpc-command-timeouts.js.map +1 -0
  2035. package/dist/modes/rpc/rpc-event-buffer.d.ts.map +1 -1
  2036. package/dist/modes/rpc/rpc-event-buffer.js +3 -1
  2037. package/dist/modes/rpc/rpc-event-buffer.js.map +1 -1
  2038. package/dist/modes/rpc/rpc-extension-ui.d.ts +4 -2
  2039. package/dist/modes/rpc/rpc-extension-ui.d.ts.map +1 -1
  2040. package/dist/modes/rpc/rpc-extension-ui.js +50 -17
  2041. package/dist/modes/rpc/rpc-extension-ui.js.map +1 -1
  2042. package/dist/modes/rpc/rpc-generation-buffer.d.ts +21 -0
  2043. package/dist/modes/rpc/rpc-generation-buffer.d.ts.map +1 -0
  2044. package/dist/modes/rpc/rpc-generation-buffer.js +35 -0
  2045. package/dist/modes/rpc/rpc-generation-buffer.js.map +1 -0
  2046. package/dist/modes/rpc/rpc-input-scheduler.d.ts +3 -3
  2047. package/dist/modes/rpc/rpc-input-scheduler.d.ts.map +1 -1
  2048. package/dist/modes/rpc/rpc-input-scheduler.js +19 -8
  2049. package/dist/modes/rpc/rpc-input-scheduler.js.map +1 -1
  2050. package/dist/modes/rpc/rpc-input.d.ts +7 -1
  2051. package/dist/modes/rpc/rpc-input.d.ts.map +1 -1
  2052. package/dist/modes/rpc/rpc-input.js +14 -4
  2053. package/dist/modes/rpc/rpc-input.js.map +1 -1
  2054. package/dist/modes/rpc/rpc-keybindings-reload.d.ts.map +1 -1
  2055. package/dist/modes/rpc/rpc-keybindings-reload.js.map +1 -1
  2056. package/dist/modes/rpc/rpc-mode.d.ts +1 -1
  2057. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  2058. package/dist/modes/rpc/rpc-mode.js +23 -23
  2059. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  2060. package/dist/modes/rpc/rpc-model-fallback-prompt.d.ts +4 -0
  2061. package/dist/modes/rpc/rpc-model-fallback-prompt.d.ts.map +1 -0
  2062. package/dist/modes/rpc/rpc-model-fallback-prompt.js +11 -0
  2063. package/dist/modes/rpc/rpc-model-fallback-prompt.js.map +1 -0
  2064. package/dist/modes/rpc/rpc-oauth-client.d.ts +21 -0
  2065. package/dist/modes/rpc/rpc-oauth-client.d.ts.map +1 -0
  2066. package/dist/modes/rpc/rpc-oauth-client.js +81 -0
  2067. package/dist/modes/rpc/rpc-oauth-client.js.map +1 -0
  2068. package/dist/modes/rpc/rpc-oauth-interaction.d.ts +9 -0
  2069. package/dist/modes/rpc/rpc-oauth-interaction.d.ts.map +1 -0
  2070. package/dist/modes/rpc/rpc-oauth-interaction.js +49 -0
  2071. package/dist/modes/rpc/rpc-oauth-interaction.js.map +1 -0
  2072. package/dist/modes/rpc/rpc-output-buffer.d.ts +2 -1
  2073. package/dist/modes/rpc/rpc-output-buffer.d.ts.map +1 -1
  2074. package/dist/modes/rpc/rpc-output-buffer.js +7 -40
  2075. package/dist/modes/rpc/rpc-output-buffer.js.map +1 -1
  2076. package/dist/modes/rpc/rpc-pending-requests.d.ts +37 -0
  2077. package/dist/modes/rpc/rpc-pending-requests.d.ts.map +1 -0
  2078. package/dist/modes/rpc/rpc-pending-requests.js +57 -0
  2079. package/dist/modes/rpc/rpc-pending-requests.js.map +1 -0
  2080. package/dist/modes/rpc/rpc-provider-auth.d.ts +22 -0
  2081. package/dist/modes/rpc/rpc-provider-auth.d.ts.map +1 -0
  2082. package/dist/modes/rpc/rpc-provider-auth.js +117 -0
  2083. package/dist/modes/rpc/rpc-provider-auth.js.map +1 -0
  2084. package/dist/modes/rpc/rpc-responses.d.ts +0 -1
  2085. package/dist/modes/rpc/rpc-responses.d.ts.map +1 -1
  2086. package/dist/modes/rpc/rpc-responses.js +0 -14
  2087. package/dist/modes/rpc/rpc-responses.js.map +1 -1
  2088. package/dist/modes/rpc/rpc-session-binding.d.ts +2 -1
  2089. package/dist/modes/rpc/rpc-session-binding.d.ts.map +1 -1
  2090. package/dist/modes/rpc/rpc-session-binding.js +71 -43
  2091. package/dist/modes/rpc/rpc-session-binding.js.map +1 -1
  2092. package/dist/modes/rpc/rpc-terminal-drain.d.ts +52 -0
  2093. package/dist/modes/rpc/rpc-terminal-drain.d.ts.map +1 -0
  2094. package/dist/modes/rpc/rpc-terminal-drain.js +85 -0
  2095. package/dist/modes/rpc/rpc-terminal-drain.js.map +1 -0
  2096. package/dist/modes/rpc/rpc-transport-error.d.ts +49 -0
  2097. package/dist/modes/rpc/rpc-transport-error.d.ts.map +1 -0
  2098. package/dist/modes/rpc/rpc-transport-error.js +78 -0
  2099. package/dist/modes/rpc/rpc-transport-error.js.map +1 -0
  2100. package/dist/modes/rpc/rpc-types.d.ts +125 -21
  2101. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  2102. package/dist/modes/rpc/rpc-types.js.map +1 -1
  2103. package/dist/package-manager-cli-parser.js.map +1 -1
  2104. package/dist/package-manager-cli.d.ts +3 -3
  2105. package/dist/package-manager-cli.d.ts.map +1 -1
  2106. package/dist/package-manager-cli.js +66 -53
  2107. package/dist/package-manager-cli.js.map +1 -1
  2108. package/dist/rpc-entry.js +6 -2
  2109. package/dist/rpc-entry.js.map +1 -1
  2110. package/dist/self-update-plan.d.ts +12 -0
  2111. package/dist/self-update-plan.d.ts.map +1 -0
  2112. package/dist/self-update-plan.js +42 -0
  2113. package/dist/self-update-plan.js.map +1 -0
  2114. package/dist/utils/child-process.d.ts.map +1 -1
  2115. package/dist/utils/child-process.js.map +1 -1
  2116. package/dist/utils/clipboard-image.js +1 -1
  2117. package/dist/utils/clipboard-image.js.map +1 -1
  2118. package/dist/utils/clipboard-native.d.ts +1 -0
  2119. package/dist/utils/clipboard-native.d.ts.map +1 -1
  2120. package/dist/utils/clipboard-native.js.map +1 -1
  2121. package/dist/utils/clipboard.d.ts +3 -0
  2122. package/dist/utils/clipboard.d.ts.map +1 -1
  2123. package/dist/utils/clipboard.js +31 -8
  2124. package/dist/utils/clipboard.js.map +1 -1
  2125. package/dist/utils/compile-cache.d.ts +8 -0
  2126. package/dist/utils/compile-cache.d.ts.map +1 -0
  2127. package/dist/utils/compile-cache.js +31 -0
  2128. package/dist/utils/compile-cache.js.map +1 -0
  2129. package/dist/utils/fs-watch.d.ts.map +1 -1
  2130. package/dist/utils/fs-watch.js +1 -3
  2131. package/dist/utils/fs-watch.js.map +1 -1
  2132. package/dist/utils/git.js +1 -1
  2133. package/dist/utils/git.js.map +1 -1
  2134. package/dist/utils/interactive-engine-bootstrap.d.ts +67 -0
  2135. package/dist/utils/interactive-engine-bootstrap.d.ts.map +1 -0
  2136. package/dist/utils/interactive-engine-bootstrap.js +117 -0
  2137. package/dist/utils/interactive-engine-bootstrap.js.map +1 -0
  2138. package/dist/utils/interactive-engine-env.d.ts +41 -0
  2139. package/dist/utils/interactive-engine-env.d.ts.map +1 -0
  2140. package/dist/utils/interactive-engine-env.js +67 -0
  2141. package/dist/utils/interactive-engine-env.js.map +1 -0
  2142. package/dist/utils/markit.d.ts.map +1 -1
  2143. package/dist/utils/markit.js +15 -5
  2144. package/dist/utils/markit.js.map +1 -1
  2145. package/dist/utils/shell.js +2 -2
  2146. package/dist/utils/shell.js.map +1 -1
  2147. package/dist/utils/split-launcher.d.ts.map +1 -1
  2148. package/dist/utils/split-launcher.js +1 -2
  2149. package/dist/utils/split-launcher.js.map +1 -1
  2150. package/dist/utils/tools-manager.d.ts.map +1 -1
  2151. package/dist/utils/tools-manager.js +8 -34
  2152. package/dist/utils/tools-manager.js.map +1 -1
  2153. package/dist/utils/version-check.d.ts +1 -0
  2154. package/dist/utils/version-check.d.ts.map +1 -1
  2155. package/dist/utils/version-check.js +7 -5
  2156. package/dist/utils/version-check.js.map +1 -1
  2157. package/docs/changelog.mdx +24 -2
  2158. package/docs/compaction.md +101 -18
  2159. package/docs/custom-provider.md +40 -8
  2160. package/docs/development.md +14 -15
  2161. package/docs/docs.json +3 -1
  2162. package/docs/environment-variables.md +37 -0
  2163. package/docs/extensions.md +166 -18
  2164. package/docs/index.md +11 -0
  2165. package/docs/intercom.md +1 -1
  2166. package/docs/json.md +11 -5
  2167. package/docs/keybindings.md +19 -2
  2168. package/docs/llama-cpp.md +72 -0
  2169. package/docs/models.md +41 -50
  2170. package/docs/packages.md +4 -2
  2171. package/docs/prompt-templates.md +1 -0
  2172. package/docs/providers.md +86 -24
  2173. package/docs/quickstart.md +28 -18
  2174. package/docs/rpc.md +88 -86
  2175. package/docs/sdk.md +68 -71
  2176. package/docs/security.md +15 -0
  2177. package/docs/session-format.md +6 -15
  2178. package/docs/sessions.md +1 -1
  2179. package/docs/settings.md +29 -18
  2180. package/docs/skills.md +8 -0
  2181. package/docs/subagents.md +24 -8
  2182. package/docs/termux.md +3 -1
  2183. package/docs/themes.md +10 -1
  2184. package/docs/tui.md +14 -7
  2185. package/docs/usage.md +72 -2
  2186. package/docs/windows.md +1 -1
  2187. package/docs/workflows.md +1304 -562
  2188. package/examples/extensions/README.md +2 -2
  2189. package/examples/extensions/border-status-editor.ts +1 -6
  2190. package/examples/extensions/custom-compaction.ts +7 -2
  2191. package/examples/extensions/custom-footer.ts +1 -1
  2192. package/examples/extensions/custom-provider-anthropic/index.ts +14 -2
  2193. package/examples/extensions/custom-provider-gitlab-duo/index.ts +1 -1
  2194. package/examples/extensions/gondolin/index.ts +1 -1
  2195. package/examples/extensions/handoff.ts +9 -2
  2196. package/examples/extensions/hello.ts +1 -1
  2197. package/examples/extensions/message-renderer.ts +2 -2
  2198. package/examples/extensions/minimal-mode.ts +6 -6
  2199. package/examples/extensions/overlay-qa-focus-components.ts +0 -1
  2200. package/examples/extensions/overlay-qa-streaming-input-components.ts +2 -2
  2201. package/examples/extensions/overlay-qa-tests.ts +16 -14
  2202. package/examples/extensions/overlay-qa-toggle-passive-components.ts +3 -5
  2203. package/examples/extensions/overlay-test.ts +3 -6
  2204. package/examples/extensions/plan-mode/index.ts +1 -1
  2205. package/examples/extensions/preset.ts +1 -1
  2206. package/examples/extensions/qna.ts +1 -1
  2207. package/examples/extensions/sandbox/package-lock.json +3 -3
  2208. package/examples/extensions/structured-output.ts +9 -9
  2209. package/examples/extensions/subagent/display.ts +115 -127
  2210. package/examples/extensions/subagent/index.ts +310 -349
  2211. package/examples/extensions/subagent/render.ts +244 -345
  2212. package/examples/extensions/subagent/runner.ts +223 -230
  2213. package/examples/extensions/subagent/schemas.ts +39 -46
  2214. package/examples/extensions/subagent/types.ts +22 -22
  2215. package/examples/extensions/summarize.ts +4 -1
  2216. package/examples/extensions/tic-tac-toe.ts +4 -4
  2217. package/examples/extensions/todo.ts +1 -1
  2218. package/examples/extensions/tool-override.ts +1 -1
  2219. package/examples/extensions/trigger-compact.ts +4 -1
  2220. package/examples/extensions/working-indicator.ts +3 -2
  2221. package/examples/rpc-extension-ui-components.ts +1 -2
  2222. package/examples/sdk/02-custom-model.ts +8 -10
  2223. package/examples/sdk/03-custom-prompt.ts +1 -6
  2224. package/examples/sdk/06-extensions.ts +1 -6
  2225. package/examples/sdk/07-context-files.ts +1 -6
  2226. package/examples/sdk/09-api-keys-and-oauth.ts +17 -23
  2227. package/examples/sdk/12-full-control.ts +10 -12
  2228. package/examples/sdk/README.md +17 -21
  2229. package/npm-shrinkwrap.json +336 -313
  2230. package/package.json +15 -13
  2231. package/dist/builtin/cursor/CHANGELOG.md +0 -281
  2232. package/dist/builtin/cursor/LICENSE +0 -26
  2233. package/dist/builtin/cursor/README.md +0 -24
  2234. package/dist/builtin/cursor/index.ts +0 -9
  2235. package/dist/builtin/cursor/package.json +0 -47
  2236. package/dist/builtin/cursor/src/auth.ts +0 -352
  2237. package/dist/builtin/cursor/src/catalog-cache.ts +0 -155
  2238. package/dist/builtin/cursor/src/config.ts +0 -123
  2239. package/dist/builtin/cursor/src/conversation-state.ts +0 -135
  2240. package/dist/builtin/cursor/src/cursor-models-raw.json +0 -412
  2241. package/dist/builtin/cursor/src/model-mapper.ts +0 -369
  2242. package/dist/builtin/cursor/src/model-reference.ts +0 -282
  2243. package/dist/builtin/cursor/src/models.ts +0 -54
  2244. package/dist/builtin/cursor/src/native-loader.ts +0 -71
  2245. package/dist/builtin/cursor/src/proto/README.md +0 -34
  2246. package/dist/builtin/cursor/src/proto/agent_pb.ts +0 -15294
  2247. package/dist/builtin/cursor/src/proto/protobuf-codec-base64.ts +0 -22
  2248. package/dist/builtin/cursor/src/proto/protobuf-codec-json.ts +0 -44
  2249. package/dist/builtin/cursor/src/proto/protobuf-codec-request.ts +0 -311
  2250. package/dist/builtin/cursor/src/proto/protobuf-codec-wire.ts +0 -248
  2251. package/dist/builtin/cursor/src/proto/protobuf-codec.ts +0 -200
  2252. package/dist/builtin/cursor/src/provider.ts +0 -301
  2253. package/dist/builtin/cursor/src/stream.ts +0 -494
  2254. package/dist/builtin/cursor/src/transport-errors.ts +0 -74
  2255. package/dist/builtin/cursor/src/transport-frame.ts +0 -56
  2256. package/dist/builtin/cursor/src/transport-http2.ts +0 -122
  2257. package/dist/builtin/cursor/src/transport-native-client.ts +0 -161
  2258. package/dist/builtin/cursor/src/transport-run-stream.ts +0 -188
  2259. package/dist/builtin/cursor/src/transport-timeouts.ts +0 -87
  2260. package/dist/builtin/cursor/src/transport-types.ts +0 -143
  2261. package/dist/builtin/cursor/src/transport.ts +0 -26
  2262. package/dist/builtin/workflows/builtin/deep-research-codebase-runner.ts +0 -492
  2263. package/dist/builtin/workflows/builtin/deep-research-codebase-utils.ts +0 -383
  2264. package/dist/builtin/workflows/builtin/deep-research-codebase.d.ts +0 -35
  2265. package/dist/builtin/workflows/builtin/deep-research-codebase.ts +0 -47
  2266. package/dist/builtin/workflows/skills/impeccable/reference/brand.md +0 -108
  2267. package/dist/builtin/workflows/skills/impeccable/reference/codex.md +0 -105
  2268. package/dist/builtin/workflows/skills/impeccable/reference/interaction-design.md +0 -189
  2269. package/dist/builtin/workflows/skills/impeccable/scripts/hook-before-edit.mjs +0 -516
  2270. package/dist/builtin/workflows/src/tui/toast.ts +0 -106
  2271. package/dist/core/context-window.d.ts +0 -54
  2272. package/dist/core/context-window.d.ts.map +0 -1
  2273. package/dist/core/context-window.js +0 -110
  2274. package/dist/core/context-window.js.map +0 -1
  2275. package/dist/core/copilot-anthropic-sse-repair.d.ts +0 -23
  2276. package/dist/core/copilot-anthropic-sse-repair.d.ts.map +0 -1
  2277. package/dist/core/copilot-anthropic-sse-repair.js +0 -340
  2278. package/dist/core/copilot-anthropic-sse-repair.js.map +0 -1
  2279. package/dist/core/copilot-errors.d.ts +0 -9
  2280. package/dist/core/copilot-errors.d.ts.map +0 -1
  2281. package/dist/core/copilot-errors.js +0 -32
  2282. package/dist/core/copilot-errors.js.map +0 -1
  2283. package/dist/core/copilot-gemini-payload-sanitizer.d.ts +0 -72
  2284. package/dist/core/copilot-gemini-payload-sanitizer.d.ts.map +0 -1
  2285. package/dist/core/copilot-gemini-payload-sanitizer.js +0 -296
  2286. package/dist/core/copilot-gemini-payload-sanitizer.js.map +0 -1
  2287. package/dist/core/copilot-gemini-reasoning.d.ts +0 -126
  2288. package/dist/core/copilot-gemini-reasoning.d.ts.map +0 -1
  2289. package/dist/core/copilot-gemini-reasoning.js +0 -265
  2290. package/dist/core/copilot-gemini-reasoning.js.map +0 -1
  2291. package/dist/core/copilot-gemini-tool-arguments.d.ts +0 -42
  2292. package/dist/core/copilot-gemini-tool-arguments.d.ts.map +0 -1
  2293. package/dist/core/copilot-gemini-tool-arguments.js +0 -159
  2294. package/dist/core/copilot-gemini-tool-arguments.js.map +0 -1
  2295. package/dist/core/copilot-hosts.d.ts +0 -12
  2296. package/dist/core/copilot-hosts.d.ts.map +0 -1
  2297. package/dist/core/copilot-hosts.js +0 -33
  2298. package/dist/core/copilot-hosts.js.map +0 -1
  2299. package/dist/core/copilot-model-catalog.d.ts +0 -114
  2300. package/dist/core/copilot-model-catalog.d.ts.map +0 -1
  2301. package/dist/core/copilot-model-catalog.js +0 -392
  2302. package/dist/core/copilot-model-catalog.js.map +0 -1
  2303. package/dist/core/copilot-model-static-fallbacks.d.ts +0 -43
  2304. package/dist/core/copilot-model-static-fallbacks.d.ts.map +0 -1
  2305. package/dist/core/copilot-model-static-fallbacks.js +0 -50
  2306. package/dist/core/copilot-model-static-fallbacks.js.map +0 -1
  2307. package/dist/core/copilot-model-synthesis.d.ts +0 -10
  2308. package/dist/core/copilot-model-synthesis.d.ts.map +0 -1
  2309. package/dist/core/copilot-model-synthesis.js +0 -91
  2310. package/dist/core/copilot-model-synthesis.js.map +0 -1
  2311. package/dist/core/model-registry-auth.d.ts +0 -8
  2312. package/dist/core/model-registry-auth.d.ts.map +0 -1
  2313. package/dist/core/model-registry-auth.js +0 -83
  2314. package/dist/core/model-registry-auth.js.map +0 -1
  2315. package/dist/core/model-registry-builtins.d.ts +0 -10
  2316. package/dist/core/model-registry-builtins.d.ts.map +0 -1
  2317. package/dist/core/model-registry-builtins.js +0 -171
  2318. package/dist/core/model-registry-builtins.js.map +0 -1
  2319. package/dist/core/model-registry-custom-loader.d.ts +0 -3
  2320. package/dist/core/model-registry-custom-loader.d.ts.map +0 -1
  2321. package/dist/core/model-registry-custom-loader.js +0 -254
  2322. package/dist/core/model-registry-custom-loader.js.map +0 -1
  2323. package/dist/core/model-registry-dynamic.d.ts +0 -7
  2324. package/dist/core/model-registry-dynamic.d.ts.map +0 -1
  2325. package/dist/core/model-registry-dynamic.js +0 -201
  2326. package/dist/core/model-registry-dynamic.js.map +0 -1
  2327. package/dist/core/model-registry-loader.d.ts +0 -5
  2328. package/dist/core/model-registry-loader.d.ts.map +0 -1
  2329. package/dist/core/model-registry-loader.js +0 -28
  2330. package/dist/core/model-registry-loader.js.map +0 -1
  2331. package/dist/core/model-registry-schemas.d.ts +0 -1273
  2332. package/dist/core/model-registry-schemas.d.ts.map +0 -1
  2333. package/dist/core/model-registry-schemas.js.map +0 -1
  2334. package/dist/core/model-registry-types.d.ts +0 -82
  2335. package/dist/core/model-registry-types.d.ts.map +0 -1
  2336. package/dist/core/model-registry-types.js +0 -2
  2337. package/dist/core/model-registry-types.js.map +0 -1
  2338. package/dist/core/oauth-compat.d.ts +0 -17
  2339. package/dist/core/oauth-compat.d.ts.map +0 -1
  2340. package/dist/core/oauth-compat.js +0 -2
  2341. package/dist/core/oauth-compat.js.map +0 -1
  2342. package/dist/core/oauth-provider-bridge.d.ts +0 -40
  2343. package/dist/core/oauth-provider-bridge.d.ts.map +0 -1
  2344. package/dist/core/oauth-provider-bridge.js +0 -169
  2345. package/dist/core/oauth-provider-bridge.js.map +0 -1
  2346. package/dist/modes/interactive/components/context-window-selector.d.ts +0 -53
  2347. package/dist/modes/interactive/components/context-window-selector.d.ts.map +0 -1
  2348. package/dist/modes/interactive/components/context-window-selector.js +0 -136
  2349. package/dist/modes/interactive/components/context-window-selector.js.map +0 -1
  2350. package/dist/modes/rpc/bounded-writer.d.ts +0 -27
  2351. package/dist/modes/rpc/bounded-writer.d.ts.map +0 -1
  2352. package/dist/modes/rpc/bounded-writer.js +0 -103
  2353. package/dist/modes/rpc/bounded-writer.js.map +0 -1
@@ -1,12 +1,13 @@
1
+ import * as crypto from "node:crypto";
1
2
  import * as fs from "node:fs";
2
3
  import { createRequire } from "node:module";
3
4
  import * as path from "node:path";
4
5
  import { pathToFileURL } from "node:url";
5
6
  import { createJiti } from "jiti/static";
6
7
  import { getExtensionTranspileCacheDir, isBunBinary, isBundledBuild } from "../../config.js";
7
- import { moduleDirFromMetaUrl } from "../../utils/split-launcher.js";
8
8
  import { resolutionBaseUrl } from "../../utils/module-require.js";
9
9
  import { resolvePath } from "../../utils/paths.js";
10
+ import { moduleDirFromMetaUrl } from "../../utils/split-launcher.js";
10
11
  const require = createRequire(import.meta.url);
11
12
  let _virtualModules = null;
12
13
  let _virtualModulesPromise = null;
@@ -22,7 +23,7 @@ async function loadVirtualModules() {
22
23
  // "@earendil-works/pi-ai"`, so we load the compat module here and key it
23
24
  // under the root specifier below to keep every extension working unchanged.
24
25
  import("@earendil-works/pi-ai/compat"),
25
- import("../oauth-compat.js"),
26
+ import("@earendil-works/pi-ai/oauth"),
26
27
  // NOTE: This import works because loader.ts exports are NOT re-exported from index.ts,
27
28
  // avoiding a circular dependency while preserving the package-name extension import path.
28
29
  import("../../index.js"),
@@ -86,6 +87,215 @@ function pruneStaleTranspileCaches(currentDir) {
86
87
  .map((entry) => fs.promises.rm(path.join(parent, entry), { recursive: true, force: true }))))
87
88
  .catch(() => { });
88
89
  }
90
+ const GRAPH_MANIFEST_VERSION = 1;
91
+ const GRAPH_MANIFEST_DIR_NAME = "graph-manifests";
92
+ const graphManifestFileExtensions = new Set([".ts", ".tsx", ".mts", ".cts", ".js", ".mjs", ".cjs", ".jsx", ".json"]);
93
+ function graphManifestDir() {
94
+ return path.join(getTranspileCacheDir(), GRAPH_MANIFEST_DIR_NAME);
95
+ }
96
+ function graphManifestPath(extensionPath) {
97
+ const key = crypto.createHash("sha256").update(extensionPath).digest("hex").slice(0, 32);
98
+ return path.join(graphManifestDir(), `${key}.json`);
99
+ }
100
+ function sha256Hex(content) {
101
+ return crypto.createHash("sha256").update(content).digest("hex");
102
+ }
103
+ // jiti's CJS bundle reads every module source in the require graph through
104
+ // fs.readFileSync (even on fsCache hits, since the cache key is a hash of the
105
+ // source), so observing readFileSync while a transformed import is in flight
106
+ // sees the complete transitive graph. The observer records into every active
107
+ // recorder; unrelated reads that interleave only over-record, which at worst
108
+ // forces a redundant re-evaluation later — never a stale one.
109
+ const fsExports = require("node:fs");
110
+ const activeGraphRecorders = new Set();
111
+ let observedReadFileSync = null;
112
+ function recordObservedRead(target, content) {
113
+ if (typeof target !== "string" || !path.isAbsolute(target))
114
+ return;
115
+ if (!graphManifestFileExtensions.has(path.extname(target).toLowerCase()))
116
+ return;
117
+ const normalizedTarget = path.normalize(target);
118
+ const cachePrefix = path.normalize(getTranspileCacheDir()) + path.sep;
119
+ if (normalizedTarget.toLowerCase().startsWith(cachePrefix.toLowerCase()))
120
+ return;
121
+ const hash = sha256Hex(content);
122
+ for (const recorder of activeGraphRecorders) {
123
+ recorder.set(normalizedTarget, hash);
124
+ }
125
+ }
126
+ function installReadFileSyncObserver() {
127
+ if (observedReadFileSync)
128
+ return;
129
+ const original = fsExports.readFileSync;
130
+ observedReadFileSync = original;
131
+ const wrapped = ((...args) => {
132
+ const content = original(...args);
133
+ recordObservedRead(args[0], content);
134
+ return content;
135
+ });
136
+ fsExports.readFileSync = wrapped;
137
+ }
138
+ function uninstallReadFileSyncObserver() {
139
+ if (!observedReadFileSync || activeGraphRecorders.size > 0)
140
+ return;
141
+ fsExports.readFileSync = observedReadFileSync;
142
+ observedReadFileSync = null;
143
+ }
144
+ function writeGraphManifest(manifest) {
145
+ const manifestFile = graphManifestPath(manifest.extensionPath);
146
+ let tempFile;
147
+ try {
148
+ fs.mkdirSync(path.dirname(manifestFile), { recursive: true });
149
+ tempFile = `${manifestFile}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;
150
+ fs.writeFileSync(tempFile, JSON.stringify(manifest));
151
+ fs.renameSync(tempFile, manifestFile);
152
+ }
153
+ catch {
154
+ // Manifest persistence is best-effort: a missing manifest only means the
155
+ // next reload cannot prove the graph unchanged and re-evaluates. A failed
156
+ // replacement must not leave an older manifest behind describing a graph
157
+ // that no longer matches this evaluation, so invalidate the destination
158
+ // first, independently of removing the temporary file.
159
+ try {
160
+ fs.rmSync(manifestFile, { force: true });
161
+ }
162
+ catch {
163
+ // A leftover stale manifest cannot be reused without also matching
164
+ // the in-memory manifest of the same evaluation, and readers
165
+ // tolerate missing or corrupt files.
166
+ }
167
+ try {
168
+ if (tempFile)
169
+ fs.rmSync(tempFile, { force: true });
170
+ }
171
+ catch {
172
+ // Temporary files carry a unique suffix and are never read back.
173
+ }
174
+ }
175
+ }
176
+ function isStringRecord(value) {
177
+ if (typeof value !== "object" || value === null || Array.isArray(value))
178
+ return false;
179
+ return Object.values(value).every((entry) => typeof entry === "string");
180
+ }
181
+ export function readExtensionGraphManifest(extensionPath) {
182
+ try {
183
+ const parsed = JSON.parse(fs.readFileSync(graphManifestPath(extensionPath), "utf-8"));
184
+ if (parsed.version !== GRAPH_MANIFEST_VERSION)
185
+ return undefined;
186
+ if (parsed.extensionPath !== extensionPath)
187
+ return undefined;
188
+ if (!isStringRecord(parsed.files))
189
+ return undefined;
190
+ return { version: GRAPH_MANIFEST_VERSION, extensionPath, files: parsed.files };
191
+ }
192
+ catch {
193
+ return undefined;
194
+ }
195
+ }
196
+ async function recordExtensionGraph(extensionPath, load) {
197
+ const files = new Map();
198
+ activeGraphRecorders.add(files);
199
+ installReadFileSyncObserver();
200
+ let result;
201
+ try {
202
+ result = await load();
203
+ }
204
+ finally {
205
+ activeGraphRecorders.delete(files);
206
+ uninstallReadFileSyncObserver();
207
+ }
208
+ const manifest = {
209
+ version: GRAPH_MANIFEST_VERSION,
210
+ extensionPath,
211
+ files: Object.fromEntries([...files.entries()].sort(([a], [b]) => a.localeCompare(b))),
212
+ };
213
+ writeGraphManifest(manifest);
214
+ return { result, manifest };
215
+ }
216
+ /**
217
+ * Factories from transformed evaluations, retained across extension cache
218
+ * generation bumps and paired with the graph manifest recorded by the
219
+ * evaluation that produced them. A retained factory is reused on a reload only
220
+ * when the persisted manifest still equals the paired one and every file in it
221
+ * rehashes to its recorded digest; any doubt (missing or corrupt manifest,
222
+ * missing file, hash mismatch, changed graph shape) falls back to a fresh
223
+ * transformed re-evaluation, which re-records the manifest.
224
+ */
225
+ const retainedTransformedLoads = new Map();
226
+ function manifestFilesEqual(a, b) {
227
+ const aEntries = Object.entries(a);
228
+ if (aEntries.length !== Object.keys(b).length)
229
+ return false;
230
+ return aEntries.every(([filePath, hash]) => b[filePath] === hash);
231
+ }
232
+ function graphUnchangedSince(manifest) {
233
+ const stored = readExtensionGraphManifest(manifest.extensionPath);
234
+ if (!stored || !manifestFilesEqual(stored.files, manifest.files))
235
+ return false;
236
+ const entries = Object.entries(manifest.files);
237
+ if (entries.length === 0)
238
+ return false;
239
+ for (const [filePath, hash] of entries) {
240
+ try {
241
+ if (sha256Hex(fs.readFileSync(filePath)) !== hash)
242
+ return false;
243
+ }
244
+ catch {
245
+ return false;
246
+ }
247
+ }
248
+ return true;
249
+ }
250
+ /**
251
+ * A factory can defer loading local code until it is invoked (e.g. a
252
+ * `require()` inside the factory body). Those reads are invisible to the
253
+ * import-time recording, so retained factories are wrapped to record reads
254
+ * that happen while the factory executes and merge them into the retained and
255
+ * persisted manifest — editing a deferred dependency then invalidates reuse
256
+ * like any other graph file.
257
+ */
258
+ function withDeferredGraphRecording(extensionPath, factory) {
259
+ return (pi) => {
260
+ const files = new Map();
261
+ activeGraphRecorders.add(files);
262
+ installReadFileSyncObserver();
263
+ const finish = () => {
264
+ activeGraphRecorders.delete(files);
265
+ uninstallReadFileSyncObserver();
266
+ if (files.size > 0)
267
+ mergeDeferredGraphReads(extensionPath, files);
268
+ };
269
+ try {
270
+ const result = factory(pi);
271
+ if (result !== null &&
272
+ (typeof result === "object" || typeof result === "function") &&
273
+ typeof result.then === "function") {
274
+ return Promise.resolve(result).finally(finish);
275
+ }
276
+ finish();
277
+ return result;
278
+ }
279
+ catch (error) {
280
+ finish();
281
+ throw error;
282
+ }
283
+ };
284
+ }
285
+ function mergeDeferredGraphReads(extensionPath, files) {
286
+ const retained = retainedTransformedLoads.get(extensionPath);
287
+ if (!retained)
288
+ return;
289
+ let changed = false;
290
+ for (const [filePath, hash] of files) {
291
+ if (retained.manifest.files[filePath] !== hash) {
292
+ retained.manifest.files[filePath] = hash;
293
+ changed = true;
294
+ }
295
+ }
296
+ if (changed)
297
+ writeGraphManifest(retained.manifest);
298
+ }
89
299
  let extensionCacheCwd;
90
300
  let extensionCacheGeneration = 0;
91
301
  const extensionCache = new Map();
@@ -163,8 +373,8 @@ function getAliases() {
163
373
  // upstream layout change moves these files, this join needs updating to
164
374
  // match the package's real dist paths.
165
375
  const piAiEntry = resolveWorkspaceOrImport("ai/dist/compat.js", "@earendil-works/pi-ai");
376
+ const piAiOauthEntry = resolveWorkspaceOrImport("ai/dist/oauth.js", "@earendil-works/pi-ai");
166
377
  const piAiProvidersEntry = resolveWorkspaceOrImport("ai/dist/providers/all.js", "@earendil-works/pi-ai");
167
- const piAiOauthEntry = path.resolve(__dirname, "../oauth-compat.js");
168
378
  _aliases = {
169
379
  "@bastani/atomic": piCodingAgentEntry,
170
380
  "@earendil-works/pi-coding-agent": piCodingAgentEntry,
@@ -194,6 +404,10 @@ export const extensionLoaderTestHooks = {
194
404
  getAliases,
195
405
  findPackageRoot,
196
406
  getTranspileCacheDir,
407
+ graphManifestPath,
408
+ readExtensionGraphManifest,
409
+ loadExtensionModuleTransformed: (extensionPath, cacheToken) => importExtensionModule(extensionPath, cacheToken, true),
410
+ loadTransformedExtensionModule: (extensionPath, cacheToken) => loadTransformedExtensionModule(extensionPath, cacheToken),
197
411
  };
198
412
  /**
199
413
  * Extension paths already evaluated via native import() in this process. Bun on
@@ -202,22 +416,9 @@ export const extensionLoaderTestHooks = {
202
416
  * fresh module evaluation.
203
417
  */
204
418
  const nativelyImportedPaths = new Set();
205
- export async function loadExtensionModule(extensionPath, cacheToken) {
206
- if (isCurrentCacheToken(cacheToken)) {
207
- const cachedFactory = extensionCache.get(extensionPath);
208
- if (cachedFactory)
209
- return cachedFactory;
210
- }
419
+ async function importExtensionModule(extensionPath, cacheToken, forceTransformedImports) {
211
420
  const isWindows = process.platform === "win32";
212
- // Single-file builds (compiled binary or dev bundle) cannot alias host
213
- // package specifiers to files on disk: extensions must share the live
214
- // module instances baked into the build, so virtualModules is used instead
215
- // (which requires jiti's transformed-import path).
216
421
  const isSingleFileBuild = isBunBinary || isBundledBuild;
217
- // Windows first-load fast path: native import() (jiti's default tryNative)
218
- // skips per-launch transpilation of the extension module graph. Re-loads of
219
- // the same path fall back to transformed imports for fresh evaluation.
220
- const forceTransformedImports = isSingleFileBuild || (isWindows && nativelyImportedPaths.has(extensionPath));
221
422
  const jiti = createJiti(resolutionBaseUrl(import.meta.url), {
222
423
  moduleCache: false,
223
424
  ...(forceTransformedImports
@@ -227,16 +428,84 @@ export async function loadExtensionModule(extensionPath, cacheToken) {
227
428
  : {}),
228
429
  ...(isSingleFileBuild ? { virtualModules: await getVirtualModules() } : { alias: getAliases() }),
229
430
  });
230
- const module = await jiti.import(extensionImportSpecifier(extensionPath, cacheToken), { default: true });
431
+ const specifier = extensionImportSpecifier(extensionPath, cacheToken);
432
+ // Transformed evaluations are the loads whose repeat cost is the Windows
433
+ // /reload regression, so they are also the loads whose file graph is
434
+ // recorded into a content-hash manifest.
435
+ let module;
436
+ let recordedManifest;
437
+ if (forceTransformedImports) {
438
+ const recorded = await recordExtensionGraph(extensionPath, () => jiti.import(specifier, { default: true }));
439
+ module = recorded.result;
440
+ recordedManifest = recorded.manifest;
441
+ }
442
+ else {
443
+ module = await jiti.import(specifier, { default: true });
444
+ }
231
445
  if (isWindows && !forceTransformedImports) {
232
446
  nativelyImportedPaths.add(extensionPath);
233
447
  }
234
- const factory = module;
448
+ let factory = module;
235
449
  if (typeof factory !== "function")
236
450
  return undefined;
451
+ if (recordedManifest) {
452
+ factory = withDeferredGraphRecording(extensionPath, factory);
453
+ retainedTransformedLoads.set(extensionPath, { factory, manifest: recordedManifest });
454
+ }
237
455
  if (isCurrentCacheToken(cacheToken)) {
238
456
  extensionCache.set(extensionPath, factory);
239
457
  }
240
458
  return factory;
241
459
  }
460
+ /**
461
+ * Load an extension through jiti's transformed-import path, reusing the
462
+ * previously evaluated factory when the recorded graph manifest proves the
463
+ * entire transitive file graph is byte-identical. This lets the
464
+ * unchanged-graph case survive the /reload generation bump instead of
465
+ * re-evaluating hundreds of files; anything else re-evaluates as before.
466
+ *
467
+ * Note: when the graph is byte-identical, the previously evaluated module
468
+ * instance (including any mutable module-scoped state it closed over) is
469
+ * reused. An extension that requires clean module state on every reload must
470
+ * change a file in its graph to force re-evaluation.
471
+ */
472
+ async function loadTransformedExtensionModule(extensionPath, cacheToken) {
473
+ const retained = retainedTransformedLoads.get(extensionPath);
474
+ if (retained && graphUnchangedSince(retained.manifest)) {
475
+ if (isCurrentCacheToken(cacheToken)) {
476
+ extensionCache.set(extensionPath, retained.factory);
477
+ }
478
+ return retained.factory;
479
+ }
480
+ return importExtensionModule(extensionPath, cacheToken, true);
481
+ }
482
+ export async function loadExtensionModule(extensionPath, cacheToken) {
483
+ if (isCurrentCacheToken(cacheToken)) {
484
+ const cachedFactory = extensionCache.get(extensionPath);
485
+ if (cachedFactory)
486
+ return cachedFactory;
487
+ }
488
+ const isWindows = process.platform === "win32";
489
+ // Single-file builds (compiled binary or dev bundle) cannot alias host
490
+ // package specifiers to files on disk: extensions must share the live
491
+ // module instances baked into the build, so virtualModules is used instead
492
+ // (which requires jiti's transformed-import path).
493
+ const isSingleFileBuild = isBunBinary || isBundledBuild;
494
+ // Windows first-load fast path: native import() (jiti's default tryNative)
495
+ // skips per-launch transpilation of the extension module graph. Re-loads of
496
+ // the same path fall back to transformed imports for fresh evaluation.
497
+ //
498
+ // That fallback is not free. Measured on Windows CI, a transformed re-import
499
+ // costs ~15 ms per module file in the extension's transitive graph, so a
500
+ // reload of all five builtin packages (621 files) takes ~10.7 s cold and
501
+ // ~2.5 s against a warm jiti fsCache, against ~40 ms on Linux and macOS. The
502
+ // cost is correctness-driven and is paid interactively on every Windows
503
+ // `/reload`; removing it needs a content-hash-keyed evaluation cache or a
504
+ // narrower trigger, not a larger timeout.
505
+ const forceTransformedImports = isSingleFileBuild || (isWindows && nativelyImportedPaths.has(extensionPath));
506
+ if (forceTransformedImports) {
507
+ return loadTransformedExtensionModule(extensionPath, cacheToken);
508
+ }
509
+ return importExtensionModule(extensionPath, cacheToken, false);
510
+ }
242
511
  //# sourceMappingURL=loader-virtual-modules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader-virtual-modules.js","sourceRoot":"","sources":["../../../src/core/extensions/loader-virtual-modules.ts"],"names":[],"mappings":"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","sourcesContent":["import * as fs from \"node:fs\";\nimport { createRequire } from \"node:module\";\nimport * as path from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\nimport { createJiti } from \"jiti/static\";\nimport { getExtensionTranspileCacheDir, isBunBinary, isBundledBuild } from \"../../config.ts\";\nimport { moduleDirFromMetaUrl } from \"../../utils/split-launcher.ts\";\nimport { resolutionBaseUrl } from \"../../utils/module-require.ts\";\nimport { resolvePath } from \"../../utils/paths.ts\";\nimport type { ExtensionFactory } from \"./types.ts\";\n\nconst require = createRequire(import.meta.url);\nlet _virtualModules: Record<string, object> | null = null;\nlet _virtualModulesPromise: Promise<Record<string, object>> | null = null;\n\nasync function loadVirtualModules(): Promise<Record<string, object>> {\n const [typebox, typeboxCompile, typeboxValue, piAgentCore, piTui, piAi, piAiOauth, piCodingAgent] = await Promise.all([\n import(\"typebox\"),\n import(\"typebox/compile\"),\n import(\"typebox/value\"),\n import(\"@earendil-works/pi-agent-core\"),\n import(\"@earendil-works/pi-tui\"),\n // pi 0.80.2: the old global pi-ai API moved off the root entrypoint onto\n // `/compat` (a strict superset). Extensions still `import ... from\n // \"@earendil-works/pi-ai\"`, so we load the compat module here and key it\n // under the root specifier below to keep every extension working unchanged.\n import(\"@earendil-works/pi-ai/compat\"),\n import(\"../oauth-compat.ts\"),\n // NOTE: This import works because loader.ts exports are NOT re-exported from index.ts,\n // avoiding a circular dependency while preserving the package-name extension import path.\n import(\"../../index.ts\"),\n ]);\n\n return {\n typebox,\n \"typebox/compile\": typeboxCompile,\n \"typebox/value\": typeboxValue,\n \"@sinclair/typebox\": typebox,\n \"@sinclair/typebox/compile\": typeboxCompile,\n \"@sinclair/typebox/value\": typeboxValue,\n \"@earendil-works/pi-agent-core\": piAgentCore,\n \"@earendil-works/pi-tui\": piTui,\n \"@earendil-works/pi-ai\": piAi,\n \"@earendil-works/pi-ai/compat\": piAi,\n \"@earendil-works/pi-ai/oauth\": piAiOauth,\n \"@bastani/atomic\": piCodingAgent,\n \"@mariozechner/pi-agent-core\": piAgentCore,\n \"@mariozechner/pi-tui\": piTui,\n \"@mariozechner/pi-ai\": piAi,\n \"@mariozechner/pi-ai/compat\": piAi,\n \"@mariozechner/pi-ai/oauth\": piAiOauth,\n };\n}\n\n/** Modules available to extensions via virtualModules (for compiled Bun binary). */\nasync function getVirtualModules(): Promise<Record<string, object>> {\n if (_virtualModules) return _virtualModules;\n _virtualModulesPromise ??= loadVirtualModules().then(\n (virtualModules) => {\n _virtualModules = virtualModules;\n return virtualModules;\n },\n (error: Error) => {\n _virtualModulesPromise = null;\n throw error;\n },\n );\n return _virtualModulesPromise;\n}\nlet _aliases: Record<string, string> | null = null;\nlet _transpileCacheDir: string | null = null;\n\n/**\n * Persistent on-disk cache for jiti-transpiled extension modules.\n * jiti keys cache entries by source-content hash, so entries self-invalidate\n * when extension sources change; stale sibling version dirs are pruned\n * in the background.\n */\nfunction getTranspileCacheDir(): string {\n if (_transpileCacheDir) return _transpileCacheDir;\n _transpileCacheDir = getExtensionTranspileCacheDir();\n fs.mkdirSync(_transpileCacheDir, { recursive: true });\n pruneStaleTranspileCaches(_transpileCacheDir);\n return _transpileCacheDir;\n}\n\nfunction pruneStaleTranspileCaches(currentDir: string): void {\n const parent = path.dirname(currentDir);\n const keep = path.basename(currentDir);\n void fs.promises\n .readdir(parent)\n .then((entries) =>\n Promise.all(\n entries\n .filter((entry) => entry !== keep)\n .map((entry) => fs.promises.rm(path.join(parent, entry), { recursive: true, force: true })),\n ),\n )\n .catch(() => {});\n}\n\nlet extensionCacheCwd: string | undefined;\nlet extensionCacheGeneration = 0;\nconst extensionCache = new Map<string, ExtensionFactory>();\n\nexport interface ExtensionCacheToken {\n cwd: string;\n generation: number;\n}\n\nexport function clearExtensionCache(): void {\n extensionCache.clear();\n extensionCacheCwd = undefined;\n extensionCacheGeneration++;\n}\n\nexport function useExtensionCacheCwd(cwd: string): ExtensionCacheToken {\n const resolvedCwd = resolvePath(cwd);\n if (extensionCacheCwd !== undefined && extensionCacheCwd !== resolvedCwd) {\n clearExtensionCache();\n }\n extensionCacheCwd = resolvedCwd;\n return { cwd: resolvedCwd, generation: extensionCacheGeneration };\n}\n\nfunction isCurrentCacheToken(cacheToken: ExtensionCacheToken | undefined): cacheToken is ExtensionCacheToken {\n return (\n cacheToken !== undefined &&\n extensionCacheCwd === cacheToken.cwd &&\n extensionCacheGeneration === cacheToken.generation\n );\n}\n\nfunction extensionImportSpecifier(extensionPath: string, cacheToken: ExtensionCacheToken | undefined): string {\n const url = pathToFileURL(extensionPath);\n const cacheKey = cacheToken ? `${cacheToken.generation}:${cacheToken.cwd}` : `${Date.now()}:${Math.random()}`;\n url.searchParams.set(\"atomicExtensionCache\", cacheKey);\n return url.href;\n}\n\n/**\n * Locate an installed package's root directory without consulting its\n * \"exports\" map: require.resolve(\"<pkg>/package.json\") throws\n * ERR_PACKAGE_PATH_NOT_EXPORTED under Node for packages that do not export\n * \"./package.json\" (pi-ai does not), and import.meta.resolve() cannot be\n * used because its mere presence silently disables bytecode generation for\n * the compiled binary (CJS bundle). Scanning require.resolve.paths() walks\n * the same node_modules chain Node would, without exports-map encapsulation.\n */\nfunction findPackageRoot(packageName: string, searchPaths?: string[]): string {\n for (const base of searchPaths ?? require.resolve.paths(packageName) ?? []) {\n const candidate = path.join(base, packageName);\n if (fs.existsSync(path.join(candidate, \"package.json\"))) {\n return candidate;\n }\n }\n throw new Error(`Cannot locate package directory for \"${packageName}\"`);\n}\nfunction currentModuleDir(): string {\n return moduleDirFromMetaUrl(import.meta.url, \"dist\", \"core\", \"extensions\");\n}\n\n\n/**\n * Get aliases for jiti (used in Node.js/development mode).\n * In Bun binary mode, virtualModules is used instead.\n */\nfunction getAliases(): Record<string, string> {\n if (_aliases) return _aliases;\n\n const __dirname = currentModuleDir();\n const packageIndex = path.resolve(__dirname, \"../..\", \"index.js\");\n\n const typeboxEntry = require.resolve(\"typebox\");\n const typeboxCompileEntry = require.resolve(\"typebox/compile\");\n const typeboxValueEntry = require.resolve(\"typebox/value\");\n\n const packagesRoot = path.resolve(__dirname, \"../../../../\");\n const resolveWorkspaceOrImport = (workspaceRelativePath: string, packageName: string): string => {\n const workspacePath = path.join(packagesRoot, workspaceRelativePath);\n if (fs.existsSync(workspacePath)) {\n return workspacePath;\n }\n const packageRoot = findPackageRoot(packageName);\n const entryRelativePath = workspaceRelativePath.split(\"/\").slice(1).join(\"/\");\n return path.join(packageRoot, entryRelativePath);\n };\n\n const piCodingAgentEntry = packageIndex;\n const piAgentCoreEntry = resolveWorkspaceOrImport(\"agent/dist/index.js\", \"@earendil-works/pi-agent-core\");\n const piTuiEntry = resolveWorkspaceOrImport(\"tui/dist/index.js\", \"@earendil-works/pi-tui\");\n // The workspace path mirrors pi-ai 0.80.x's built dist layout. If an\n // upstream layout change moves these files, this join needs updating to\n // match the package's real dist paths.\n const piAiEntry = resolveWorkspaceOrImport(\"ai/dist/compat.js\", \"@earendil-works/pi-ai\");\n const piAiProvidersEntry = resolveWorkspaceOrImport(\"ai/dist/providers/all.js\", \"@earendil-works/pi-ai\");\n const piAiOauthEntry = path.resolve(__dirname, \"../oauth-compat.js\");\n\n _aliases = {\n \"@bastani/atomic\": piCodingAgentEntry,\n \"@earendil-works/pi-coding-agent\": piCodingAgentEntry,\n \"@earendil-works/pi-agent-core\": piAgentCoreEntry,\n \"@earendil-works/pi-tui\": piTuiEntry,\n \"@earendil-works/pi-ai/oauth\": piAiOauthEntry,\n \"@earendil-works/pi-ai/providers/all\": piAiProvidersEntry,\n \"@earendil-works/pi-ai/compat\": piAiEntry,\n \"@earendil-works/pi-ai\": piAiEntry,\n \"@mariozechner/pi-agent-core\": piAgentCoreEntry,\n \"@mariozechner/pi-tui\": piTuiEntry,\n \"@mariozechner/pi-ai/oauth\": piAiOauthEntry,\n \"@mariozechner/pi-ai/providers/all\": piAiProvidersEntry,\n \"@mariozechner/pi-ai/compat\": piAiEntry,\n \"@mariozechner/pi-ai\": piAiEntry,\n typebox: typeboxEntry,\n \"typebox/compile\": typeboxCompileEntry,\n \"typebox/value\": typeboxValueEntry,\n \"@sinclair/typebox\": typeboxEntry,\n \"@sinclair/typebox/compile\": typeboxCompileEntry,\n \"@sinclair/typebox/value\": typeboxValueEntry,\n };\n\n return _aliases;\n}\n\nexport const extensionLoaderTestHooks = {\n loadVirtualModules,\n getAliases,\n findPackageRoot,\n getTranspileCacheDir,\n};\n\n/**\n * Extension paths already evaluated via native import() in this process. Bun on\n * Windows ignores the cache-busting query on file URLs, so re-loads of these\n * paths (e.g. /reload) must go through jiti's transformed-import path to get a\n * fresh module evaluation.\n */\nconst nativelyImportedPaths = new Set<string>();\n\nexport async function loadExtensionModule(\n extensionPath: string,\n cacheToken?: ExtensionCacheToken,\n): Promise<ExtensionFactory | undefined> {\n if (isCurrentCacheToken(cacheToken)) {\n const cachedFactory = extensionCache.get(extensionPath);\n if (cachedFactory) return cachedFactory;\n }\n\n const isWindows = process.platform === \"win32\";\n // Single-file builds (compiled binary or dev bundle) cannot alias host\n // package specifiers to files on disk: extensions must share the live\n // module instances baked into the build, so virtualModules is used instead\n // (which requires jiti's transformed-import path).\n const isSingleFileBuild = isBunBinary || isBundledBuild;\n // Windows first-load fast path: native import() (jiti's default tryNative)\n // skips per-launch transpilation of the extension module graph. Re-loads of\n // the same path fall back to transformed imports for fresh evaluation.\n const forceTransformedImports = isSingleFileBuild || (isWindows && nativelyImportedPaths.has(extensionPath));\n const jiti = createJiti(resolutionBaseUrl(import.meta.url), {\n moduleCache: false,\n ...(forceTransformedImports\n ? { fsCache: getTranspileCacheDir(), tryNative: false }\n : isWindows\n ? { fsCache: getTranspileCacheDir() }\n : {}),\n ...(isSingleFileBuild ? { virtualModules: await getVirtualModules() } : { alias: getAliases() }),\n });\n const module = await jiti.import(extensionImportSpecifier(extensionPath, cacheToken), { default: true });\n if (isWindows && !forceTransformedImports) {\n nativelyImportedPaths.add(extensionPath);\n }\n const factory = module as ExtensionFactory;\n if (typeof factory !== \"function\") return undefined;\n if (isCurrentCacheToken(cacheToken)) {\n extensionCache.set(extensionPath, factory);\n }\n return factory;\n}\n"]}
1
+ {"version":3,"file":"loader-virtual-modules.js","sourceRoot":"","sources":["../../../src/core/extensions/loader-virtual-modules.ts"],"names":[],"mappings":"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","sourcesContent":["import * as crypto from \"node:crypto\";\nimport * as fs from \"node:fs\";\nimport { createRequire } from \"node:module\";\nimport * as path from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\nimport { createJiti } from \"jiti/static\";\nimport { getExtensionTranspileCacheDir, isBunBinary, isBundledBuild } from \"../../config.ts\";\nimport { resolutionBaseUrl } from \"../../utils/module-require.ts\";\nimport { resolvePath } from \"../../utils/paths.ts\";\nimport { moduleDirFromMetaUrl } from \"../../utils/split-launcher.ts\";\nimport type { ExtensionFactory } from \"./types.ts\";\n\nconst require = createRequire(import.meta.url);\nlet _virtualModules: Record<string, object> | null = null;\nlet _virtualModulesPromise: Promise<Record<string, object>> | null = null;\n\nasync function loadVirtualModules(): Promise<Record<string, object>> {\n\tconst [typebox, typeboxCompile, typeboxValue, piAgentCore, piTui, piAi, piAiOauth, piCodingAgent] =\n\t\tawait Promise.all([\n\t\t\timport(\"typebox\"),\n\t\t\timport(\"typebox/compile\"),\n\t\t\timport(\"typebox/value\"),\n\t\t\timport(\"@earendil-works/pi-agent-core\"),\n\t\t\timport(\"@earendil-works/pi-tui\"),\n\t\t\t// pi 0.80.2: the old global pi-ai API moved off the root entrypoint onto\n\t\t\t// `/compat` (a strict superset). Extensions still `import ... from\n\t\t\t// \"@earendil-works/pi-ai\"`, so we load the compat module here and key it\n\t\t\t// under the root specifier below to keep every extension working unchanged.\n\t\t\timport(\"@earendil-works/pi-ai/compat\"),\n\t\t\timport(\"@earendil-works/pi-ai/oauth\"),\n\t\t\t// NOTE: This import works because loader.ts exports are NOT re-exported from index.ts,\n\t\t\t// avoiding a circular dependency while preserving the package-name extension import path.\n\t\t\timport(\"../../index.ts\"),\n\t\t]);\n\n\treturn {\n\t\ttypebox,\n\t\t\"typebox/compile\": typeboxCompile,\n\t\t\"typebox/value\": typeboxValue,\n\t\t\"@sinclair/typebox\": typebox,\n\t\t\"@sinclair/typebox/compile\": typeboxCompile,\n\t\t\"@sinclair/typebox/value\": typeboxValue,\n\t\t\"@earendil-works/pi-agent-core\": piAgentCore,\n\t\t\"@earendil-works/pi-tui\": piTui,\n\t\t\"@earendil-works/pi-ai\": piAi,\n\t\t\"@earendil-works/pi-ai/compat\": piAi,\n\t\t\"@earendil-works/pi-ai/oauth\": piAiOauth,\n\t\t\"@bastani/atomic\": piCodingAgent,\n\t\t\"@mariozechner/pi-agent-core\": piAgentCore,\n\t\t\"@mariozechner/pi-tui\": piTui,\n\t\t\"@mariozechner/pi-ai\": piAi,\n\t\t\"@mariozechner/pi-ai/compat\": piAi,\n\t\t\"@mariozechner/pi-ai/oauth\": piAiOauth,\n\t};\n}\n\n/** Modules available to extensions via virtualModules (for compiled Bun binary). */\nasync function getVirtualModules(): Promise<Record<string, object>> {\n\tif (_virtualModules) return _virtualModules;\n\t_virtualModulesPromise ??= loadVirtualModules().then(\n\t\t(virtualModules) => {\n\t\t\t_virtualModules = virtualModules;\n\t\t\treturn virtualModules;\n\t\t},\n\t\t(error: Error) => {\n\t\t\t_virtualModulesPromise = null;\n\t\t\tthrow error;\n\t\t},\n\t);\n\treturn _virtualModulesPromise;\n}\nlet _aliases: Record<string, string> | null = null;\nlet _transpileCacheDir: string | null = null;\n\n/**\n * Persistent on-disk cache for jiti-transpiled extension modules.\n * jiti keys cache entries by source-content hash, so entries self-invalidate\n * when extension sources change; stale sibling version dirs are pruned\n * in the background.\n */\nfunction getTranspileCacheDir(): string {\n\tif (_transpileCacheDir) return _transpileCacheDir;\n\t_transpileCacheDir = getExtensionTranspileCacheDir();\n\tfs.mkdirSync(_transpileCacheDir, { recursive: true });\n\tpruneStaleTranspileCaches(_transpileCacheDir);\n\treturn _transpileCacheDir;\n}\n\nfunction pruneStaleTranspileCaches(currentDir: string): void {\n\tconst parent = path.dirname(currentDir);\n\tconst keep = path.basename(currentDir);\n\tvoid fs.promises\n\t\t.readdir(parent)\n\t\t.then((entries) =>\n\t\t\tPromise.all(\n\t\t\t\tentries\n\t\t\t\t\t.filter((entry) => entry !== keep)\n\t\t\t\t\t.map((entry) => fs.promises.rm(path.join(parent, entry), { recursive: true, force: true })),\n\t\t\t),\n\t\t)\n\t\t.catch(() => {});\n}\n\n/**\n * Per-extension-path record of the complete file graph a transformed (jiti)\n * evaluation read, mapping each absolute file path to the SHA256 hex digest of\n * its content at evaluation time. Persisted under the versioned transpile\n * cache directory so pruneStaleTranspileCaches handles version cleanup.\n */\nexport interface ExtensionGraphManifest {\n\tversion: 1;\n\textensionPath: string;\n\tfiles: Record<string, string>;\n}\n\nconst GRAPH_MANIFEST_VERSION = 1;\nconst GRAPH_MANIFEST_DIR_NAME = \"graph-manifests\";\n\nconst graphManifestFileExtensions = new Set([\".ts\", \".tsx\", \".mts\", \".cts\", \".js\", \".mjs\", \".cjs\", \".jsx\", \".json\"]);\n\nfunction graphManifestDir(): string {\n\treturn path.join(getTranspileCacheDir(), GRAPH_MANIFEST_DIR_NAME);\n}\n\nfunction graphManifestPath(extensionPath: string): string {\n\tconst key = crypto.createHash(\"sha256\").update(extensionPath).digest(\"hex\").slice(0, 32);\n\treturn path.join(graphManifestDir(), `${key}.json`);\n}\n\nfunction sha256Hex(content: string | NodeJS.ArrayBufferView): string {\n\treturn crypto.createHash(\"sha256\").update(content).digest(\"hex\");\n}\n\n// jiti's CJS bundle reads every module source in the require graph through\n// fs.readFileSync (even on fsCache hits, since the cache key is a hash of the\n// source), so observing readFileSync while a transformed import is in flight\n// sees the complete transitive graph. The observer records into every active\n// recorder; unrelated reads that interleave only over-record, which at worst\n// forces a redundant re-evaluation later — never a stale one.\nconst fsExports = require(\"node:fs\") as typeof fs;\nconst activeGraphRecorders = new Set<Map<string, string>>();\nlet observedReadFileSync: typeof fs.readFileSync | null = null;\n\nfunction recordObservedRead(target: Parameters<typeof fs.readFileSync>[0], content: string | Buffer): void {\n\tif (typeof target !== \"string\" || !path.isAbsolute(target)) return;\n\tif (!graphManifestFileExtensions.has(path.extname(target).toLowerCase())) return;\n\tconst normalizedTarget = path.normalize(target);\n\tconst cachePrefix = path.normalize(getTranspileCacheDir()) + path.sep;\n\tif (normalizedTarget.toLowerCase().startsWith(cachePrefix.toLowerCase())) return;\n\tconst hash = sha256Hex(content);\n\tfor (const recorder of activeGraphRecorders) {\n\t\trecorder.set(normalizedTarget, hash);\n\t}\n}\n\nfunction installReadFileSyncObserver(): void {\n\tif (observedReadFileSync) return;\n\tconst original = fsExports.readFileSync;\n\tobservedReadFileSync = original;\n\tconst wrapped = ((...args: Parameters<typeof fs.readFileSync>) => {\n\t\tconst content = original(...args);\n\t\trecordObservedRead(args[0], content);\n\t\treturn content;\n\t}) as typeof fs.readFileSync;\n\tfsExports.readFileSync = wrapped;\n}\n\nfunction uninstallReadFileSyncObserver(): void {\n\tif (!observedReadFileSync || activeGraphRecorders.size > 0) return;\n\tfsExports.readFileSync = observedReadFileSync;\n\tobservedReadFileSync = null;\n}\n\nfunction writeGraphManifest(manifest: ExtensionGraphManifest): void {\n\tconst manifestFile = graphManifestPath(manifest.extensionPath);\n\tlet tempFile: string | undefined;\n\ttry {\n\t\tfs.mkdirSync(path.dirname(manifestFile), { recursive: true });\n\t\ttempFile = `${manifestFile}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;\n\t\tfs.writeFileSync(tempFile, JSON.stringify(manifest));\n\t\tfs.renameSync(tempFile, manifestFile);\n\t} catch {\n\t\t// Manifest persistence is best-effort: a missing manifest only means the\n\t\t// next reload cannot prove the graph unchanged and re-evaluates. A failed\n\t\t// replacement must not leave an older manifest behind describing a graph\n\t\t// that no longer matches this evaluation, so invalidate the destination\n\t\t// first, independently of removing the temporary file.\n\t\ttry {\n\t\t\tfs.rmSync(manifestFile, { force: true });\n\t\t} catch {\n\t\t\t// A leftover stale manifest cannot be reused without also matching\n\t\t\t// the in-memory manifest of the same evaluation, and readers\n\t\t\t// tolerate missing or corrupt files.\n\t\t}\n\t\ttry {\n\t\t\tif (tempFile) fs.rmSync(tempFile, { force: true });\n\t\t} catch {\n\t\t\t// Temporary files carry a unique suffix and are never read back.\n\t\t}\n\t}\n}\n\nfunction isStringRecord(value: unknown): value is Record<string, string> {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) return false;\n\treturn Object.values(value).every((entry) => typeof entry === \"string\");\n}\n\nexport function readExtensionGraphManifest(extensionPath: string): ExtensionGraphManifest | undefined {\n\ttry {\n\t\tconst parsed = JSON.parse(\n\t\t\tfs.readFileSync(graphManifestPath(extensionPath), \"utf-8\"),\n\t\t) as Partial<ExtensionGraphManifest>;\n\t\tif (parsed.version !== GRAPH_MANIFEST_VERSION) return undefined;\n\t\tif (parsed.extensionPath !== extensionPath) return undefined;\n\t\tif (!isStringRecord(parsed.files)) return undefined;\n\t\treturn { version: GRAPH_MANIFEST_VERSION, extensionPath, files: parsed.files };\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nasync function recordExtensionGraph<T>(\n\textensionPath: string,\n\tload: () => Promise<T>,\n): Promise<{ result: T; manifest: ExtensionGraphManifest }> {\n\tconst files = new Map<string, string>();\n\tactiveGraphRecorders.add(files);\n\tinstallReadFileSyncObserver();\n\tlet result: T;\n\ttry {\n\t\tresult = await load();\n\t} finally {\n\t\tactiveGraphRecorders.delete(files);\n\t\tuninstallReadFileSyncObserver();\n\t}\n\tconst manifest: ExtensionGraphManifest = {\n\t\tversion: GRAPH_MANIFEST_VERSION,\n\t\textensionPath,\n\t\tfiles: Object.fromEntries([...files.entries()].sort(([a], [b]) => a.localeCompare(b))),\n\t};\n\twriteGraphManifest(manifest);\n\treturn { result, manifest };\n}\n\n/**\n * Factories from transformed evaluations, retained across extension cache\n * generation bumps and paired with the graph manifest recorded by the\n * evaluation that produced them. A retained factory is reused on a reload only\n * when the persisted manifest still equals the paired one and every file in it\n * rehashes to its recorded digest; any doubt (missing or corrupt manifest,\n * missing file, hash mismatch, changed graph shape) falls back to a fresh\n * transformed re-evaluation, which re-records the manifest.\n */\nconst retainedTransformedLoads = new Map<string, { factory: ExtensionFactory; manifest: ExtensionGraphManifest }>();\n\nfunction manifestFilesEqual(a: Record<string, string>, b: Record<string, string>): boolean {\n\tconst aEntries = Object.entries(a);\n\tif (aEntries.length !== Object.keys(b).length) return false;\n\treturn aEntries.every(([filePath, hash]) => b[filePath] === hash);\n}\n\nfunction graphUnchangedSince(manifest: ExtensionGraphManifest): boolean {\n\tconst stored = readExtensionGraphManifest(manifest.extensionPath);\n\tif (!stored || !manifestFilesEqual(stored.files, manifest.files)) return false;\n\tconst entries = Object.entries(manifest.files);\n\tif (entries.length === 0) return false;\n\tfor (const [filePath, hash] of entries) {\n\t\ttry {\n\t\t\tif (sha256Hex(fs.readFileSync(filePath)) !== hash) return false;\n\t\t} catch {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n/**\n * A factory can defer loading local code until it is invoked (e.g. a\n * `require()` inside the factory body). Those reads are invisible to the\n * import-time recording, so retained factories are wrapped to record reads\n * that happen while the factory executes and merge them into the retained and\n * persisted manifest — editing a deferred dependency then invalidates reuse\n * like any other graph file.\n */\nfunction withDeferredGraphRecording(extensionPath: string, factory: ExtensionFactory): ExtensionFactory {\n\treturn (pi) => {\n\t\tconst files = new Map<string, string>();\n\t\tactiveGraphRecorders.add(files);\n\t\tinstallReadFileSyncObserver();\n\t\tconst finish = () => {\n\t\t\tactiveGraphRecorders.delete(files);\n\t\t\tuninstallReadFileSyncObserver();\n\t\t\tif (files.size > 0) mergeDeferredGraphReads(extensionPath, files);\n\t\t};\n\t\ttry {\n\t\t\tconst result = factory(pi);\n\t\t\tif (\n\t\t\t\tresult !== null &&\n\t\t\t\t(typeof result === \"object\" || typeof result === \"function\") &&\n\t\t\t\ttypeof (result as PromiseLike<void>).then === \"function\"\n\t\t\t) {\n\t\t\t\treturn Promise.resolve(result).finally(finish);\n\t\t\t}\n\t\t\tfinish();\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tfinish();\n\t\t\tthrow error;\n\t\t}\n\t};\n}\n\nfunction mergeDeferredGraphReads(extensionPath: string, files: Map<string, string>): void {\n\tconst retained = retainedTransformedLoads.get(extensionPath);\n\tif (!retained) return;\n\tlet changed = false;\n\tfor (const [filePath, hash] of files) {\n\t\tif (retained.manifest.files[filePath] !== hash) {\n\t\t\tretained.manifest.files[filePath] = hash;\n\t\t\tchanged = true;\n\t\t}\n\t}\n\tif (changed) writeGraphManifest(retained.manifest);\n}\n\nlet extensionCacheCwd: string | undefined;\nlet extensionCacheGeneration = 0;\nconst extensionCache = new Map<string, ExtensionFactory>();\n\nexport interface ExtensionCacheToken {\n\tcwd: string;\n\tgeneration: number;\n}\n\nexport function clearExtensionCache(): void {\n\textensionCache.clear();\n\textensionCacheCwd = undefined;\n\textensionCacheGeneration++;\n}\n\nexport function useExtensionCacheCwd(cwd: string): ExtensionCacheToken {\n\tconst resolvedCwd = resolvePath(cwd);\n\tif (extensionCacheCwd !== undefined && extensionCacheCwd !== resolvedCwd) {\n\t\tclearExtensionCache();\n\t}\n\textensionCacheCwd = resolvedCwd;\n\treturn { cwd: resolvedCwd, generation: extensionCacheGeneration };\n}\n\nfunction isCurrentCacheToken(cacheToken: ExtensionCacheToken | undefined): cacheToken is ExtensionCacheToken {\n\treturn (\n\t\tcacheToken !== undefined &&\n\t\textensionCacheCwd === cacheToken.cwd &&\n\t\textensionCacheGeneration === cacheToken.generation\n\t);\n}\n\nfunction extensionImportSpecifier(extensionPath: string, cacheToken: ExtensionCacheToken | undefined): string {\n\tconst url = pathToFileURL(extensionPath);\n\tconst cacheKey = cacheToken ? `${cacheToken.generation}:${cacheToken.cwd}` : `${Date.now()}:${Math.random()}`;\n\turl.searchParams.set(\"atomicExtensionCache\", cacheKey);\n\treturn url.href;\n}\n\n/**\n * Locate an installed package's root directory without consulting its\n * \"exports\" map: require.resolve(\"<pkg>/package.json\") throws\n * ERR_PACKAGE_PATH_NOT_EXPORTED under Node for packages that do not export\n * \"./package.json\" (pi-ai does not), and import.meta.resolve() cannot be\n * used because its mere presence silently disables bytecode generation for\n * the compiled binary (CJS bundle). Scanning require.resolve.paths() walks\n * the same node_modules chain Node would, without exports-map encapsulation.\n */\nfunction findPackageRoot(packageName: string, searchPaths?: string[]): string {\n\tfor (const base of searchPaths ?? require.resolve.paths(packageName) ?? []) {\n\t\tconst candidate = path.join(base, packageName);\n\t\tif (fs.existsSync(path.join(candidate, \"package.json\"))) {\n\t\t\treturn candidate;\n\t\t}\n\t}\n\tthrow new Error(`Cannot locate package directory for \"${packageName}\"`);\n}\nfunction currentModuleDir(): string {\n\treturn moduleDirFromMetaUrl(import.meta.url, \"dist\", \"core\", \"extensions\");\n}\n\n/**\n * Get aliases for jiti (used in Node.js/development mode).\n * In Bun binary mode, virtualModules is used instead.\n */\nfunction getAliases(): Record<string, string> {\n\tif (_aliases) return _aliases;\n\n\tconst __dirname = currentModuleDir();\n\tconst packageIndex = path.resolve(__dirname, \"../..\", \"index.js\");\n\n\tconst typeboxEntry = require.resolve(\"typebox\");\n\tconst typeboxCompileEntry = require.resolve(\"typebox/compile\");\n\tconst typeboxValueEntry = require.resolve(\"typebox/value\");\n\n\tconst packagesRoot = path.resolve(__dirname, \"../../../../\");\n\tconst resolveWorkspaceOrImport = (workspaceRelativePath: string, packageName: string): string => {\n\t\tconst workspacePath = path.join(packagesRoot, workspaceRelativePath);\n\t\tif (fs.existsSync(workspacePath)) {\n\t\t\treturn workspacePath;\n\t\t}\n\t\tconst packageRoot = findPackageRoot(packageName);\n\t\tconst entryRelativePath = workspaceRelativePath.split(\"/\").slice(1).join(\"/\");\n\t\treturn path.join(packageRoot, entryRelativePath);\n\t};\n\n\tconst piCodingAgentEntry = packageIndex;\n\tconst piAgentCoreEntry = resolveWorkspaceOrImport(\"agent/dist/index.js\", \"@earendil-works/pi-agent-core\");\n\tconst piTuiEntry = resolveWorkspaceOrImport(\"tui/dist/index.js\", \"@earendil-works/pi-tui\");\n\t// The workspace path mirrors pi-ai 0.80.x's built dist layout. If an\n\t// upstream layout change moves these files, this join needs updating to\n\t// match the package's real dist paths.\n\tconst piAiEntry = resolveWorkspaceOrImport(\"ai/dist/compat.js\", \"@earendil-works/pi-ai\");\n\tconst piAiOauthEntry = resolveWorkspaceOrImport(\"ai/dist/oauth.js\", \"@earendil-works/pi-ai\");\n\tconst piAiProvidersEntry = resolveWorkspaceOrImport(\"ai/dist/providers/all.js\", \"@earendil-works/pi-ai\");\n\n\t_aliases = {\n\t\t\"@bastani/atomic\": piCodingAgentEntry,\n\t\t\"@earendil-works/pi-coding-agent\": piCodingAgentEntry,\n\t\t\"@earendil-works/pi-agent-core\": piAgentCoreEntry,\n\t\t\"@earendil-works/pi-tui\": piTuiEntry,\n\t\t\"@earendil-works/pi-ai/oauth\": piAiOauthEntry,\n\t\t\"@earendil-works/pi-ai/providers/all\": piAiProvidersEntry,\n\t\t\"@earendil-works/pi-ai/compat\": piAiEntry,\n\t\t\"@earendil-works/pi-ai\": piAiEntry,\n\t\t\"@mariozechner/pi-agent-core\": piAgentCoreEntry,\n\t\t\"@mariozechner/pi-tui\": piTuiEntry,\n\t\t\"@mariozechner/pi-ai/oauth\": piAiOauthEntry,\n\t\t\"@mariozechner/pi-ai/providers/all\": piAiProvidersEntry,\n\t\t\"@mariozechner/pi-ai/compat\": piAiEntry,\n\t\t\"@mariozechner/pi-ai\": piAiEntry,\n\t\ttypebox: typeboxEntry,\n\t\t\"typebox/compile\": typeboxCompileEntry,\n\t\t\"typebox/value\": typeboxValueEntry,\n\t\t\"@sinclair/typebox\": typeboxEntry,\n\t\t\"@sinclair/typebox/compile\": typeboxCompileEntry,\n\t\t\"@sinclair/typebox/value\": typeboxValueEntry,\n\t};\n\n\treturn _aliases;\n}\n\nexport const extensionLoaderTestHooks = {\n\tloadVirtualModules,\n\tgetAliases,\n\tfindPackageRoot,\n\tgetTranspileCacheDir,\n\tgraphManifestPath,\n\treadExtensionGraphManifest,\n\tloadExtensionModuleTransformed: (extensionPath: string, cacheToken?: ExtensionCacheToken) =>\n\t\timportExtensionModule(extensionPath, cacheToken, true),\n\tloadTransformedExtensionModule: (extensionPath: string, cacheToken?: ExtensionCacheToken) =>\n\t\tloadTransformedExtensionModule(extensionPath, cacheToken),\n};\n\n/**\n * Extension paths already evaluated via native import() in this process. Bun on\n * Windows ignores the cache-busting query on file URLs, so re-loads of these\n * paths (e.g. /reload) must go through jiti's transformed-import path to get a\n * fresh module evaluation.\n */\nconst nativelyImportedPaths = new Set<string>();\n\nasync function importExtensionModule(\n\textensionPath: string,\n\tcacheToken: ExtensionCacheToken | undefined,\n\tforceTransformedImports: boolean,\n): Promise<ExtensionFactory | undefined> {\n\tconst isWindows = process.platform === \"win32\";\n\tconst isSingleFileBuild = isBunBinary || isBundledBuild;\n\tconst jiti = createJiti(resolutionBaseUrl(import.meta.url), {\n\t\tmoduleCache: false,\n\t\t...(forceTransformedImports\n\t\t\t? { fsCache: getTranspileCacheDir(), tryNative: false }\n\t\t\t: isWindows\n\t\t\t\t? { fsCache: getTranspileCacheDir() }\n\t\t\t\t: {}),\n\t\t...(isSingleFileBuild ? { virtualModules: await getVirtualModules() } : { alias: getAliases() }),\n\t});\n\tconst specifier = extensionImportSpecifier(extensionPath, cacheToken);\n\t// Transformed evaluations are the loads whose repeat cost is the Windows\n\t// /reload regression, so they are also the loads whose file graph is\n\t// recorded into a content-hash manifest.\n\tlet module: unknown;\n\tlet recordedManifest: ExtensionGraphManifest | undefined;\n\tif (forceTransformedImports) {\n\t\tconst recorded = await recordExtensionGraph(extensionPath, () => jiti.import(specifier, { default: true }));\n\t\tmodule = recorded.result;\n\t\trecordedManifest = recorded.manifest;\n\t} else {\n\t\tmodule = await jiti.import(specifier, { default: true });\n\t}\n\tif (isWindows && !forceTransformedImports) {\n\t\tnativelyImportedPaths.add(extensionPath);\n\t}\n\tlet factory = module as ExtensionFactory;\n\tif (typeof factory !== \"function\") return undefined;\n\tif (recordedManifest) {\n\t\tfactory = withDeferredGraphRecording(extensionPath, factory);\n\t\tretainedTransformedLoads.set(extensionPath, { factory, manifest: recordedManifest });\n\t}\n\tif (isCurrentCacheToken(cacheToken)) {\n\t\textensionCache.set(extensionPath, factory);\n\t}\n\treturn factory;\n}\n\n/**\n * Load an extension through jiti's transformed-import path, reusing the\n * previously evaluated factory when the recorded graph manifest proves the\n * entire transitive file graph is byte-identical. This lets the\n * unchanged-graph case survive the /reload generation bump instead of\n * re-evaluating hundreds of files; anything else re-evaluates as before.\n *\n * Note: when the graph is byte-identical, the previously evaluated module\n * instance (including any mutable module-scoped state it closed over) is\n * reused. An extension that requires clean module state on every reload must\n * change a file in its graph to force re-evaluation.\n */\nasync function loadTransformedExtensionModule(\n\textensionPath: string,\n\tcacheToken: ExtensionCacheToken | undefined,\n): Promise<ExtensionFactory | undefined> {\n\tconst retained = retainedTransformedLoads.get(extensionPath);\n\tif (retained && graphUnchangedSince(retained.manifest)) {\n\t\tif (isCurrentCacheToken(cacheToken)) {\n\t\t\textensionCache.set(extensionPath, retained.factory);\n\t\t}\n\t\treturn retained.factory;\n\t}\n\treturn importExtensionModule(extensionPath, cacheToken, true);\n}\n\nexport async function loadExtensionModule(\n\textensionPath: string,\n\tcacheToken?: ExtensionCacheToken,\n): Promise<ExtensionFactory | undefined> {\n\tif (isCurrentCacheToken(cacheToken)) {\n\t\tconst cachedFactory = extensionCache.get(extensionPath);\n\t\tif (cachedFactory) return cachedFactory;\n\t}\n\n\tconst isWindows = process.platform === \"win32\";\n\t// Single-file builds (compiled binary or dev bundle) cannot alias host\n\t// package specifiers to files on disk: extensions must share the live\n\t// module instances baked into the build, so virtualModules is used instead\n\t// (which requires jiti's transformed-import path).\n\tconst isSingleFileBuild = isBunBinary || isBundledBuild;\n\t// Windows first-load fast path: native import() (jiti's default tryNative)\n\t// skips per-launch transpilation of the extension module graph. Re-loads of\n\t// the same path fall back to transformed imports for fresh evaluation.\n\t//\n\t// That fallback is not free. Measured on Windows CI, a transformed re-import\n\t// costs ~15 ms per module file in the extension's transitive graph, so a\n\t// reload of all five builtin packages (621 files) takes ~10.7 s cold and\n\t// ~2.5 s against a warm jiti fsCache, against ~40 ms on Linux and macOS. The\n\t// cost is correctness-driven and is paid interactively on every Windows\n\t// `/reload`; removing it needs a content-hash-keyed evaluation cache or a\n\t// narrower trigger, not a larger timeout.\n\tconst forceTransformedImports = isSingleFileBuild || (isWindows && nativelyImportedPaths.has(extensionPath));\n\tif (forceTransformedImports) {\n\t\treturn loadTransformedExtensionModule(extensionPath, cacheToken);\n\t}\n\treturn importExtensionModule(extensionPath, cacheToken, false);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,YAAY,EACV,yCAAyC,EACzC,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,YAAY,EACX,yCAAyC,EACzC,wBAAwB,EACxB,6BAA6B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/core/extensions/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAMlE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC","sourcesContent":["/**\n * Extension loader - loads TypeScript extension modules using jiti.\n */\n\nexport { loadExtensionFromFactory, loadExtensions, loadExtensionsCached } from \"./loader-core.ts\";\nexport { discoverAndLoadExtensions } from \"./loader-discovery.ts\";\nexport type {\n ResourceLoaderInheritanceSnapshotProvider,\n WorkflowResourceProvider,\n WorkflowResourceProviderInput,\n} from \"./loader-resources.ts\";\nexport { createExtensionRuntime } from \"./loader-runtime.ts\";\nexport { clearExtensionCache } from \"./loader-virtual-modules.ts\";\n"]}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/core/extensions/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAMlE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC","sourcesContent":["/**\n * Extension loader - loads TypeScript extension modules using jiti.\n */\n\nexport { loadExtensionFromFactory, loadExtensions, loadExtensionsCached } from \"./loader-core.ts\";\nexport { discoverAndLoadExtensions } from \"./loader-discovery.ts\";\nexport type {\n\tResourceLoaderInheritanceSnapshotProvider,\n\tWorkflowResourceProvider,\n\tWorkflowResourceProviderInput,\n} from \"./loader-resources.ts\";\nexport { createExtensionRuntime } from \"./loader-runtime.ts\";\nexport { clearExtensionCache } from \"./loader-virtual-modules.ts\";\n"]}
@@ -1,6 +1,7 @@
1
1
  import type { Component } from "@earendil-works/pi-tui";
2
2
  import type { Theme } from "../../modes/interactive/theme/theme.ts";
3
3
  import type { CustomMessage } from "../messages.ts";
4
+ import type { CustomEntry } from "../session-manager.ts";
4
5
  export type CustomMessageDelivery = "steer" | "followUp" | "nextTurn" | "interrupt";
5
6
  export interface SendMessageOptions {
6
7
  triggerTurn?: boolean;
@@ -18,10 +19,11 @@ export interface SendMessageOptions {
18
19
  */
19
20
  stageAdmissionBarrier?: () => Promise<void>;
20
21
  /**
21
- * When the parent chat is streaming, persist the custom message to the
22
- * transcript (visible and durable) instead of only queueing a transient
23
- * steer that can be dropped when the queue is cleared or the turn aborts.
24
- * Use for status notices that must not be silently lost.
22
+ * Commit one display-only card before admission, then deliver a separate
23
+ * hidden model-facing reconciliation. In an active parent chat that hidden
24
+ * message waits for agent-core's protocol-safe boundary; queue clearing cannot
25
+ * drop it and the lifecycle path does not interrupt the active response.
26
+ * Use only for status notices that require later model reconciliation.
25
27
  */
26
28
  persistWhenStreaming?: boolean;
27
29
  /**
@@ -37,7 +39,13 @@ export type SendMessagesOptions = Omit<SendMessageOptions, "deliverAs" | "interr
37
39
  };
38
40
  export interface MessageRenderOptions {
39
41
  expanded: boolean;
42
+ /** Horizontal padding configured by the outputPad setting. */
43
+ outputPad: number;
40
44
  }
45
+ export interface EntryRenderOptions {
46
+ expanded: boolean;
47
+ }
48
+ export type EntryRenderer<T = unknown> = (entry: CustomEntry<T>, options: EntryRenderOptions, theme: Theme) => Component | undefined;
41
49
  /**
42
50
  * Custom message renderer.
43
51
  *
@@ -1 +1 @@
1
- {"version":3,"file":"message-types.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/message-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;AAEpF,MAAM,WAAW,kBAAkB;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,6EAA6E;IAC7E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,uBAAuB,CAAC,GAAG;IACnG,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;CAC9C,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACpC,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,OAAO,IAAI,CAC1C,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,KAAK,KACR,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"message-types.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/message-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;AAEpF,MAAM,WAAW,kBAAkB;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,6EAA6E;IAC7E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,uBAAuB,CAAC,GAAG;IACnG,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;CAC9C,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI,CACxC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EACrB,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,KAAK,KACR,SAAS,GAAG,SAAS,CAAC;AAE3B;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,OAAO,IAAI,CAC1C,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,KAAK,KACR,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"message-types.js","sourceRoot":"","sources":["../../../src/core/extensions/message-types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Component } from \"@earendil-works/pi-tui\";\nimport type { Theme } from \"../../modes/interactive/theme/theme.ts\";\nimport type { CustomMessage } from \"../messages.ts\";\n\nexport type CustomMessageDelivery = \"steer\" | \"followUp\" | \"nextTurn\" | \"interrupt\";\n\nexport interface SendMessageOptions {\n\ttriggerTurn?: boolean;\n\tdeliverAs?: CustomMessageDelivery;\n\t/** Render/persist the custom message without including it in LLM context. */\n\texcludeFromContext?: boolean;\n\t/** Stable producer identity used for exactly-once workflow-stage admission. */\n\tstageAdmissionKey?: string;\n\t/**\n\t * Holds an already-admitted workflow-stage delivery behind producer-specific\n\t * coordination. The generation boundary tracks this promise so stage close\n\t * cannot overtake the eventual queue insertion.\n\t *\n\t * @internal\n\t */\n\tstageAdmissionBarrier?: () => Promise<void>;\n\t/**\n\t * When the parent chat is streaming, persist the custom message to the\n\t * transcript (visible and durable) instead of only queueing a transient\n\t * steer that can be dropped when the queue is cleared or the turn aborts.\n\t * Use for status notices that must not be silently lost.\n\t */\n\tpersistWhenStreaming?: boolean;\n\n\t/**\n\t * Optional replacement text for generic abort tool/assistant results when\n\t * `deliverAs: \"interrupt\"` aborts an active turn. Use this when the abort is\n\t * caused by a meaningful external event and the model/user should see that\n\t * event instead of a bare `Operation aborted`.\n\t */\n\tinterruptAbortMessage?: string;\n}\n\nexport type SendMessagesOptions = Omit<SendMessageOptions, \"deliverAs\" | \"interruptAbortMessage\"> & {\n\tdeliverAs?: \"steer\" | \"followUp\" | \"nextTurn\";\n};\n\nexport interface MessageRenderOptions {\n\texpanded: boolean;\n}\n\n/**\n * Custom message renderer.\n *\n * Return value semantics:\n * - `Component`: mount this component (the renderer owns its styling).\n * - `null`: the renderer handled the message but wants to render nothing —\n * the entry occupies zero rows (no leading spacer, no default box). Use this\n * to suppress a rehydrated entry whose backing state is gone (e.g. the\n * workflows input form on `/resume`).\n * - `undefined`: the renderer did not handle the message; fall back to the\n * default boxed `[customType]` rendering.\n */\nexport type MessageRenderer<T = unknown> = (\n\tmessage: CustomMessage<T>,\n\toptions: MessageRenderOptions,\n\ttheme: Theme,\n) => Component | null | undefined;\n"]}
1
+ {"version":3,"file":"message-types.js","sourceRoot":"","sources":["../../../src/core/extensions/message-types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Component } from \"@earendil-works/pi-tui\";\nimport type { Theme } from \"../../modes/interactive/theme/theme.ts\";\nimport type { CustomMessage } from \"../messages.ts\";\nimport type { CustomEntry } from \"../session-manager.ts\";\n\nexport type CustomMessageDelivery = \"steer\" | \"followUp\" | \"nextTurn\" | \"interrupt\";\n\nexport interface SendMessageOptions {\n\ttriggerTurn?: boolean;\n\tdeliverAs?: CustomMessageDelivery;\n\t/** Render/persist the custom message without including it in LLM context. */\n\texcludeFromContext?: boolean;\n\t/** Stable producer identity used for exactly-once workflow-stage admission. */\n\tstageAdmissionKey?: string;\n\t/**\n\t * Holds an already-admitted workflow-stage delivery behind producer-specific\n\t * coordination. The generation boundary tracks this promise so stage close\n\t * cannot overtake the eventual queue insertion.\n\t *\n\t * @internal\n\t */\n\tstageAdmissionBarrier?: () => Promise<void>;\n\t/**\n\t * Commit one display-only card before admission, then deliver a separate\n\t * hidden model-facing reconciliation. In an active parent chat that hidden\n\t * message waits for agent-core's protocol-safe boundary; queue clearing cannot\n\t * drop it and the lifecycle path does not interrupt the active response.\n\t * Use only for status notices that require later model reconciliation.\n\t */\n\tpersistWhenStreaming?: boolean;\n\n\t/**\n\t * Optional replacement text for generic abort tool/assistant results when\n\t * `deliverAs: \"interrupt\"` aborts an active turn. Use this when the abort is\n\t * caused by a meaningful external event and the model/user should see that\n\t * event instead of a bare `Operation aborted`.\n\t */\n\tinterruptAbortMessage?: string;\n}\n\nexport type SendMessagesOptions = Omit<SendMessageOptions, \"deliverAs\" | \"interruptAbortMessage\"> & {\n\tdeliverAs?: \"steer\" | \"followUp\" | \"nextTurn\";\n};\n\nexport interface MessageRenderOptions {\n\texpanded: boolean;\n\t/** Horizontal padding configured by the outputPad setting. */\n\toutputPad: number;\n}\n\nexport interface EntryRenderOptions {\n\texpanded: boolean;\n}\n\nexport type EntryRenderer<T = unknown> = (\n\tentry: CustomEntry<T>,\n\toptions: EntryRenderOptions,\n\ttheme: Theme,\n) => Component | undefined;\n\n/**\n * Custom message renderer.\n *\n * Return value semantics:\n * - `Component`: mount this component (the renderer owns its styling).\n * - `null`: the renderer handled the message but wants to render nothing —\n * the entry occupies zero rows (no leading spacer, no default box). Use this\n * to suppress a rehydrated entry whose backing state is gone (e.g. the\n * workflows input form on `/resume`).\n * - `undefined`: the renderer did not handle the message; fall back to the\n * default boxed `[customType]` rendering.\n */\nexport type MessageRenderer<T = unknown> = (\n\tmessage: CustomMessage<T>,\n\toptions: MessageRenderOptions,\n\ttheme: Theme,\n) => Component | null | undefined;\n"]}
@@ -1,6 +1,8 @@
1
- import type { Api, AssistantMessageEventStream, Context, Model, OAuthCredentials, OAuthLoginCallbacks, SimpleStreamOptions } from "@earendil-works/pi-ai/compat";
2
1
  import type { RefreshModelsContext } from "@earendil-works/pi-ai";
2
+ import type { Api, AssistantMessageEventStream, Context, Model, OAuthCredentials, OAuthLoginCallbacks, SimpleStreamOptions } from "@earendil-works/pi-ai/compat";
3
+ import type { AtomicProviderCompat } from "../model-capabilities.ts";
3
4
  import type { ExtensionAPI } from "./api-types.ts";
5
+ export type { AtomicProviderCompat } from "../model-capabilities.ts";
4
6
  /** Configuration for registering a provider via pi.registerProvider(). */
5
7
  export interface ProviderConfig {
6
8
  /** Display name for the provider in UI. */
@@ -25,6 +27,10 @@ export interface ProviderConfig {
25
27
  oauth?: {
26
28
  /** Display name for the provider in login UI. */
27
29
  name: string;
30
+ /** Optional provider-specific login label. */
31
+ loginLabel?: string;
32
+ /** Whether the flow accepts a browser callback/manual redirect. */
33
+ usesCallbackServer?: boolean;
28
34
  /** Run the login flow, return credentials to persist. */
29
35
  login(callbacks: OAuthLoginCallbacks): Promise<OAuthCredentials>;
30
36
  /** Refresh expired credentials, return updated credentials to persist. */
@@ -55,15 +61,20 @@ export interface ProviderModelConfig {
55
61
  cost: Model<Api>["cost"];
56
62
  /** Default/effective context window size in tokens. */
57
63
  contextWindow: number;
58
- /** Selectable context-window sizes in tokens; omit when the model has only one supported window. */
59
- contextWindowOptions?: readonly number[];
60
64
  /** Maximum output tokens. */
61
65
  maxTokens: number;
62
66
  /** Custom headers for this model. */
63
67
  headers?: Record<string, string>;
64
- /** OpenAI compatibility settings. */
65
- compat?: Model<Api>["compat"];
68
+ /** Provider capability settings, including Atomic's `supportsGrammarTools` alias. */
69
+ compat?: AtomicProviderCompat;
66
70
  }
67
71
  /** Extension factory function type. Supports both sync and async initialization. */
68
72
  export type ExtensionFactory = (pi: ExtensionAPI) => void | Promise<void>;
73
+ /** Inline extension factory, optionally carrying a stable name and display visibility. */
74
+ export type InlineExtension = ExtensionFactory | {
75
+ name: string;
76
+ factory: ExtensionFactory;
77
+ hidden?: boolean;
78
+ bundled?: boolean;
79
+ };
69
80
  //# sourceMappingURL=provider-types.d.ts.map