@north-light/crouter 0.3.154

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 (1643) hide show
  1. package/README.md +48 -0
  2. package/bin/crouter +4 -0
  3. package/bin/crtr +4 -0
  4. package/bin/crtrd +4 -0
  5. package/bin/runtime-generation-manifest.mjs +263 -0
  6. package/bin/runtime-selector.mjs +378 -0
  7. package/dist/api/__tests__/client.test.d.ts +1 -0
  8. package/dist/api/__tests__/client.test.js +274 -0
  9. package/dist/api/client.d.ts +249 -0
  10. package/dist/api/client.js +616 -0
  11. package/dist/api/dto/attach.d.ts +16 -0
  12. package/dist/api/dto/attach.js +13 -0
  13. package/dist/api/dto/broker.d.ts +45 -0
  14. package/dist/api/dto/broker.js +20 -0
  15. package/dist/api/dto/canvas.d.ts +253 -0
  16. package/dist/api/dto/canvas.js +2 -0
  17. package/dist/api/dto/common.d.ts +27 -0
  18. package/dist/api/dto/common.js +15 -0
  19. package/dist/api/dto/config.d.ts +19 -0
  20. package/dist/api/dto/config.js +3 -0
  21. package/dist/api/dto/crons.d.ts +124 -0
  22. package/dist/api/dto/crons.js +10 -0
  23. package/dist/api/dto/files.d.ts +11 -0
  24. package/dist/api/dto/files.js +7 -0
  25. package/dist/api/dto/focus.d.ts +24 -0
  26. package/dist/api/dto/focus.js +10 -0
  27. package/dist/api/dto/health.d.ts +41 -0
  28. package/dist/api/dto/health.js +2 -0
  29. package/dist/api/dto/human.d.ts +57 -0
  30. package/dist/api/dto/human.js +4 -0
  31. package/dist/api/dto/inbox.d.ts +105 -0
  32. package/dist/api/dto/inbox.js +10 -0
  33. package/dist/api/dto/lifecycle.d.ts +79 -0
  34. package/dist/api/dto/lifecycle.js +3 -0
  35. package/dist/api/dto/messages.d.ts +55 -0
  36. package/dist/api/dto/messages.js +2 -0
  37. package/dist/api/dto/modelauth.d.ts +41 -0
  38. package/dist/api/dto/modelauth.js +3 -0
  39. package/dist/api/dto/nodes.d.ts +209 -0
  40. package/dist/api/dto/nodes.js +3 -0
  41. package/dist/api/dto/profiles.d.ts +14 -0
  42. package/dist/api/dto/profiles.js +3 -0
  43. package/dist/api/dto/reports.d.ts +41 -0
  44. package/dist/api/dto/reports.js +2 -0
  45. package/dist/api/dto/subscriptions.d.ts +14 -0
  46. package/dist/api/dto/subscriptions.js +2 -0
  47. package/dist/api/dto/worktree.d.ts +19 -0
  48. package/dist/api/dto/worktree.js +6 -0
  49. package/dist/api/errors.d.ts +19 -0
  50. package/dist/api/errors.js +30 -0
  51. package/dist/api/index.d.ts +24 -0
  52. package/dist/api/index.js +25 -0
  53. package/dist/api/routes.d.ts +64 -0
  54. package/dist/api/routes.js +92 -0
  55. package/dist/build-root.d.ts +43 -0
  56. package/dist/build-root.js +96 -0
  57. package/dist/builtin-memory/00-runtime-base.md +51 -0
  58. package/dist/builtin-memory/01-spine/00-has-manager.md +23 -0
  59. package/dist/builtin-memory/01-spine/01-no-manager.md +10 -0
  60. package/dist/builtin-memory/02-lifecycle/00-terminal.md +19 -0
  61. package/dist/builtin-memory/02-lifecycle/01-resident.md +10 -0
  62. package/dist/builtin-memory/04-base-worker.md +18 -0
  63. package/dist/builtin-memory/04-orchestration-kernel.md +109 -0
  64. package/dist/builtin-memory/05-kinds/advisor/00-base.md +19 -0
  65. package/dist/builtin-memory/05-kinds/advisor/01-orchestrator.md +26 -0
  66. package/dist/builtin-memory/05-kinds/design/00-base.md +20 -0
  67. package/dist/builtin-memory/05-kinds/design/01-orchestrator.md +13 -0
  68. package/dist/builtin-memory/05-kinds/developer/00-base.md +22 -0
  69. package/dist/builtin-memory/05-kinds/developer/01-orchestrator.md +21 -0
  70. package/dist/builtin-memory/05-kinds/explore/00-base.md +20 -0
  71. package/dist/builtin-memory/05-kinds/explore/01-orchestrator.md +16 -0
  72. package/dist/builtin-memory/05-kinds/general/00-base.md +15 -0
  73. package/dist/builtin-memory/05-kinds/general/01-orchestrator.md +11 -0
  74. package/dist/builtin-memory/05-kinds/plan/00-base.md +20 -0
  75. package/dist/builtin-memory/05-kinds/plan/01-orchestrator.md +17 -0
  76. package/dist/builtin-memory/05-kinds/plan/reviewers/architecture-fit.md +17 -0
  77. package/dist/builtin-memory/05-kinds/plan/reviewers/code-smells.md +17 -0
  78. package/dist/builtin-memory/05-kinds/plan/reviewers/pattern-consistency.md +19 -0
  79. package/dist/builtin-memory/05-kinds/plan/reviewers/requirements-coverage.md +17 -0
  80. package/dist/builtin-memory/05-kinds/plan/reviewers/security.md +20 -0
  81. package/dist/builtin-memory/05-kinds/product/00-base.md +25 -0
  82. package/dist/builtin-memory/05-kinds/product/01-orchestrator.md +15 -0
  83. package/dist/builtin-memory/05-kinds/product/teardown.md +15 -0
  84. package/dist/builtin-memory/05-kinds/review/00-base.md +19 -0
  85. package/dist/builtin-memory/05-kinds/review/01-orchestrator.md +17 -0
  86. package/dist/builtin-memory/05-kinds/spec/00-base.md +20 -0
  87. package/dist/builtin-memory/05-kinds/spec/01-orchestrator.md +15 -0
  88. package/dist/builtin-memory/05-kinds/spec/requirements.md +13 -0
  89. package/dist/builtin-memory/design.md +62 -0
  90. package/dist/builtin-memory/development.md +120 -0
  91. package/dist/builtin-memory/internal/INDEX.md +26 -0
  92. package/dist/builtin-memory/internal/agent-shaping.md +77 -0
  93. package/dist/builtin-memory/internal/examples/INDEX.md +15 -0
  94. package/dist/builtin-memory/internal/examples/imessage-assistant.md +100 -0
  95. package/dist/builtin-memory/internal/marketplaces.md +164 -0
  96. package/dist/builtin-memory/internal/nodes-and-canvas.md +51 -0
  97. package/dist/builtin-memory/internal/plugins.md +249 -0
  98. package/dist/builtin-memory/internal/storage-tiers.md +41 -0
  99. package/dist/builtin-memory/planning.md +43 -0
  100. package/dist/builtin-memory/product.md +80 -0
  101. package/dist/builtin-memory/spec.md +98 -0
  102. package/dist/builtin-memory/wedged-child-on-runaway-bash.md +34 -0
  103. package/dist/builtin-pi-packages/pi-crtr-extensions/README.md +47 -0
  104. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/claude-plugin-commands.test.ts +49 -0
  105. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/crtr-commands.test.ts +93 -0
  106. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/memory-slash-commands.test.ts +194 -0
  107. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/provider-rotation.test.ts +2632 -0
  108. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/statusline.test.ts +68 -0
  109. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/claude-plugin-commands.ts +492 -0
  110. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crouter-help.ts +95 -0
  111. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-commands/filters.json +7 -0
  112. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-commands/index.ts +191 -0
  113. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/index.ts +448 -0
  114. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/test.ts +119 -0
  115. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/memory-slash-commands.ts +195 -0
  116. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.ts +1232 -0
  117. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/statusline.ts +255 -0
  118. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/strip-skills-docs.ts +47 -0
  119. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/sysprompt-window.ts +19 -0
  120. package/dist/builtin-pi-packages/pi-crtr-extensions/lib/package.json +3 -0
  121. package/dist/builtin-pi-packages/pi-crtr-extensions/lib/subscription-state.js +1 -0
  122. package/dist/builtin-pi-packages/pi-crtr-extensions/lib/subscription-state.ts +2 -0
  123. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/LICENSE +13 -0
  124. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/README.md +172 -0
  125. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/bin.mjs +11 -0
  126. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
  127. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
  128. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
  129. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
  130. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/composer.js +219 -0
  131. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
  132. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
  133. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
  134. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
  135. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
  136. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +225 -0
  137. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
  138. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
  139. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
  140. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
  141. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
  142. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/Document.js +335 -0
  143. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
  144. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
  145. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
  146. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/directives.js +176 -0
  147. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/errors.js +57 -0
  148. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/index.js +17 -0
  149. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/log.js +11 -0
  150. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Alias.js +116 -0
  151. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
  152. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
  153. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
  154. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
  155. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
  156. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
  157. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
  158. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
  159. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
  160. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
  161. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
  162. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
  163. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst.js +98 -0
  164. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
  165. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
  166. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/parser.js +975 -0
  167. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/public-api.js +102 -0
  168. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
  169. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
  170. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
  171. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
  172. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
  173. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
  174. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
  175. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
  176. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
  177. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
  178. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/tags.js +96 -0
  179. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
  180. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
  181. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
  182. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
  183. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
  184. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
  185. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
  186. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
  187. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
  188. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  189. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
  190. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
  191. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
  192. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
  193. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
  194. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
  195. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
  196. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
  197. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/util.js +11 -0
  198. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/visit.js +233 -0
  199. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/index.js +5 -0
  200. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/package.json +3 -0
  201. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/cli.d.ts +8 -0
  202. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/cli.mjs +201 -0
  203. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
  204. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-collection.js +90 -0
  205. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
  206. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-doc.js +45 -0
  207. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
  208. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-node.js +112 -0
  209. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
  210. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
  211. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/composer.d.ts +63 -0
  212. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/composer.js +224 -0
  213. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
  214. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
  215. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
  216. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
  217. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
  218. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
  219. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
  220. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-end.js +39 -0
  221. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
  222. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
  223. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
  224. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-scalar.js +227 -0
  225. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
  226. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-props.js +148 -0
  227. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
  228. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
  229. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
  230. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
  231. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
  232. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
  233. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
  234. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
  235. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/Document.d.ts +141 -0
  236. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/Document.js +337 -0
  237. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
  238. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/anchors.js +76 -0
  239. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
  240. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/applyReviver.js +57 -0
  241. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
  242. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/createNode.js +90 -0
  243. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/directives.d.ts +49 -0
  244. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/directives.js +178 -0
  245. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/errors.d.ts +21 -0
  246. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/errors.js +62 -0
  247. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/index.d.ts +25 -0
  248. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/index.js +50 -0
  249. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/log.d.ts +3 -0
  250. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/log.js +19 -0
  251. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
  252. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Alias.js +118 -0
  253. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
  254. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Collection.js +151 -0
  255. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
  256. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Node.js +40 -0
  257. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
  258. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Pair.js +39 -0
  259. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
  260. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Scalar.js +27 -0
  261. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
  262. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
  263. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
  264. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
  265. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
  266. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
  267. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
  268. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/identity.js +53 -0
  269. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
  270. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/toJS.js +39 -0
  271. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/options.d.ts +350 -0
  272. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
  273. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
  274. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
  275. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
  276. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
  277. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-visit.js +99 -0
  278. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst.d.ts +109 -0
  279. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst.js +112 -0
  280. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
  281. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/lexer.js +723 -0
  282. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
  283. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/line-counter.js +41 -0
  284. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/parser.d.ts +84 -0
  285. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/parser.js +980 -0
  286. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/public-api.d.ts +44 -0
  287. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/public-api.js +107 -0
  288. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
  289. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/Schema.js +39 -0
  290. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
  291. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/map.js +19 -0
  292. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
  293. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/null.js +17 -0
  294. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
  295. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/seq.js +19 -0
  296. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
  297. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/string.js +16 -0
  298. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
  299. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/bool.js +21 -0
  300. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
  301. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/float.js +47 -0
  302. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
  303. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/int.js +42 -0
  304. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
  305. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/schema.js +25 -0
  306. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
  307. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json/schema.js +64 -0
  308. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
  309. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/tags.d.ts +48 -0
  310. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/tags.js +99 -0
  311. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/types.d.ts +92 -0
  312. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
  313. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
  314. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
  315. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
  316. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
  317. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
  318. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
  319. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
  320. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
  321. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
  322. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
  323. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
  324. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  325. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
  326. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
  327. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
  328. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
  329. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
  330. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  331. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
  332. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
  333. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
  334. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
  335. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringify.js +132 -0
  336. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
  337. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
  338. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
  339. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
  340. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
  341. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
  342. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
  343. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
  344. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
  345. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
  346. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
  347. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
  348. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/test-events.d.ts +4 -0
  349. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/test-events.js +134 -0
  350. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/util.d.ts +16 -0
  351. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/util.js +28 -0
  352. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/visit.d.ts +102 -0
  353. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/visit.js +236 -0
  354. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/package.json +97 -0
  355. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/util.js +2 -0
  356. package/dist/builtin-pi-packages/pi-crtr-extensions/package-lock.json +3385 -0
  357. package/dist/builtin-pi-packages/pi-crtr-extensions/package.json +25 -0
  358. package/dist/builtin-pi-packages/pi-crtr-extensions/tsconfig.json +10 -0
  359. package/dist/builtin-pi-packages/pi-mode-switch/README.md +36 -0
  360. package/dist/builtin-pi-packages/pi-mode-switch/bin/mode +36 -0
  361. package/dist/builtin-pi-packages/pi-mode-switch/extensions/index.ts +449 -0
  362. package/dist/builtin-pi-packages/pi-mode-switch/package.json +14 -0
  363. package/dist/builtin-pi-packages/pi-mode-switch/tsconfig.json +9 -0
  364. package/dist/builtin-views/_lib/states.mjs +161 -0
  365. package/dist/builtin-views/canvas/core.mjs +657 -0
  366. package/dist/builtin-views/canvas/text.mjs +58 -0
  367. package/dist/builtin-views/canvas/tui.mjs +168 -0
  368. package/dist/builtin-views/canvas/web.jsx +121 -0
  369. package/dist/builtin-views/chat/core.mjs +684 -0
  370. package/dist/builtin-views/chat/text.mjs +101 -0
  371. package/dist/builtin-views/chat/tui.mjs +360 -0
  372. package/dist/builtin-views/chat/web.jsx +362 -0
  373. package/dist/builtin-views/git-pr/core.mjs +673 -0
  374. package/dist/builtin-views/git-pr/text.mjs +84 -0
  375. package/dist/builtin-views/git-pr/tui.mjs +301 -0
  376. package/dist/builtin-views/git-pr/web.jsx +216 -0
  377. package/dist/builtin-views/inbox/_lib/render.mjs +175 -0
  378. package/dist/builtin-views/inbox/core.mjs +1273 -0
  379. package/dist/builtin-views/inbox/text.mjs +73 -0
  380. package/dist/builtin-views/inbox/tui.mjs +314 -0
  381. package/dist/builtin-views/inbox/web.jsx +188 -0
  382. package/dist/builtin-views/linkedin/core.mjs +906 -0
  383. package/dist/builtin-views/linkedin/text.mjs +69 -0
  384. package/dist/builtin-views/linkedin/tui.mjs +413 -0
  385. package/dist/builtin-views/linkedin/web.jsx +206 -0
  386. package/dist/builtin-views/prompt-review/core.mjs +735 -0
  387. package/dist/builtin-views/prompt-review/text.mjs +15 -0
  388. package/dist/builtin-views/prompt-review/tui.mjs +196 -0
  389. package/dist/builtin-views/prompt-review/web.jsx +484 -0
  390. package/dist/builtin-views/workspace-sidebar/__tests__/core.test.d.ts +1 -0
  391. package/dist/builtin-views/workspace-sidebar/__tests__/core.test.js +50 -0
  392. package/dist/builtin-views/workspace-sidebar/__tests__/core.test.ts +53 -0
  393. package/dist/builtin-views/workspace-sidebar/core.mjs +670 -0
  394. package/dist/builtin-views/workspace-sidebar/text.mjs +53 -0
  395. package/dist/builtin-views/workspace-sidebar/tui.mjs +141 -0
  396. package/dist/builtin-views/workspace-sidebar/web.jsx +109 -0
  397. package/dist/cli.d.ts +2 -0
  398. package/dist/cli.js +86 -0
  399. package/dist/clients/attach/__tests__/attach-chrome-remote.test.d.ts +1 -0
  400. package/dist/clients/attach/__tests__/attach-chrome-remote.test.js +467 -0
  401. package/dist/clients/attach/__tests__/attach-keybindings.test.d.ts +1 -0
  402. package/dist/clients/attach/__tests__/attach-keybindings.test.js +141 -0
  403. package/dist/clients/attach/__tests__/attach-remote-readonly.test.d.ts +1 -0
  404. package/dist/clients/attach/__tests__/attach-remote-readonly.test.js +191 -0
  405. package/dist/clients/attach/__tests__/chat-view-snapshot-ordering.test.d.ts +1 -0
  406. package/dist/clients/attach/__tests__/chat-view-snapshot-ordering.test.js +236 -0
  407. package/dist/clients/attach/__tests__/context-message.test.d.ts +1 -0
  408. package/dist/clients/attach/__tests__/context-message.test.js +46 -0
  409. package/dist/clients/attach/__tests__/crtr-output-coverage.test.d.ts +1 -0
  410. package/dist/clients/attach/__tests__/crtr-output-coverage.test.js +55 -0
  411. package/dist/clients/attach/__tests__/crtr-output.test.d.ts +1 -0
  412. package/dist/clients/attach/__tests__/crtr-output.test.js +2103 -0
  413. package/dist/clients/attach/__tests__/diagram.test.d.ts +1 -0
  414. package/dist/clients/attach/__tests__/diagram.test.js +42 -0
  415. package/dist/clients/attach/__tests__/markdown-headings.test.d.ts +1 -0
  416. package/dist/clients/attach/__tests__/markdown-headings.test.js +27 -0
  417. package/dist/clients/attach/__tests__/oauth-dialog-lifecycle.test.d.ts +1 -0
  418. package/dist/clients/attach/__tests__/oauth-dialog-lifecycle.test.js +133 -0
  419. package/dist/clients/attach/__tests__/prompt-preview.test.d.ts +1 -0
  420. package/dist/clients/attach/__tests__/prompt-preview.test.js +87 -0
  421. package/dist/clients/attach/__tests__/ref-autocomplete.test.d.ts +1 -0
  422. package/dist/clients/attach/__tests__/ref-autocomplete.test.js +176 -0
  423. package/dist/clients/attach/__tests__/titled-editor-preview.test.d.ts +1 -0
  424. package/dist/clients/attach/__tests__/titled-editor-preview.test.js +271 -0
  425. package/dist/clients/attach/__tests__/visible-paths.test.d.ts +1 -0
  426. package/dist/clients/attach/__tests__/visible-paths.test.js +19 -0
  427. package/dist/clients/attach/chrome/bash-jobs.d.ts +9 -0
  428. package/dist/clients/attach/chrome/bash-jobs.js +43 -0
  429. package/dist/clients/attach/chrome/canvas-panels.d.ts +36 -0
  430. package/dist/clients/attach/chrome/canvas-panels.js +172 -0
  431. package/dist/clients/attach/chrome/completion-bell.d.ts +10 -0
  432. package/dist/clients/attach/chrome/completion-bell.js +89 -0
  433. package/dist/clients/attach/chrome/cron-wait.d.ts +3 -0
  434. package/dist/clients/attach/chrome/cron-wait.js +34 -0
  435. package/dist/clients/attach/chrome/git-info.d.ts +20 -0
  436. package/dist/clients/attach/chrome/git-info.js +44 -0
  437. package/dist/clients/attach/chrome/roster.d.ts +26 -0
  438. package/dist/clients/attach/chrome/roster.js +233 -0
  439. package/dist/clients/attach/chrome/status-line.d.ts +35 -0
  440. package/dist/clients/attach/chrome/status-line.js +133 -0
  441. package/dist/clients/attach/chrome/widgets.d.ts +9 -0
  442. package/dist/clients/attach/chrome/widgets.js +61 -0
  443. package/dist/clients/attach/command.d.ts +2 -0
  444. package/dist/clients/attach/command.js +96 -0
  445. package/dist/clients/attach/config.d.ts +91 -0
  446. package/dist/clients/attach/config.js +271 -0
  447. package/dist/clients/attach/input/clipboard-image.d.ts +55 -0
  448. package/dist/clients/attach/input/clipboard-image.js +237 -0
  449. package/dist/clients/attach/input/controller.d.ts +210 -0
  450. package/dist/clients/attach/input/controller.js +689 -0
  451. package/dist/clients/attach/input/ref-autocomplete.d.ts +75 -0
  452. package/dist/clients/attach/input/ref-autocomplete.js +135 -0
  453. package/dist/clients/attach/input/titled-editor.d.ts +209 -0
  454. package/dist/clients/attach/input/titled-editor.js +801 -0
  455. package/dist/clients/attach/overlays/auth.d.ts +13 -0
  456. package/dist/clients/attach/overlays/auth.js +245 -0
  457. package/dist/clients/attach/overlays/dialogs.d.ts +27 -0
  458. package/dist/clients/attach/overlays/dialogs.js +102 -0
  459. package/dist/clients/attach/overlays/file-review.d.ts +9 -0
  460. package/dist/clients/attach/overlays/file-review.js +181 -0
  461. package/dist/clients/attach/overlays/graph.d.ts +76 -0
  462. package/dist/clients/attach/overlays/graph.js +657 -0
  463. package/dist/clients/attach/overlays/mcp.d.ts +32 -0
  464. package/dist/clients/attach/overlays/mcp.js +310 -0
  465. package/dist/clients/attach/overlays/pickers.d.ts +59 -0
  466. package/dist/clients/attach/overlays/pickers.js +170 -0
  467. package/dist/clients/attach/render/chat-view.d.ts +185 -0
  468. package/dist/clients/attach/render/chat-view.js +946 -0
  469. package/dist/clients/attach/render/context-message.d.ts +14 -0
  470. package/dist/clients/attach/render/context-message.js +81 -0
  471. package/dist/clients/attach/render/crtr-output.d.ts +48 -0
  472. package/dist/clients/attach/render/crtr-output.js +694 -0
  473. package/dist/clients/attach/render/diagram.d.ts +14 -0
  474. package/dist/clients/attach/render/diagram.js +135 -0
  475. package/dist/clients/attach/render/edit-diff.d.ts +6 -0
  476. package/dist/clients/attach/render/edit-diff.js +263 -0
  477. package/dist/clients/attach/render/frozen-history.d.ts +38 -0
  478. package/dist/clients/attach/render/frozen-history.js +100 -0
  479. package/dist/clients/attach/render/markdown-headings.d.ts +11 -0
  480. package/dist/clients/attach/render/markdown-headings.js +82 -0
  481. package/dist/clients/attach/session/banner.d.ts +9 -0
  482. package/dist/clients/attach/session/banner.js +29 -0
  483. package/dist/clients/attach/session/bindings.d.ts +12 -0
  484. package/dist/clients/attach/session/bindings.js +52 -0
  485. package/dist/clients/attach/session/chrome-refresh.d.ts +34 -0
  486. package/dist/clients/attach/session/chrome-refresh.js +93 -0
  487. package/dist/clients/attach/session/connection.d.ts +44 -0
  488. package/dist/clients/attach/session/connection.js +178 -0
  489. package/dist/clients/attach/session/context.d.ts +54 -0
  490. package/dist/clients/attach/session/context.js +16 -0
  491. package/dist/clients/attach/session/editor-frame.d.ts +43 -0
  492. package/dist/clients/attach/session/editor-frame.js +136 -0
  493. package/dist/clients/attach/session/editor-inventory.d.ts +59 -0
  494. package/dist/clients/attach/session/editor-inventory.js +161 -0
  495. package/dist/clients/attach/session/focus-events.d.ts +4 -0
  496. package/dist/clients/attach/session/focus-events.js +12 -0
  497. package/dist/clients/attach/session/frames.d.ts +43 -0
  498. package/dist/clients/attach/session/frames.js +170 -0
  499. package/dist/clients/attach/session/identity.d.ts +16 -0
  500. package/dist/clients/attach/session/identity.js +25 -0
  501. package/dist/clients/attach/session/input-wiring.d.ts +31 -0
  502. package/dist/clients/attach/session/input-wiring.js +128 -0
  503. package/dist/clients/attach/session/keys.d.ts +22 -0
  504. package/dist/clients/attach/session/keys.js +60 -0
  505. package/dist/clients/attach/session/layout.d.ts +20 -0
  506. package/dist/clients/attach/session/layout.js +56 -0
  507. package/dist/clients/attach/session/mode.d.ts +25 -0
  508. package/dist/clients/attach/session/mode.js +97 -0
  509. package/dist/clients/attach/session/pane-tag.d.ts +15 -0
  510. package/dist/clients/attach/session/pane-tag.js +43 -0
  511. package/dist/clients/attach/session/pi-assets.d.ts +1 -0
  512. package/dist/clients/attach/session/pi-assets.js +24 -0
  513. package/dist/clients/attach/session/pi-oauth-flows.d.ts +1 -0
  514. package/dist/clients/attach/session/pi-oauth-flows.js +21 -0
  515. package/dist/clients/attach/session/reconnect.d.ts +37 -0
  516. package/dist/clients/attach/session/reconnect.js +127 -0
  517. package/dist/clients/attach/session/state-sync.d.ts +38 -0
  518. package/dist/clients/attach/session/state-sync.js +68 -0
  519. package/dist/clients/attach/session/teardown.d.ts +30 -0
  520. package/dist/clients/attach/session/teardown.js +96 -0
  521. package/dist/clients/attach/slash/dispatch.d.ts +124 -0
  522. package/dist/clients/attach/slash/dispatch.js +696 -0
  523. package/dist/clients/attach/slash/prompt-preview.d.ts +30 -0
  524. package/dist/clients/attach/slash/prompt-preview.js +121 -0
  525. package/dist/clients/attach/viewer.d.ts +8 -0
  526. package/dist/clients/attach/viewer.js +1559 -0
  527. package/dist/clients/attach/visible-paths.d.ts +9 -0
  528. package/dist/clients/attach/visible-paths.js +76 -0
  529. package/dist/clients/web/__tests__/push-engine.test.d.ts +1 -0
  530. package/dist/clients/web/__tests__/push-engine.test.js +302 -0
  531. package/dist/clients/web/__tests__/push-registry.test.d.ts +1 -0
  532. package/dist/clients/web/__tests__/push-registry.test.js +177 -0
  533. package/dist/clients/web/dev-server.d.ts +7 -0
  534. package/dist/clients/web/dev-server.js +60 -0
  535. package/dist/clients/web/events.d.ts +19 -0
  536. package/dist/clients/web/events.js +165 -0
  537. package/dist/clients/web/push-engine.d.ts +108 -0
  538. package/dist/clients/web/push-engine.js +256 -0
  539. package/dist/clients/web/push-registry.d.ts +89 -0
  540. package/dist/clients/web/push-registry.js +378 -0
  541. package/dist/clients/web/server.d.ts +19 -0
  542. package/dist/clients/web/server.js +693 -0
  543. package/dist/clients/web/web-client/shared/protocol.d.ts +322 -0
  544. package/dist/clients/web/web-client/shared/protocol.js +8 -0
  545. package/dist/clients/web/web-cmd.d.ts +2 -0
  546. package/dist/clients/web/web-cmd.js +141 -0
  547. package/dist/commands/__tests__/api-client-cold-start-diagnostic.test.d.ts +1 -0
  548. package/dist/commands/__tests__/api-client-cold-start-diagnostic.test.js +96 -0
  549. package/dist/commands/__tests__/canvas-config.test.d.ts +1 -0
  550. package/dist/commands/__tests__/canvas-config.test.js +107 -0
  551. package/dist/commands/__tests__/human.test.d.ts +1 -0
  552. package/dist/commands/__tests__/human.test.js +344 -0
  553. package/dist/commands/__tests__/node-no-kickoff-flag.test.d.ts +1 -0
  554. package/dist/commands/__tests__/node-no-kickoff-flag.test.js +73 -0
  555. package/dist/commands/__tests__/node-worktree-flag.test.d.ts +1 -0
  556. package/dist/commands/__tests__/node-worktree-flag.test.js +49 -0
  557. package/dist/commands/__tests__/revive-now-gate.test.d.ts +1 -0
  558. package/dist/commands/__tests__/revive-now-gate.test.js +60 -0
  559. package/dist/commands/api-client.d.ts +100 -0
  560. package/dist/commands/api-client.js +377 -0
  561. package/dist/commands/attention.d.ts +2 -0
  562. package/dist/commands/attention.js +223 -0
  563. package/dist/commands/canvas-browse.d.ts +2 -0
  564. package/dist/commands/canvas-browse.js +95 -0
  565. package/dist/commands/canvas-config.d.ts +2 -0
  566. package/dist/commands/canvas-config.js +210 -0
  567. package/dist/commands/canvas-history/grep.d.ts +1 -0
  568. package/dist/commands/canvas-history/grep.js +104 -0
  569. package/dist/commands/canvas-history/read.d.ts +1 -0
  570. package/dist/commands/canvas-history/read.js +48 -0
  571. package/dist/commands/canvas-history/search.d.ts +1 -0
  572. package/dist/commands/canvas-history/search.js +118 -0
  573. package/dist/commands/canvas-history/shared.d.ts +27 -0
  574. package/dist/commands/canvas-history/shared.js +76 -0
  575. package/dist/commands/canvas-history.d.ts +2 -0
  576. package/dist/commands/canvas-history.js +30 -0
  577. package/dist/commands/canvas-issue.d.ts +2 -0
  578. package/dist/commands/canvas-issue.js +149 -0
  579. package/dist/commands/canvas-prune.d.ts +2 -0
  580. package/dist/commands/canvas-prune.js +108 -0
  581. package/dist/commands/canvas-rebuild-index.d.ts +2 -0
  582. package/dist/commands/canvas-rebuild-index.js +46 -0
  583. package/dist/commands/canvas-roster.d.ts +2 -0
  584. package/dist/commands/canvas-roster.js +62 -0
  585. package/dist/commands/canvas-snapshot.d.ts +2 -0
  586. package/dist/commands/canvas-snapshot.js +34 -0
  587. package/dist/commands/canvas-use.d.ts +1 -0
  588. package/dist/commands/canvas-use.js +63 -0
  589. package/dist/commands/canvas.d.ts +3 -0
  590. package/dist/commands/canvas.js +50 -0
  591. package/dist/commands/chord.d.ts +2 -0
  592. package/dist/commands/chord.js +242 -0
  593. package/dist/commands/cron.d.ts +2 -0
  594. package/dist/commands/cron.js +524 -0
  595. package/dist/commands/dashboard.d.ts +2 -0
  596. package/dist/commands/dashboard.js +80 -0
  597. package/dist/commands/human/prompts.d.ts +8 -0
  598. package/dist/commands/human/prompts.js +427 -0
  599. package/dist/commands/human/queue.d.ts +12 -0
  600. package/dist/commands/human/queue.js +531 -0
  601. package/dist/commands/human/shared.d.ts +80 -0
  602. package/dist/commands/human/shared.js +194 -0
  603. package/dist/commands/human.d.ts +2 -0
  604. package/dist/commands/human.js +44 -0
  605. package/dist/commands/memory/delete.d.ts +1 -0
  606. package/dist/commands/memory/delete.js +77 -0
  607. package/dist/commands/memory/find.d.ts +1 -0
  608. package/dist/commands/memory/find.js +192 -0
  609. package/dist/commands/memory/lint.d.ts +9 -0
  610. package/dist/commands/memory/lint.js +217 -0
  611. package/dist/commands/memory/list.d.ts +1 -0
  612. package/dist/commands/memory/list.js +84 -0
  613. package/dist/commands/memory/origin.d.ts +1 -0
  614. package/dist/commands/memory/origin.js +100 -0
  615. package/dist/commands/memory/read.d.ts +1 -0
  616. package/dist/commands/memory/read.js +72 -0
  617. package/dist/commands/memory/shared.d.ts +54 -0
  618. package/dist/commands/memory/shared.js +225 -0
  619. package/dist/commands/memory/write.d.ts +1 -0
  620. package/dist/commands/memory/write.js +142 -0
  621. package/dist/commands/memory.d.ts +2 -0
  622. package/dist/commands/memory.js +26 -0
  623. package/dist/commands/node-context.d.ts +2 -0
  624. package/dist/commands/node-context.js +157 -0
  625. package/dist/commands/node-inspect-artifacts.d.ts +1 -0
  626. package/dist/commands/node-inspect-artifacts.js +109 -0
  627. package/dist/commands/node-lifecycle-revive.d.ts +12 -0
  628. package/dist/commands/node-lifecycle-revive.js +287 -0
  629. package/dist/commands/node-snapshot.d.ts +2 -0
  630. package/dist/commands/node-snapshot.js +37 -0
  631. package/dist/commands/node-transcript.d.ts +2 -0
  632. package/dist/commands/node-transcript.js +62 -0
  633. package/dist/commands/node-worktree.d.ts +2 -0
  634. package/dist/commands/node-worktree.js +102 -0
  635. package/dist/commands/node.d.ts +44 -0
  636. package/dist/commands/node.js +1943 -0
  637. package/dist/commands/pkg/cli-inspect.d.ts +17 -0
  638. package/dist/commands/pkg/cli-inspect.js +190 -0
  639. package/dist/commands/pkg/cli-manage.d.ts +3 -0
  640. package/dist/commands/pkg/cli-manage.js +206 -0
  641. package/dist/commands/pkg/cli.d.ts +1 -0
  642. package/dist/commands/pkg/cli.js +14 -0
  643. package/dist/commands/pkg/market-inspect.d.ts +2 -0
  644. package/dist/commands/pkg/market-inspect.js +141 -0
  645. package/dist/commands/pkg/market-manage.d.ts +3 -0
  646. package/dist/commands/pkg/market-manage.js +224 -0
  647. package/dist/commands/pkg/market.d.ts +1 -0
  648. package/dist/commands/pkg/market.js +14 -0
  649. package/dist/commands/pkg/plugin-inspect.d.ts +2 -0
  650. package/dist/commands/pkg/plugin-inspect.js +150 -0
  651. package/dist/commands/pkg/plugin-manage.d.ts +19 -0
  652. package/dist/commands/pkg/plugin-manage.js +398 -0
  653. package/dist/commands/pkg/plugin.d.ts +1 -0
  654. package/dist/commands/pkg/plugin.js +14 -0
  655. package/dist/commands/pkg/shared.d.ts +5 -0
  656. package/dist/commands/pkg/shared.js +61 -0
  657. package/dist/commands/pkg.d.ts +2 -0
  658. package/dist/commands/pkg.js +24 -0
  659. package/dist/commands/profile/default.d.ts +2 -0
  660. package/dist/commands/profile/default.js +143 -0
  661. package/dist/commands/profile/delete.d.ts +1 -0
  662. package/dist/commands/profile/delete.js +39 -0
  663. package/dist/commands/profile/env.d.ts +2 -0
  664. package/dist/commands/profile/env.js +194 -0
  665. package/dist/commands/profile/list.d.ts +1 -0
  666. package/dist/commands/profile/list.js +35 -0
  667. package/dist/commands/profile/new.d.ts +1 -0
  668. package/dist/commands/profile/new.js +75 -0
  669. package/dist/commands/profile/project.d.ts +2 -0
  670. package/dist/commands/profile/project.js +97 -0
  671. package/dist/commands/profile/rename.d.ts +1 -0
  672. package/dist/commands/profile/rename.js +42 -0
  673. package/dist/commands/profile/show.d.ts +1 -0
  674. package/dist/commands/profile/show.js +50 -0
  675. package/dist/commands/profile.d.ts +2 -0
  676. package/dist/commands/profile.js +37 -0
  677. package/dist/commands/push.d.ts +2 -0
  678. package/dist/commands/push.js +166 -0
  679. package/dist/commands/revive.d.ts +2 -0
  680. package/dist/commands/revive.js +174 -0
  681. package/dist/commands/search/answer.d.ts +1 -0
  682. package/dist/commands/search/answer.js +50 -0
  683. package/dist/commands/search/contents.d.ts +1 -0
  684. package/dist/commands/search/contents.js +96 -0
  685. package/dist/commands/search/exa.d.ts +53 -0
  686. package/dist/commands/search/exa.js +157 -0
  687. package/dist/commands/search/puremd.d.ts +11 -0
  688. package/dist/commands/search/puremd.js +53 -0
  689. package/dist/commands/search/web.d.ts +1 -0
  690. package/dist/commands/search/web.js +65 -0
  691. package/dist/commands/search.d.ts +2 -0
  692. package/dist/commands/search.js +24 -0
  693. package/dist/commands/surface-edit.d.ts +2 -0
  694. package/dist/commands/surface-edit.js +159 -0
  695. package/dist/commands/surface-inspect.d.ts +2 -0
  696. package/dist/commands/surface-inspect.js +38 -0
  697. package/dist/commands/surface-node.d.ts +2 -0
  698. package/dist/commands/surface-node.js +16 -0
  699. package/dist/commands/surface-reload.d.ts +2 -0
  700. package/dist/commands/surface-reload.js +127 -0
  701. package/dist/commands/surface-tmux-spread.d.ts +2 -0
  702. package/dist/commands/surface-tmux-spread.js +220 -0
  703. package/dist/commands/surface.d.ts +2 -0
  704. package/dist/commands/surface.js +48 -0
  705. package/dist/commands/sys/__tests__/config-broker-thresholds.test.d.ts +1 -0
  706. package/dist/commands/sys/__tests__/config-broker-thresholds.test.js +95 -0
  707. package/dist/commands/sys/__tests__/config-keybindings.test.d.ts +1 -0
  708. package/dist/commands/sys/__tests__/config-keybindings.test.js +55 -0
  709. package/dist/commands/sys/__tests__/config-model-ladders.test.d.ts +1 -0
  710. package/dist/commands/sys/__tests__/config-model-ladders.test.js +121 -0
  711. package/dist/commands/sys/__tests__/helpers/setup-runtime.d.ts +5 -0
  712. package/dist/commands/sys/__tests__/helpers/setup-runtime.js +19 -0
  713. package/dist/commands/sys/__tests__/setup-core.test.d.ts +1 -0
  714. package/dist/commands/sys/__tests__/setup-core.test.js +291 -0
  715. package/dist/commands/sys/__tests__/setup-front-door.test.d.ts +1 -0
  716. package/dist/commands/sys/__tests__/setup-front-door.test.js +137 -0
  717. package/dist/commands/sys/__tests__/setup-models.test.d.ts +1 -0
  718. package/dist/commands/sys/__tests__/setup-models.test.js +205 -0
  719. package/dist/commands/sys/__tests__/setup-providers-viewport.test.d.ts +1 -0
  720. package/dist/commands/sys/__tests__/setup-providers-viewport.test.js +155 -0
  721. package/dist/commands/sys/__tests__/sync-deps.test.d.ts +1 -0
  722. package/dist/commands/sys/__tests__/sync-deps.test.js +188 -0
  723. package/dist/commands/sys/__tests__/sync-import.test.d.ts +1 -0
  724. package/dist/commands/sys/__tests__/sync-import.test.js +314 -0
  725. package/dist/commands/sys/config.d.ts +1 -0
  726. package/dist/commands/sys/config.js +292 -0
  727. package/dist/commands/sys/daemon.d.ts +2 -0
  728. package/dist/commands/sys/daemon.js +188 -0
  729. package/dist/commands/sys/doctor.d.ts +1 -0
  730. package/dist/commands/sys/doctor.js +528 -0
  731. package/dist/commands/sys/feedback.d.ts +1 -0
  732. package/dist/commands/sys/feedback.js +174 -0
  733. package/dist/commands/sys/logs.d.ts +1 -0
  734. package/dist/commands/sys/logs.js +127 -0
  735. package/dist/commands/sys/prompt-review.d.ts +1 -0
  736. package/dist/commands/sys/prompt-review.js +291 -0
  737. package/dist/commands/sys/promptstudio.d.ts +2 -0
  738. package/dist/commands/sys/promptstudio.js +65 -0
  739. package/dist/commands/sys/setup-core.d.ts +138 -0
  740. package/dist/commands/sys/setup-core.js +582 -0
  741. package/dist/commands/sys/setup-wizard.d.ts +130 -0
  742. package/dist/commands/sys/setup-wizard.js +2310 -0
  743. package/dist/commands/sys/setup.d.ts +6 -0
  744. package/dist/commands/sys/setup.js +36 -0
  745. package/dist/commands/sys/shared.d.ts +51 -0
  746. package/dist/commands/sys/shared.js +81 -0
  747. package/dist/commands/sys/support/prepare.d.ts +13 -0
  748. package/dist/commands/sys/support/prepare.js +235 -0
  749. package/dist/commands/sys/support/submit.d.ts +19 -0
  750. package/dist/commands/sys/support/submit.js +525 -0
  751. package/dist/commands/sys/support.d.ts +2 -0
  752. package/dist/commands/sys/support.js +18 -0
  753. package/dist/commands/sys/sync-deps.d.ts +19 -0
  754. package/dist/commands/sys/sync-deps.js +508 -0
  755. package/dist/commands/sys/sync-project-guidance.d.ts +1 -0
  756. package/dist/commands/sys/sync-project-guidance.js +345 -0
  757. package/dist/commands/sys/sync-shared.d.ts +7 -0
  758. package/dist/commands/sys/sync-shared.js +49 -0
  759. package/dist/commands/sys/sync-skills.d.ts +1 -0
  760. package/dist/commands/sys/sync-skills.js +306 -0
  761. package/dist/commands/sys/sync.d.ts +2 -0
  762. package/dist/commands/sys/sync.js +18 -0
  763. package/dist/commands/sys/sysprompt.d.ts +1 -0
  764. package/dist/commands/sys/sysprompt.js +97 -0
  765. package/dist/commands/sys/update.d.ts +2 -0
  766. package/dist/commands/sys/update.js +139 -0
  767. package/dist/commands/sys.d.ts +2 -0
  768. package/dist/commands/sys.js +30 -0
  769. package/dist/commands/view-cycle.d.ts +2 -0
  770. package/dist/commands/view-cycle.js +130 -0
  771. package/dist/commands/view-list.d.ts +2 -0
  772. package/dist/commands/view-list.js +66 -0
  773. package/dist/commands/view-new.d.ts +2 -0
  774. package/dist/commands/view-new.js +74 -0
  775. package/dist/commands/view-pick.d.ts +6 -0
  776. package/dist/commands/view-pick.js +129 -0
  777. package/dist/commands/view-run.d.ts +2 -0
  778. package/dist/commands/view-run.js +214 -0
  779. package/dist/commands/view.d.ts +2 -0
  780. package/dist/commands/view.js +31 -0
  781. package/dist/commands/workspace.d.ts +2 -0
  782. package/dist/commands/workspace.js +165 -0
  783. package/dist/core/__tests__/base-worker-prompt.test.d.ts +1 -0
  784. package/dist/core/__tests__/base-worker-prompt.test.js +60 -0
  785. package/dist/core/__tests__/boot-fault-attempt.test.d.ts +1 -0
  786. package/dist/core/__tests__/boot-fault-attempt.test.js +83 -0
  787. package/dist/core/__tests__/boot.test.d.ts +1 -0
  788. package/dist/core/__tests__/boot.test.js +275 -0
  789. package/dist/core/__tests__/branded-host-concurrency.test.d.ts +1 -0
  790. package/dist/core/__tests__/branded-host-concurrency.test.js +72 -0
  791. package/dist/core/__tests__/broker-fork-seam.test.d.ts +1 -0
  792. package/dist/core/__tests__/broker-fork-seam.test.js +118 -0
  793. package/dist/core/__tests__/broker-launch-candidates.test.d.ts +1 -0
  794. package/dist/core/__tests__/broker-launch-candidates.test.js +241 -0
  795. package/dist/core/__tests__/broker-preflight.test.d.ts +1 -0
  796. package/dist/core/__tests__/broker-preflight.test.js +95 -0
  797. package/dist/core/__tests__/broker-sdk-wiring.test.d.ts +1 -0
  798. package/dist/core/__tests__/broker-sdk-wiring.test.js +732 -0
  799. package/dist/core/__tests__/broker-snapshot-history.test.d.ts +1 -0
  800. package/dist/core/__tests__/broker-snapshot-history.test.js +213 -0
  801. package/dist/core/__tests__/canvas-inbox-watcher-hold.test.d.ts +1 -0
  802. package/dist/core/__tests__/canvas-inbox-watcher-hold.test.js +502 -0
  803. package/dist/core/__tests__/canvas-inbox-watcher.test.d.ts +1 -0
  804. package/dist/core/__tests__/canvas-inbox-watcher.test.js +255 -0
  805. package/dist/core/__tests__/canvas.test.d.ts +1 -0
  806. package/dist/core/__tests__/canvas.test.js +201 -0
  807. package/dist/core/__tests__/chat-view-reconnect.test.d.ts +1 -0
  808. package/dist/core/__tests__/chat-view-reconnect.test.js +105 -0
  809. package/dist/core/__tests__/child-death-wake.test.d.ts +1 -0
  810. package/dist/core/__tests__/child-death-wake.test.js +161 -0
  811. package/dist/core/__tests__/close.test.d.ts +1 -0
  812. package/dist/core/__tests__/close.test.js +254 -0
  813. package/dist/core/__tests__/command-plugins-surfaces.test.d.ts +1 -0
  814. package/dist/core/__tests__/command-plugins-surfaces.test.js +325 -0
  815. package/dist/core/__tests__/command-plugins.test.d.ts +1 -0
  816. package/dist/core/__tests__/command-plugins.test.js +448 -0
  817. package/dist/core/__tests__/connection-reconnect-resume.test.d.ts +1 -0
  818. package/dist/core/__tests__/connection-reconnect-resume.test.js +36 -0
  819. package/dist/core/__tests__/context-intro.test.d.ts +1 -0
  820. package/dist/core/__tests__/context-intro.test.js +256 -0
  821. package/dist/core/__tests__/cron-broker-capacity.test.d.ts +1 -0
  822. package/dist/core/__tests__/cron-broker-capacity.test.js +100 -0
  823. package/dist/core/__tests__/daemon-boot.test.d.ts +1 -0
  824. package/dist/core/__tests__/daemon-boot.test.js +374 -0
  825. package/dist/core/__tests__/daemon-wedge.test.d.ts +1 -0
  826. package/dist/core/__tests__/daemon-wedge.test.js +104 -0
  827. package/dist/core/__tests__/dead-node-policy-table.test.d.ts +1 -0
  828. package/dist/core/__tests__/dead-node-policy-table.test.js +103 -0
  829. package/dist/core/__tests__/deferred-no-wake.test.d.ts +1 -0
  830. package/dist/core/__tests__/deferred-no-wake.test.js +514 -0
  831. package/dist/core/__tests__/events-contract.test.d.ts +1 -0
  832. package/dist/core/__tests__/events-contract.test.js +76 -0
  833. package/dist/core/__tests__/fault-classifier.test.d.ts +1 -0
  834. package/dist/core/__tests__/fault-classifier.test.js +71 -0
  835. package/dist/core/__tests__/finalization-migration.test.d.ts +1 -0
  836. package/dist/core/__tests__/finalization-migration.test.js +38 -0
  837. package/dist/core/__tests__/fixtures/api-server-host.d.ts +1 -0
  838. package/dist/core/__tests__/fixtures/api-server-host.js +47 -0
  839. package/dist/core/__tests__/fixtures/c3-custom-provider-ext.d.ts +2 -0
  840. package/dist/core/__tests__/fixtures/c3-custom-provider-ext.js +34 -0
  841. package/dist/core/__tests__/fixtures/c5-command-boundary-ext.d.ts +2 -0
  842. package/dist/core/__tests__/fixtures/c5-command-boundary-ext.js +8 -0
  843. package/dist/core/__tests__/fixtures/extra-extension.d.ts +1 -0
  844. package/dist/core/__tests__/fixtures/extra-extension.js +3 -0
  845. package/dist/core/__tests__/fixtures/fake-engine.d.ts +310 -0
  846. package/dist/core/__tests__/fixtures/fake-engine.js +1210 -0
  847. package/dist/core/__tests__/fixtures/fake-pi-host.d.ts +2 -0
  848. package/dist/core/__tests__/fixtures/fake-pi-host.js +311 -0
  849. package/dist/core/__tests__/fixtures/metadata-migration-race.d.ts +1 -0
  850. package/dist/core/__tests__/fixtures/metadata-migration-race.js +49 -0
  851. package/dist/core/__tests__/fixtures/spawn-proof-target.test.d.ts +1 -0
  852. package/dist/core/__tests__/fixtures/spawn-proof-target.test.js +15 -0
  853. package/dist/core/__tests__/flagship-lifecycle.test.d.ts +1 -0
  854. package/dist/core/__tests__/flagship-lifecycle.test.js +303 -0
  855. package/dist/core/__tests__/focuses.test.d.ts +1 -0
  856. package/dist/core/__tests__/focuses.test.js +208 -0
  857. package/dist/core/__tests__/fork.test.d.ts +1 -0
  858. package/dist/core/__tests__/fork.test.js +108 -0
  859. package/dist/core/__tests__/full/broker-attach-limits.test.d.ts +1 -0
  860. package/dist/core/__tests__/full/broker-attach-limits.test.js +147 -0
  861. package/dist/core/__tests__/full/broker-attach-stream.test.d.ts +1 -0
  862. package/dist/core/__tests__/full/broker-attach-stream.test.js +133 -0
  863. package/dist/core/__tests__/full/broker-crash-teardown.test.d.ts +1 -0
  864. package/dist/core/__tests__/full/broker-crash-teardown.test.js +122 -0
  865. package/dist/core/__tests__/full/broker-deliver-ack.test.d.ts +1 -0
  866. package/dist/core/__tests__/full/broker-deliver-ack.test.js +73 -0
  867. package/dist/core/__tests__/full/broker-dialogs.test.d.ts +1 -0
  868. package/dist/core/__tests__/full/broker-dialogs.test.js +180 -0
  869. package/dist/core/__tests__/full/broker-display-snapshot.test.d.ts +1 -0
  870. package/dist/core/__tests__/full/broker-display-snapshot.test.js +75 -0
  871. package/dist/core/__tests__/full/broker-dormant-wake.test.d.ts +1 -0
  872. package/dist/core/__tests__/full/broker-dormant-wake.test.js +130 -0
  873. package/dist/core/__tests__/full/broker-model-changed-broadcast.test.d.ts +1 -0
  874. package/dist/core/__tests__/full/broker-model-changed-broadcast.test.js +57 -0
  875. package/dist/core/__tests__/full/broker-navigate-tree-rewelcome.test.d.ts +1 -0
  876. package/dist/core/__tests__/full/broker-navigate-tree-rewelcome.test.js +80 -0
  877. package/dist/core/__tests__/full/broker-pane-resolution.test.d.ts +1 -0
  878. package/dist/core/__tests__/full/broker-pane-resolution.test.js +155 -0
  879. package/dist/core/__tests__/full/broker-provider-retry.test.d.ts +1 -0
  880. package/dist/core/__tests__/full/broker-provider-retry.test.js +387 -0
  881. package/dist/core/__tests__/full/cascade-close.test.d.ts +1 -0
  882. package/dist/core/__tests__/full/cascade-close.test.js +240 -0
  883. package/dist/core/__tests__/full/consult-startup-failure.test.d.ts +1 -0
  884. package/dist/core/__tests__/full/consult-startup-failure.test.js +124 -0
  885. package/dist/core/__tests__/full/detach-focus.test.d.ts +1 -0
  886. package/dist/core/__tests__/full/detach-focus.test.js +126 -0
  887. package/dist/core/__tests__/full/idle-release-settlement.test.d.ts +1 -0
  888. package/dist/core/__tests__/full/idle-release-settlement.test.js +108 -0
  889. package/dist/core/__tests__/full/issue-146-yield-spawn-focus.test.d.ts +1 -0
  890. package/dist/core/__tests__/full/issue-146-yield-spawn-focus.test.js +107 -0
  891. package/dist/core/__tests__/full/park-clock-release.test.d.ts +1 -0
  892. package/dist/core/__tests__/full/park-clock-release.test.js +56 -0
  893. package/dist/core/__tests__/full/yield-message-transaction.test.d.ts +1 -0
  894. package/dist/core/__tests__/full/yield-message-transaction.test.js +70 -0
  895. package/dist/core/__tests__/helpers/broker-clients.d.ts +43 -0
  896. package/dist/core/__tests__/helpers/broker-clients.js +182 -0
  897. package/dist/core/__tests__/helpers/fleet.d.ts +12 -0
  898. package/dist/core/__tests__/helpers/fleet.js +45 -0
  899. package/dist/core/__tests__/helpers/harness.d.ts +128 -0
  900. package/dist/core/__tests__/helpers/harness.js +867 -0
  901. package/dist/core/__tests__/helpers/viewer-panes.d.ts +12 -0
  902. package/dist/core/__tests__/helpers/viewer-panes.js +133 -0
  903. package/dist/core/__tests__/history-inbox.test.d.ts +1 -0
  904. package/dist/core/__tests__/history-inbox.test.js +105 -0
  905. package/dist/core/__tests__/host-teardown-process-group.test.d.ts +1 -0
  906. package/dist/core/__tests__/host-teardown-process-group.test.js +476 -0
  907. package/dist/core/__tests__/human-cancel-guard.test.d.ts +1 -0
  908. package/dist/core/__tests__/human-cancel-guard.test.js +71 -0
  909. package/dist/core/__tests__/human-deliver-e2e.test.d.ts +1 -0
  910. package/dist/core/__tests__/human-deliver-e2e.test.js +123 -0
  911. package/dist/core/__tests__/human-deliver.test.d.ts +1 -0
  912. package/dist/core/__tests__/human-deliver.test.js +399 -0
  913. package/dist/core/__tests__/human-node-not-supervised.test.d.ts +1 -0
  914. package/dist/core/__tests__/human-node-not-supervised.test.js +94 -0
  915. package/dist/core/__tests__/inline-memory-refs.test.d.ts +1 -0
  916. package/dist/core/__tests__/inline-memory-refs.test.js +320 -0
  917. package/dist/core/__tests__/kickoff.test.d.ts +1 -0
  918. package/dist/core/__tests__/kickoff.test.js +148 -0
  919. package/dist/core/__tests__/lifecycle.test.d.ts +1 -0
  920. package/dist/core/__tests__/lifecycle.test.js +165 -0
  921. package/dist/core/__tests__/live-lifecycle-prompt.test.d.ts +1 -0
  922. package/dist/core/__tests__/live-lifecycle-prompt.test.js +51 -0
  923. package/dist/core/__tests__/live-mutation-verbs.test.d.ts +1 -0
  924. package/dist/core/__tests__/live-mutation-verbs.test.js +195 -0
  925. package/dist/core/__tests__/live-mutation.test.d.ts +1 -0
  926. package/dist/core/__tests__/live-mutation.test.js +197 -0
  927. package/dist/core/__tests__/memory-index-render.test.d.ts +1 -0
  928. package/dist/core/__tests__/memory-index-render.test.js +60 -0
  929. package/dist/core/__tests__/memory-resolver-precedence.test.d.ts +1 -0
  930. package/dist/core/__tests__/memory-resolver-precedence.test.js +169 -0
  931. package/dist/core/__tests__/migration.test.d.ts +1 -0
  932. package/dist/core/__tests__/migration.test.js +717 -0
  933. package/dist/core/__tests__/model-pin-durability.test.d.ts +1 -0
  934. package/dist/core/__tests__/model-pin-durability.test.js +124 -0
  935. package/dist/core/__tests__/on-read-crouter-home-fence.test.d.ts +1 -0
  936. package/dist/core/__tests__/on-read-crouter-home-fence.test.js +67 -0
  937. package/dist/core/__tests__/on-read-dedup-resume.test.d.ts +1 -0
  938. package/dist/core/__tests__/on-read-dedup-resume.test.js +121 -0
  939. package/dist/core/__tests__/on-read-identity.test.d.ts +1 -0
  940. package/dist/core/__tests__/on-read-identity.test.js +68 -0
  941. package/dist/core/__tests__/parse-argv-stdin-secret.test.d.ts +1 -0
  942. package/dist/core/__tests__/parse-argv-stdin-secret.test.js +26 -0
  943. package/dist/core/__tests__/passive-subscription.test.d.ts +1 -0
  944. package/dist/core/__tests__/passive-subscription.test.js +212 -0
  945. package/dist/core/__tests__/pid-identity-match.test.d.ts +1 -0
  946. package/dist/core/__tests__/pid-identity-match.test.js +145 -0
  947. package/dist/core/__tests__/pid-zombie.test.d.ts +1 -0
  948. package/dist/core/__tests__/pid-zombie.test.js +42 -0
  949. package/dist/core/__tests__/preview-registry-sync.test.d.ts +1 -0
  950. package/dist/core/__tests__/preview-registry-sync.test.js +65 -0
  951. package/dist/core/__tests__/prune-to-limit.test.d.ts +1 -0
  952. package/dist/core/__tests__/prune-to-limit.test.js +126 -0
  953. package/dist/core/__tests__/prune.test.d.ts +1 -0
  954. package/dist/core/__tests__/prune.test.js +135 -0
  955. package/dist/core/__tests__/push-final-guard.test.d.ts +1 -0
  956. package/dist/core/__tests__/push-final-guard.test.js +184 -0
  957. package/dist/core/__tests__/refresh-stall-recycle.test.d.ts +1 -0
  958. package/dist/core/__tests__/refresh-stall-recycle.test.js +101 -0
  959. package/dist/core/__tests__/relaunch-root.test.d.ts +1 -0
  960. package/dist/core/__tests__/relaunch-root.test.js +114 -0
  961. package/dist/core/__tests__/remote-canvas-target.test.d.ts +1 -0
  962. package/dist/core/__tests__/remote-canvas-target.test.js +87 -0
  963. package/dist/core/__tests__/reset.test.d.ts +1 -0
  964. package/dist/core/__tests__/reset.test.js +69 -0
  965. package/dist/core/__tests__/respawn-throttle.test.d.ts +1 -0
  966. package/dist/core/__tests__/respawn-throttle.test.js +154 -0
  967. package/dist/core/__tests__/review-model-floor.test.d.ts +1 -0
  968. package/dist/core/__tests__/review-model-floor.test.js +104 -0
  969. package/dist/core/__tests__/revive-all.test.d.ts +1 -0
  970. package/dist/core/__tests__/revive-all.test.js +147 -0
  971. package/dist/core/__tests__/revive.test.d.ts +1 -0
  972. package/dist/core/__tests__/revive.test.js +575 -0
  973. package/dist/core/__tests__/scope-crouter-home-fence.test.d.ts +1 -0
  974. package/dist/core/__tests__/scope-crouter-home-fence.test.js +55 -0
  975. package/dist/core/__tests__/secrets.test.d.ts +1 -0
  976. package/dist/core/__tests__/secrets.test.js +55 -0
  977. package/dist/core/__tests__/session-branch.test.d.ts +1 -0
  978. package/dist/core/__tests__/session-branch.test.js +61 -0
  979. package/dist/core/__tests__/session-cycles.test.d.ts +1 -0
  980. package/dist/core/__tests__/session-cycles.test.js +77 -0
  981. package/dist/core/__tests__/session-model.test.d.ts +1 -0
  982. package/dist/core/__tests__/session-model.test.js +129 -0
  983. package/dist/core/__tests__/spawn-no-kickoff.test.d.ts +1 -0
  984. package/dist/core/__tests__/spawn-no-kickoff.test.js +119 -0
  985. package/dist/core/__tests__/spawn-root.test.d.ts +1 -0
  986. package/dist/core/__tests__/spawn-root.test.js +320 -0
  987. package/dist/core/__tests__/spawn-worktree-id-conflict.test.d.ts +1 -0
  988. package/dist/core/__tests__/spawn-worktree-id-conflict.test.js +59 -0
  989. package/dist/core/__tests__/stdin-body-no-discard.test.d.ts +1 -0
  990. package/dist/core/__tests__/stdin-body-no-discard.test.js +33 -0
  991. package/dist/core/__tests__/stdout-errors.test.d.ts +1 -0
  992. package/dist/core/__tests__/stdout-errors.test.js +16 -0
  993. package/dist/core/__tests__/steer-note.test.d.ts +1 -0
  994. package/dist/core/__tests__/steer-note.test.js +41 -0
  995. package/dist/core/__tests__/stop-guard.test.d.ts +1 -0
  996. package/dist/core/__tests__/stop-guard.test.js +157 -0
  997. package/dist/core/__tests__/stream-watchdog.test.d.ts +1 -0
  998. package/dist/core/__tests__/stream-watchdog.test.js +154 -0
  999. package/dist/core/__tests__/subcommand-tier.test.d.ts +1 -0
  1000. package/dist/core/__tests__/subcommand-tier.test.js +99 -0
  1001. package/dist/core/__tests__/subscription-delivery.test.d.ts +1 -0
  1002. package/dist/core/__tests__/subscription-delivery.test.js +211 -0
  1003. package/dist/core/__tests__/subscription-pool-credential-guard.test.d.ts +1 -0
  1004. package/dist/core/__tests__/subscription-pool-credential-guard.test.js +94 -0
  1005. package/dist/core/__tests__/test-runner-cheap-sharding.test.d.ts +1 -0
  1006. package/dist/core/__tests__/test-runner-cheap-sharding.test.js +97 -0
  1007. package/dist/core/__tests__/tmux-surface.test.d.ts +1 -0
  1008. package/dist/core/__tests__/tmux-surface.test.js +470 -0
  1009. package/dist/core/__tests__/wake-bearings.test.d.ts +1 -0
  1010. package/dist/core/__tests__/wake-bearings.test.js +102 -0
  1011. package/dist/core/__tests__/worktree.test.d.ts +1 -0
  1012. package/dist/core/__tests__/worktree.test.js +876 -0
  1013. package/dist/core/__tests__/yield-ensures-daemon.test.d.ts +1 -0
  1014. package/dist/core/__tests__/yield-ensures-daemon.test.js +54 -0
  1015. package/dist/core/auth-file.d.ts +40 -0
  1016. package/dist/core/auth-file.js +177 -0
  1017. package/dist/core/auth-interaction.d.ts +19 -0
  1018. package/dist/core/auth-interaction.js +94 -0
  1019. package/dist/core/auto-update.d.ts +1 -0
  1020. package/dist/core/auto-update.js +93 -0
  1021. package/dist/core/bash-jobs.d.ts +55 -0
  1022. package/dist/core/bash-jobs.js +150 -0
  1023. package/dist/core/bootstrap.d.ts +5 -0
  1024. package/dist/core/bootstrap.js +98 -0
  1025. package/dist/core/broker-client/__tests__/transport-relay.test.d.ts +1 -0
  1026. package/dist/core/broker-client/__tests__/transport-relay.test.js +213 -0
  1027. package/dist/core/broker-client/client.d.ts +97 -0
  1028. package/dist/core/broker-client/client.js +189 -0
  1029. package/dist/core/broker-client/index.d.ts +1 -0
  1030. package/dist/core/broker-client/index.js +13 -0
  1031. package/dist/core/broker-client/transport-relay.d.ts +51 -0
  1032. package/dist/core/broker-client/transport-relay.js +169 -0
  1033. package/dist/core/broker-client/transport-socket.d.ts +29 -0
  1034. package/dist/core/broker-client/transport-socket.js +164 -0
  1035. package/dist/core/broker-client/transport.d.ts +32 -0
  1036. package/dist/core/broker-client/transport.js +26 -0
  1037. package/dist/core/canvas/__tests__/attention.test.d.ts +1 -0
  1038. package/dist/core/canvas/__tests__/attention.test.js +97 -0
  1039. package/dist/core/canvas/__tests__/human-work-outbox.test.d.ts +1 -0
  1040. package/dist/core/canvas/__tests__/human-work-outbox.test.js +123 -0
  1041. package/dist/core/canvas/__tests__/remote-canvas-source.test.d.ts +1 -0
  1042. package/dist/core/canvas/__tests__/remote-canvas-source.test.js +372 -0
  1043. package/dist/core/canvas/__tests__/remote-event-stream.test.d.ts +1 -0
  1044. package/dist/core/canvas/__tests__/remote-event-stream.test.js +146 -0
  1045. package/dist/core/canvas/__tests__/render-remote.test.d.ts +1 -0
  1046. package/dist/core/canvas/__tests__/render-remote.test.js +241 -0
  1047. package/dist/core/canvas/__tests__/source-resolve.test.d.ts +1 -0
  1048. package/dist/core/canvas/__tests__/source-resolve.test.js +77 -0
  1049. package/dist/core/canvas/attention.d.ts +19 -0
  1050. package/dist/core/canvas/attention.js +87 -0
  1051. package/dist/core/canvas/boot-id.d.ts +6 -0
  1052. package/dist/core/canvas/boot-id.js +26 -0
  1053. package/dist/core/canvas/boot.d.ts +93 -0
  1054. package/dist/core/canvas/boot.js +190 -0
  1055. package/dist/core/canvas/browse/__tests__/model.test.d.ts +1 -0
  1056. package/dist/core/canvas/browse/__tests__/model.test.js +290 -0
  1057. package/dist/core/canvas/browse/__tests__/rebuild-coalescer.test.d.ts +1 -0
  1058. package/dist/core/canvas/browse/__tests__/rebuild-coalescer.test.js +134 -0
  1059. package/dist/core/canvas/browse/__tests__/render.test.d.ts +1 -0
  1060. package/dist/core/canvas/browse/__tests__/render.test.js +111 -0
  1061. package/dist/core/canvas/browse/app.d.ts +41 -0
  1062. package/dist/core/canvas/browse/app.js +916 -0
  1063. package/dist/core/canvas/browse/model.d.ts +169 -0
  1064. package/dist/core/canvas/browse/model.js +485 -0
  1065. package/dist/core/canvas/browse/pins.d.ts +4 -0
  1066. package/dist/core/canvas/browse/pins.js +29 -0
  1067. package/dist/core/canvas/browse/rebuild-coalescer.d.ts +7 -0
  1068. package/dist/core/canvas/browse/rebuild-coalescer.js +61 -0
  1069. package/dist/core/canvas/browse/render.d.ts +59 -0
  1070. package/dist/core/canvas/browse/render.js +550 -0
  1071. package/dist/core/canvas/canvas.d.ts +358 -0
  1072. package/dist/core/canvas/canvas.js +897 -0
  1073. package/dist/core/canvas/crons.d.ts +222 -0
  1074. package/dist/core/canvas/crons.js +367 -0
  1075. package/dist/core/canvas/daemon-owner.d.ts +67 -0
  1076. package/dist/core/canvas/daemon-owner.js +141 -0
  1077. package/dist/core/canvas/db.d.ts +30 -0
  1078. package/dist/core/canvas/db.js +1167 -0
  1079. package/dist/core/canvas/extensions.d.ts +5 -0
  1080. package/dist/core/canvas/extensions.js +39 -0
  1081. package/dist/core/canvas/focuses.d.ts +22 -0
  1082. package/dist/core/canvas/focuses.js +81 -0
  1083. package/dist/core/canvas/history.d.ts +91 -0
  1084. package/dist/core/canvas/history.js +490 -0
  1085. package/dist/core/canvas/human-work-outbox.d.ts +73 -0
  1086. package/dist/core/canvas/human-work-outbox.js +261 -0
  1087. package/dist/core/canvas/index.d.ts +11 -0
  1088. package/dist/core/canvas/index.js +13 -0
  1089. package/dist/core/canvas/install-id.d.ts +9 -0
  1090. package/dist/core/canvas/install-id.js +84 -0
  1091. package/dist/core/canvas/labels.d.ts +28 -0
  1092. package/dist/core/canvas/labels.js +38 -0
  1093. package/dist/core/canvas/meta-file.d.ts +20 -0
  1094. package/dist/core/canvas/meta-file.js +98 -0
  1095. package/dist/core/canvas/nav-model.d.ts +55 -0
  1096. package/dist/core/canvas/nav-model.js +284 -0
  1097. package/dist/core/canvas/nav-render.d.ts +124 -0
  1098. package/dist/core/canvas/nav-render.js +266 -0
  1099. package/dist/core/canvas/paths.d.ts +81 -0
  1100. package/dist/core/canvas/paths.js +164 -0
  1101. package/dist/core/canvas/pid.d.ts +335 -0
  1102. package/dist/core/canvas/pid.js +636 -0
  1103. package/dist/core/canvas/remote-canvas-source.d.ts +62 -0
  1104. package/dist/core/canvas/remote-canvas-source.js +231 -0
  1105. package/dist/core/canvas/remote-event-stream.d.ts +24 -0
  1106. package/dist/core/canvas/remote-event-stream.js +94 -0
  1107. package/dist/core/canvas/render-source.d.ts +132 -0
  1108. package/dist/core/canvas/render-source.js +457 -0
  1109. package/dist/core/canvas/render.d.ts +47 -0
  1110. package/dist/core/canvas/render.js +237 -0
  1111. package/dist/core/canvas/source.d.ts +35 -0
  1112. package/dist/core/canvas/source.js +44 -0
  1113. package/dist/core/canvas/status-glyph.d.ts +42 -0
  1114. package/dist/core/canvas/status-glyph.js +116 -0
  1115. package/dist/core/canvas/telemetry.d.ts +14 -0
  1116. package/dist/core/canvas/telemetry.js +35 -0
  1117. package/dist/core/canvas/types.d.ts +302 -0
  1118. package/dist/core/canvas/types.js +8 -0
  1119. package/dist/core/clipboard-text.d.ts +3 -0
  1120. package/dist/core/clipboard-text.js +39 -0
  1121. package/dist/core/command-manifests/registry.d.ts +43 -0
  1122. package/dist/core/command-manifests/registry.js +103 -0
  1123. package/dist/core/command-manifests/schema.d.ts +87 -0
  1124. package/dist/core/command-manifests/schema.js +849 -0
  1125. package/dist/core/command-plugins/adapter.d.ts +22 -0
  1126. package/dist/core/command-plugins/adapter.js +160 -0
  1127. package/dist/core/command-plugins/compose.d.ts +11 -0
  1128. package/dist/core/command-plugins/compose.js +88 -0
  1129. package/dist/core/command-plugins/discovery.d.ts +74 -0
  1130. package/dist/core/command-plugins/discovery.js +291 -0
  1131. package/dist/core/command.d.ts +175 -0
  1132. package/dist/core/command.js +636 -0
  1133. package/dist/core/config.d.ts +125 -0
  1134. package/dist/core/config.js +620 -0
  1135. package/dist/core/configured-clis/cache.d.ts +16 -0
  1136. package/dist/core/configured-clis/cache.js +57 -0
  1137. package/dist/core/configured-clis/compose.d.ts +14 -0
  1138. package/dist/core/configured-clis/compose.js +60 -0
  1139. package/dist/core/configured-clis/discovery.d.ts +47 -0
  1140. package/dist/core/configured-clis/discovery.js +173 -0
  1141. package/dist/core/configured-clis/fetch.d.ts +51 -0
  1142. package/dist/core/configured-clis/fetch.js +156 -0
  1143. package/dist/core/configured-clis/invoker.d.ts +36 -0
  1144. package/dist/core/configured-clis/invoker.js +547 -0
  1145. package/dist/core/configured-clis/manifest.d.ts +24 -0
  1146. package/dist/core/configured-clis/manifest.js +284 -0
  1147. package/dist/core/configured-clis/registration.d.ts +40 -0
  1148. package/dist/core/configured-clis/registration.js +201 -0
  1149. package/dist/core/errors.d.ts +27 -0
  1150. package/dist/core/errors.js +48 -0
  1151. package/dist/core/events/emit.d.ts +4 -0
  1152. package/dist/core/events/emit.js +17 -0
  1153. package/dist/core/events/envelope.d.ts +2 -0
  1154. package/dist/core/events/envelope.js +84 -0
  1155. package/dist/core/events/errors.d.ts +4 -0
  1156. package/dist/core/events/errors.js +69 -0
  1157. package/dist/core/events/index.d.ts +5 -0
  1158. package/dist/core/events/index.js +4 -0
  1159. package/dist/core/events/operation-id.d.ts +4 -0
  1160. package/dist/core/events/operation-id.js +24 -0
  1161. package/dist/core/events/read.d.ts +40 -0
  1162. package/dist/core/events/read.js +639 -0
  1163. package/dist/core/events/serialize.d.ts +4 -0
  1164. package/dist/core/events/serialize.js +199 -0
  1165. package/dist/core/events/source.d.ts +18 -0
  1166. package/dist/core/events/source.js +47 -0
  1167. package/dist/core/events/types.d.ts +68 -0
  1168. package/dist/core/events/types.js +11 -0
  1169. package/dist/core/fault-classifier.d.ts +43 -0
  1170. package/dist/core/fault-classifier.js +143 -0
  1171. package/dist/core/feed/__tests__/coalesce-human.test.d.ts +1 -0
  1172. package/dist/core/feed/__tests__/coalesce-human.test.js +36 -0
  1173. package/dist/core/feed/__tests__/empty-node-guard.test.d.ts +1 -0
  1174. package/dist/core/feed/__tests__/empty-node-guard.test.js +45 -0
  1175. package/dist/core/feed/__tests__/inbox-migrate.test.d.ts +1 -0
  1176. package/dist/core/feed/__tests__/inbox-migrate.test.js +53 -0
  1177. package/dist/core/feed/feed.d.ts +31 -0
  1178. package/dist/core/feed/feed.js +159 -0
  1179. package/dist/core/feed/inbox-migrate.d.ts +11 -0
  1180. package/dist/core/feed/inbox-migrate.js +135 -0
  1181. package/dist/core/feed/inbox.d.ts +84 -0
  1182. package/dist/core/feed/inbox.js +407 -0
  1183. package/dist/core/feed/passive.d.ts +14 -0
  1184. package/dist/core/feed/passive.js +114 -0
  1185. package/dist/core/frontmatter.d.ts +8 -0
  1186. package/dist/core/frontmatter.js +35 -0
  1187. package/dist/core/fs-utils.d.ts +21 -0
  1188. package/dist/core/fs-utils.js +149 -0
  1189. package/dist/core/git.d.ts +22 -0
  1190. package/dist/core/git.js +72 -0
  1191. package/dist/core/help.d.ts +223 -0
  1192. package/dist/core/help.js +275 -0
  1193. package/dist/core/host-exports/__tests__/export-prunes-boot-skill.test.d.ts +1 -0
  1194. package/dist/core/host-exports/__tests__/export-prunes-boot-skill.test.js +84 -0
  1195. package/dist/core/host-exports/builtins.d.ts +50 -0
  1196. package/dist/core/host-exports/builtins.js +68 -0
  1197. package/dist/core/host-exports/export.d.ts +32 -0
  1198. package/dist/core/host-exports/export.js +128 -0
  1199. package/dist/core/inspector/core.d.ts +23 -0
  1200. package/dist/core/inspector/core.js +148 -0
  1201. package/dist/core/inspector/model.d.ts +54 -0
  1202. package/dist/core/inspector/model.js +182 -0
  1203. package/dist/core/inspector/text.d.ts +5 -0
  1204. package/dist/core/inspector/text.js +32 -0
  1205. package/dist/core/inspector/tui.d.ts +3 -0
  1206. package/dist/core/inspector/tui.js +220 -0
  1207. package/dist/core/io.d.ts +73 -0
  1208. package/dist/core/io.js +254 -0
  1209. package/dist/core/keybindings/__tests__/bespoke-consumers.test.d.ts +1 -0
  1210. package/dist/core/keybindings/__tests__/bespoke-consumers.test.js +40 -0
  1211. package/dist/core/keybindings/__tests__/inbox-affordance.test.d.ts +1 -0
  1212. package/dist/core/keybindings/__tests__/inbox-affordance.test.js +38 -0
  1213. package/dist/core/keybindings/__tests__/resolve.test.d.ts +1 -0
  1214. package/dist/core/keybindings/__tests__/resolve.test.js +233 -0
  1215. package/dist/core/keybindings/background-bash.d.ts +13 -0
  1216. package/dist/core/keybindings/background-bash.js +34 -0
  1217. package/dist/core/keybindings/catalog.d.ts +15 -0
  1218. package/dist/core/keybindings/catalog.js +285 -0
  1219. package/dist/core/keybindings/inbox.d.ts +21 -0
  1220. package/dist/core/keybindings/inbox.js +35 -0
  1221. package/dist/core/keybindings/index.d.ts +7 -0
  1222. package/dist/core/keybindings/index.js +6 -0
  1223. package/dist/core/keybindings/match.d.ts +29 -0
  1224. package/dist/core/keybindings/match.js +105 -0
  1225. package/dist/core/keybindings/persistence.d.ts +14 -0
  1226. package/dist/core/keybindings/persistence.js +31 -0
  1227. package/dist/core/keybindings/resolve.d.ts +22 -0
  1228. package/dist/core/keybindings/resolve.js +333 -0
  1229. package/dist/core/keybindings/types.d.ts +37 -0
  1230. package/dist/core/keybindings/types.js +1 -0
  1231. package/dist/core/locked-file.d.ts +24 -0
  1232. package/dist/core/locked-file.js +91 -0
  1233. package/dist/core/log.d.ts +3 -0
  1234. package/dist/core/log.js +27 -0
  1235. package/dist/core/manifest.d.ts +5 -0
  1236. package/dist/core/manifest.js +15 -0
  1237. package/dist/core/memory/inline-ref-grammar.d.ts +53 -0
  1238. package/dist/core/memory/inline-ref-grammar.js +99 -0
  1239. package/dist/core/memory/inline-ref-guidance.d.ts +8 -0
  1240. package/dist/core/memory/inline-ref-guidance.js +35 -0
  1241. package/dist/core/memory/inline-ref-inventory.d.ts +13 -0
  1242. package/dist/core/memory/inline-ref-inventory.js +79 -0
  1243. package/dist/core/memory-resolver.d.ts +106 -0
  1244. package/dist/core/memory-resolver.js +422 -0
  1245. package/dist/core/output.d.ts +35 -0
  1246. package/dist/core/output.js +99 -0
  1247. package/dist/core/pagination.d.ts +33 -0
  1248. package/dist/core/pagination.js +89 -0
  1249. package/dist/core/pool-credential-store.d.ts +34 -0
  1250. package/dist/core/pool-credential-store.js +116 -0
  1251. package/dist/core/predicate.d.ts +65 -0
  1252. package/dist/core/predicate.js +191 -0
  1253. package/dist/core/preview-registry.d.ts +25 -0
  1254. package/dist/core/preview-registry.js +2841 -0
  1255. package/dist/core/profiles/__tests__/env-store.test.d.ts +1 -0
  1256. package/dist/core/profiles/__tests__/env-store.test.js +97 -0
  1257. package/dist/core/profiles/__tests__/root-profile.test.d.ts +1 -0
  1258. package/dist/core/profiles/__tests__/root-profile.test.js +69 -0
  1259. package/dist/core/profiles/default-binding.d.ts +6 -0
  1260. package/dist/core/profiles/default-binding.js +46 -0
  1261. package/dist/core/profiles/env-store.d.ts +22 -0
  1262. package/dist/core/profiles/env-store.js +157 -0
  1263. package/dist/core/profiles/manifest.d.ts +35 -0
  1264. package/dist/core/profiles/manifest.js +371 -0
  1265. package/dist/core/profiles/select.d.ts +42 -0
  1266. package/dist/core/profiles/select.js +673 -0
  1267. package/dist/core/profiles/state-block.d.ts +4 -0
  1268. package/dist/core/profiles/state-block.js +16 -0
  1269. package/dist/core/provider-management.d.ts +12 -0
  1270. package/dist/core/provider-management.js +22 -0
  1271. package/dist/core/render.d.ts +12 -0
  1272. package/dist/core/render.js +127 -0
  1273. package/dist/core/resolver.d.ts +14 -0
  1274. package/dist/core/resolver.js +136 -0
  1275. package/dist/core/runtime/__tests__/command-expansion.test.d.ts +1 -0
  1276. package/dist/core/runtime/__tests__/command-expansion.test.js +25 -0
  1277. package/dist/core/runtime/__tests__/engine-route.test.d.ts +1 -0
  1278. package/dist/core/runtime/__tests__/engine-route.test.js +36 -0
  1279. package/dist/core/runtime/__tests__/install-id-cache-scoping.test.d.ts +1 -0
  1280. package/dist/core/runtime/__tests__/install-id-cache-scoping.test.js +41 -0
  1281. package/dist/core/runtime/__tests__/node-env.test.d.ts +1 -0
  1282. package/dist/core/runtime/__tests__/node-env.test.js +73 -0
  1283. package/dist/core/runtime/__tests__/spawn-at-given-id.test.d.ts +1 -0
  1284. package/dist/core/runtime/__tests__/spawn-at-given-id.test.js +34 -0
  1285. package/dist/core/runtime/__tests__/spawn-env.test.d.ts +1 -0
  1286. package/dist/core/runtime/__tests__/spawn-env.test.js +268 -0
  1287. package/dist/core/runtime/auth-reload.d.ts +7 -0
  1288. package/dist/core/runtime/auth-reload.js +67 -0
  1289. package/dist/core/runtime/banner.d.ts +13 -0
  1290. package/dist/core/runtime/banner.js +51 -0
  1291. package/dist/core/runtime/bearings.d.ts +99 -0
  1292. package/dist/core/runtime/bearings.js +429 -0
  1293. package/dist/core/runtime/boot-root.d.ts +24 -0
  1294. package/dist/core/runtime/boot-root.js +102 -0
  1295. package/dist/core/runtime/branded-host.d.ts +25 -0
  1296. package/dist/core/runtime/branded-host.js +342 -0
  1297. package/dist/core/runtime/broker-cli.d.ts +1 -0
  1298. package/dist/core/runtime/broker-cli.js +81 -0
  1299. package/dist/core/runtime/broker-protocol.d.ts +642 -0
  1300. package/dist/core/runtime/broker-protocol.js +146 -0
  1301. package/dist/core/runtime/broker-request.d.ts +37 -0
  1302. package/dist/core/runtime/broker-request.js +85 -0
  1303. package/dist/core/runtime/broker-sdk.d.ts +36 -0
  1304. package/dist/core/runtime/broker-sdk.js +128 -0
  1305. package/dist/core/runtime/broker.d.ts +245 -0
  1306. package/dist/core/runtime/broker.js +3711 -0
  1307. package/dist/core/runtime/busy.d.ts +32 -0
  1308. package/dist/core/runtime/busy.js +107 -0
  1309. package/dist/core/runtime/canvas-extensions.d.ts +20 -0
  1310. package/dist/core/runtime/canvas-extensions.js +70 -0
  1311. package/dist/core/runtime/close.d.ts +34 -0
  1312. package/dist/core/runtime/close.js +223 -0
  1313. package/dist/core/runtime/command-expansion.d.ts +19 -0
  1314. package/dist/core/runtime/command-expansion.js +104 -0
  1315. package/dist/core/runtime/connectivity.d.ts +12 -0
  1316. package/dist/core/runtime/connectivity.js +73 -0
  1317. package/dist/core/runtime/deliver-live.d.ts +26 -0
  1318. package/dist/core/runtime/deliver-live.js +63 -0
  1319. package/dist/core/runtime/fault-recovery-nudge.d.ts +3 -0
  1320. package/dist/core/runtime/fault-recovery-nudge.js +3 -0
  1321. package/dist/core/runtime/fault-recovery.d.ts +23 -0
  1322. package/dist/core/runtime/fault-recovery.js +83 -0
  1323. package/dist/core/runtime/fault.d.ts +64 -0
  1324. package/dist/core/runtime/fault.js +260 -0
  1325. package/dist/core/runtime/fleet.d.ts +57 -0
  1326. package/dist/core/runtime/fleet.js +35 -0
  1327. package/dist/core/runtime/front-door.d.ts +16 -0
  1328. package/dist/core/runtime/front-door.js +186 -0
  1329. package/dist/core/runtime/host.d.ts +43 -0
  1330. package/dist/core/runtime/host.js +432 -0
  1331. package/dist/core/runtime/interactive-deliver.d.ts +15 -0
  1332. package/dist/core/runtime/interactive-deliver.js +41 -0
  1333. package/dist/core/runtime/kickoff.d.ts +53 -0
  1334. package/dist/core/runtime/kickoff.js +289 -0
  1335. package/dist/core/runtime/launch-prompt.d.ts +8 -0
  1336. package/dist/core/runtime/launch-prompt.js +13 -0
  1337. package/dist/core/runtime/launch.d.ts +191 -0
  1338. package/dist/core/runtime/launch.js +442 -0
  1339. package/dist/core/runtime/lifecycle.d.ts +12 -0
  1340. package/dist/core/runtime/lifecycle.js +121 -0
  1341. package/dist/core/runtime/managed-provider-cooling.d.ts +38 -0
  1342. package/dist/core/runtime/managed-provider-cooling.js +81 -0
  1343. package/dist/core/runtime/memory.d.ts +3 -0
  1344. package/dist/core/runtime/memory.js +18 -0
  1345. package/dist/core/runtime/model-selection.d.ts +41 -0
  1346. package/dist/core/runtime/model-selection.js +118 -0
  1347. package/dist/core/runtime/model-swap.d.ts +27 -0
  1348. package/dist/core/runtime/model-swap.js +70 -0
  1349. package/dist/core/runtime/naming-persist.d.ts +11 -0
  1350. package/dist/core/runtime/naming-persist.js +41 -0
  1351. package/dist/core/runtime/naming.d.ts +26 -0
  1352. package/dist/core/runtime/naming.js +174 -0
  1353. package/dist/core/runtime/node-read.d.ts +36 -0
  1354. package/dist/core/runtime/node-read.js +255 -0
  1355. package/dist/core/runtime/nodes.d.ts +113 -0
  1356. package/dist/core/runtime/nodes.js +330 -0
  1357. package/dist/core/runtime/package-health.d.ts +49 -0
  1358. package/dist/core/runtime/package-health.js +217 -0
  1359. package/dist/core/runtime/persona.d.ts +25 -0
  1360. package/dist/core/runtime/persona.js +132 -0
  1361. package/dist/core/runtime/pi-cli.d.ts +8 -0
  1362. package/dist/core/runtime/pi-cli.js +65 -0
  1363. package/dist/core/runtime/pi-vendored.d.ts +26 -0
  1364. package/dist/core/runtime/pi-vendored.js +77 -0
  1365. package/dist/core/runtime/placement-tmux.d.ts +42 -0
  1366. package/dist/core/runtime/placement-tmux.js +151 -0
  1367. package/dist/core/runtime/placement.d.ts +97 -0
  1368. package/dist/core/runtime/placement.js +394 -0
  1369. package/dist/core/runtime/promote.d.ts +44 -0
  1370. package/dist/core/runtime/promote.js +176 -0
  1371. package/dist/core/runtime/recap.d.ts +8 -0
  1372. package/dist/core/runtime/recap.js +136 -0
  1373. package/dist/core/runtime/recycle.d.ts +14 -0
  1374. package/dist/core/runtime/recycle.js +158 -0
  1375. package/dist/core/runtime/reopen.d.ts +32 -0
  1376. package/dist/core/runtime/reopen.js +119 -0
  1377. package/dist/core/runtime/reset.d.ts +68 -0
  1378. package/dist/core/runtime/reset.js +198 -0
  1379. package/dist/core/runtime/resume-root.d.ts +6 -0
  1380. package/dist/core/runtime/resume-root.js +292 -0
  1381. package/dist/core/runtime/revive-all.d.ts +61 -0
  1382. package/dist/core/runtime/revive-all.js +106 -0
  1383. package/dist/core/runtime/revive.d.ts +58 -0
  1384. package/dist/core/runtime/revive.js +357 -0
  1385. package/dist/core/runtime/roadmap.d.ts +13 -0
  1386. package/dist/core/runtime/roadmap.js +45 -0
  1387. package/dist/core/runtime/session-branch.d.ts +13 -0
  1388. package/dist/core/runtime/session-branch.js +46 -0
  1389. package/dist/core/runtime/session-cycles.d.ts +30 -0
  1390. package/dist/core/runtime/session-cycles.js +77 -0
  1391. package/dist/core/runtime/session-list-cache.d.ts +53 -0
  1392. package/dist/core/runtime/session-list-cache.js +406 -0
  1393. package/dist/core/runtime/situational-context.d.ts +12 -0
  1394. package/dist/core/runtime/situational-context.js +48 -0
  1395. package/dist/core/runtime/situational-live.d.ts +9 -0
  1396. package/dist/core/runtime/situational-live.js +40 -0
  1397. package/dist/core/runtime/spawn-env.d.ts +31 -0
  1398. package/dist/core/runtime/spawn-env.js +179 -0
  1399. package/dist/core/runtime/spawn.d.ts +118 -0
  1400. package/dist/core/runtime/spawn.js +473 -0
  1401. package/dist/core/runtime/stop-guard.d.ts +18 -0
  1402. package/dist/core/runtime/stop-guard.js +77 -0
  1403. package/dist/core/runtime/stop-signals.d.ts +14 -0
  1404. package/dist/core/runtime/stop-signals.js +46 -0
  1405. package/dist/core/runtime/stream-watchdog.d.ts +55 -0
  1406. package/dist/core/runtime/stream-watchdog.js +140 -0
  1407. package/dist/core/runtime/structured-output.d.ts +12 -0
  1408. package/dist/core/runtime/structured-output.js +90 -0
  1409. package/dist/core/runtime/surface-bg.d.ts +11 -0
  1410. package/dist/core/runtime/surface-bg.js +68 -0
  1411. package/dist/core/runtime/tmux-chrome.d.ts +1 -0
  1412. package/dist/core/runtime/tmux-chrome.js +4 -0
  1413. package/dist/core/runtime/tmux.d.ts +247 -0
  1414. package/dist/core/runtime/tmux.js +858 -0
  1415. package/dist/core/runtime/warm-pool.d.ts +51 -0
  1416. package/dist/core/runtime/warm-pool.js +373 -0
  1417. package/dist/core/scope.d.ts +47 -0
  1418. package/dist/core/scope.js +255 -0
  1419. package/dist/core/secrets.d.ts +25 -0
  1420. package/dist/core/secrets.js +55 -0
  1421. package/dist/core/self-update.d.ts +21 -0
  1422. package/dist/core/self-update.js +105 -0
  1423. package/dist/core/session-model/session-state.d.ts +51 -0
  1424. package/dist/core/session-model/session-state.js +170 -0
  1425. package/dist/core/spawn.d.ts +16 -0
  1426. package/dist/core/spawn.js +30 -0
  1427. package/dist/core/stdout-errors.d.ts +3 -0
  1428. package/dist/core/stdout-errors.js +14 -0
  1429. package/dist/core/subscription-state.d.ts +138 -0
  1430. package/dist/core/subscription-state.js +918 -0
  1431. package/dist/core/substrate/ceiling.d.ts +20 -0
  1432. package/dist/core/substrate/ceiling.js +69 -0
  1433. package/dist/core/substrate/gate.d.ts +13 -0
  1434. package/dist/core/substrate/gate.js +21 -0
  1435. package/dist/core/substrate/index.d.ts +11 -0
  1436. package/dist/core/substrate/index.js +25 -0
  1437. package/dist/core/substrate/injected-store.d.ts +10 -0
  1438. package/dist/core/substrate/injected-store.js +55 -0
  1439. package/dist/core/substrate/on-read.d.ts +14 -0
  1440. package/dist/core/substrate/on-read.js +404 -0
  1441. package/dist/core/substrate/render-node.d.ts +11 -0
  1442. package/dist/core/substrate/render-node.js +29 -0
  1443. package/dist/core/substrate/render.d.ts +21 -0
  1444. package/dist/core/substrate/render.js +547 -0
  1445. package/dist/core/substrate/schema.d.ts +125 -0
  1446. package/dist/core/substrate/schema.js +191 -0
  1447. package/dist/core/substrate/session-cache.d.ts +25 -0
  1448. package/dist/core/substrate/session-cache.js +101 -0
  1449. package/dist/core/substrate/subject-fields.d.ts +45 -0
  1450. package/dist/core/substrate/subject-fields.js +38 -0
  1451. package/dist/core/substrate/subject.d.ts +12 -0
  1452. package/dist/core/substrate/subject.js +47 -0
  1453. package/dist/core/timing.d.ts +11 -0
  1454. package/dist/core/timing.js +94 -0
  1455. package/dist/core/tui/__tests__/host-keybindings.test.d.ts +1 -0
  1456. package/dist/core/tui/__tests__/host-keybindings.test.js +113 -0
  1457. package/dist/core/tui/draw.d.ts +100 -0
  1458. package/dist/core/tui/draw.js +359 -0
  1459. package/dist/core/tui/host.d.ts +66 -0
  1460. package/dist/core/tui/host.js +689 -0
  1461. package/dist/core/tui/terminal.d.ts +23 -0
  1462. package/dist/core/tui/terminal.js +101 -0
  1463. package/dist/core/view/__tests__/transport-cache.test.d.ts +1 -0
  1464. package/dist/core/view/__tests__/transport-cache.test.js +62 -0
  1465. package/dist/core/view/__tests__/transport-remote.test.d.ts +1 -0
  1466. package/dist/core/view/__tests__/transport-remote.test.js +98 -0
  1467. package/dist/core/view/bridge.d.ts +10 -0
  1468. package/dist/core/view/bridge.js +31 -0
  1469. package/dist/core/view/chrome.d.ts +9 -0
  1470. package/dist/core/view/chrome.js +22 -0
  1471. package/dist/core/view/contract.d.ts +205 -0
  1472. package/dist/core/view/contract.js +23 -0
  1473. package/dist/core/view/loader.d.ts +31 -0
  1474. package/dist/core/view/loader.js +188 -0
  1475. package/dist/core/view/remote-canvas-target.d.ts +4 -0
  1476. package/dist/core/view/remote-canvas-target.js +30 -0
  1477. package/dist/core/view/stream-local.d.ts +3 -0
  1478. package/dist/core/view/stream-local.js +231 -0
  1479. package/dist/core/view/transport-cache.d.ts +8 -0
  1480. package/dist/core/view/transport-cache.js +38 -0
  1481. package/dist/core/view/transport-local.d.ts +7 -0
  1482. package/dist/core/view/transport-local.js +83 -0
  1483. package/dist/core/view/transport-remote.d.ts +2 -0
  1484. package/dist/core/view/transport-remote.js +58 -0
  1485. package/dist/core/view/transport.d.ts +10 -0
  1486. package/dist/core/view/transport.js +15 -0
  1487. package/dist/core/wake.d.ts +86 -0
  1488. package/dist/core/wake.js +307 -0
  1489. package/dist/core/worktree.d.ts +111 -0
  1490. package/dist/core/worktree.js +732 -0
  1491. package/dist/daemon/__tests__/broker-ownership.test.d.ts +1 -0
  1492. package/dist/daemon/__tests__/broker-ownership.test.js +25 -0
  1493. package/dist/daemon/__tests__/daemon-ownership.test.d.ts +1 -0
  1494. package/dist/daemon/__tests__/daemon-ownership.test.js +27 -0
  1495. package/dist/daemon/api/__tests__/error-seam.test.d.ts +1 -0
  1496. package/dist/daemon/api/__tests__/error-seam.test.js +56 -0
  1497. package/dist/daemon/api/__tests__/full/api-server.test.d.ts +1 -0
  1498. package/dist/daemon/api/__tests__/full/api-server.test.js +369 -0
  1499. package/dist/daemon/api/__tests__/full/b10-attach-modelauth.test.d.ts +1 -0
  1500. package/dist/daemon/api/__tests__/full/b10-attach-modelauth.test.js +220 -0
  1501. package/dist/daemon/api/__tests__/full/push-parity.test.d.ts +1 -0
  1502. package/dist/daemon/api/__tests__/full/push-parity.test.js +199 -0
  1503. package/dist/daemon/api/__tests__/full/worktree-parity.test.d.ts +1 -0
  1504. package/dist/daemon/api/__tests__/full/worktree-parity.test.js +160 -0
  1505. package/dist/daemon/api/__tests__/inbox.test.d.ts +1 -0
  1506. package/dist/daemon/api/__tests__/inbox.test.js +578 -0
  1507. package/dist/daemon/api/bridge.d.ts +21 -0
  1508. package/dist/daemon/api/bridge.js +351 -0
  1509. package/dist/daemon/api/handlers/attach.d.ts +2 -0
  1510. package/dist/daemon/api/handlers/attach.js +56 -0
  1511. package/dist/daemon/api/handlers/canvas.d.ts +2 -0
  1512. package/dist/daemon/api/handlers/canvas.js +463 -0
  1513. package/dist/daemon/api/handlers/crons.d.ts +2 -0
  1514. package/dist/daemon/api/handlers/crons.js +354 -0
  1515. package/dist/daemon/api/handlers/daemon.d.ts +2 -0
  1516. package/dist/daemon/api/handlers/daemon.js +35 -0
  1517. package/dist/daemon/api/handlers/files.d.ts +2 -0
  1518. package/dist/daemon/api/handlers/files.js +64 -0
  1519. package/dist/daemon/api/handlers/focus.d.ts +2 -0
  1520. package/dist/daemon/api/handlers/focus.js +92 -0
  1521. package/dist/daemon/api/handlers/health.d.ts +2 -0
  1522. package/dist/daemon/api/handlers/health.js +65 -0
  1523. package/dist/daemon/api/handlers/human.d.ts +12 -0
  1524. package/dist/daemon/api/handlers/human.js +741 -0
  1525. package/dist/daemon/api/handlers/inbox.d.ts +2 -0
  1526. package/dist/daemon/api/handlers/inbox.js +423 -0
  1527. package/dist/daemon/api/handlers/messages.d.ts +2 -0
  1528. package/dist/daemon/api/handlers/messages.js +290 -0
  1529. package/dist/daemon/api/handlers/modelauth.d.ts +2 -0
  1530. package/dist/daemon/api/handlers/modelauth.js +116 -0
  1531. package/dist/daemon/api/handlers/nodes.d.ts +2 -0
  1532. package/dist/daemon/api/handlers/nodes.js +540 -0
  1533. package/dist/daemon/api/handlers/profiles.d.ts +2 -0
  1534. package/dist/daemon/api/handlers/profiles.js +69 -0
  1535. package/dist/daemon/api/handlers/reports.d.ts +2 -0
  1536. package/dist/daemon/api/handlers/reports.js +144 -0
  1537. package/dist/daemon/api/handlers/subscriptions.d.ts +2 -0
  1538. package/dist/daemon/api/handlers/subscriptions.js +53 -0
  1539. package/dist/daemon/api/handlers/worktree.d.ts +2 -0
  1540. package/dist/daemon/api/handlers/worktree.js +40 -0
  1541. package/dist/daemon/api/map.d.ts +100 -0
  1542. package/dist/daemon/api/map.js +360 -0
  1543. package/dist/daemon/api/router.d.ts +56 -0
  1544. package/dist/daemon/api/router.js +190 -0
  1545. package/dist/daemon/api/server.d.ts +23 -0
  1546. package/dist/daemon/api/server.js +258 -0
  1547. package/dist/daemon/control.d.ts +21 -0
  1548. package/dist/daemon/control.js +22 -0
  1549. package/dist/daemon/cron-run.d.ts +64 -0
  1550. package/dist/daemon/cron-run.js +944 -0
  1551. package/dist/daemon/cron-sink.d.ts +26 -0
  1552. package/dist/daemon/cron-sink.js +43 -0
  1553. package/dist/daemon/crtrd-cli.d.ts +1 -0
  1554. package/dist/daemon/crtrd-cli.js +18 -0
  1555. package/dist/daemon/crtrd.d.ts +89 -0
  1556. package/dist/daemon/crtrd.js +1953 -0
  1557. package/dist/daemon/fleet.d.ts +81 -0
  1558. package/dist/daemon/fleet.js +405 -0
  1559. package/dist/daemon/manage.d.ts +103 -0
  1560. package/dist/daemon/manage.js +389 -0
  1561. package/dist/daemon/pidfile.d.ts +8 -0
  1562. package/dist/daemon/pidfile.js +37 -0
  1563. package/dist/daemon/supervise-cadence.d.ts +1 -0
  1564. package/dist/daemon/supervise-cadence.js +6 -0
  1565. package/dist/index.d.ts +23 -0
  1566. package/dist/index.js +44 -0
  1567. package/dist/pi-extensions/__tests__/canvas-bash-valve.test.d.ts +1 -0
  1568. package/dist/pi-extensions/__tests__/canvas-bash-valve.test.js +31 -0
  1569. package/dist/pi-extensions/__tests__/canvas-context-intro.test.d.ts +1 -0
  1570. package/dist/pi-extensions/__tests__/canvas-context-intro.test.js +182 -0
  1571. package/dist/pi-extensions/__tests__/canvas-stophook-agentend.test.d.ts +1 -0
  1572. package/dist/pi-extensions/__tests__/canvas-stophook-agentend.test.js +467 -0
  1573. package/dist/pi-extensions/__tests__/canvas-stophook-context-nudge.test.d.ts +1 -0
  1574. package/dist/pi-extensions/__tests__/canvas-stophook-context-nudge.test.js +121 -0
  1575. package/dist/pi-extensions/canvas-bash-valve.d.ts +8 -0
  1576. package/dist/pi-extensions/canvas-bash-valve.js +297 -0
  1577. package/dist/pi-extensions/canvas-context-intro.d.ts +91 -0
  1578. package/dist/pi-extensions/canvas-context-intro.js +230 -0
  1579. package/dist/pi-extensions/canvas-doc-substrate.d.ts +44 -0
  1580. package/dist/pi-extensions/canvas-doc-substrate.js +151 -0
  1581. package/dist/pi-extensions/canvas-goal-capture.d.ts +21 -0
  1582. package/dist/pi-extensions/canvas-goal-capture.js +83 -0
  1583. package/dist/pi-extensions/canvas-inbox-watcher.d.ts +25 -0
  1584. package/dist/pi-extensions/canvas-inbox-watcher.js +942 -0
  1585. package/dist/pi-extensions/canvas-passive-context.d.ts +32 -0
  1586. package/dist/pi-extensions/canvas-passive-context.js +134 -0
  1587. package/dist/pi-extensions/canvas-recap.d.ts +41 -0
  1588. package/dist/pi-extensions/canvas-recap.js +263 -0
  1589. package/dist/pi-extensions/canvas-stophook.d.ts +53 -0
  1590. package/dist/pi-extensions/canvas-stophook.js +985 -0
  1591. package/dist/pi-extensions/canvas-structured-output.d.ts +9 -0
  1592. package/dist/pi-extensions/canvas-structured-output.js +155 -0
  1593. package/dist/prompts/review.d.ts +2 -0
  1594. package/dist/prompts/review.js +130 -0
  1595. package/dist/prompts/view.d.ts +7 -0
  1596. package/dist/prompts/view.js +172 -0
  1597. package/dist/suppress-experimental-warnings.d.ts +1 -0
  1598. package/dist/suppress-experimental-warnings.js +15 -0
  1599. package/dist/types.d.ts +297 -0
  1600. package/dist/types.js +153 -0
  1601. package/dist/web/ViewChrome.d.ts +7 -0
  1602. package/dist/web/ViewChrome.js +28 -0
  1603. package/dist/web/ViewPane.d.ts +39 -0
  1604. package/dist/web/ViewPane.js +48 -0
  1605. package/dist/web/index.d.ts +8 -0
  1606. package/dist/web/index.js +22 -0
  1607. package/dist/web/runtime.d.ts +39 -0
  1608. package/dist/web/runtime.js +232 -0
  1609. package/dist/web/states.d.ts +24 -0
  1610. package/dist/web/states.js +24 -0
  1611. package/dist/web/transport-http.d.ts +5 -0
  1612. package/dist/web/transport-http.js +34 -0
  1613. package/dist/web/transport-stream.d.ts +3 -0
  1614. package/dist/web/transport-stream.js +204 -0
  1615. package/dist/web-client/apple-touch-icon.png +0 -0
  1616. package/dist/web-client/assets/fragment-mono-latin-400-normal-BYwT3kSJ.woff +0 -0
  1617. package/dist/web-client/assets/fragment-mono-latin-400-normal-yxdJ5AmL.woff2 +0 -0
  1618. package/dist/web-client/assets/fragment-mono-latin-ext-400-normal-BbKYyvR9.woff2 +0 -0
  1619. package/dist/web-client/assets/fragment-mono-latin-ext-400-normal-CT4YFKeK.woff +0 -0
  1620. package/dist/web-client/assets/index-BpyZGBhI.js +79 -0
  1621. package/dist/web-client/assets/index-CpEl9LTS.css +2 -0
  1622. package/dist/web-client/assets/martian-mono-cyrillic-wght-normal-B84CD5C_.woff2 +0 -0
  1623. package/dist/web-client/assets/martian-mono-latin-ext-wght-normal-DlL6xMw5.woff2 +0 -0
  1624. package/dist/web-client/assets/martian-mono-latin-wght-normal-5W32yIyr.woff2 +0 -0
  1625. package/dist/web-client/assets/workbox-window.prod.es5-Bd17z0YL.js +2 -0
  1626. package/dist/web-client/icon-192.png +0 -0
  1627. package/dist/web-client/icon-512.png +0 -0
  1628. package/dist/web-client/icon-maskable-512.png +0 -0
  1629. package/dist/web-client/index.html +17 -0
  1630. package/dist/web-client/manifest.webmanifest +1 -0
  1631. package/dist/web-client/sw.js +1 -0
  1632. package/docs/compat/hearth-crtr-v1.md +187 -0
  1633. package/docs/compat/hearth-crtr-v2.md +185 -0
  1634. package/docs/compat/hearth-crtr-v3.md +184 -0
  1635. package/docs/compat/hearth-crtr-v4.md +188 -0
  1636. package/docs/compat/hearth-crtr-v5.md +175 -0
  1637. package/docs/public-api.md +77 -0
  1638. package/package.json +156 -0
  1639. package/runtime.lock.json +12919 -0
  1640. package/scripts/install-runtime.mjs +308 -0
  1641. package/scripts/patch-pi-tree-root-ordering.mjs +57 -0
  1642. package/scripts/postinstall.mjs +33 -0
  1643. package/scripts/runtime-lock.mjs +26 -0
@@ -0,0 +1,394 @@
1
+ // placement.ts — the VIEWER REGISTRY + the model-over-driver tmux front door.
2
+ //
3
+ // After the broker-is-the-host cut the engine NEVER lives in a tmux pane: every
4
+ // node is a detached `headlessBrokerHost` process that binds `view.sock`. A tmux
5
+ // pane is only a surface-attach viewer of that broker, exactly like a web tab. So
6
+ // the whole engine-in-pane placement machinery (hot-swap, resume-into-focus,
7
+ // backstage relocation, remain-on-exit freeze, spread, node-row reconcile) is
8
+ // gone. What remains is:
9
+ //
10
+ // • The VIEWER REGISTRY — the `focuses` table, schema unchanged, now read as
11
+ // "node_id -> the node's one viewer %pane in `session`" (UNIQUE(node_id) =
12
+ // one viewer per node). focusOf/isFocused/focusByPane/focusedNodes/
13
+ // listFocuses read it (lazily GC'ing rows whose pane is gone or no longer
14
+ // carries this node's `@crtr_node` tag); registerViewerFocus writes it.
15
+ // • focus(nodeId) — ensure the broker engine is alive (injected reviver) +
16
+ // wait view.sock, then ensure the node's ONE viewer pane is forefront: reuse
17
+ // it wherever it already lives (switching sessions when needed), else open
18
+ // one beside the caller.
19
+ // • openViewerWindow / registerViewerFocus — the shared viewer-pane opener +
20
+ // row registrar used by BOTH spawn (a background viewer window) and focus.
21
+ // • tearDownNode / detachToBackground — close a node's viewer pane + row.
22
+ // • The chrome/viewer tmux re-exports (§2.1): placement stays the sanctioned
23
+ // model-over-driver so the §5.1 import-lint ("only placement.ts /
24
+ // tmux-chrome.ts import tmux.ts") holds — every other module reaches the
25
+ // driver verbs through here.
26
+ import { getNode, fullName, deleteNode, listNodes, openFocusRow, closeFocusRow, getFocusByNode, getFocusByPane, getFocusById, listFocuses as listFocusRows, } from '../canvas/index.js';
27
+ import { nodeHasAssistantMessage, isNodeStreaming } from '../canvas/render.js';
28
+ import { headlessBrokerHost } from './host.js';
29
+ import { paneExists, paneLocation, closePane, currentTmux, switchClient, selectWindow, selectLayout, selectPane, getPaneOption, setPaneOption, respawnPaneSync, windowOfPane, renameWindow, } from './tmux.js';
30
+ // The PURE tmux + broker-socket half now lives in placement-tmux.ts. placement
31
+ // composes the viewer OPENER over openViewerPane (tmux) + registerViewerFocus
32
+ // (the db write). viewerSplitEnv + waitForBrokerViewSocket are re-exported here
33
+ // (below) so placement's existing importers (daemon runtime, handlers) are
34
+ // unchanged.
35
+ import { openViewerPane, viewerSplitEnv, waitForBrokerViewSocket } from './placement-tmux.js';
36
+ import { newJobId } from './nodes.js';
37
+ import { isPidAlive } from '../canvas/pid.js';
38
+ // Placement is the sanctioned model-over-driver (§2.1): non-placement runtime /
39
+ // command modules that legitimately need a raw driver verb get it from here, so
40
+ // the §5.1 lint can hold "only placement.ts / tmux-chrome.ts import tmux.ts".
41
+ // These are the chrome + viewer verbs that survive the cut (the engine-in-pane
42
+ // verbs — respawnPane, respawnPaneDetached, swapPaneInPlace, breakPaneToSession,
43
+ // joinPane, setWindowOption, setRemainOnExit — are deleted). `breakPane` +
44
+ // `selectLayout` are FRESH minimal viewer-chrome helpers (not the deleted
45
+ // engine-in-pane `breakPaneToSession`): `surface tmux-spread` breaks the caller's
46
+ // viewer pane into its own window and tiles sibling viewers beside it.
47
+ // `piCommand` + `paneCurrentPath` are KEPT: the sessionless surface-view system
48
+ // (view-cycle.ts / view-run.ts) builds its pane commands with them, and the §5.1
49
+ // import-lint forbids those commands importing tmux.ts directly — they must reach
50
+ // the driver through placement. (They are NOT engine-in-pane; the design's
51
+ // "nothing keeps" classification missed the view consumers.) `shellQuote` is
52
+ // re-exported for the same reason — callers building the seam's expected
53
+ // bundled-pi command string (e.g. the M1 seam test) need the identical quoting
54
+ // piCommand uses internally, without importing tmux.ts directly.
55
+ export { splitWindow, breakPane, selectLayout, selectPane, focusWindow, selectWindow, switchClient, openNodeWindow, ensureSession, paneLocation, paneExists, paneRunning, paneCurrentPath, currentTmux, inTmux, paneOfNode, installTmuxBindings,
56
+ // Compile seam for viewer.ts, which still calls installMenuBinding();
57
+ // deleted when the attach unit imports installTmuxBindings directly.
58
+ installTmuxBindings as installMenuBinding, setPaneOption, getPaneOption, piCommand, shellQuote, respawnPaneSync, closePane, displayPopup, windowOfPane, renameWindow, paneOfWindow, windowAlive, listLivePanes, } from './tmux.js';
59
+ // ---------------------------------------------------------------------------
60
+ // Viewer registry reads — COMPOSE over the canvas focuses table (§2.3/§4).
61
+ //
62
+ // placement is the front door for "which nodes have a viewer on screen"; the SQL
63
+ // lives in the canvas layer (canvas/focuses.ts) and placement just reads it. A
64
+ // node has at most one viewer (UNIQUE node_id), so focusOf returns a single row.
65
+ //
66
+ // GC is lazy on read: a row whose viewer pane no longer exists (the user closed
67
+ // the window, the attach client died) is pruned the next time it is read, so the
68
+ // registry self-heals without a sweeper.
69
+ // ---------------------------------------------------------------------------
70
+ /** Prune a viewer row whose pane is gone; return it iff its pane is still live. */
71
+ function liveOrPrune(f) {
72
+ if (f === null)
73
+ return null;
74
+ if (f.pane !== null && !paneExists(f.pane)) {
75
+ closeFocusRow(f.focus_id);
76
+ return null;
77
+ }
78
+ return f;
79
+ }
80
+ /** The viewer a node has on screen, or null. UNIQUE(node_id) ⇒ at most one. */
81
+ export function focusOf(nodeId) {
82
+ return liveOrPrune(getFocusByNode(nodeId));
83
+ }
84
+ /** Does this node have a live viewer on screen? */
85
+ export function isFocused(nodeId) {
86
+ return focusOf(nodeId) !== null;
87
+ }
88
+ /** The viewer realized by a given pane (`%id`), or null. */
89
+ export function focusByPane(pane) {
90
+ return liveOrPrune(getFocusByPane(pane));
91
+ }
92
+ /** The set of node ids that currently have a live viewer. */
93
+ export function focusedNodes() {
94
+ return new Set(listFocuses().map((f) => f.node_id));
95
+ }
96
+ /** Every live viewer row (GC'ing any whose pane has gone). */
97
+ export function listFocuses() {
98
+ const live = [];
99
+ for (const f of listFocusRows()) {
100
+ if (liveOrPrune(f) !== null)
101
+ live.push(f);
102
+ }
103
+ return live;
104
+ }
105
+ function newFocusId() {
106
+ return `f-${newJobId()}`;
107
+ }
108
+ /** Register a `crtr surface attach` VIEWER pane as the node's one viewer focus row.
109
+ * UNIQUE(node_id) ⇒ one viewer per node: returns
110
+ * the existing row (no insert) when the pane or the node is already registered.
111
+ * `window` is accepted for the call contract (spawn passes it) but not stored —
112
+ * the focuses table keys on pane + session only. The attach client self-tags the
113
+ * pane `@crtr_node` on connect, so `nodeInPane` resolves it either way. */
114
+ export function registerViewerFocus(nodeId, pane, session, window) {
115
+ void window;
116
+ const byPane = getFocusByPane(pane);
117
+ if (byPane !== null)
118
+ return byPane;
119
+ const byNode = getFocusByNode(nodeId);
120
+ if (byNode !== null)
121
+ return byNode;
122
+ const focusId = newFocusId();
123
+ openFocusRow(focusId, pane, session, nodeId);
124
+ return getFocusById(focusId);
125
+ }
126
+ /** Open a surface-attach viewer for `nodeId` and register its viewer focus row —
127
+ * the shared opener used by `focus` (a split beside the caller) and by a --root
128
+ * spawn (a fresh window in the caller's current session). Wraps `ensureSession`
129
+ * + `openNodeWindow`/`splitWindow` + `registerViewerFocus`. The attach client
130
+ * connects to the node's `view.sock` and renders/drives the live broker engine
131
+ * — it NEVER launches the engine (the one-writer invariant; the caller ensures
132
+ * the broker is alive first). Returns the registered viewer row, or null if tmux
133
+ * refused.
134
+ * - default → a fresh WINDOW in `session` (the --root spawn-viewer path).
135
+ * - `besidePane` → a SPLIT beside that pane in its own session (the focus
136
+ * open-beside-the-caller path); `session` is then only a fallback. */
137
+ export function openViewerWindow(nodeId, session, opts = {}) {
138
+ const opened = openViewerPane(nodeId, session, opts);
139
+ if (opened === null)
140
+ return null;
141
+ return registerViewerFocus(nodeId, opened.pane, opened.session, opened.window);
142
+ }
143
+ // ---------------------------------------------------------------------------
144
+ // focus — the front door for `surface node focus` / `surface node cycle` / nav (§A.4)
145
+ // ---------------------------------------------------------------------------
146
+ /** Bring a node's ONE viewer pane forefront (§A.4). Every node is a detached
147
+ * broker, so there is no engine pane to swap into the caller's viewport — focus
148
+ * instead ensures the node's single surface-attach viewer is on screen beside (or
149
+ * navigated to) the caller:
150
+ * (a) ensure the broker ENGINE is alive (idempotent injected reviver) and its
151
+ * view.sock is ACCEPTING (closes the cold-start race against attach's
152
+ * single connect) — without this the freshly-opened viewer would exit
153
+ * "no broker".
154
+ * (b) `--new-pane` → always a fresh viewer beside the caller (e.g. two
155
+ * different nodes side by side); drop any prior viewer first (UNIQUE).
156
+ * (c) the node already has a live viewer ⇒ navigate to it in place
157
+ * (switchClient+selectWindow+selectPane), including when it lives in a
158
+ * different session. The viewer's established spatial home wins over
159
+ * opening or moving a duplicate beside the caller.
160
+ * (d) no live viewer ⇒ open one beside the caller and register the row.
161
+ *
162
+ * crtr is tmux-only: with no caller pane there is no viewport to open and no
163
+ * non-tmux fallback — report not-focused. */
164
+ /** After a viewer pane is opened/moved beside the caller, make it the ACTIVE
165
+ * pane and rebalance its window's panes to an even side-by-side layout — so
166
+ * picking a node (e.g. from the alt+g graph) lands the keyboard on the fresh
167
+ * viewer and the panes are evenly sized again, not halved. Best-effort. */
168
+ function surfaceNewPane(pane) {
169
+ const win = paneLocation(pane)?.window ?? null;
170
+ if (win !== null)
171
+ selectLayout(win, 'even-horizontal');
172
+ selectPane(pane);
173
+ }
174
+ export async function focus(nodeId, opts) {
175
+ const meta = getNode(nodeId);
176
+ if (meta === null)
177
+ return { focused: false, session: null, inPlace: false, revived: false };
178
+ const callerPane = opts.pane ?? process.env['TMUX_PANE'] ?? currentTmux()?.pane;
179
+ if (callerPane === undefined || callerPane === '') {
180
+ return { focused: false, session: null, inPlace: false, revived: false };
181
+ }
182
+ // (a) Ensure the broker engine is alive + its view.sock accepts. Capture prior
183
+ // liveness so the result reports whether THIS focus had to launch it.
184
+ const wasAlive = isPidAlive(meta.pi_pid ?? null);
185
+ const revivedLaunch = opts.revive(nodeId);
186
+ const revived = !wasAlive;
187
+ if (!(await waitForBrokerViewSocket(nodeId, revivedLaunch?.launch?.exited))) {
188
+ return { focused: false, session: null, inPlace: false, revived };
189
+ }
190
+ // focus always opens BESIDE the caller pane, so `fallbackSession` is only the
191
+ // session name openViewerWindow falls back to if it cannot read the freshly
192
+ // split pane's location — the caller's own session.
193
+ const callerSession = paneLocation(callerPane)?.session ?? null;
194
+ const fallbackSession = callerSession ?? '';
195
+ // (b0) --in-place → the CALLER pane BECOMES this node's viewer, replacing
196
+ // whatever it showed (the attach subagent scroll+swap: ↓ into the reports
197
+ // roster, Enter dives into that child right here, no new split). This
198
+ // re-execs the caller pane via `respawn-pane -k`, so it MUST be driven
199
+ // from OUTSIDE that pane's process tree (the viewer shells this through
200
+ // `tmux run-shell`, never a direct child) — else the respawn kills its own
201
+ // driver mid-call. Move the child's viewer here if it had one elsewhere
202
+ // (UNIQUE one-viewer-per-node) and drop the caller pane's prior viewer row
203
+ // (that node's broker keeps running headless, reconnectable by a later
204
+ // focus). The respawned `crtr surface attach` replays scrollback from the
205
+ // welcome snapshot and self-tags the pane `@crtr_node`.
206
+ if (opts.inPlace === true) {
207
+ const prior = focusOf(nodeId);
208
+ if (prior !== null) {
209
+ if (prior.pane !== null && prior.pane !== callerPane && paneExists(prior.pane))
210
+ closePane(prior.pane);
211
+ closeFocusRow(prior.focus_id);
212
+ }
213
+ const here = getFocusByPane(callerPane);
214
+ if (here !== null && here.node_id !== nodeId)
215
+ closeFocusRow(here.focus_id);
216
+ // Clear the stale tag before respawn so it never names the wrong node during
217
+ // the gap before the fresh attach re-tags on connect.
218
+ try {
219
+ setPaneOption(callerPane, '@crtr_node', '');
220
+ }
221
+ catch { /* best-effort */ }
222
+ const window = windowOfPane(callerPane);
223
+ // Continuity: the fresh viewer highlights the previously open node, which
224
+ // becomes visible in its self-excluding roster after the swap.
225
+ const priorNodeId = here?.node_id;
226
+ const env = priorNodeId === undefined
227
+ ? viewerSplitEnv()
228
+ : { ...viewerSplitEnv(), CRTR_ATTACH_ROSTER: priorNodeId };
229
+ const ok = respawnPaneSync({ pane: callerPane, cwd: meta.cwd, env, command: `crtr surface attach to ${nodeId}` });
230
+ if (ok) {
231
+ if (window !== null)
232
+ renameWindow(window, fullName(meta));
233
+ registerViewerFocus(nodeId, callerPane, callerSession, window);
234
+ }
235
+ return { focused: ok, session: callerSession, inPlace: true, revived };
236
+ }
237
+ // (b) --new-pane → always a fresh viewer beside the caller. Drop any prior
238
+ // viewer this node holds elsewhere (UNIQUE(node_id): one viewer per node).
239
+ if (opts.newPane === true) {
240
+ const prior = focusOf(nodeId);
241
+ if (prior !== null) {
242
+ if (prior.pane !== null && paneExists(prior.pane))
243
+ closePane(prior.pane);
244
+ closeFocusRow(prior.focus_id);
245
+ }
246
+ const opened = openViewerWindow(nodeId, fallbackSession, { cwd: meta.cwd, besidePane: callerPane });
247
+ if (opened === null)
248
+ return { focused: false, session: null, inPlace: false, revived };
249
+ if (opened.pane !== null)
250
+ surfaceNewPane(opened.pane);
251
+ return { focused: true, session: opened.session, inPlace: false, revived };
252
+ }
253
+ // (c) Reuse / move the node's one live viewer — but ONLY a pane that still
254
+ // carries THIS node's `@crtr_node` tag. `paneExists` is not enough: the
255
+ // front-door root registers the user's own terminal as its viewer pane and
256
+ // runs `crtr surface attach` inline; on a clean detach the pane returns to the
257
+ // user's shell (attach clears the tag) yet the pane — and the row — survive,
258
+ // and a reused pane carries some OTHER node's tag. Navigating to / closing
259
+ // such a pane would strand the user on (or kill) their shell. So verify the
260
+ // tag names this node; on mismatch the row is stale → prune it and fall
261
+ // through to open a fresh viewer beside the caller.
262
+ const existing = focusOf(nodeId);
263
+ if (existing !== null && existing.pane !== null) {
264
+ if (getPaneOption(existing.pane, '@crtr_node') === nodeId) {
265
+ const loc = paneLocation(existing.pane);
266
+ if (loc !== null) {
267
+ // Navigate to the viewer wherever it already lives. For a cross-session
268
+ // target, switch-client carries this tmux client to that session; for a
269
+ // same-session target it is an idempotent no-op. Never destroy and reopen
270
+ // a viewer merely because its established pane lives in another session.
271
+ switchClient(loc.session);
272
+ selectWindow(loc.session, loc.window);
273
+ selectPane(existing.pane);
274
+ return { focused: true, session: loc.session, inPlace: true, revived };
275
+ }
276
+ // The row names a pane that vanished between focusOf() and paneLocation().
277
+ // Prune it and fall through to opening the node's one viewer beside caller.
278
+ closeFocusRow(existing.focus_id);
279
+ }
280
+ else {
281
+ // Pane survived but no longer hosts this node's viewer (clean detach left
282
+ // the user's shell, or the pane was reused) — drop the stale row only; do
283
+ // NOT closePane (it is the user's shell / another node's viewer).
284
+ closeFocusRow(existing.focus_id);
285
+ }
286
+ }
287
+ // (d) No live viewer → open one beside the caller and register the row.
288
+ const opened = openViewerWindow(nodeId, fallbackSession, { cwd: meta.cwd, besidePane: callerPane });
289
+ if (opened === null)
290
+ return { focused: false, session: null, inPlace: false, revived };
291
+ if (opened.pane !== null)
292
+ surfaceNewPane(opened.pane);
293
+ return { focused: true, session: opened.session, inPlace: false, revived };
294
+ }
295
+ // ---------------------------------------------------------------------------
296
+ // Teardown / detach — close a node's viewer pane + row
297
+ // ---------------------------------------------------------------------------
298
+ /** Tear a node off its viewer (close/reset/cancel teardown). The broker engine
299
+ * is killed by its own host teardown over view.sock — this only closes the
300
+ * on-screen viewer: kill its pane (the window collapses once its last pane goes)
301
+ * and drop its registry row. Best-effort tmux; the DB write always lands. No-op
302
+ * when the node has no viewer. */
303
+ export function tearDownNode(nodeId, keepPane) {
304
+ const f = focusOf(nodeId);
305
+ if (f === null)
306
+ return; // no viewer (focusOf already GC'd a gone one)
307
+ // `keepPane` is a BORROWED pane crtr did not create — the front-door root's
308
+ // viewer runs inside the user's own pre-existing shell pane (bootRoot registers
309
+ // that shell pane as the viewer focus). Killing it here would take the user's
310
+ // shell down with the node, closing the whole tmux pane on a plain ctrl+c
311
+ // detach. crtr must never kill a pane it merely borrowed: drop the row, let the
312
+ // pane fall back to its shell when the viewer process exits.
313
+ if (f.pane !== null && f.pane !== keepPane && paneExists(f.pane))
314
+ closePane(f.pane);
315
+ closeFocusRow(f.focus_id);
316
+ }
317
+ /** Detach a node from the foreground (the `node lifecycle demote --detach` / Alt+C → D
318
+ * half). Every node is a headless broker — the only thing on screen is its
319
+ * surface-attach viewer pane — so "detach" means STOP FOREGROUNDING it: close the
320
+ * viewer pane (and drop its row) and leave the broker engine running untouched,
321
+ * reconnectable by a later `focus`. `pane` is the authoritative pane the caller
322
+ * acts on (the Alt+C menu's `#{pane_id}`); falls back to the node's registered
323
+ * viewer pane. No-op (false) when there is no live viewer pane to close. */
324
+ export function detachToBackground(nodeId, pane) {
325
+ const viewer = pane ?? focusOf(nodeId)?.pane ?? null;
326
+ if (viewer === null || !paneExists(viewer))
327
+ return false;
328
+ const f = focusByPane(viewer);
329
+ if (f !== null)
330
+ closeFocusRow(f.focus_id);
331
+ const closed = closePane(viewer);
332
+ // A node the user detached from that never produced any AI output is a useless
333
+ // shell taking up graph + disk space — reap it (engine + row + dir) outright
334
+ // rather than leaving an empty broker running headless off-screen.
335
+ reapIfEmpty(nodeId);
336
+ return closed;
337
+ }
338
+ // ---------------------------------------------------------------------------
339
+ // Reaping empty nodes (no AI output) on close / detach
340
+ // ---------------------------------------------------------------------------
341
+ /** Is this node an EMPTY SHELL right now — a node whose engine never produced an
342
+ * assistant message? Such nodes are pure dead weight on the graph. A node
343
+ * actively generating its FIRST turn is NOT empty (its output just hasn't landed
344
+ * on disk yet), so streaming nodes are spared. */
345
+ function isEmptyNode(nodeId) {
346
+ const m = getNode(nodeId);
347
+ if (m === null)
348
+ return false;
349
+ if (isNodeStreaming(nodeId))
350
+ return false;
351
+ return !nodeHasAssistantMessage(m.pi_session_file);
352
+ }
353
+ /** Reap `nodeId` IFF it is an empty shell (see {@link isEmptyNode}): tear down its
354
+ * broker engine, close any viewer, and hard-delete its row (edges cascade) + dir.
355
+ * The user closing or detaching from a node that never said anything wants it
356
+ * GONE, not parked as a canceled husk — except an OPEN managed worktree keeps
357
+ * its node identity so the worktree remains owned and can later be closed.
358
+ * Returns true when it reaped. No-op (false) on a node that produced output,
359
+ * is mid-first-turn, owns an open managed worktree, or no longer exists. */
360
+ export function reapIfEmpty(nodeId, keepPane) {
361
+ const meta = getNode(nodeId);
362
+ if (meta?.managed_worktree?.state === 'open' || !isEmptyNode(nodeId))
363
+ return false;
364
+ headlessBrokerHost.teardown(nodeId);
365
+ tearDownNode(nodeId, keepPane);
366
+ return deleteNode(nodeId).deleted;
367
+ }
368
+ /** Sweep the whole canvas for empty shells and reap them — the bulk cleanup
369
+ * behind `crtr canvas prune --empty`, for the husks that accumulated before
370
+ * close/detach learned to reap. Skips: the caller ($CRTR_NODE_ID), nodes
371
+ * mid-first-turn, and any node with a LIVE broker (pi_pid alive) — a running
372
+ * engine is the daemon's domain and may have output not yet persisted, so bulk
373
+ * GC never kills one (the per-action {@link reapIfEmpty} does, since the user
374
+ * explicitly closed/detached that node). `dryRun` reports candidates without
375
+ * deleting. Returns the reaped (or, under dryRun, reapable) node ids. */
376
+ export function reapEmptyNodes(opts = {}) {
377
+ const dryRun = opts.dryRun ?? false;
378
+ const selfId = process.env['CRTR_NODE_ID'] ?? '';
379
+ const reaped = [];
380
+ for (const row of listNodes()) {
381
+ const id = row.node_id;
382
+ const meta = getNode(id);
383
+ if (id === selfId || isPidAlive(row.pi_pid) || meta?.managed_worktree?.state === 'open' || !isEmptyNode(id))
384
+ continue;
385
+ if (!dryRun) {
386
+ headlessBrokerHost.teardown(id);
387
+ tearDownNode(id);
388
+ if (!deleteNode(id).deleted)
389
+ continue;
390
+ }
391
+ reaped.push(id);
392
+ }
393
+ return reaped;
394
+ }
@@ -0,0 +1,44 @@
1
+ import { type NodeMeta } from '../canvas/index.js';
2
+ export interface PromoteResult {
3
+ meta: NodeMeta;
4
+ roadmapWritten: boolean;
5
+ /** Absolute path to the node's roadmap doc (context/roadmap.md). */
6
+ roadmapPath: string;
7
+ /** Absolute path to the node's goal doc (context/initial-prompt.md). */
8
+ goalPath: string;
9
+ }
10
+ /** Promote a node to an orchestrator (mode→orchestrator), optionally
11
+ * specializing its kind (e.g. a `general` worker becoming a
12
+ * `developer.orchestrator`) and optionally also making it resident. Idempotent:
13
+ * re-promoting just rewrites the spec. Seeds a roadmap SCAFFOLD if absent (a
14
+ * boss with no map is a failure mode) — no goal is forced here; authoring the
15
+ * goal + roadmap is the node's next act. The transition guidance is injected
16
+ * centrally by the persona injector at the next turn boundary, not returned. */
17
+ export declare function promote(nodeId: string, opts?: {
18
+ kind?: string;
19
+ resident?: boolean;
20
+ model?: string;
21
+ }): PromoteResult;
22
+ export interface YieldResult {
23
+ meta: NodeMeta;
24
+ /** True iff `promote:true` was passed — a plain yield never flips mode. */
25
+ promoted: boolean;
26
+ /** Always true on success — the node will refresh-revive on its next stop. */
27
+ willRefresh: boolean;
28
+ }
29
+ /** Request a refresh-yield: discard in-memory context and revive fresh, mode
30
+ * and lifecycle UNCHANGED, against the roadmap if one exists else the
31
+ * original goal (`buildReviveKickoff` falls back to it). A plain yield is
32
+ * always mode-preserving — a base node comes back base, still working the
33
+ * same task hands-on. Pass `promote:true` to ALSO become an orchestrator in
34
+ * the same refresh (the one-step form of yield + promote), which rides the
35
+ * same path `crtr node promote` would — mode flips to orchestrator and a
36
+ * roadmap scaffold is seeded. Sets intent='refresh'; the stophook shuts the
37
+ * process down on the next stop and the daemon revives it fresh. */
38
+ export declare function requestYield(nodeId: string, opts?: {
39
+ kind?: string;
40
+ model?: string;
41
+ promote?: boolean;
42
+ }, deps?: {
43
+ ensure?: () => void;
44
+ }): YieldResult;
@@ -0,0 +1,176 @@
1
+ // Promotion — the worker→orchestrator polymorph (mode→orchestrator).
2
+ //
3
+ // Two stages:
4
+ // 1. Promotion → mode flips to orchestrator (mid-turn). This call flips the
5
+ // node's mode and (optionally) its KIND, REWRITES its launch spec to that
6
+ // kind's orchestrator persona (so the next revive comes back as that
7
+ // orchestrator), and seeds a roadmap scaffold.
8
+ // The transition guidance the node needs is injected CENTRALLY by the
9
+ // persona injector (runtime/persona.ts) at the turn boundary — promote()
10
+ // itself no longer returns or hand-emits guidance.
11
+ // 2. Refresh → persona swap (permanent). On the next fresh revive the node
12
+ // starts with the orchestrator system prompt baked in (because the launch
13
+ // spec now says orchestrator). The injected guidance bridges until then.
14
+ //
15
+ // Mode and lifecycle are ORTHOGONAL: promotion flips mode only. Lifecycle stays
16
+ // whatever it was (a promoted child is terminal/orchestrator — still reports up
17
+ // + reaps) unless the caller passes `resident:true` to also make it resident.
18
+ //
19
+ // Trigger is persistence-need (deliberate, or a refresh-yield with open work),
20
+ // never the mere act of spawning a child.
21
+ import { getNode, updateNode } from '../canvas/index.js';
22
+ import { transition } from './lifecycle.js';
23
+ import { ensureDaemon } from '../../daemon/manage.js';
24
+ import { buildLaunchSpec } from './launch.js';
25
+ import { hasRoadmap, seedRoadmap, roadmapPath } from './roadmap.js';
26
+ import { readGoal, goalPath } from './kickoff.js';
27
+ /** Shared reshape machinery: rewrite kind and/or model tier — and, when the
28
+ * caller supplies them, mode/lifecycle — by rebuilding the launch spec so the
29
+ * change is durable across a future revive. MODE-PRESERVING by default (omit
30
+ * `mode`/`lifecycle` and the node's own current values carry through) — this
31
+ * is what a plain `crtr node yield --kind/--model` reshape rides, with no
32
+ * mode flip and no roadmap seeding. `promote()` below is a thin wrapper that
33
+ * also forces mode→orchestrator and seeds the roadmap. */
34
+ function reshapeNode(nodeId, opts = {}, beforePersist) {
35
+ const node = getNode(nodeId);
36
+ if (node === null)
37
+ throw new Error(`unknown node: ${nodeId}`);
38
+ // The node may specialize as it reshapes; default to its current kind.
39
+ const targetKind = opts.kind ?? node.kind;
40
+ // ...and may raise/change its model tier; default to its current pin (so a
41
+ // reshape with no --model preserves whatever it was running on).
42
+ const targetModel = opts.model ?? node.model_override ?? undefined;
43
+ const targetMode = opts.mode ?? node.mode;
44
+ const targetLifecycle = opts.lifecycle ?? node.lifecycle;
45
+ // Rewrite the launch spec to the target kind/mode's persona so the *next*
46
+ // revive comes back as this exact shape (polymorph stage 2). nodeEnv reads
47
+ // meta.{kind,mode}, so CRTR_KIND/CRTR_MODE flip immediately for the live
48
+ // process's children too.
49
+ const { launch } = buildLaunchSpec(targetKind, targetMode, {
50
+ lifecycle: targetLifecycle,
51
+ hasManager: node.parent !== null,
52
+ // A model tier chosen on this call (opts.model) overrides the persona
53
+ // default and is persisted below; absent one, the existing pin carries
54
+ // across the polymorph (the persona default is recomputed fresh for
55
+ // targetKind).
56
+ model: targetModel,
57
+ // opts.model given — an explicit new pick — lets buildLaunchSpec re-decide
58
+ // the pin from ITS raw shape (undefined here). No opts.model — targetModel
59
+ // just re-supplies the current value for resolution, not a new user
60
+ // choice — so carry the node's existing pin verbatim instead.
61
+ modelProviderPinned: opts.model === undefined ? node.launch?.modelProviderPinned : undefined,
62
+ // Resolve kind/ladder config against the NODE's own cwd + profile, not
63
+ // this process's ambient scope.
64
+ cwd: node.cwd,
65
+ profileId: node.profile_id,
66
+ });
67
+ // Promotion seeds after its target launch has been built but before the
68
+ // mutation is persisted, preserving the original promote() failure order.
69
+ beforePersist?.();
70
+ // If the handle is still the spawn-time kind default (name === old kind),
71
+ // carry it to the new kind so the "name === kind ⇒ default, drop it" invariant
72
+ // in fullName() holds across a kind change. Otherwise a node spawned `general`
73
+ // (name="general") that reshapes to `plan` would surface a stale "general"
74
+ // handle in front of its real description.
75
+ const carriesDefaultHandle = node.name === node.kind && targetKind !== node.kind;
76
+ return updateNode(nodeId, {
77
+ kind: targetKind,
78
+ mode: targetMode,
79
+ lifecycle: targetLifecycle,
80
+ launch,
81
+ ...(carriesDefaultHandle ? { name: targetKind } : {}),
82
+ // Persist a newly-chosen tier so it is durable across future revives; omit
83
+ // when unchanged so the existing pin (or persona default) stands.
84
+ ...(opts.model !== undefined ? { model_override: opts.model } : {}),
85
+ });
86
+ }
87
+ /** Promote a node to an orchestrator (mode→orchestrator), optionally
88
+ * specializing its kind (e.g. a `general` worker becoming a
89
+ * `developer.orchestrator`) and optionally also making it resident. Idempotent:
90
+ * re-promoting just rewrites the spec. Seeds a roadmap SCAFFOLD if absent (a
91
+ * boss with no map is a failure mode) — no goal is forced here; authoring the
92
+ * goal + roadmap is the node's next act. The transition guidance is injected
93
+ * centrally by the persona injector at the next turn boundary, not returned. */
94
+ export function promote(nodeId, opts = {}) {
95
+ const node = getNode(nodeId);
96
+ if (node === null)
97
+ throw new Error(`unknown node: ${nodeId}`);
98
+ // Flip mode→orchestrator + kind + launch spec via the shared reshape.
99
+ // Lifecycle is independent: only set resident when the caller asked for it
100
+ // (the common self-promotion stays terminal/orchestrator — it still reports
101
+ // up + reaps). Seed a barebones roadmap scaffold after the target launch is
102
+ // valid but before persisting the promotion. Pre-fill its Goal from the
103
+ // node's goal doc when present (set at spawn, or captured from the first user
104
+ // message); the node fleshes out the body next, guided by the kind's roadmap
105
+ // memory doc dumped below.
106
+ let roadmapWritten = false;
107
+ const meta = reshapeNode(nodeId, {
108
+ ...(opts.kind !== undefined ? { kind: opts.kind } : {}),
109
+ ...(opts.model !== undefined ? { model: opts.model } : {}),
110
+ mode: 'orchestrator',
111
+ lifecycle: opts.resident === true ? 'resident' : node.lifecycle,
112
+ }, () => {
113
+ if (!hasRoadmap(nodeId)) {
114
+ const goal = readGoal(nodeId);
115
+ seedRoadmap(nodeId, goal !== null && goal.trim() !== '' ? { goal: goal.trim() } : {});
116
+ roadmapWritten = true;
117
+ }
118
+ });
119
+ return {
120
+ meta,
121
+ roadmapWritten,
122
+ roadmapPath: roadmapPath(nodeId),
123
+ goalPath: goalPath(nodeId),
124
+ };
125
+ }
126
+ /** Request a refresh-yield: discard in-memory context and revive fresh, mode
127
+ * and lifecycle UNCHANGED, against the roadmap if one exists else the
128
+ * original goal (`buildReviveKickoff` falls back to it). A plain yield is
129
+ * always mode-preserving — a base node comes back base, still working the
130
+ * same task hands-on. Pass `promote:true` to ALSO become an orchestrator in
131
+ * the same refresh (the one-step form of yield + promote), which rides the
132
+ * same path `crtr node promote` would — mode flips to orchestrator and a
133
+ * roadmap scaffold is seeded. Sets intent='refresh'; the stophook shuts the
134
+ * process down on the next stop and the daemon revives it fresh. */
135
+ export function requestYield(nodeId, opts = {}, deps = {}) {
136
+ const ensure = deps.ensure ?? ensureDaemon;
137
+ const node = getNode(nodeId);
138
+ if (node === null)
139
+ throw new Error(`unknown node: ${nodeId}`);
140
+ // --kind/--model combine with either form. With --promote, they ride the
141
+ // promote() path (mode flips to orchestrator + roadmap seeded). Without it,
142
+ // they still apply but MODE-PRESERVINGLY via the shared reshape — no mode
143
+ // flip, no roadmap seeding. "promoted" is true iff the caller asked for it
144
+ // (even if the node was already an orchestrator — a no-op reshape, not an
145
+ // error), never inferred from the node's prior mode.
146
+ const reshaping = opts.kind !== undefined || opts.model !== undefined;
147
+ let promoted = false;
148
+ if (opts.promote === true) {
149
+ promote(nodeId, {
150
+ ...(opts.kind !== undefined ? { kind: opts.kind } : {}),
151
+ ...(opts.model !== undefined ? { model: opts.model } : {}),
152
+ });
153
+ promoted = true;
154
+ }
155
+ else if (reshaping) {
156
+ reshapeNode(nodeId, {
157
+ ...(opts.kind !== undefined ? { kind: opts.kind } : {}),
158
+ ...(opts.model !== undefined ? { model: opts.model } : {}),
159
+ });
160
+ }
161
+ // The refresh-revive is the DAEMON's job: the stophook shuts this broker down
162
+ // on its next stop, and crtrd then sees the dead pid + intent='refresh' and
163
+ // relaunches it fresh. That handoff is silent if the daemon isn't running — the
164
+ // broker exits and nothing ever revives it (the viewer redials its view.sock
165
+ // for ~30s and reports "broker gone"). So ensure the supervisor is alive HERE,
166
+ // before we arm the yield — the same best-effort ensure spawn/recycle do, on
167
+ // the one other path that hands a node off to the daemon. Runs in the fresh
168
+ // `crtr node yield` subprocess, so it always uses current dist (never a stale
169
+ // in-process hook). Injectable for the regression test that locks in this
170
+ // ensure (default = ensureDaemon).
171
+ ensure();
172
+ // Mark the intent; the stophook enacts the shutdown, the daemon the revive.
173
+ transition(nodeId, 'yield');
174
+ const meta = getNode(nodeId);
175
+ return { meta, promoted, willRefresh: true };
176
+ }
@@ -0,0 +1,8 @@
1
+ /** Ask pi headlessly for a concise briefing of `conversation`, async. Invokes
2
+ * `onRecap` with the parsed string on success, or never (silent) on any
3
+ * failure — non-zero exit, timeout, empty/garbled output. Owns the subprocess
4
+ * mechanics — crucially it hands pi an immediate stdin EOF: `pi -p` reads stdin,
5
+ * and execFile's default stdin is an OPEN pipe that never closes, so without
6
+ * this pi blocks waiting for EOF and the call exits non-zero (the same gotcha
7
+ * naming.ts documents). */
8
+ export declare function generateRecap(conversation: string, onRecap: (briefing: string) => void, liveModel?: string, roadmap?: string): void;