cli-jaw 2.17.62 → 2.17.63

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 (360) hide show
  1. package/README.ja.md +17 -17
  2. package/README.ko.md +17 -17
  3. package/README.md +17 -17
  4. package/README.zh-CN.md +17 -17
  5. package/dist/bin/commands/tui/input-handler.js +19 -0
  6. package/dist/bin/commands/tui/input-handler.js.map +1 -1
  7. package/dist/bin/commands/tui/overlays.js +8 -4
  8. package/dist/bin/commands/tui/overlays.js.map +1 -1
  9. package/dist/bin/star-prompt.js +1 -1
  10. package/dist/bin/star-prompt.js.map +1 -1
  11. package/dist/server.js +14 -1
  12. package/dist/server.js.map +1 -1
  13. package/dist/src/agent/claude-runtime-pool.js +2 -1
  14. package/dist/src/agent/claude-runtime-pool.js.map +1 -1
  15. package/dist/src/agent/claude-runtime-run.js +28 -7
  16. package/dist/src/agent/claude-runtime-run.js.map +1 -1
  17. package/dist/src/agent/lifecycle-handler.js +34 -6
  18. package/dist/src/agent/lifecycle-handler.js.map +1 -1
  19. package/dist/src/agent/runtime/claude-sdk-events.js +136 -9
  20. package/dist/src/agent/runtime/claude-sdk-events.js.map +1 -1
  21. package/dist/src/agent/runtime/claude-sdk-history-loader.js +24 -0
  22. package/dist/src/agent/runtime/claude-sdk-history-loader.js.map +1 -0
  23. package/dist/src/agent/runtime/claude-sdk-hooks.js +10 -4
  24. package/dist/src/agent/runtime/claude-sdk-hooks.js.map +1 -1
  25. package/dist/src/agent/runtime/claude-sdk-messages.js +25 -2
  26. package/dist/src/agent/runtime/claude-sdk-messages.js.map +1 -1
  27. package/dist/src/agent/runtime/claude-sdk-options.js +36 -3
  28. package/dist/src/agent/runtime/claude-sdk-options.js.map +1 -1
  29. package/dist/src/agent/runtime/claude-sdk-permissions.js +32 -9
  30. package/dist/src/agent/runtime/claude-sdk-permissions.js.map +1 -1
  31. package/dist/src/agent/runtime/claude-sdk-session.js +165 -17
  32. package/dist/src/agent/runtime/claude-sdk-session.js.map +1 -1
  33. package/dist/src/agent/runtime/claude-sdk-version.js +8 -0
  34. package/dist/src/agent/runtime/claude-sdk-version.js.map +1 -0
  35. package/dist/src/agent/spawn/backend-codex-app.js +619 -0
  36. package/dist/src/agent/spawn/backend-codex-app.js.map +1 -0
  37. package/dist/src/agent/spawn/backend-context.js +2 -0
  38. package/dist/src/agent/spawn/backend-context.js.map +1 -0
  39. package/dist/src/agent/spawn/backend-copilot.js +385 -0
  40. package/dist/src/agent/spawn/backend-copilot.js.map +1 -0
  41. package/dist/src/agent/spawn/backend-native-acp.js +379 -0
  42. package/dist/src/agent/spawn/backend-native-acp.js.map +1 -0
  43. package/dist/src/agent/spawn/backend-pi.js +565 -0
  44. package/dist/src/agent/spawn/backend-pi.js.map +1 -0
  45. package/dist/src/agent/spawn/types.js +2 -0
  46. package/dist/src/agent/spawn/types.js.map +1 -0
  47. package/dist/src/agent/spawn.js +44 -1858
  48. package/dist/src/agent/spawn.js.map +1 -1
  49. package/dist/src/cli/claude-default-model-boot.js +36 -0
  50. package/dist/src/cli/claude-default-model-boot.js.map +1 -0
  51. package/dist/src/cli/claude-model-discovery.js +13 -1
  52. package/dist/src/cli/claude-model-discovery.js.map +1 -1
  53. package/dist/src/cli/claude-models.js +7 -1
  54. package/dist/src/cli/claude-models.js.map +1 -1
  55. package/dist/src/cli/commands.js +5 -15
  56. package/dist/src/cli/commands.js.map +1 -1
  57. package/dist/src/cli/tui/composer.js +3 -3
  58. package/dist/src/cli/tui/composer.js.map +1 -1
  59. package/dist/src/cli/tui/skill-mention.js +15 -0
  60. package/dist/src/cli/tui/skill-mention.js.map +1 -0
  61. package/dist/src/code-mode/manager.js +174 -9
  62. package/dist/src/code-mode/manager.js.map +1 -1
  63. package/dist/src/code-mode/providers/catalog.js +5 -3
  64. package/dist/src/code-mode/providers/catalog.js.map +1 -1
  65. package/dist/src/code-mode/providers/claude-history.js +132 -0
  66. package/dist/src/code-mode/providers/claude-history.js.map +1 -0
  67. package/dist/src/code-mode/providers/claude.js +74 -7
  68. package/dist/src/code-mode/providers/claude.js.map +1 -1
  69. package/dist/src/code-mode/providers/codex-app.js +7 -1
  70. package/dist/src/code-mode/providers/codex-app.js.map +1 -1
  71. package/dist/src/code-mode/session.js +158 -11
  72. package/dist/src/code-mode/session.js.map +1 -1
  73. package/dist/src/code-mode/store.js +416 -28
  74. package/dist/src/code-mode/store.js.map +1 -1
  75. package/dist/src/command-contract/catalog.js +3 -22
  76. package/dist/src/command-contract/catalog.js.map +1 -1
  77. package/dist/src/core/codex-config.js +3 -62
  78. package/dist/src/core/codex-config.js.map +1 -1
  79. package/dist/src/core/config.js +116 -14
  80. package/dist/src/core/config.js.map +1 -1
  81. package/dist/src/core/runtime-settings.js +20 -10
  82. package/dist/src/core/runtime-settings.js.map +1 -1
  83. package/dist/src/core/settings-watch.js +1 -0
  84. package/dist/src/core/settings-watch.js.map +1 -1
  85. package/dist/src/core/skill-mentions.js +83 -0
  86. package/dist/src/core/skill-mentions.js.map +1 -0
  87. package/dist/src/manager/registry.js +5 -1
  88. package/dist/src/manager/registry.js.map +1 -1
  89. package/dist/src/manager/routes/desktop-status.js +1 -1
  90. package/dist/src/manager/routes/desktop-status.js.map +1 -1
  91. package/dist/src/orchestrator/pipeline.js +11 -1
  92. package/dist/src/orchestrator/pipeline.js.map +1 -1
  93. package/dist/src/prompt/builder.js +10 -4
  94. package/dist/src/prompt/builder.js.map +1 -1
  95. package/dist/src/prompt/templates/a1-system.md +1 -1
  96. package/dist/src/routes/code-native.js +51 -3
  97. package/dist/src/routes/code-native.js.map +1 -1
  98. package/dist/src/routes/settings.js +1 -4
  99. package/dist/src/routes/settings.js.map +1 -1
  100. package/dist/src/routes/skills.js +7 -0
  101. package/dist/src/routes/skills.js.map +1 -1
  102. package/dist/src/shared/skill-mention.js +61 -0
  103. package/dist/src/shared/skill-mention.js.map +1 -0
  104. package/dist/src/shared/tool-input.js +137 -0
  105. package/dist/src/shared/tool-input.js.map +1 -0
  106. package/package.json +7 -5
  107. package/public/css/activity.css +83 -20
  108. package/public/css/layout.css +2 -2
  109. package/public/css/sidebar.css +18 -0
  110. package/public/css/variables.css +23 -2
  111. package/public/dist/.vite/manifest.json +302 -334
  112. package/public/dist/assets/Activity-DPLlOJ46.js +1 -0
  113. package/public/dist/assets/AdvancedExport-BgOgGvc5.js +1 -0
  114. package/public/dist/assets/Agent-O_U8ny90.js +1 -0
  115. package/public/dist/assets/Browser-m6VynQXV.js +1 -0
  116. package/public/dist/assets/BrowserPanel-Bb-Bge6B.js +3 -0
  117. package/public/dist/assets/ChannelEnablementControl-BSuKQhTW.js +85 -0
  118. package/public/dist/assets/ChannelSetupEntry-DHLoZEzJ.js +1 -0
  119. package/public/dist/assets/ChannelsDiscord-B-G8vsYy.js +1 -0
  120. package/public/dist/assets/ChannelsSlack-oPuh922z.js +1 -0
  121. package/public/dist/assets/ChannelsTelegram-PmTv43KQ.js +1 -0
  122. package/public/dist/assets/CodeCanvas-CVbdp0S-.js +3 -0
  123. package/public/dist/assets/DashboardMeta-BqEiJrvr.js +1 -0
  124. package/public/dist/assets/DesignPanel-BOb-HMbl.js +2 -0
  125. package/public/dist/assets/{Developer-BdKPcw8Z.js → Developer-CbySB7_Z.js} +1 -1
  126. package/public/dist/assets/{DiffPanel-DtJuvU5y.js → DiffPanel-D9Cch5FG.js} +1 -1
  127. package/public/dist/assets/Display-C0Zdamcb.js +1 -0
  128. package/public/dist/assets/Display-DU4_76cS.js +1 -0
  129. package/public/dist/assets/DocPanel-DvtFw8AP.js +1 -0
  130. package/public/dist/assets/{Embedding-DvdTj1BF.js → Embedding-CCFMOB_2.js} +1 -1
  131. package/public/dist/assets/Employees-BanvF58d.js +1 -0
  132. package/public/dist/assets/FolderPanel-CJvwRwIV.js +3 -0
  133. package/public/dist/assets/Heartbeat-uyi_MpUd.js +1 -0
  134. package/public/dist/assets/InlineWarn-Cq4z28F3.js +1 -0
  135. package/public/dist/assets/MarkdownRenderer-Cc3DeHvm.js +1 -0
  136. package/public/dist/assets/{MarkdownRenderer-DhonsAPC.js → MarkdownRenderer-DzN66XVb.js} +1 -1
  137. package/public/dist/assets/Mcp-rjPoL_Zo.js +4 -0
  138. package/public/dist/assets/Memory-C9I33pIi.js +1 -0
  139. package/public/dist/assets/{MilkdownWysiwygEditor-D6JaLDE4.js → MilkdownWysiwygEditor-xObhviw7.js} +1 -1
  140. package/public/dist/assets/ModelProvider-fiUktMaO.js +1 -0
  141. package/public/dist/assets/Network-CuqFrOvR.js +1 -0
  142. package/public/dist/assets/NotesGraphWorkspace-DO9LtVGF.js +1 -0
  143. package/public/dist/assets/PanelLayoutProvider-DRZ4QkBC.js +1 -0
  144. package/public/dist/assets/Permissions-BltXiZnz.js +1 -0
  145. package/public/dist/assets/{Permissions-BwiMEoTV.js → Permissions-DcCbFMIq.js} +1 -1
  146. package/public/dist/assets/Profile-DUL7-RE_.js +1 -0
  147. package/public/dist/assets/Prompts-C9vY8ivQ.js +1 -0
  148. package/public/dist/assets/SpeechKeys-BJ8V7U5E.js +1 -0
  149. package/public/dist/assets/TelegramHub-DtyjLGFR.js +1 -0
  150. package/public/dist/assets/{TerminalPanel-Bu9i-P2f.js → TerminalPanel-c1xhiy53.js} +1 -1
  151. package/public/dist/assets/app-BjKzqXCv.css +1 -0
  152. package/public/dist/assets/app-CZwx0V6K.js +59 -0
  153. package/public/dist/assets/bgtask-badge-CnVkcp3c.js +1 -0
  154. package/public/dist/assets/{bgtask-badge-DfiHuzxT.js → bgtask-badge-Cp26S8Uq.js} +1 -1
  155. package/public/dist/assets/client-platform-WO8m6kPQ.js +1 -0
  156. package/public/dist/assets/{employees-BQaJNp-u.js → employees-CsvI0_5V.js} +1 -1
  157. package/public/dist/assets/error-normalize-clOi-AAA.js +1 -0
  158. package/public/dist/assets/fields-CicOWY-X.js +1 -0
  159. package/public/dist/assets/iframe-renderer-DWx9v2Iz.js +1 -0
  160. package/public/dist/assets/iframe-renderer-DmHYOI1A.js +142 -0
  161. package/public/dist/assets/{react-C_pPTFsM.js → jsx-runtime-CkEUZM6i.js} +1 -1
  162. package/public/dist/assets/manager-CCXm5Yfe.js +5 -0
  163. package/public/dist/assets/manager-D9rhKFKc.css +1 -0
  164. package/public/dist/assets/manager-shortcuts-Cqmr0mEq.js +1 -0
  165. package/public/dist/assets/{memory-EG1B51up.js → memory-C6qtAMdJ.js} +1 -1
  166. package/public/dist/assets/memory-PPofQPeB.js +1 -0
  167. package/public/dist/assets/message-history-DcjBuubA.js +4 -0
  168. package/public/dist/assets/message-history-bw4qF01Z.js +1 -0
  169. package/public/dist/assets/page-shell-DfinU3mb.js +1 -0
  170. package/public/dist/assets/react-dom-URBLzV3w.js +1 -0
  171. package/public/dist/assets/{render-Dp07lZAJ.js → render-DfYro-fG.js} +1 -1
  172. package/public/dist/assets/{settings-jlI4X-zt.js → settings-CvsLWlJn.js} +38 -30
  173. package/public/dist/assets/settings-DMiQe469.js +1 -0
  174. package/public/dist/assets/settings-DgAlohx9.js +1 -0
  175. package/public/dist/assets/settings-core-BH7J_Rbm.js +1 -0
  176. package/public/dist/assets/{settings-core-B5Uf_lWY.js → settings-core-pnpw-eZv.js} +1 -1
  177. package/public/dist/assets/{settings-embedding-BfWzWKMM.js → settings-embedding-BRW0WZvh.js} +3 -3
  178. package/public/dist/assets/{settings-embedding-DhEdT86W.css → settings-embedding-CUQ8Is3y.css} +1 -1
  179. package/public/dist/assets/settings-types-CYKy0xz4.js +1 -0
  180. package/public/dist/assets/shared-D1begqvi.js +1 -0
  181. package/public/dist/assets/{sidebar-BUemG2ZN.js → sidebar-C_80w4iY.js} +3 -3
  182. package/public/dist/assets/{skills-CKUcEN9m.js → skills-D_2adqge.js} +1 -1
  183. package/public/dist/assets/skills-DeNVAVgt.js +1 -0
  184. package/public/dist/assets/{slash-commands-D34GgHFX.js → slash-commands-B_Hq5RkC.js} +2 -2
  185. package/public/dist/assets/slash-commands-Cj5qoRWc.js +1 -0
  186. package/public/dist/assets/tool-input-DI7uu8Ah.js +2 -0
  187. package/public/dist/assets/{trace-drawer-DBmK-5F_.js → trace-drawer-B6XuPodh.js} +1 -1
  188. package/public/dist/assets/ui-BbR_fFiK.js +1 -0
  189. package/public/dist/assets/{ui-vm2iuLcS.js → ui-D8xzm7DN.js} +1 -1
  190. package/public/dist/index.html +11 -3
  191. package/public/dist/manager/index.html +3 -3
  192. package/public/dist/settings/index.html +2 -2
  193. package/public/index.html +9 -1
  194. package/public/js/features/activity-history.ts +50 -21
  195. package/public/js/features/activity-rows.ts +158 -10
  196. package/public/js/features/activity-view.ts +5 -5
  197. package/public/js/features/chat.ts +2 -0
  198. package/public/js/features/employees.ts +1 -0
  199. package/public/js/features/resize-guard.ts +39 -0
  200. package/public/js/features/settings-cli-status.ts +49 -17
  201. package/public/js/features/settings-types.ts +39 -1
  202. package/public/js/features/skill-mentions.ts +143 -0
  203. package/public/js/main.ts +15 -0
  204. package/public/js/virtual-scroll.ts +67 -1
  205. package/public/locales/en.json +2 -0
  206. package/public/locales/ja.json +2 -0
  207. package/public/locales/ko.json +2 -0
  208. package/public/locales/zh.json +2 -0
  209. package/public/manager/src/AppChrome.tsx +2 -0
  210. package/public/manager/src/InstancePreview.tsx +1 -1
  211. package/public/manager/src/SidebarRailRouter.tsx +3 -1
  212. package/public/manager/src/browser-panel/BrowserPanel.tsx +47 -12
  213. package/public/manager/src/browser-panel/browser-address-state.ts +11 -0
  214. package/public/manager/src/client-platform.ts +18 -0
  215. package/public/manager/src/code/CodeCanvas.tsx +4 -2
  216. package/public/manager/src/code/CodeComposer.tsx +22 -10
  217. package/public/manager/src/code/CodeDraftEmptyState.tsx +64 -0
  218. package/public/manager/src/code/CodeSessionList.tsx +154 -40
  219. package/public/manager/src/code/CodeTranscript.tsx +104 -16
  220. package/public/manager/src/code/CodeWorkbench.tsx +21 -11
  221. package/public/manager/src/code/CodeWorkspaceHeader.tsx +5 -10
  222. package/public/manager/src/code/ComposerFooter.tsx +9 -1
  223. package/public/manager/src/code/code-composer.css +1 -1
  224. package/public/manager/src/code/code-controller-draft-storage.ts +16 -8
  225. package/public/manager/src/code/code-controller-drafts.ts +33 -6
  226. package/public/manager/src/code/code-controller-runtime.ts +189 -17
  227. package/public/manager/src/code/code-controller-types.ts +19 -1
  228. package/public/manager/src/code/code-recent-workspaces.ts +25 -0
  229. package/public/manager/src/code/code-session-client.ts +19 -1
  230. package/public/manager/src/code/code-session-sidebar.css +38 -0
  231. package/public/manager/src/code/code-session-state.ts +2 -0
  232. package/public/manager/src/code/code-types.ts +47 -0
  233. package/public/manager/src/code/code-workbench.css +36 -1
  234. package/public/manager/src/code/code.css +171 -7
  235. package/public/manager/src/code/session-order.ts +80 -0
  236. package/public/manager/src/code/tool-summary.ts +45 -11
  237. package/public/manager/src/folder-panel/folder-shortcuts.ts +5 -9
  238. package/public/manager/src/hooks/useCommandPalette.ts +3 -7
  239. package/public/manager/src/main.tsx +1 -0
  240. package/public/manager/src/manager-components.css +25 -23
  241. package/public/manager/src/manager-dashboard-reminders.css +2 -2
  242. package/public/manager/src/manager-layout.css +1 -1
  243. package/public/manager/src/manager-shortcut-runner.ts +9 -2
  244. package/public/manager/src/manager-shortcuts.ts +83 -21
  245. package/public/manager/src/panels/desktop-bridge.ts +4 -1
  246. package/public/manager/src/panels/panels.css +9 -0
  247. package/public/manager/src/preview.ts +19 -4
  248. package/public/manager/src/settings/pages/AdvancedExport.tsx +28 -30
  249. package/public/manager/src/settings/pages/Browser.tsx +45 -47
  250. package/public/manager/src/settings/pages/ChannelsDiscord.tsx +51 -26
  251. package/public/manager/src/settings/pages/ChannelsSlack.tsx +59 -17
  252. package/public/manager/src/settings/pages/ChannelsTelegram.tsx +51 -26
  253. package/public/manager/src/settings/pages/Display.tsx +2 -1
  254. package/public/manager/src/settings/pages/Employees.tsx +3 -3
  255. package/public/manager/src/settings/pages/Mcp.tsx +220 -200
  256. package/public/manager/src/settings/pages/Memory.tsx +35 -41
  257. package/public/manager/src/settings/pages/ModelProvider.tsx +23 -98
  258. package/public/manager/src/settings/pages/Network.tsx +5 -4
  259. package/public/manager/src/settings/pages/Permissions.tsx +38 -16
  260. package/public/manager/src/settings/pages/Prompts.tsx +12 -9
  261. package/public/manager/src/settings/pages/SpeechKeys.tsx +132 -139
  262. package/public/manager/src/settings/pages/TelegramHub.tsx +67 -20
  263. package/public/manager/src/settings/pages/components/AvatarCard.tsx +9 -8
  264. package/public/manager/src/settings/pages/components/ChannelSetupEntry.tsx +2 -2
  265. package/public/manager/src/settings/pages/components/EmployeeRow.tsx +6 -12
  266. package/public/manager/src/settings/pages/components/HealthBadge.tsx +11 -6
  267. package/public/manager/src/settings/pages/components/HeartbeatJobRow.tsx +35 -16
  268. package/public/manager/src/settings/pages/components/HeartbeatJobsSection.tsx +11 -11
  269. package/public/manager/src/settings/pages/components/HeartbeatMarkdownSection.tsx +7 -7
  270. package/public/manager/src/settings/pages/components/InlineWarn.tsx +4 -9
  271. package/public/manager/src/settings/pages/components/McpServerCard.tsx +39 -27
  272. package/public/manager/src/settings/pages/components/MemoryRow.tsx +21 -16
  273. package/public/manager/src/settings/pages/components/PerCliRow.tsx +122 -121
  274. package/public/manager/src/settings/pages/components/PiProfileDialog.tsx +9 -6
  275. package/public/manager/src/settings/pages/components/SlackSetup.tsx +8 -8
  276. package/public/manager/src/settings/pages/components/TransportStatusChips.tsx +14 -10
  277. package/public/manager/src/settings/pages/components/agent/AgentEmployeesSection.tsx +26 -26
  278. package/public/manager/src/settings/pages/components/agent/PermissionQuickSection.tsx +5 -5
  279. package/public/manager/src/settings/pages/components/agent/RuntimeEmployeeRow.tsx +14 -11
  280. package/public/manager/src/settings/pages/components/agent/RuntimeHeader.tsx +1 -3
  281. package/public/manager/src/settings/pages/components/agent/agent-meta.ts +0 -2
  282. package/public/manager/src/settings/pages/components/runtime-transport-field.tsx +2 -2
  283. package/public/manager/src/settings/pages/manager/Activity.tsx +6 -2
  284. package/public/manager/src/settings/pages/manager/Display.tsx +3 -8
  285. package/public/manager/src/settings/pages/manager/shared.tsx +44 -33
  286. package/public/manager/src/settings/pages/page-shell.tsx +66 -0
  287. package/public/manager/src/settings-agent.css +185 -36
  288. package/public/manager/src/settings-standalone.tsx +1 -0
  289. package/public/manager/src/settings-surface.css +96 -0
  290. package/public/manager/src/types.ts +1 -0
  291. package/scripts/ci/install-ripgrep.sh +35 -0
  292. package/scripts/collect-fresh-install-evidence.sh +2 -2
  293. package/scripts/install-risk-gate.mjs +2 -3
  294. package/scripts/install-wsl.sh +1 -1
  295. package/scripts/install.ps1 +1 -1
  296. package/scripts/install.sh +1 -1
  297. package/scripts/release-1.6.0.sh +1 -1
  298. package/scripts/release-gates.mjs +48 -13
  299. package/scripts/release-preview.sh +2 -2
  300. package/scripts/restack-pr.sh +88 -0
  301. package/scripts/verify-electron-update-metadata.mjs +1 -1
  302. package/scripts/windows-support-contract.json +1 -1
  303. package/public/dist/assets/Activity-BUrp73Re.js +0 -1
  304. package/public/dist/assets/AdvancedExport-B7h_ZvBu.js +0 -1
  305. package/public/dist/assets/Agent-DnbZJP7b.js +0 -1
  306. package/public/dist/assets/Browser-CiBoK5Qx.js +0 -1
  307. package/public/dist/assets/BrowserPanel-SZAUc9T2.js +0 -3
  308. package/public/dist/assets/ChannelEnablementControl-Dl0uYx38.js +0 -85
  309. package/public/dist/assets/ChannelSetupEntry-DxtOrN01.js +0 -1
  310. package/public/dist/assets/ChannelsDiscord-BEGGwd_3.js +0 -1
  311. package/public/dist/assets/ChannelsSlack-BryC2Ahr.js +0 -1
  312. package/public/dist/assets/ChannelsTelegram-CGSpaImJ.js +0 -1
  313. package/public/dist/assets/CodeCanvas-DpkFi5Au.js +0 -2
  314. package/public/dist/assets/DashboardMeta-Dh-tasbY.js +0 -1
  315. package/public/dist/assets/DesignPanel-NLNK9wCo.js +0 -2
  316. package/public/dist/assets/Display-BHGFX3O0.js +0 -1
  317. package/public/dist/assets/Display-BW-_pKRf.js +0 -1
  318. package/public/dist/assets/DocPanel-BM41cYpS.js +0 -1
  319. package/public/dist/assets/Employees-BuFw6-fT.js +0 -1
  320. package/public/dist/assets/FolderPanel-C-eQT3Yq.js +0 -3
  321. package/public/dist/assets/Heartbeat-CIVtKWNc.js +0 -1
  322. package/public/dist/assets/InlineWarn-DIMbcbzk.js +0 -1
  323. package/public/dist/assets/MarkdownRenderer-DyVx6DxM.js +0 -1
  324. package/public/dist/assets/Mcp-uKjor7vh.js +0 -4
  325. package/public/dist/assets/Memory-BSDIXT0B.js +0 -1
  326. package/public/dist/assets/ModelProvider-DMh2tXUx.js +0 -1
  327. package/public/dist/assets/Network-4Pa6JkhK.js +0 -1
  328. package/public/dist/assets/NotesGraphWorkspace-CgdC-fM6.js +0 -1
  329. package/public/dist/assets/PanelLayoutProvider-mn8sI0h-.js +0 -1
  330. package/public/dist/assets/Permissions-CodIW-Yd.js +0 -1
  331. package/public/dist/assets/Profile-DPqrYA44.js +0 -1
  332. package/public/dist/assets/Prompts-CvAx7QqR.js +0 -1
  333. package/public/dist/assets/SpeechKeys-CVBCqoBn.js +0 -1
  334. package/public/dist/assets/TelegramHub-4zKwpk0P.js +0 -1
  335. package/public/dist/assets/app-ByMfeXp-.js +0 -55
  336. package/public/dist/assets/app-DAJWqs33.css +0 -1
  337. package/public/dist/assets/bgtask-badge-Ch88fnhf.js +0 -1
  338. package/public/dist/assets/error-normalize-CL69Bl7z.js +0 -1
  339. package/public/dist/assets/fields-mlGpofqQ.js +0 -1
  340. package/public/dist/assets/iframe-renderer-Bj1JolO8.js +0 -142
  341. package/public/dist/assets/iframe-renderer-DWnvUSrx.js +0 -1
  342. package/public/dist/assets/jsx-runtime-NZYk81nU.js +0 -1
  343. package/public/dist/assets/manager-Bi_xw7TW.js +0 -5
  344. package/public/dist/assets/manager-BnQHAKk6.css +0 -1
  345. package/public/dist/assets/manager-shortcuts-BDOzd8zm.js +0 -1
  346. package/public/dist/assets/memory-Bk_cb3sw.js +0 -1
  347. package/public/dist/assets/message-history-D2vniu04.js +0 -4
  348. package/public/dist/assets/message-history-GAtF_wbZ.js +0 -1
  349. package/public/dist/assets/page-shell-BeGD0rRQ.js +0 -1
  350. package/public/dist/assets/react-dom-DyUOYpVL.js +0 -1
  351. package/public/dist/assets/settings-W4KG9ivu.js +0 -1
  352. package/public/dist/assets/settings-WVGhtneN.js +0 -1
  353. package/public/dist/assets/settings-client-CmwRsVd1.js +0 -1
  354. package/public/dist/assets/settings-core-CgKGnMA5.js +0 -1
  355. package/public/dist/assets/settings-types-D3cd6SWy.js +0 -1
  356. package/public/dist/assets/shared-CiNP20HB.js +0 -1
  357. package/public/dist/assets/skills-Co7Mr-qP.js +0 -1
  358. package/public/dist/assets/slash-commands-BEr-vmIr.js +0 -1
  359. package/public/dist/assets/ui-TUyJsMUf.js +0 -1
  360. package/public/manager/src/settings/pages/components/EngineSubsection.tsx +0 -25
@@ -0,0 +1,565 @@
1
+ // Extracted from spawnAgent (src/agent/spawn.ts). Body moved verbatim; the two
2
+ // destructuring lines bind the same names the branch read from spawnAgent scope.
3
+ import { broadcast } from '../../core/bus.js';
4
+ import { settings } from '../../core/config.js';
5
+ import { insertMessage } from '../../core/db.js';
6
+ import { stripUndefined } from '../../core/strip-undefined.js';
7
+ import { userErrorText } from '../../messaging/redact.js';
8
+ import { appendTraceEvent, finalizeTraceRun, stampTraceTool, startTraceRun } from '../../trace/store.js';
9
+ import { appendBoundedFullText } from '../events/fulltext-bound.js';
10
+ import { emitAgentTool, normalizeAssistantDisplayText } from '../events/helpers.js';
11
+ import { handleAgentExit } from '../lifecycle-handler.js';
12
+ import { beginLiveRun, clearLiveRun, getLiveRun, replaceLiveRunTools, setLiveRunTraceId } from '../live-run-state.js';
13
+ import { bindPiExecutionCancel, normalizePiSettings, openPiRpc } from '../pi-runtime.js';
14
+ import { withHistoryPrompt, withSteerContext } from '../prompt-context.js';
15
+ import { acquirePiRuntime } from '../runtime-pool.js';
16
+ import { handoffRuntimeOutcome } from '../runtime/outcome.js';
17
+ import { PiProjection } from '../runtime/pi-projection.js';
18
+ import { PiRawTrace } from '../runtime/pi-raw-trace.js';
19
+ import { PiRuntimeSession } from '../runtime/pi-runtime-session.js';
20
+ import { piFailureOutcome } from '../runtime/pi-turn.js';
21
+ import { RuntimeProjection } from '../runtime/projection.js';
22
+ import { isCurrentSessionOwner } from '../session-persistence.js';
23
+ import { detectSmokeResponse } from '../smoke-detector.js';
24
+ import { captureExitSettler, settleCapturedExit } from './exit-settle.js';
25
+ import { isLifecycleExitSettleReason, isLifecycleSteerReason } from './kill-reason.js';
26
+ import { ownProcess } from './process-kill.js';
27
+ import { FALLBACK_MAX_RETRIES } from './queue.js';
28
+ import { sliceWithoutSplittingSurrogate } from '../stream-text.js';
29
+ import { attachWatchdog } from '../watchdog.js';
30
+ import crypto from 'node:crypto';
31
+ import { stripSkillMentionBlock } from '../../core/skill-mentions.js';
32
+ export function runPiBackend(backendLocals, backendHost) {
33
+ const { agentLabel, bucketSessionId, cfg, chatSessionId, cleanupPiEmployee, cli, currentBucket, effectiveLiveScope, effort, empSid, empTag, forceNew, historyBlock, isResume, liveScope, mainManaged, mainRun, opts, origin, ownerGeneration, parentLiveScopeForChild, persistenceOwner, prompt, resolve, resultPromise, resumeKey, runPin, runtimeModel, runtimeTransport, scopeKey, slackToolGrant, spawnCwd, spawnEnv, sysPrompt, traceAudience } = backendLocals;
34
+ const { STDERR_BUF_CAP, activeMainProcesses, activeProcesses, appendParentLiveRunTool, broadcastAgentOutput, cancelOwnedPiProcess, clearMainLiveRunOnStop, consumeKillReason, piProfileFingerprintKey, processQueue, queueCtrl, registerActiveProcess, releaseMainRun, stoppedBeforeStart } = backendHost;
35
+ let piExit = captureExitSettler(scopeKey);
36
+ const settlePiExit = () => { settleCapturedExit(scopeKey, piExit); };
37
+ const pi = normalizePiSettings(settings["pi"]);
38
+ const profileId = cfg.provider || pi.defaultProfileId;
39
+ const profile = pi.profiles.find((entry) => entry.id === profileId) || pi.profiles[0];
40
+ if (!profile) {
41
+ throw new Error('Pi profile is not configured');
42
+ }
43
+ const piSessionId = isResume && bucketSessionId ? bucketSessionId : '';
44
+ console.log(`[jaw:pi] isResume=${isResume}, bucketSessionId=${bucketSessionId || 'none'}, piSessionId=${piSessionId || 'new'}`);
45
+ const piPrompt = withSteerContext(piSessionId ? prompt : withHistoryPrompt(prompt, historyBlock), opts.steerContext);
46
+ const traceRunId = startTraceRun({ cli, model: runtimeModel, workingDir: settings["workingDir"] || null, agentLabel, audience: traceAudience, sessionId: chatSessionId, scopeKey });
47
+ const ctx = {
48
+ fullText: '',
49
+ traceLog: [],
50
+ toolLog: [],
51
+ seenToolKeys: new Set(),
52
+ hasClaudeStreamEvents: false,
53
+ runStartedAt: Date.now(),
54
+ ...(opts.requestId ? { requestId: opts.requestId } : {}),
55
+ ...(origin ? { origin } : {}),
56
+ sessionId: null,
57
+ cost: null,
58
+ turns: null,
59
+ duration: null,
60
+ tokens: null,
61
+ stderrBuf: '',
62
+ hasActiveSubAgent: false,
63
+ showReasoning: settings["showReasoning"] === true,
64
+ outputTextStarted: false,
65
+ effectiveProvider: profile.id,
66
+ thinkingBuf: '',
67
+ liveOutputText: '',
68
+ liveScope: effectiveLiveScope,
69
+ parentLiveScope: parentLiveScopeForChild,
70
+ traceRunId,
71
+ traceAudience,
72
+ activityIdentity: { sessionId: chatSessionId, scope: scopeKey },
73
+ };
74
+ const activity = new RuntimeProjection({
75
+ runId: traceRunId, sessionId: chatSessionId, scope: scopeKey,
76
+ turnId: traceRunId, audience: traceAudience,
77
+ ...(opts.runtimeParentItemId ? { parentItemId: opts.runtimeParentItemId } : {}),
78
+ });
79
+ const piProjection = new PiProjection(activity);
80
+ const rawTrace = new PiRawTrace(traceRunId, appendTraceEvent, () => activity.report('persistence'));
81
+ activity.start('pi');
82
+ const onPiRawRecord = (raw) => {
83
+ rawTrace.record(raw);
84
+ piProjection.observeRecord(raw);
85
+ };
86
+ function flushPiThinking() {
87
+ if (!ctx.thinkingBuf)
88
+ return;
89
+ const merged = ctx.thinkingBuf.trim();
90
+ if (merged) {
91
+ const singleLine = merged.replace(/\s+/g, ' ').trim();
92
+ const label = singleLine.length > 120 ? `${singleLine.slice(0, 119)}…` : singleLine;
93
+ const tool = stripUndefined({ icon: '💭', label, toolType: 'thinking', detail: merged });
94
+ stampTraceTool(tool, ctx, 'thinking');
95
+ ctx.toolLog.push(tool);
96
+ if (ctx.liveScope)
97
+ replaceLiveRunTools(ctx.liveScope, ctx.toolLog);
98
+ appendParentLiveRunTool(ctx, tool);
99
+ emitAgentTool(ctx, agentLabel, tool, empTag);
100
+ }
101
+ ctx.thinkingBuf = '';
102
+ }
103
+ const piToolDiscipline = [
104
+ '[Pi Tool Discipline]',
105
+ 'Your available tools are strictly lowercase: read, bash, edit, write, grep, find, ls.',
106
+ 'Capitalized variants (Read, Bash, Edit, Write, Grep, Find, Ls) do NOT exist and will fail.',
107
+ ].join('\n');
108
+ const piSysPrompt = sysPrompt ? `${sysPrompt}\n\n${piToolDiscipline}` : piToolDiscipline;
109
+ const onPiEvent = (event) => {
110
+ piProjection.observe(event);
111
+ try {
112
+ opts.lifecycle?.onActivity?.('pi-rpc');
113
+ }
114
+ catch {
115
+ console.warn('[jaw:pi] activity observer failed');
116
+ }
117
+ if (event.kind === 'thinking') {
118
+ ctx.thinkingBuf = (ctx.thinkingBuf || '') + event.text;
119
+ return;
120
+ }
121
+ if (event.kind === 'text') {
122
+ flushPiThinking();
123
+ const delta = String(event.text || '');
124
+ if (!delta)
125
+ return;
126
+ {
127
+ // D3: bound fullText — see events/fulltext-bound.ts.
128
+ const bounded = appendBoundedFullText(ctx.fullText, delta);
129
+ ctx.fullText = bounded.text;
130
+ if (bounded.truncated)
131
+ ctx.fullTextTruncated = true;
132
+ }
133
+ const displayDelta = normalizeAssistantDisplayText(delta);
134
+ if (ctx.liveOutputText !== undefined) {
135
+ // Bound this too: it is promoted into fullText at close.
136
+ const live = appendBoundedFullText(ctx.liveOutputText, displayDelta);
137
+ ctx.liveOutputText = live.text;
138
+ if (live.truncated)
139
+ ctx.fullTextTruncated = true;
140
+ }
141
+ if (!ctx.outputTextStarted)
142
+ ctx.outputTextStarted = true;
143
+ broadcastAgentOutput(ctx, agentLabel, cli, displayDelta, empTag, traceAudience);
144
+ return;
145
+ }
146
+ if (event.kind === 'tool') {
147
+ flushPiThinking();
148
+ const tool = stripUndefined({ icon: '🔧', label: event.label, status: event.status, detail: event.detail, toolType: 'tool' });
149
+ stampTraceTool(tool, ctx, 'tool');
150
+ ctx.toolLog.push(tool);
151
+ if (ctx.liveScope)
152
+ replaceLiveRunTools(ctx.liveScope, ctx.toolLog);
153
+ appendParentLiveRunTool(ctx, tool);
154
+ emitAgentTool(ctx, agentLabel, tool, empTag);
155
+ return;
156
+ }
157
+ if (event.kind === 'session')
158
+ ctx.sessionId = event.sessionId;
159
+ };
160
+ let piFacade = null;
161
+ let piTurnChild = null;
162
+ let piSendStarted = false;
163
+ const piTurnContext = () => ({
164
+ runId: traceRunId, sessionId: chatSessionId, scope: scopeKey,
165
+ turnId: traceRunId, audience: traceAudience,
166
+ isCurrent: () => isCurrentSessionOwner(persistenceOwner, scopeKey)
167
+ && (mainManaged
168
+ ? activeMainProcesses.get(scopeKey) === mainRun
169
+ : piTurnChild !== null && activeProcesses.get(agentLabel) === piTurnChild),
170
+ });
171
+ const appendPiStderr = (stderr) => {
172
+ if (!stderr || ctx.stderrBuf.length >= STDERR_BUF_CAP)
173
+ return;
174
+ ctx.stderrBuf = sliceWithoutSplittingSurrogate(ctx.stderrBuf + stderr, STDERR_BUF_CAP);
175
+ };
176
+ const onPiFailure = (error, outcome) => {
177
+ appendPiStderr(error.message);
178
+ if (outcome.status !== 'error')
179
+ return;
180
+ const diagnostic = sliceWithoutSplittingSurrogate(userErrorText(error), STDERR_BUF_CAP);
181
+ if (diagnostic.trim() && !ctx.runtimeDiagnostic?.trim())
182
+ ctx.runtimeDiagnostic = diagnostic;
183
+ };
184
+ const onPiStderr = (stderr) => appendPiStderr(stderr);
185
+ const mapPiSend = (child, send) => send.then((outcome) => ({
186
+ text: outcome.finalText ?? outcome.partialText ?? '',
187
+ code: typeof child.exitCode === 'number' ? child.exitCode
188
+ : outcome.status === 'error' ? 1 : 0,
189
+ sessionId: ctx.sessionId ?? piFacade?.nativeSessionId ?? null,
190
+ runtimeOutcome: outcome,
191
+ }));
192
+ const endPiRuntime = (end) => {
193
+ if (piFacade?.claimTurnOutcome(traceRunId)) {
194
+ if (!piFacade.finalizeTurn(traceRunId, end)) {
195
+ console.warn('[jaw:pi] owned finalizer rejected the terminal');
196
+ activity.close(end);
197
+ }
198
+ return;
199
+ }
200
+ if (piSendStarted)
201
+ console.warn('[jaw:pi] missing owned finalizer');
202
+ activity.close(end);
203
+ };
204
+ const runPiTurn = (child, lease, directCleanup, start) => {
205
+ let leaseCancel = null;
206
+ let cleanupDone = false, queueRequested = false;
207
+ let selectedResult;
208
+ const recordResult = (result) => {
209
+ if (selectedResult !== undefined)
210
+ return;
211
+ selectedResult = result;
212
+ if (cleanupDone)
213
+ resolve(result);
214
+ };
215
+ const requestQueue = () => {
216
+ if (cleanupDone)
217
+ void processQueue(scopeKey);
218
+ else
219
+ queueRequested = true;
220
+ };
221
+ const requestCancel = () => {
222
+ if (cleanupDone)
223
+ return Promise.resolve();
224
+ if (!lease) {
225
+ if (cancelOwnedPiProcess(child))
226
+ return Promise.resolve();
227
+ ownProcess(child).terminate('cancel');
228
+ return Promise.resolve();
229
+ }
230
+ leaseCancel ??= lease.cancel();
231
+ return leaseCancel;
232
+ };
233
+ const cancelHook = (reason) => {
234
+ if (cleanupDone)
235
+ return;
236
+ if (isLifecycleExitSettleReason(reason))
237
+ piExit = captureExitSettler(scopeKey);
238
+ void requestCancel();
239
+ };
240
+ if (lease && mainRun)
241
+ mainRun.cancelTurn = cancelHook;
242
+ let piWatchdog;
243
+ let watchdogStopped = false;
244
+ const stopWatchdog = () => { if (!watchdogStopped) {
245
+ watchdogStopped = true;
246
+ piWatchdog?.stop();
247
+ } };
248
+ let setupError;
249
+ try {
250
+ piWatchdog = attachWatchdog(child, agentLabel, (reason) => {
251
+ console.log(`[jaw:watchdog] cancelling ${agentLabel} (pi) — ${reason}`);
252
+ ctx.stallReason = reason;
253
+ void requestCancel();
254
+ });
255
+ ctx.stallWatchdog = piWatchdog;
256
+ if (mainManaged)
257
+ mainRun.process = child;
258
+ else
259
+ registerActiveProcess(agentLabel, child);
260
+ if (!opts.internal)
261
+ broadcast('agent_status', { running: true, agentId: agentLabel, cli, provider: profile.id, ...empTag });
262
+ if (mainManaged && !opts.internal) {
263
+ beginLiveRun(liveScope, cli);
264
+ setLiveRunTraceId(liveScope, traceRunId);
265
+ }
266
+ if (mainManaged && !opts.internal && !opts._skipInsert) {
267
+ insertMessage.run('user', stripSkillMentionBlock(prompt), cli, runtimeModel, settings["workingDir"] || null, chatSessionId);
268
+ }
269
+ if (!opts.internal)
270
+ broadcast('agent_status', { status: 'running', cli, agentId: agentLabel, provider: profile.id, ...empTag }, traceAudience);
271
+ }
272
+ catch (error) {
273
+ setupError = error;
274
+ try {
275
+ void requestCancel().catch(() => { console.warn('[jaw:pi] setup cancellation failed'); });
276
+ }
277
+ catch {
278
+ console.warn('[jaw:pi] setup cancellation failed');
279
+ }
280
+ }
281
+ const releaseLease = async () => {
282
+ try {
283
+ if (leaseCancel)
284
+ await leaseCancel;
285
+ }
286
+ finally {
287
+ if (mainRun?.cancelTurn === cancelHook)
288
+ delete mainRun.cancelTurn;
289
+ consumeKillReason(child.pid);
290
+ if (lease)
291
+ lease.release();
292
+ else {
293
+ let receipt;
294
+ try {
295
+ receipt = await directCleanup ?? undefined;
296
+ }
297
+ catch { /* Missing/rejected evidence never authorizes deletion. */ }
298
+ if (receipt?.cwdDisposition === 'removable')
299
+ cleanupPiEmployee();
300
+ else
301
+ console.warn('[jaw:pi] retaining employee cwd: physical cleanup unconfirmed', spawnCwd);
302
+ }
303
+ }
304
+ };
305
+ const done = start();
306
+ done.then(async (result) => {
307
+ if (setupError !== undefined)
308
+ throw setupError;
309
+ if (result.runtimeOutcome !== undefined)
310
+ handoffRuntimeOutcome(ctx, result.runtimeOutcome);
311
+ const killReason = consumeKillReason(child.pid);
312
+ stopWatchdog();
313
+ flushPiThinking();
314
+ if (result.sessionId)
315
+ ctx.sessionId = result.sessionId;
316
+ if (!ctx.fullText && result.text)
317
+ ctx.fullText = result.text;
318
+ try {
319
+ opts.lifecycle?.onExit?.(result.code);
320
+ }
321
+ catch {
322
+ console.warn('[jaw:pi] exit observer failed');
323
+ }
324
+ const wasKilled = !!killReason;
325
+ const wasSteer = isLifecycleSteerReason(killReason);
326
+ const smokeResult = detectSmokeResponse(ctx.fullText, ctx.toolLog, result.code, cli);
327
+ return handleAgentExit({
328
+ onRuntimeEnd: endPiRuntime,
329
+ ctx, code: result.code, cli, model: runtimeModel, effectiveProvider: profile.id, agentLabel, mainManaged, origin,
330
+ killReason,
331
+ resumeKey,
332
+ prompt, opts, cfg, ownerGeneration, persistenceOwner, forceNew, empSid,
333
+ isResume: false, wasKilled, wasSteer, smokeResult,
334
+ effortDefault: 'medium', costLine: '',
335
+ resolve: recordResult,
336
+ activeProcesses,
337
+ scopeKey,
338
+ runtimeTransport,
339
+ scopedBucket: currentBucket,
340
+ chatSessionId,
341
+ childProcess: child,
342
+ releaseMainRun: (scope, process, generation) => activeMainProcesses.get(scope) === mainRun
343
+ && releaseMainRun(scope, process, generation),
344
+ retryState: queueCtrl.retryStateForScope(scopeKey),
345
+ fallbackState: queueCtrl.fallbackStateForScope(scopeKey),
346
+ fallbackMaxRetries: FALLBACK_MAX_RETRIES,
347
+ processQueue: requestQueue,
348
+ });
349
+ }, async (err) => {
350
+ if (setupError !== undefined)
351
+ throw setupError;
352
+ const failedOutcome = piFailureOutcome(err);
353
+ if (failedOutcome !== undefined)
354
+ handoffRuntimeOutcome(ctx, failedOutcome);
355
+ const killReason = consumeKillReason(child.pid);
356
+ const wasKilled = !!killReason;
357
+ const wasSteer = isLifecycleSteerReason(killReason);
358
+ stopWatchdog();
359
+ appendPiStderr(err.message);
360
+ console.error('[jaw:pi] runtime failed:', userErrorText(err));
361
+ return handleAgentExit({
362
+ onRuntimeEnd: endPiRuntime,
363
+ ctx, code: 1, cli, model: runtimeModel, effectiveProvider: profile.id, agentLabel, mainManaged, origin,
364
+ killReason,
365
+ resumeKey,
366
+ prompt, opts, cfg, ownerGeneration, persistenceOwner, forceNew, empSid,
367
+ isResume: false, wasKilled, wasSteer, smokeResult: detectSmokeResponse('', [], 1, cli),
368
+ effortDefault: 'medium', costLine: '',
369
+ resolve: recordResult,
370
+ activeProcesses,
371
+ scopeKey,
372
+ runtimeTransport,
373
+ scopedBucket: currentBucket,
374
+ chatSessionId,
375
+ childProcess: child,
376
+ releaseMainRun: (scope, process, generation) => activeMainProcesses.get(scope) === mainRun
377
+ && releaseMainRun(scope, process, generation),
378
+ retryState: queueCtrl.retryStateForScope(scopeKey),
379
+ fallbackState: queueCtrl.fallbackStateForScope(scopeKey),
380
+ fallbackMaxRetries: FALLBACK_MAX_RETRIES,
381
+ processQueue: requestQueue,
382
+ });
383
+ }).catch((handleErr) => {
384
+ endPiRuntime({ kind: 'turn-end', status: 'error', finalText: null, error: 'Lifecycle failed' });
385
+ console.error('[jaw:lifecycle] handleAgentExit failed (Pi):', handleErr.message);
386
+ try {
387
+ finalizeTraceRun(traceRunId, 'error', 'Lifecycle failed', { onlyIfRunning: true });
388
+ }
389
+ catch {
390
+ console.warn('[runtime] Pi lifecycle trace finalization failed');
391
+ }
392
+ if (mainManaged && activeMainProcesses.get(scopeKey) === mainRun) {
393
+ if (releaseMainRun(scopeKey, mainRun.process, ownerGeneration) && !opts.internal)
394
+ requestQueue();
395
+ if (getLiveRun(liveScope).traceRunId === traceRunId)
396
+ clearLiveRun(liveScope);
397
+ }
398
+ else if (!mainManaged && activeProcesses.get(agentLabel) === child)
399
+ activeProcesses.delete(agentLabel);
400
+ recordResult({ text: ctx.runtimeOutcome?.finalText ?? '', code: 1,
401
+ ...(ctx.runtimeOutcome === undefined ? {} : { runtimeOutcome: { ...ctx.runtimeOutcome } }) });
402
+ }).finally(async () => {
403
+ try {
404
+ stopWatchdog();
405
+ await releaseLease();
406
+ }
407
+ catch {
408
+ console.warn('[jaw:pi] runtime cleanup failed');
409
+ recordResult({ text: '', code: 1 });
410
+ }
411
+ finally {
412
+ cleanupDone = true;
413
+ settlePiExit();
414
+ if (queueRequested)
415
+ void processQueue(scopeKey);
416
+ if (selectedResult !== undefined)
417
+ resolve(selectedResult);
418
+ }
419
+ });
420
+ };
421
+ if (opts.agentId) {
422
+ let opened;
423
+ try {
424
+ opened = openPiRpc(profile, pi, {
425
+ model: runtimeModel,
426
+ ...(piSessionId ? { sessionId: piSessionId } : {}),
427
+ effort, cwd: spawnCwd, env: spawnEnv,
428
+ onEvent: onPiEvent, onRawRecord: onPiRawRecord,
429
+ });
430
+ }
431
+ catch (error) {
432
+ activity.close({ kind: 'turn-end', status: 'error', finalText: null, error: 'Pi process creation failed' });
433
+ finalizeTraceRun(traceRunId, 'error', 'Pi process creation failed');
434
+ cleanupPiEmployee();
435
+ throw error;
436
+ }
437
+ piTurnChild = opened.child;
438
+ piFacade = new PiRuntimeSession(opened, {
439
+ lifetime: 'oneshot',
440
+ provider: 'pi',
441
+ deferTurnEnd: true,
442
+ projection: activity,
443
+ getTurnContext: piTurnContext,
444
+ ...(effort ? { effort } : {}),
445
+ onPiEvent,
446
+ onRawRecord: onPiRawRecord,
447
+ onFailure: onPiFailure,
448
+ onStderr: onPiStderr,
449
+ });
450
+ bindPiExecutionCancel(opened.child, () => { void piFacade.cancel(); });
451
+ runPiTurn(opened.child, null, opened.cleanup, () => {
452
+ piSendStarted = true;
453
+ return mapPiSend(opened.child, piFacade.send({ text: `${piSysPrompt}\n\n${piPrompt}` }, () => { }));
454
+ });
455
+ return { child: opened.child, promise: resultPromise };
456
+ }
457
+ const profileFp = crypto.createHmac('sha256', piProfileFingerprintKey)
458
+ .update(profile.apiKey || '')
459
+ .digest('hex')
460
+ .slice(0, 12);
461
+ mainRun.starting = true;
462
+ let piAcquireStopReason;
463
+ const cancelPiAcquire = (reason) => {
464
+ piAcquireStopReason ??= reason;
465
+ clearMainLiveRunOnStop(scopeKey, reason);
466
+ };
467
+ const finishPiAcquire = () => {
468
+ mainRun.starting = false;
469
+ if (mainRun.cancelPending === cancelPiAcquire)
470
+ delete mainRun.cancelPending;
471
+ };
472
+ const abandonPiAcquire = () => {
473
+ activity.close({ kind: 'turn-end', status: 'stopped', finalText: null });
474
+ try {
475
+ finalizeTraceRun(traceRunId, 'interrupted');
476
+ }
477
+ catch {
478
+ console.warn('[runtime] Pi cancelled acquisition trace finalization failed');
479
+ }
480
+ if (activeMainProcesses.get(scopeKey) === mainRun) {
481
+ if (getLiveRun(liveScope).traceRunId === traceRunId)
482
+ clearLiveRun(liveScope);
483
+ releaseMainRun(scopeKey, null, ownerGeneration);
484
+ }
485
+ settlePiExit();
486
+ resolve(stoppedBeforeStart(piAcquireStopReason, traceRunId));
487
+ };
488
+ mainRun.cancelPending = cancelPiAcquire;
489
+ void acquirePiRuntime({
490
+ key: {
491
+ scopeKey,
492
+ cwd: spawnCwd,
493
+ profileId: profile.id,
494
+ fullEndpoint: profile.endpoint,
495
+ apiKind: profile.apiKind,
496
+ model: runtimeModel,
497
+ effort,
498
+ profileFp,
499
+ },
500
+ piSettings: pi,
501
+ env: spawnEnv,
502
+ storedSessionId: piSessionId || null,
503
+ instructions: piSysPrompt,
504
+ forceNew: forceNew || Boolean(slackToolGrant),
505
+ }).then((lease) => {
506
+ finishPiAcquire();
507
+ if (piAcquireStopReason !== undefined || activeMainProcesses.get(scopeKey) !== mainRun || !isCurrentSessionOwner(persistenceOwner, scopeKey)) {
508
+ lease.release();
509
+ abandonPiAcquire();
510
+ return;
511
+ }
512
+ ctx.sessionId = lease.session.sessionId;
513
+ console.log(`[jaw:pi:pool] reused=${lease.reused} sessionId=${lease.session.sessionId || 'new'}`);
514
+ piTurnChild = lease.session.child;
515
+ piFacade = new PiRuntimeSession(lease.session, {
516
+ lifetime: 'pooled',
517
+ provider: 'pi',
518
+ deferTurnEnd: true,
519
+ projection: activity,
520
+ getTurnContext: piTurnContext,
521
+ ...(effort ? { effort } : {}),
522
+ onPiEvent,
523
+ onRawRecord: onPiRawRecord,
524
+ onFailure: onPiFailure,
525
+ onStderr: onPiStderr,
526
+ });
527
+ runPiTurn(lease.session.child, lease, null, () => {
528
+ piSendStarted = true;
529
+ return mapPiSend(lease.session.child, piFacade.send({ text: piPrompt }, () => { }));
530
+ });
531
+ }).catch((err) => {
532
+ finishPiAcquire();
533
+ if (piAcquireStopReason !== undefined) {
534
+ abandonPiAcquire();
535
+ return;
536
+ }
537
+ console.error(`[jaw:pi:pool] acquire failed: ${err.message}`);
538
+ activity.close({ kind: 'turn-end', status: 'error', finalText: null, error: 'Pi acquisition failed' });
539
+ try {
540
+ finalizeTraceRun(traceRunId, 'error', 'Pi acquisition failed');
541
+ }
542
+ catch {
543
+ console.warn('[runtime] Pi acquisition trace finalization failed');
544
+ }
545
+ const ownsRun = activeMainProcesses.get(scopeKey) === mainRun;
546
+ if (ownsRun) {
547
+ clearLiveRun(liveScope);
548
+ try {
549
+ broadcast('agent_status', { running: false, agentId: agentLabel });
550
+ broadcast('agent_done', { ...runPin, text: `❌ Pi RPC acquire failed: ${err.message}`, error: true, origin }, 'public');
551
+ }
552
+ catch {
553
+ console.warn('[jaw:pi] acquisition diagnostic delivery failed');
554
+ }
555
+ releaseMainRun(scopeKey, null, ownerGeneration);
556
+ }
557
+ resolve({ text: '', code: 1 });
558
+ if (ownsRun) {
559
+ settlePiExit();
560
+ void processQueue(scopeKey);
561
+ }
562
+ });
563
+ return { child: null, promise: resultPromise };
564
+ }
565
+ //# sourceMappingURL=backend-pi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend-pi.js","sourceRoot":"","sources":["../../../../src/agent/spawn/backend-pi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/agent/spawn/types.ts"],"names":[],"mappings":""}