@namzu/cli 36.2.0 → 36.3.1

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 (297) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/bin.js +1 -1
  3. package/dist/chunks/{acp-P22WRX3A.js → acp-CJ2TTGJD.js} +58 -34
  4. package/dist/chunks/acp-CJ2TTGJD.js.map +6 -0
  5. package/dist/chunks/{activity-command-OK463NV4.js → activity-command-MCYEK4Z4.js} +10 -10
  6. package/dist/chunks/{add-ML53TFN2.js → add-ZQ3YWP4F.js} +16 -16
  7. package/dist/chunks/{agent-3ST7Q6HZ.js → agent-UO62HZPI.js} +22 -22
  8. package/dist/chunks/agent-session-DU55LD4P.js +46 -0
  9. package/dist/chunks/{archive-WV2NBOHR.js → archive-VPREZOGC.js} +8 -8
  10. package/dist/chunks/{bin-main-FPJQMK33.js → bin-main-J5ULRXXN.js} +3 -3
  11. package/dist/chunks/{browser-JRWZ3PYX.js → browser-FZWYOIIJ.js} +6 -6
  12. package/dist/chunks/{chat-3IJFKDSN.js → chat-BGWKKQTT.js} +13 -13
  13. package/dist/chunks/{chunk-S7E42272.js → chunk-2BZOT2CT.js} +2 -2
  14. package/dist/chunks/{chunk-LIZPXS73.js → chunk-3F5DGROG.js} +2 -2
  15. package/dist/chunks/{chunk-KNNQHRZ4.js → chunk-46B7KRXY.js} +6 -6
  16. package/dist/chunks/{chunk-PT7TZNBV.js → chunk-52OVP5BG.js} +4 -4
  17. package/dist/chunks/{chunk-X2YRM3UE.js → chunk-56OUKG5W.js} +3 -3
  18. package/dist/chunks/{chunk-HJ42RG5U.js → chunk-5URT3ZM2.js} +4 -4
  19. package/dist/chunks/{chunk-GWOW3U2S.js → chunk-6TDJXZ5W.js} +4 -4
  20. package/dist/chunks/chunk-74KMYYM2.js +755 -0
  21. package/dist/chunks/chunk-74KMYYM2.js.map +6 -0
  22. package/dist/chunks/{chunk-43FBWINL.js → chunk-AEPAIDAA.js} +5 -5
  23. package/dist/chunks/{chunk-7WQV2FSF.js → chunk-AHYHR5DY.js} +3 -3
  24. package/dist/chunks/{chunk-XAKL7C7B.js → chunk-AP5KD43Y.js} +2 -2
  25. package/dist/chunks/{chunk-NRML7BIR.js → chunk-AS7UWXMN.js} +4 -4
  26. package/dist/chunks/{chunk-QQLB573I.js → chunk-BOV53LZO.js} +2 -2
  27. package/dist/chunks/{chunk-GPBUDMUF.js → chunk-BUCICQWG.js} +2 -2
  28. package/dist/chunks/{chunk-OS7IVIYH.js → chunk-CXSUA2PF.js} +242 -3
  29. package/dist/chunks/{chunk-OS7IVIYH.js.map → chunk-CXSUA2PF.js.map} +3 -3
  30. package/dist/chunks/{chunk-5PQVJBIO.js → chunk-CZVHXYGD.js} +6 -3
  31. package/dist/chunks/{chunk-5PQVJBIO.js.map → chunk-CZVHXYGD.js.map} +1 -1
  32. package/dist/chunks/{chunk-CFN7CUD3.js → chunk-DYUOXP5Q.js} +13 -13
  33. package/dist/chunks/{chunk-G5XTLTDR.js → chunk-E7HLYLD7.js} +3 -3
  34. package/dist/chunks/{chunk-ABD2DOO2.js → chunk-EKUJUPFA.js} +4 -4
  35. package/dist/chunks/{chunk-AABPCENY.js → chunk-F3YQ2CSZ.js} +4 -4
  36. package/dist/chunks/{chunk-2VXA7GZU.js → chunk-FU4GQ7K2.js} +2 -2
  37. package/dist/chunks/{chunk-VHKKPDL2.js → chunk-GQN64E36.js} +3 -3
  38. package/dist/chunks/{chunk-AL6ESCHD.js → chunk-GSHSAMZJ.js} +12 -12
  39. package/dist/chunks/{chunk-H7VJHF5S.js → chunk-H6MWKPHM.js} +1030 -264
  40. package/dist/chunks/chunk-H6MWKPHM.js.map +6 -0
  41. package/dist/chunks/{chunk-3OZ2OBGU.js → chunk-HKDPP2JF.js} +2 -2
  42. package/dist/chunks/{chunk-YZ675PG4.js → chunk-HSEJGSXE.js} +2 -2
  43. package/dist/chunks/{chunk-ZXWJ6G3J.js → chunk-I6CDUPVR.js} +2 -2
  44. package/dist/chunks/{chunk-27VZRJTG.js → chunk-IQBR45AU.js} +2 -2
  45. package/dist/chunks/{chunk-HIZ7F6BT.js → chunk-JCDTR2ZU.js} +4 -4
  46. package/dist/chunks/{chunk-53EZXXT4.js → chunk-KHF4IAIH.js} +27 -9
  47. package/dist/chunks/chunk-KHF4IAIH.js.map +6 -0
  48. package/dist/chunks/{chunk-ZNAH4EGP.js → chunk-KMHLON54.js} +2 -2
  49. package/dist/chunks/{chunk-CXLSM5SH.js → chunk-KOG2WB66.js} +4 -4
  50. package/dist/chunks/{chunk-AGHVC2IJ.js → chunk-LBH5WVXU.js} +2 -2
  51. package/dist/chunks/{chunk-NKEOCU52.js → chunk-LNQ6SCBF.js} +7 -7
  52. package/dist/chunks/{chunk-22P25PLK.js → chunk-LYDXPWAZ.js} +22 -4
  53. package/dist/chunks/{chunk-22P25PLK.js.map → chunk-LYDXPWAZ.js.map} +1 -1
  54. package/dist/chunks/{chunk-YEFJAE2B.js → chunk-M32YRERZ.js} +27 -26
  55. package/dist/chunks/{chunk-YEFJAE2B.js.map → chunk-M32YRERZ.js.map} +1 -1
  56. package/dist/chunks/{chunk-U5AWHJ7O.js → chunk-MBBFX64S.js} +2 -2
  57. package/dist/chunks/{chunk-PJ3UYK2K.js → chunk-MJO6CH5F.js} +3 -3
  58. package/dist/chunks/{chunk-AVIW5JJF.js → chunk-NATYSTPM.js} +2 -2
  59. package/dist/chunks/{chunk-KQOIPRZ5.js → chunk-QRT3N2K3.js} +2 -2
  60. package/dist/chunks/{chunk-DYBUCWAB.js → chunk-QXDKRJZ5.js} +3 -3
  61. package/dist/chunks/{chunk-EOO5AKO4.js → chunk-RBX6RVYO.js} +6 -6
  62. package/dist/chunks/{chunk-VSUHR44P.js → chunk-RM6HTBJK.js} +2 -2
  63. package/dist/chunks/{chunk-YLIKDPD6.js → chunk-S6DK2YOB.js} +9 -9
  64. package/dist/chunks/{chunk-WW4VKEBD.js → chunk-S6MZK4LD.js} +2 -2
  65. package/dist/chunks/{chunk-ZZ6Z2DO6.js → chunk-UFTNEQFN.js} +10 -10
  66. package/dist/chunks/{chunk-7OEK2NAO.js → chunk-UXGI3FE5.js} +8 -8
  67. package/dist/chunks/{chunk-ZKTLXAQK.js → chunk-V3ZLK3XQ.js} +3243 -1041
  68. package/dist/chunks/chunk-V3ZLK3XQ.js.map +6 -0
  69. package/dist/chunks/{chunk-WNMRETWS.js → chunk-VUOS5SQ3.js} +2 -2
  70. package/dist/chunks/{chunk-YTJO7G24.js → chunk-XCWZZZOW.js} +3 -3
  71. package/dist/chunks/{chunk-RPAHIOW6.js → chunk-YYQFUKI7.js} +3 -3
  72. package/dist/chunks/{chunk-5GARJ3CK.js → chunk-YYVDLVUM.js} +2 -2
  73. package/dist/chunks/{chunk-HQZSTYKY.js → chunk-ZB5ETOVE.js} +3 -3
  74. package/dist/chunks/{chunk-GFSD2D3M.js → chunk-ZG6NVROB.js} +2 -2
  75. package/dist/chunks/{chunk-MBGQS5YA.js → chunk-ZHBHRMCI.js} +4 -4
  76. package/dist/chunks/{cli-runtime-CQKITOHY.js → cli-runtime-NG23IVRM.js} +8 -8
  77. package/dist/chunks/{commands-UEPVSG33.js → commands-LQISMOPF.js} +5 -5
  78. package/dist/chunks/{crash-report-3GQ3SJML.js → crash-report-EYK56MJJ.js} +6 -6
  79. package/dist/chunks/{dist-YDFJ4YOH.js → dist-3AMBKAG4.js} +2 -2
  80. package/dist/chunks/{dist-SCEJQJFY.js → dist-AUDNCB3F.js} +2 -2
  81. package/dist/chunks/{dist-FFMNE5LK.js → dist-AZJ56DQJ.js} +2 -2
  82. package/dist/chunks/{dist-IPJVDPA3.js → dist-DWB5AYXB.js} +2 -2
  83. package/dist/chunks/{dist-VJ2UQYSX.js → dist-EDKLCZY4.js} +2 -2
  84. package/dist/chunks/{dist-Q37IZHCW.js → dist-PZXF5NU3.js} +2 -2
  85. package/dist/chunks/{dist-AMYVT2VT.js → dist-XT4V74YL.js} +2 -2
  86. package/dist/chunks/{doctor-YWK25HGQ.js → doctor-3EOUWDYB.js} +6 -6
  87. package/dist/chunks/{drain-5R73B66Y.js → drain-VKGTCFXC.js} +10 -10
  88. package/dist/chunks/{eval-GYPUHRIK.js → eval-VHWEJ4GG.js} +2 -2
  89. package/dist/chunks/{exec-AHAC6YBQ.js → exec-TBNI5CDH.js} +149 -41
  90. package/dist/chunks/exec-TBNI5CDH.js.map +6 -0
  91. package/dist/chunks/{home-GI6TRZAN.js → home-H4GTIYO5.js} +3 -3
  92. package/dist/chunks/{host-queries-MN57UTDU.js → host-queries-AIZVYFDQ.js} +13 -13
  93. package/dist/chunks/{lifecycle-7LD634AQ.js → lifecycle-UF7VDCOQ.js} +23 -23
  94. package/dist/chunks/{list-DSHTQRTP.js → list-JJZ7I5OF.js} +12 -12
  95. package/dist/chunks/{login-R5P2OAXZ.js → login-T2RKNHK2.js} +8 -8
  96. package/dist/chunks/{logs-SGPSXLBY.js → logs-J6D4SEDY.js} +4 -4
  97. package/dist/chunks/{mcp-MC6B34XH.js → mcp-WONRVJ26.js} +15 -15
  98. package/dist/chunks/{message-command-4MV2SVHP.js → message-command-BGQB2TFW.js} +29 -29
  99. package/dist/chunks/{operator-tools-GI63VOXH.js → operator-tools-H4MYC5PE.js} +11 -11
  100. package/dist/chunks/{output-schema-74VSN66J.js → output-schema-RFJUTQ2N.js} +3 -3
  101. package/dist/chunks/{pal-BWPYGQ4B.js → pal-AV7AD5MG.js} +11 -11
  102. package/dist/chunks/{providers-YV45XVWS.js → providers-BHF65IUG.js} +6 -6
  103. package/dist/chunks/{resident-OC2D5V5I.js → resident-YF3MIILM.js} +18 -18
  104. package/dist/chunks/{resume-command-DZBKOABY.js → resume-command-Y3NYDSI4.js} +4 -4
  105. package/dist/chunks/{schedule-GUD625PJ.js → schedule-6T2MNPKK.js} +8 -8
  106. package/dist/chunks/{service-67FZ3N75.js → service-2VASPD2V.js} +22 -22
  107. package/dist/chunks/session-step-LJ24HVLF.js +26 -0
  108. package/dist/chunks/{skills-DNNEKEOH.js → skills-K3JRZ3IR.js} +8 -8
  109. package/dist/chunks/{state-K7MMFNZC.js → state-QPSQI7U7.js} +2 -2
  110. package/dist/chunks/{store-2PDDGKYZ.js → store-7WZWQXKX.js} +6 -6
  111. package/dist/chunks/{store-NIBJFQOT.js → store-PSQKDEPY.js} +8 -8
  112. package/dist/chunks/{store-KYMOKW6X.js → store-Z3PS6LUZ.js} +4 -4
  113. package/dist/chunks/{tui-UY3ZLTMX.js → tui-GNG3YLGE.js} +2536 -1325
  114. package/dist/chunks/tui-GNG3YLGE.js.map +6 -0
  115. package/dist/chunks/{upgrade-2NO7NPPM.js → upgrade-C6QUXRLB.js} +3 -3
  116. package/dist/chunks/{worktree-ADQJ4AJ5.js → worktree-KLD2PAMU.js} +10 -10
  117. package/dist/cli.d.ts.map +1 -1
  118. package/dist/commands/acp-harness.d.ts.map +1 -1
  119. package/dist/commands/desktop-host-pr.d.ts +14 -0
  120. package/dist/commands/desktop-host-pr.d.ts.map +1 -0
  121. package/dist/commands/desktop-host.d.ts +3 -0
  122. package/dist/commands/desktop-host.d.ts.map +1 -1
  123. package/dist/commands/exec-json.d.ts.map +1 -1
  124. package/dist/commands/exec-workflows.d.ts +50 -0
  125. package/dist/commands/exec-workflows.d.ts.map +1 -0
  126. package/dist/commands/exec.d.ts.map +1 -1
  127. package/dist/config/load.d.ts.map +1 -1
  128. package/dist/config/schema.d.ts +13 -0
  129. package/dist/config/schema.d.ts.map +1 -1
  130. package/dist/index.js +9 -9
  131. package/dist/integrations/resident/runner-worker.js +16 -16
  132. package/dist/integrations/subagents/activity.d.ts +19 -0
  133. package/dist/integrations/subagents/activity.d.ts.map +1 -1
  134. package/dist/integrations/subagents/runtime.d.ts +52 -0
  135. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  136. package/dist/integrations/workflows/doctrine.d.ts +7 -0
  137. package/dist/integrations/workflows/doctrine.d.ts.map +1 -0
  138. package/dist/integrations/workflows/history.d.ts +13 -0
  139. package/dist/integrations/workflows/history.d.ts.map +1 -0
  140. package/dist/integrations/workflows/host.d.ts +59 -0
  141. package/dist/integrations/workflows/host.d.ts.map +1 -0
  142. package/dist/integrations/workflows/notice.d.ts +21 -0
  143. package/dist/integrations/workflows/notice.d.ts.map +1 -0
  144. package/dist/integrations/workflows/offering.d.ts +40 -0
  145. package/dist/integrations/workflows/offering.d.ts.map +1 -0
  146. package/dist/integrations/workflows/registry.d.ts +85 -0
  147. package/dist/integrations/workflows/registry.d.ts.map +1 -0
  148. package/dist/integrations/workflows/view.d.ts +97 -0
  149. package/dist/integrations/workflows/view.d.ts.map +1 -0
  150. package/dist/tui/AgentExplorer.d.ts +179 -32
  151. package/dist/tui/AgentExplorer.d.ts.map +1 -1
  152. package/dist/tui/App.d.ts.map +1 -1
  153. package/dist/tui/BackgroundJobsPanel.d.ts.map +1 -1
  154. package/dist/tui/BrandHeader.d.ts +3 -1
  155. package/dist/tui/BrandHeader.d.ts.map +1 -1
  156. package/dist/tui/Composer.d.ts +23 -1
  157. package/dist/tui/Composer.d.ts.map +1 -1
  158. package/dist/tui/ComposerFrame.d.ts +10 -3
  159. package/dist/tui/ComposerFrame.d.ts.map +1 -1
  160. package/dist/tui/LiveActivity.d.ts +4 -0
  161. package/dist/tui/LiveActivity.d.ts.map +1 -1
  162. package/dist/tui/PendingInputPanel.d.ts +14 -11
  163. package/dist/tui/PendingInputPanel.d.ts.map +1 -1
  164. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  165. package/dist/tui/StatusBar.d.ts +61 -36
  166. package/dist/tui/StatusBar.d.ts.map +1 -1
  167. package/dist/tui/Transcript.d.ts +14 -0
  168. package/dist/tui/Transcript.d.ts.map +1 -1
  169. package/dist/tui/agent-transcript-rows.d.ts +34 -12
  170. package/dist/tui/agent-transcript-rows.d.ts.map +1 -1
  171. package/dist/tui/agent.d.ts +49 -1
  172. package/dist/tui/agent.d.ts.map +1 -1
  173. package/dist/tui/job-exit-row.d.ts +19 -0
  174. package/dist/tui/job-exit-row.d.ts.map +1 -0
  175. package/dist/tui/permission-review.d.ts +26 -0
  176. package/dist/tui/permission-review.d.ts.map +1 -1
  177. package/dist/tui/pr-status.d.ts +112 -0
  178. package/dist/tui/pr-status.d.ts.map +1 -0
  179. package/dist/tui/shell-cell.d.ts +86 -0
  180. package/dist/tui/shell-cell.d.ts.map +1 -0
  181. package/dist/tui/shorten-path.d.ts +10 -0
  182. package/dist/tui/shorten-path.d.ts.map +1 -0
  183. package/dist/tui/slashCommands.d.ts +4 -0
  184. package/dist/tui/slashCommands.d.ts.map +1 -1
  185. package/dist/tui/theme.d.ts +6 -0
  186. package/dist/tui/theme.d.ts.map +1 -1
  187. package/dist/tui/tidy-tool-output.d.ts +5 -0
  188. package/dist/tui/tidy-tool-output.d.ts.map +1 -1
  189. package/dist/tui/types.d.ts +10 -1
  190. package/dist/tui/types.d.ts.map +1 -1
  191. package/dist/tui/use-pr-status.d.ts +15 -0
  192. package/dist/tui/use-pr-status.d.ts.map +1 -0
  193. package/dist/tui/workflow-runs.d.ts +42 -0
  194. package/dist/tui/workflow-runs.d.ts.map +1 -0
  195. package/package.json +7 -7
  196. package/dist/chunks/acp-P22WRX3A.js.map +0 -6
  197. package/dist/chunks/agent-session-C2HDOXK4.js +0 -46
  198. package/dist/chunks/chunk-53EZXXT4.js.map +0 -6
  199. package/dist/chunks/chunk-H7VJHF5S.js.map +0 -6
  200. package/dist/chunks/chunk-L6FMG3R6.js +0 -380
  201. package/dist/chunks/chunk-L6FMG3R6.js.map +0 -6
  202. package/dist/chunks/chunk-ZKTLXAQK.js.map +0 -6
  203. package/dist/chunks/exec-AHAC6YBQ.js.map +0 -6
  204. package/dist/chunks/session-step-YNMU75FQ.js +0 -26
  205. package/dist/chunks/tui-UY3ZLTMX.js.map +0 -6
  206. /package/dist/chunks/{activity-command-OK463NV4.js.map → activity-command-MCYEK4Z4.js.map} +0 -0
  207. /package/dist/chunks/{add-ML53TFN2.js.map → add-ZQ3YWP4F.js.map} +0 -0
  208. /package/dist/chunks/{agent-3ST7Q6HZ.js.map → agent-UO62HZPI.js.map} +0 -0
  209. /package/dist/chunks/{agent-session-C2HDOXK4.js.map → agent-session-DU55LD4P.js.map} +0 -0
  210. /package/dist/chunks/{archive-WV2NBOHR.js.map → archive-VPREZOGC.js.map} +0 -0
  211. /package/dist/chunks/{bin-main-FPJQMK33.js.map → bin-main-J5ULRXXN.js.map} +0 -0
  212. /package/dist/chunks/{browser-JRWZ3PYX.js.map → browser-FZWYOIIJ.js.map} +0 -0
  213. /package/dist/chunks/{chat-3IJFKDSN.js.map → chat-BGWKKQTT.js.map} +0 -0
  214. /package/dist/chunks/{chunk-S7E42272.js.map → chunk-2BZOT2CT.js.map} +0 -0
  215. /package/dist/chunks/{chunk-LIZPXS73.js.map → chunk-3F5DGROG.js.map} +0 -0
  216. /package/dist/chunks/{chunk-KNNQHRZ4.js.map → chunk-46B7KRXY.js.map} +0 -0
  217. /package/dist/chunks/{chunk-PT7TZNBV.js.map → chunk-52OVP5BG.js.map} +0 -0
  218. /package/dist/chunks/{chunk-X2YRM3UE.js.map → chunk-56OUKG5W.js.map} +0 -0
  219. /package/dist/chunks/{chunk-HJ42RG5U.js.map → chunk-5URT3ZM2.js.map} +0 -0
  220. /package/dist/chunks/{chunk-GWOW3U2S.js.map → chunk-6TDJXZ5W.js.map} +0 -0
  221. /package/dist/chunks/{chunk-43FBWINL.js.map → chunk-AEPAIDAA.js.map} +0 -0
  222. /package/dist/chunks/{chunk-7WQV2FSF.js.map → chunk-AHYHR5DY.js.map} +0 -0
  223. /package/dist/chunks/{chunk-XAKL7C7B.js.map → chunk-AP5KD43Y.js.map} +0 -0
  224. /package/dist/chunks/{chunk-NRML7BIR.js.map → chunk-AS7UWXMN.js.map} +0 -0
  225. /package/dist/chunks/{chunk-QQLB573I.js.map → chunk-BOV53LZO.js.map} +0 -0
  226. /package/dist/chunks/{chunk-GPBUDMUF.js.map → chunk-BUCICQWG.js.map} +0 -0
  227. /package/dist/chunks/{chunk-CFN7CUD3.js.map → chunk-DYUOXP5Q.js.map} +0 -0
  228. /package/dist/chunks/{chunk-G5XTLTDR.js.map → chunk-E7HLYLD7.js.map} +0 -0
  229. /package/dist/chunks/{chunk-ABD2DOO2.js.map → chunk-EKUJUPFA.js.map} +0 -0
  230. /package/dist/chunks/{chunk-AABPCENY.js.map → chunk-F3YQ2CSZ.js.map} +0 -0
  231. /package/dist/chunks/{chunk-2VXA7GZU.js.map → chunk-FU4GQ7K2.js.map} +0 -0
  232. /package/dist/chunks/{chunk-VHKKPDL2.js.map → chunk-GQN64E36.js.map} +0 -0
  233. /package/dist/chunks/{chunk-AL6ESCHD.js.map → chunk-GSHSAMZJ.js.map} +0 -0
  234. /package/dist/chunks/{chunk-3OZ2OBGU.js.map → chunk-HKDPP2JF.js.map} +0 -0
  235. /package/dist/chunks/{chunk-YZ675PG4.js.map → chunk-HSEJGSXE.js.map} +0 -0
  236. /package/dist/chunks/{chunk-ZXWJ6G3J.js.map → chunk-I6CDUPVR.js.map} +0 -0
  237. /package/dist/chunks/{chunk-27VZRJTG.js.map → chunk-IQBR45AU.js.map} +0 -0
  238. /package/dist/chunks/{chunk-HIZ7F6BT.js.map → chunk-JCDTR2ZU.js.map} +0 -0
  239. /package/dist/chunks/{chunk-ZNAH4EGP.js.map → chunk-KMHLON54.js.map} +0 -0
  240. /package/dist/chunks/{chunk-CXLSM5SH.js.map → chunk-KOG2WB66.js.map} +0 -0
  241. /package/dist/chunks/{chunk-AGHVC2IJ.js.map → chunk-LBH5WVXU.js.map} +0 -0
  242. /package/dist/chunks/{chunk-NKEOCU52.js.map → chunk-LNQ6SCBF.js.map} +0 -0
  243. /package/dist/chunks/{chunk-U5AWHJ7O.js.map → chunk-MBBFX64S.js.map} +0 -0
  244. /package/dist/chunks/{chunk-PJ3UYK2K.js.map → chunk-MJO6CH5F.js.map} +0 -0
  245. /package/dist/chunks/{chunk-AVIW5JJF.js.map → chunk-NATYSTPM.js.map} +0 -0
  246. /package/dist/chunks/{chunk-KQOIPRZ5.js.map → chunk-QRT3N2K3.js.map} +0 -0
  247. /package/dist/chunks/{chunk-DYBUCWAB.js.map → chunk-QXDKRJZ5.js.map} +0 -0
  248. /package/dist/chunks/{chunk-EOO5AKO4.js.map → chunk-RBX6RVYO.js.map} +0 -0
  249. /package/dist/chunks/{chunk-VSUHR44P.js.map → chunk-RM6HTBJK.js.map} +0 -0
  250. /package/dist/chunks/{chunk-YLIKDPD6.js.map → chunk-S6DK2YOB.js.map} +0 -0
  251. /package/dist/chunks/{chunk-WW4VKEBD.js.map → chunk-S6MZK4LD.js.map} +0 -0
  252. /package/dist/chunks/{chunk-ZZ6Z2DO6.js.map → chunk-UFTNEQFN.js.map} +0 -0
  253. /package/dist/chunks/{chunk-7OEK2NAO.js.map → chunk-UXGI3FE5.js.map} +0 -0
  254. /package/dist/chunks/{chunk-WNMRETWS.js.map → chunk-VUOS5SQ3.js.map} +0 -0
  255. /package/dist/chunks/{chunk-YTJO7G24.js.map → chunk-XCWZZZOW.js.map} +0 -0
  256. /package/dist/chunks/{chunk-RPAHIOW6.js.map → chunk-YYQFUKI7.js.map} +0 -0
  257. /package/dist/chunks/{chunk-5GARJ3CK.js.map → chunk-YYVDLVUM.js.map} +0 -0
  258. /package/dist/chunks/{chunk-HQZSTYKY.js.map → chunk-ZB5ETOVE.js.map} +0 -0
  259. /package/dist/chunks/{chunk-GFSD2D3M.js.map → chunk-ZG6NVROB.js.map} +0 -0
  260. /package/dist/chunks/{chunk-MBGQS5YA.js.map → chunk-ZHBHRMCI.js.map} +0 -0
  261. /package/dist/chunks/{cli-runtime-CQKITOHY.js.map → cli-runtime-NG23IVRM.js.map} +0 -0
  262. /package/dist/chunks/{commands-UEPVSG33.js.map → commands-LQISMOPF.js.map} +0 -0
  263. /package/dist/chunks/{crash-report-3GQ3SJML.js.map → crash-report-EYK56MJJ.js.map} +0 -0
  264. /package/dist/chunks/{dist-YDFJ4YOH.js.map → dist-3AMBKAG4.js.map} +0 -0
  265. /package/dist/chunks/{dist-SCEJQJFY.js.map → dist-AUDNCB3F.js.map} +0 -0
  266. /package/dist/chunks/{dist-FFMNE5LK.js.map → dist-AZJ56DQJ.js.map} +0 -0
  267. /package/dist/chunks/{dist-IPJVDPA3.js.map → dist-DWB5AYXB.js.map} +0 -0
  268. /package/dist/chunks/{dist-VJ2UQYSX.js.map → dist-EDKLCZY4.js.map} +0 -0
  269. /package/dist/chunks/{dist-Q37IZHCW.js.map → dist-PZXF5NU3.js.map} +0 -0
  270. /package/dist/chunks/{dist-AMYVT2VT.js.map → dist-XT4V74YL.js.map} +0 -0
  271. /package/dist/chunks/{doctor-YWK25HGQ.js.map → doctor-3EOUWDYB.js.map} +0 -0
  272. /package/dist/chunks/{drain-5R73B66Y.js.map → drain-VKGTCFXC.js.map} +0 -0
  273. /package/dist/chunks/{eval-GYPUHRIK.js.map → eval-VHWEJ4GG.js.map} +0 -0
  274. /package/dist/chunks/{home-GI6TRZAN.js.map → home-H4GTIYO5.js.map} +0 -0
  275. /package/dist/chunks/{host-queries-MN57UTDU.js.map → host-queries-AIZVYFDQ.js.map} +0 -0
  276. /package/dist/chunks/{lifecycle-7LD634AQ.js.map → lifecycle-UF7VDCOQ.js.map} +0 -0
  277. /package/dist/chunks/{list-DSHTQRTP.js.map → list-JJZ7I5OF.js.map} +0 -0
  278. /package/dist/chunks/{login-R5P2OAXZ.js.map → login-T2RKNHK2.js.map} +0 -0
  279. /package/dist/chunks/{logs-SGPSXLBY.js.map → logs-J6D4SEDY.js.map} +0 -0
  280. /package/dist/chunks/{mcp-MC6B34XH.js.map → mcp-WONRVJ26.js.map} +0 -0
  281. /package/dist/chunks/{message-command-4MV2SVHP.js.map → message-command-BGQB2TFW.js.map} +0 -0
  282. /package/dist/chunks/{operator-tools-GI63VOXH.js.map → operator-tools-H4MYC5PE.js.map} +0 -0
  283. /package/dist/chunks/{output-schema-74VSN66J.js.map → output-schema-RFJUTQ2N.js.map} +0 -0
  284. /package/dist/chunks/{pal-BWPYGQ4B.js.map → pal-AV7AD5MG.js.map} +0 -0
  285. /package/dist/chunks/{providers-YV45XVWS.js.map → providers-BHF65IUG.js.map} +0 -0
  286. /package/dist/chunks/{resident-OC2D5V5I.js.map → resident-YF3MIILM.js.map} +0 -0
  287. /package/dist/chunks/{resume-command-DZBKOABY.js.map → resume-command-Y3NYDSI4.js.map} +0 -0
  288. /package/dist/chunks/{schedule-GUD625PJ.js.map → schedule-6T2MNPKK.js.map} +0 -0
  289. /package/dist/chunks/{service-67FZ3N75.js.map → service-2VASPD2V.js.map} +0 -0
  290. /package/dist/chunks/{session-step-YNMU75FQ.js.map → session-step-LJ24HVLF.js.map} +0 -0
  291. /package/dist/chunks/{skills-DNNEKEOH.js.map → skills-K3JRZ3IR.js.map} +0 -0
  292. /package/dist/chunks/{state-K7MMFNZC.js.map → state-QPSQI7U7.js.map} +0 -0
  293. /package/dist/chunks/{store-2PDDGKYZ.js.map → store-7WZWQXKX.js.map} +0 -0
  294. /package/dist/chunks/{store-KYMOKW6X.js.map → store-PSQKDEPY.js.map} +0 -0
  295. /package/dist/chunks/{store-NIBJFQOT.js.map → store-Z3PS6LUZ.js.map} +0 -0
  296. /package/dist/chunks/{upgrade-2NO7NPPM.js.map → upgrade-C6QUXRLB.js.map} +0 -0
  297. /package/dist/chunks/{worktree-ADQJ4AJ5.js.map → worktree-KLD2PAMU.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/tui/App.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAUN,KAAK,OAAO,EAoBZ,MAAM,YAAY,CAAA;AAyNnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AA0IvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAa/D,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IAC1D,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAA;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAA;KAAE,CAAA;CAC3D;AASD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC5B,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAoTrB,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAM7F;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,MAAM,EAAE,MAAM,MAAM,EACpB,iBAAiB,GAAE,SAAS,MAAM,EAAO,GACvC,SAAS,iBAAiB,EAAE,CAqE9B;AA8JD,wBAAgB,GAAG,CAAC,EACnB,GAAG,EAAE,UAAU,EACf,aAAa,EACb,cAAsC,EACtC,eAAe,GACf,EAAE,QAAQ,2CA20UV"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/tui/App.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAUN,KAAK,OAAO,EAqBZ,MAAM,YAAY,CAAA;AAkPnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAmJvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAc/D,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IAC1D,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAA;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAA;KAAE,CAAA;CAC3D;AASD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC5B,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAwUrB,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAM7F;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,MAAM,EAAE,MAAM,MAAM,EACpB,iBAAiB,GAAE,SAAS,MAAM,EAAO,GACvC,SAAS,iBAAiB,EAAE,CAqE9B;AA6KD,wBAAgB,GAAG,CAAC,EACnB,GAAG,EAAE,UAAU,EACf,aAAa,EACb,cAAsC,EACtC,eAAe,GACf,EAAE,QAAQ,2CA0gWV"}
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundJobsPanel.d.ts","sourceRoot":"","sources":["../../src/tui/BackgroundJobsPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAYpE,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,CAAA;IACvC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,iFAAiF;IACjF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,CAAA;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/B;AAED,0EAA0E;AAC1E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,mFAAmF;AACnF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhE;AAgBD,wFAAwF;AACxF,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,mBAAmB,GAAG,SAAS,EACvC,OAAO,EAAE,MAAM,GACb,SAAS,MAAM,EAAE,CAkBnB;AAED,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,mBAAmB,GAAG,SAAS,EACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACb,MAAM,CAKR;AAuBD,wBAAgB,mBAAmB,CAAC,EACnC,IAAI,EACJ,aAAa,EACb,WAAW,EACX,UAAU,EACV,OAAO,EACP,IAAI,EACJ,OAAO,EACP,GAAgB,EAChB,SAAgB,EAChB,MAAa,GACb,EAAE,wBAAwB,2CAsJ1B"}
1
+ {"version":3,"file":"BackgroundJobsPanel.d.ts","sourceRoot":"","sources":["../../src/tui/BackgroundJobsPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAYpE,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,CAAA;IACvC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,iFAAiF;IACjF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,CAAA;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/B;AAED,0EAA0E;AAC1E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,mFAAmF;AACnF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhE;AAuCD,wFAAwF;AACxF,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,mBAAmB,GAAG,SAAS,EACvC,OAAO,EAAE,MAAM,GACb,SAAS,MAAM,EAAE,CAkBnB;AAED,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,mBAAmB,GAAG,SAAS,EACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACb,MAAM,CAKR;AA2BD,wBAAgB,mBAAmB,CAAC,EACnC,IAAI,EACJ,aAAa,EACb,WAAW,EACX,UAAU,EACV,OAAO,EACP,IAAI,EACJ,OAAO,EACP,GAAgB,EAChB,SAAgB,EAChB,MAAa,GACb,EAAE,wBAAwB,2CA8J1B"}
@@ -2,8 +2,10 @@ import { type PermissionMode } from '../permissions/mode.js';
2
2
  interface BrandHeaderProps {
3
3
  readonly version: string;
4
4
  readonly permissionMode: PermissionMode;
5
+ /** The folder Namzu works in, shown under the version, as a welcome header does. */
6
+ readonly cwd?: string;
5
7
  }
6
8
  /** Printed once by the transcript's Static owner; active model state lives in the footer. */
7
- export declare function BrandHeader({ version, permissionMode }: BrandHeaderProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function BrandHeader({ version, permissionMode, cwd }: BrandHeaderProps): import("react/jsx-runtime").JSX.Element;
8
10
  export {};
9
11
  //# sourceMappingURL=BrandHeader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrandHeader.d.ts","sourceRoot":"","sources":["../../src/tui/BrandHeader.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAuB,MAAM,wBAAwB,CAAA;AAUjF,UAAU,gBAAgB;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAA;CACvC;AAED,6FAA6F;AAC7F,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,gBAAgB,2CAqCxE"}
1
+ {"version":3,"file":"BrandHeader.d.ts","sourceRoot":"","sources":["../../src/tui/BrandHeader.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAuB,MAAM,wBAAwB,CAAA;AAYjF,UAAU,gBAAgB;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAA;IACvC,oFAAoF;IACpF,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,6FAA6F;AAC7F,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,EAAE,gBAAgB,2CAiD7E"}
@@ -84,10 +84,32 @@ export interface ComposerProps {
84
84
  * is the host's answer to give, not a value this key press can hold.
85
85
  */
86
86
  readonly onOpenAgentPanel?: () => void;
87
+ /**
88
+ * `←` on an empty composer: open the agents. Anything typed, pasted or
89
+ * attached keeps `←` as cursor movement, so editing is never taken over.
90
+ */
91
+ readonly onOpenAgents?: () => void;
87
92
  /** Page up at the composer: open the scrollable transcript. */
88
93
  readonly onScrollTranscript?: () => void;
89
94
  /** Recall the latest operator-authored next-turn message into an empty draft. */
90
95
  readonly onRecallQueued?: () => Omit<ComposerDraft, 'token'> | null;
96
+ /**
97
+ * Messages typed while a reply runs and still waiting. Up on an empty
98
+ * draft chooses the newest editable one, Up/Down move, Enter loads the
99
+ * chosen one into the draft, Esc (handled by the host) leaves the choice.
100
+ */
101
+ readonly queuedEdit?: {
102
+ /** At least one waiting message can be loaded back for editing. */
103
+ readonly available: boolean;
104
+ /** A waiting message is chosen right now. */
105
+ readonly selected: boolean;
106
+ /** Returns whether the key was used; false lets Up fall through to prompt history. */
107
+ readonly onMove: (direction: 'up' | 'down') => boolean;
108
+ readonly onLoad: () => Omit<ComposerDraft, 'token'> | null;
109
+ readonly onLeave: () => void;
110
+ };
111
+ /** ctrl+x ctrl+s: deliver the waiting messages now instead of at the next boundary. */
112
+ readonly onSendNow?: () => void;
91
113
  /** Shift+Tab. Absent means the key does nothing, which the composer footer then does not advertise. */
92
114
  readonly onCycleMode?: () => void;
93
115
  /**
@@ -185,5 +207,5 @@ export declare function clampDescription(description: string, width: number): re
185
207
  * operators already bring to this key.
186
208
  */
187
209
  export declare function deletePreviousWord(source: string): string;
188
- export declare function Composer({ disabled, plainText, placeholder, onDraftChange, reasoningEffortLevels, onSubmit, history, userCommands, builtins, mentionCandidates, hidden, escapeInterrupts, onNotice, onStepReasoningEffort, onExternalEdit, onEditPrevious, draftToRestore, onDraftRestored, onDraftPresenceChange, onOpenAgentPanel, onScrollTranscript, onRecallQueued, onCycleMode, triggers, turnActive, }: ComposerProps): import("react/jsx-runtime").JSX.Element | null;
210
+ export declare function Composer({ disabled, plainText, placeholder, onDraftChange, reasoningEffortLevels, onSubmit, history, userCommands, builtins, mentionCandidates, hidden, escapeInterrupts, onNotice, onStepReasoningEffort, onExternalEdit, onEditPrevious, draftToRestore, onDraftRestored, onDraftPresenceChange, onOpenAgentPanel, onOpenAgents, onScrollTranscript, onRecallQueued, queuedEdit, onSendNow, onCycleMode, triggers, turnActive, }: ComposerProps): import("react/jsx-runtime").JSX.Element | null;
189
211
  //# sourceMappingURL=Composer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../src/tui/Composer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../src/tui/Composer.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,14 @@
1
1
  import { type ReactNode } from 'react';
2
- /** A bounded command frame; its content stays mounted while another prompt owns focus. */
3
- export declare function ComposerFrame({ focus, hidden, mode, columns, activation, animate, children, }: {
4
- readonly focus: boolean;
2
+ /**
3
+ * The composer's frame: a plain horizontal rule above and below the input and
4
+ * nothing at the sides, no corners and no title, as the reference draws it.
5
+ * Its content stays mounted while another prompt owns focus. The one thing
6
+ * written on a rule is the session mode (today only `hypermode`), at the right
7
+ * end of the upper one.
8
+ */
9
+ export declare function ComposerFrame({ hidden, mode, columns, activation, animate, children, }: {
10
+ /** Kept for the callers that say whether the input owns the keyboard; the rules look the same either way. */
11
+ readonly focus?: boolean;
5
12
  readonly hidden?: boolean;
6
13
  readonly working?: boolean;
7
14
  readonly animate?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ComposerFrame.d.ts","sourceRoot":"","sources":["../../src/tui/ComposerFrame.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAA+B,MAAM,OAAO,CAAA;AAQnE,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,EAC7B,KAAK,EACL,MAAc,EACd,IAAI,EACJ,OAAO,EACP,UAAc,EACd,OAAc,EACd,QAAQ,GACR,EAAE;IACF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAC5B,2CA6FA"}
1
+ {"version":3,"file":"ComposerFrame.d.ts","sourceRoot":"","sources":["../../src/tui/ComposerFrame.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAA+B,MAAM,OAAO,CAAA;AAOnE;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAC7B,MAAc,EACd,IAAI,EACJ,OAAO,EACP,UAAc,EACd,OAAc,EACd,QAAQ,GACR,EAAE;IACF,6GAA6G;IAC7G,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAC5B,2CAgDA"}
@@ -21,6 +21,10 @@ export interface ActiveTool {
21
21
  readonly waitingOn?: string;
22
22
  /** A web search or fetch: its `progress` line is drawn as the call's `⎿` status. */
23
23
  readonly web?: WebActivity;
24
+ /** A shell call's command; set, the call is drawn as a command cell (`● Bash(…)` over `⎿ Running…`). */
25
+ readonly command?: string;
26
+ /** The last few output lines the shell call has reported, oldest first. */
27
+ readonly tail?: readonly string[];
24
28
  }
25
29
  export interface LiveActivityProps {
26
30
  /** Show the current tool and total count in two rows on a short terminal. */
@@ -1 +1 @@
1
- {"version":3,"file":"LiveActivity.d.ts","sourceRoot":"","sources":["../../src/tui/LiveActivity.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,uFAAuF;IACvF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,oFAAoF;IACpF,QAAQ,CAAC,GAAG,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAA;IAC3C,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,kEAAkE;IAClE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,8DAA8D;IAC9D,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,uEAAuE;IACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAID,wBAAgB,YAAY,CAAC,EAC5B,OAAe,EACf,WAAW,EACX,OAAO,EACP,UAAc,EACd,aAAqB,EACrB,OAAc,EACd,QAAe,EACf,MAAM,EACN,aAAqB,EACrB,UAAiB,GACjB,EAAE,iBAAiB,kDAiLnB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,GAAG,SAAS,CAM5E;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"LiveActivity.d.ts","sourceRoot":"","sources":["../../src/tui/LiveActivity.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,uFAAuF;IACvF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,oFAAoF;IACpF,QAAQ,CAAC,GAAG,CAAC,EAAE,WAAW,CAAA;IAC1B,wGAAwG;IACxG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,iBAAiB;IACjC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAA;IAC3C,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,kEAAkE;IAClE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,8DAA8D;IAC9D,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,uEAAuE;IACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAID,wBAAgB,YAAY,CAAC,EAC5B,OAAe,EACf,WAAW,EACX,OAAO,EACP,UAAc,EACd,aAAqB,EACrB,OAAc,EACd,QAAe,EACf,MAAM,EACN,aAAqB,EACrB,UAAiB,GACjB,EAAE,iBAAiB,kDAgNnB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,GAAG,SAAS,CAM5E;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA"}
@@ -1,7 +1,9 @@
1
1
  /**
2
- * A small, read-only account of input the operator has already submitted.
3
- * A steer belongs to the active turn; a queued prompt starts a later turn.
4
- * Neither should disappear into a count-only status line while work continues.
2
+ * Messages the operator sent while Namzu is still working, drawn as rows at
3
+ * the end of the transcript, above the input box, in the passive grey of a
4
+ * message that has not been read yet. A steer belongs to the active reply; a
5
+ * Tab-queued message starts a later one and says so. Read-only: the keys that
6
+ * act on these rows live in the composer.
5
7
  */
6
8
  export interface PendingInputItem {
7
9
  readonly text: string;
@@ -16,19 +18,20 @@ export interface PendingInputPanelProps {
16
18
  /** Available cells, including the panel's one-cell side padding. */
17
19
  readonly columns: number;
18
20
  readonly rows: number;
19
- /** Only an operator-authored queued prompt can be recalled for editing. */
20
- readonly canRecall?: boolean;
21
- /** The exact operator-authored item that Alt+Up restores. */
22
- readonly recallItem?: PendingInputItem;
23
- /** One-line summary of armed queued composer triggers. */
24
- readonly queuedTags?: string;
21
+ /** A reply is running, so "send now" has something to interrupt. */
22
+ readonly working?: boolean;
23
+ /** Index into `queued` of the row chosen for editing; it is drawn in the accent colour. */
24
+ readonly selectedQueued?: number | null;
25
25
  /** A stopped or failed turn keeps the next-turn queue until the operator continues. */
26
26
  readonly held?: {
27
27
  readonly outcome: 'failed' | 'stopped' | 'paused';
28
28
  readonly source?: 'operator-interrupt';
29
29
  } | null;
30
30
  }
31
+ /** The pointer every pending row carries, as in the reference transcript. */
32
+ export declare const PENDING_POINTER = "\u276F";
33
+ export declare const SEND_NOW_HINT = "ctrl+x ctrl+s to send now";
31
34
  /** Reserve the actual panel height in App's live transcript calculation. */
32
- export declare function pendingInputPanelRows({ pendingSteers, queued, rows, canRecall, }: Pick<PendingInputPanelProps, 'pendingSteers' | 'queued' | 'rows' | 'canRecall'>): number;
33
- export declare function PendingInputPanel({ pendingSteers, queued, columns, rows, canRecall, recallItem, queuedTags, held, }: PendingInputPanelProps): import("react/jsx-runtime").JSX.Element | null;
35
+ export declare function pendingInputPanelRows({ pendingSteers, queued, rows, working, held, }: Pick<PendingInputPanelProps, 'pendingSteers' | 'queued' | 'rows' | 'working' | 'held'>): number;
36
+ export declare function PendingInputPanel({ pendingSteers, queued, columns, rows, working, selectedQueued, held, }: PendingInputPanelProps): import("react/jsx-runtime").JSX.Element | null;
34
37
  //# sourceMappingURL=PendingInputPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PendingInputPanel.d.ts","sourceRoot":"","sources":["../../src/tui/PendingInputPanel.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,+EAA+E;IAC/E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,aAAa,EAAE,SAAS,gBAAgB,EAAE,CAAA;IACnD,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAA;IAC5C,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAA;IACtC,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,uFAAuF;IACvF,QAAQ,CAAC,IAAI,CAAC,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;QACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAA;KACtC,GAAG,IAAI,CAAA;CACR;AAiED,4EAA4E;AAC5E,wBAAgB,qBAAqB,CAAC,EACrC,aAAa,EACb,MAAM,EACN,IAAI,EACJ,SAAiB,GACjB,EAAE,IAAI,CAAC,sBAAsB,EAAE,eAAe,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC,GAAG,MAAM,CAgB1F;AAqBD,wBAAgB,iBAAiB,CAAC,EACjC,aAAa,EACb,MAAM,EACN,OAAO,EACP,IAAI,EACJ,SAAiB,EACjB,UAAU,EACV,UAAe,EACf,IAAW,GACX,EAAE,sBAAsB,kDAsExB"}
1
+ {"version":3,"file":"PendingInputPanel.d.ts","sourceRoot":"","sources":["../../src/tui/PendingInputPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,+EAA+E;IAC/E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,aAAa,EAAE,SAAS,gBAAgB,EAAE,CAAA;IACnD,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAA;IAC5C,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,oEAAoE;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,2FAA2F;IAC3F,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,uFAAuF;IACvF,QAAQ,CAAC,IAAI,CAAC,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;QACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAA;KACtC,GAAG,IAAI,CAAA;CACR;AAED,6EAA6E;AAC7E,eAAO,MAAM,eAAe,WAAM,CAAA;AAClC,eAAO,MAAM,aAAa,8BAA8B,CAAA;AAiFxD,4EAA4E;AAC5E,wBAAgB,qBAAqB,CAAC,EACrC,aAAa,EACb,MAAM,EACN,IAAI,EACJ,OAAe,EACf,IAAW,GACX,EAAE,IAAI,CAAC,sBAAsB,EAAE,eAAe,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,MAAM,CAKjG;AAED,wBAAgB,iBAAiB,CAAC,EACjC,aAAa,EACb,MAAM,EACN,OAAO,EACP,IAAI,EACJ,OAAe,EACf,cAAqB,EACrB,IAAW,GACX,EAAE,sBAAsB,kDAuDxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionOverlay.d.ts","sourceRoot":"","sources":["../../src/tui/PermissionOverlay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PermissionOverlay.d.ts","sourceRoot":"","sources":["../../src/tui/PermissionOverlay.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,22 @@
1
1
  /**
2
2
  * One-line composer footer, directly below the input box.
3
3
  *
4
- * Left to right: the active permission mode (colored by mode, with its
5
- * cycle key) or, when no special mode is active, a quiet reminder that the
6
- * key exists; the reasoning effort beside it when the operator has set one;
7
- * the working directory. Right-aligned: an interaction hint or a durable
8
- * goal when either is active, else the model identity. The right side owns
9
- * its columns first so a deep path or a long mode label cannot erase the key
10
- * that exits a prompt.
4
+ * Left to right, items joined by a dim ` · `: the permission mode (`⏵⏵ bypass
5
+ * permissions on`, colored by mode, with its cycle key while it fits), the
6
+ * pull request for the branch (`PR #592`, underlined, colored by review
7
+ * state), the background-shell pill (`2 shells`), the reasoning effort when
8
+ * the operator has set one, then the hints: `esc to interrupt` while a turn
9
+ * runs, `← 2 agents` when the empty composer's left arrow opens them, and
10
+ * `↓ to manage` when the empty composer's down arrow reaches the shells or
11
+ * the agents rail. Right-aligned: an interaction hint or a durable goal when
12
+ * either is active, else the model identity, which is Namzu's own addition
13
+ * and the first thing to go when the row is narrow. The right side owns its
14
+ * columns first so a long mode label cannot erase the key that exits a
15
+ * prompt. The folder is not here; the header names it.
11
16
  */
12
- import { type PermissionMode } from '../permissions/mode.js';
17
+ import type { PermissionMode } from '../permissions/mode.js';
18
+ import type { PrFooterState } from './pr-status.js';
13
19
  export interface StatusBarProps {
14
- readonly cwd: string;
15
20
  readonly provider: string | null;
16
21
  readonly model: string | null;
17
22
  /** An explicit reasoning-effort override; omitted/undefined means the model's own default, which this footer does not name. */
@@ -27,35 +32,48 @@ export interface StatusBarProps {
27
32
  /**
28
33
  * Whether a composer is on screen. Shift+Tab is the composer's key, so with
29
34
  * none mounted (a picker, the trust prompt, a stopped start) the footer
30
- * names no cycle key; the active mode and the folder are still facts.
35
+ * names no cycle key; the active mode is still a fact.
31
36
  */
32
37
  readonly composerMounted?: boolean;
38
+ /** Background shells that are running now; 0 or omitted hides the pill. */
39
+ readonly shellCount?: number;
40
+ /** The pull request for the current branch, from `pr-status.ts`. */
41
+ readonly pr?: PrFooterState;
42
+ /** Whether the terminal understands OSC 8 links; the PR number is plain text without it. */
43
+ readonly hyperlinks?: boolean;
44
+ /**
45
+ * Agents that are running now, offered as `← N agents`. Pass 0 (or omit it)
46
+ * whenever `←` would not open them: input typed, a panel open, the rail focused.
47
+ */
48
+ readonly agentCount?: number;
49
+ /** Whether `↓` from the empty composer reaches the shells or the agents rail; adds `↓ to manage`. */
50
+ readonly canManage?: boolean;
51
+ /** The shell pill holds the keyboard: it is drawn inverted and `enter to view shells` replaces `↓ to manage`. */
52
+ readonly shellsSelected?: boolean;
33
53
  }
34
54
  /**
35
- * The mode marks. `⏵⏵` is the reference terminal's own and is outside the
36
- * emoji set; the pause mark it pairs with, `⏸` (U+23F8), is an emoji code
37
- * point that Windows Terminal draws as a blue two-cell tile. `‖` (U+2016,
38
- * DOUBLE VERTICAL LINE) says "held" in one text cell with no emoji form.
55
+ * The mode marks. `⏵⏵` is outside the emoji set; the pause mark a plan mode
56
+ * would pair with, `⏸` (U+23F8), is an emoji code point that Windows Terminal
57
+ * draws as a blue two-cell tile. `‖` (U+2016, DOUBLE VERTICAL LINE) says "held"
58
+ * in one text cell with no emoji form.
39
59
  */
40
60
  export declare const MODE_MARK: {
41
61
  readonly moving: "⏵⏵";
42
62
  readonly held: "‖";
43
63
  };
44
- export declare function StatusBar({ cwd, provider, model, effort, goal, state, hint, permissionMode, canCycleMode, composerMounted, }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
45
- /**
46
- * A path shortened from the LEFT, keeping the leaf.
47
- *
48
- * The end of a path is the informative end: `core` says which package you are
49
- * in, `/home` says nothing you did not know. Cutting resumes at a separator
50
- * when one is near the cut, so the result still reads as a path rather than as
51
- * a word broken in half.
52
- */
53
- export declare function shortenPathToFit(path: string, max: number): string;
64
+ export declare function StatusBar({ provider, model, effort, goal, state, hint, permissionMode, canCycleMode, composerMounted, shellCount, pr, hyperlinks, agentCount, canManage, shellsSelected, }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
54
65
  export interface StatusLineLayout {
55
66
  readonly mode: string | null;
56
67
  readonly cycleSuffix: string | null;
68
+ readonly interrupt: string | null;
69
+ readonly shells: string | null;
70
+ readonly pr: {
71
+ readonly prefix: string | null;
72
+ readonly label: string;
73
+ } | null;
57
74
  readonly effort: string | null;
58
- readonly cwd: string | null;
75
+ readonly agents: string | null;
76
+ readonly manage: string | null;
59
77
  readonly gap: string;
60
78
  readonly right: {
61
79
  readonly kind: 'text';
@@ -67,22 +85,21 @@ export interface StatusLineLayout {
67
85
  };
68
86
  }
69
87
  /**
70
- * Fit the mode identity around an authoritative right-side indicator.
88
+ * Fit the footer's items around an authoritative right-side indicator.
71
89
  *
72
90
  * A hint can be the only on-screen explanation of how to leave a prompt, and
73
- * a goal label is the durable work state the screenshot is meant to expose.
74
- * Both therefore reserve their width before the model identity does, exactly
75
- * as they did before the model moved to this side. On the left, the mode
76
- * badge is the whole point of this line and yields last: the working
77
- * directory shrinks and drops first — a path is recoverable from `/status`
78
- * and a deep worktree checkout should not be what costs the operator their
79
- * only advertisement of Shift+Tab — then the effort label, then the cycle
80
- * key reminder, then the model on the right is dropped entirely, then the
81
- * badge itself truncates.
91
+ * a goal label is the durable work state, so both reserve their width before
92
+ * the model identity does. The model is Namzu's own addition and shows only
93
+ * while the whole row fits beside it. Past that the row loses items from its
94
+ * right end, the way the reference's clipped row does: `↓ to manage`,
95
+ * `← N agents`, `esc to interrupt`, then the cycle key (the reference hides
96
+ * it first once a task is running), the effort label, the shell pill, the
97
+ * pull request item; after that the quiet reminder goes, then the mode
98
+ * truncates, and last of all it goes. A line too wide for its room loses
99
+ * whole items, never half of one, except the mode, which is the state itself.
82
100
  */
83
101
  export declare function fitStatusLine(input: {
84
102
  readonly columns: number;
85
- readonly cwd: string;
86
103
  readonly provider: string | null;
87
104
  readonly model: string | null;
88
105
  readonly effort?: string | null;
@@ -90,5 +107,13 @@ export declare function fitStatusLine(input: {
90
107
  readonly goal?: string | null | undefined;
91
108
  readonly modeLabel: string;
92
109
  readonly cycleSuffix?: string | null;
110
+ readonly interrupt?: string | null;
111
+ readonly shells?: string | null;
112
+ readonly agents?: string | null;
113
+ readonly manage?: string | null;
114
+ readonly pr?: {
115
+ readonly prefix: string | null;
116
+ readonly label: string;
117
+ } | null;
93
118
  }): StatusLineLayout;
94
119
  //# sourceMappingURL=StatusBar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../src/tui/StatusBar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,EAAE,KAAK,cAAc,EAAuB,MAAM,wBAAwB,CAAA;AAKjF,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,+HAA+H;IAC/H,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,sEAAsE;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,qBAAqB,CAAA;IACpE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,sHAAsH;IACtH,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAA;IACxC,2GAA2G;IAC3G,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAClC;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS;;;CAAuC,CAAA;AAkB7D,wBAAgB,SAAS,CAAC,EACzB,GAAG,EACH,QAAQ,EACR,KAAK,EACL,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,cAAc,EACd,YAAY,EACZ,eAAsB,GACtB,EAAE,cAAc,2CAoDhB;AAmBD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAWlE;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,KAAK,EACX;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;KAAE,GAC1E;QAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;CAC5D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,GAAG,gBAAgB,CAiEnB"}
1
+ {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../src/tui/StatusBar.tsx"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  * streams; the Working row owns the active turn's animation.
7
7
  */
8
8
  import type { ReactNode } from 'react';
9
+ import { type ShellOutput } from './shell-cell.js';
9
10
  import type { TranscriptMessage } from './types.js';
10
11
  export interface TranscriptProps {
11
12
  /** Finalized messages, oldest first. */
@@ -75,6 +76,19 @@ export interface TranscriptProps {
75
76
  readonly staticIndent?: number;
76
77
  }
77
78
  export declare function Transcript({ messages, pending, pendingAt, settled, resetKey, raw, hyperlinks, showLive, header, staticIndent, }: TranscriptProps): import("react/jsx-runtime").JSX.Element;
79
+ /** Columns the `⎿` prefix and its indent take from a result row. */
80
+ export declare const SHELL_RESULT_INDENT = 5;
81
+ /**
82
+ * The `⎿` result of a shell call: output rows hung under one dim `⎿`, the
83
+ * first rows of each stream, then a dim count of what is folded away.
84
+ */
85
+ export declare function ShellBlock({ shell, expanded, canExpand, }: {
86
+ readonly shell: ShellOutput;
87
+ readonly expanded: boolean;
88
+ readonly canExpand: boolean;
89
+ }): import("react/jsx-runtime").JSX.Element;
90
+ /** Whether a row hides something Ctrl+O would show (a folded body or a cut command). */
91
+ export declare function messageCollapses(message: Pick<TranscriptMessage, 'detail' | 'shell'>): boolean;
78
92
  /** Whether the preview hides text and App should mark the body as expandable. */
79
93
  export declare function willCollapse(detail: readonly string[] | undefined): boolean;
80
94
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Transcript.d.ts","sourceRoot":"","sources":["../../src/tui/Transcript.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAStC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,MAAM,WAAW,eAAe;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAC/C,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAC1C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,qBAAqB,CAAA;IACpE;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;IACtB,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC9B;AAaD,wBAAgB,UAAU,CAAC,EAC1B,QAAQ,EACR,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,GAAW,EACX,UAAkB,EAClB,QAAe,EACf,MAAM,EACN,YAAgB,GAChB,EAAE,eAAe,2CA8DjB;AAoMD,iFAAiF;AACjF,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,OAAO,CAM3E;AAoCD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS,MAAM,EAAE,CAIjF;AA2BD,wBAAgB,YAAY,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,MAAM,CAWpE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,MAAM,CAWzE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,MAAM,CAW3E"}
1
+ {"version":3,"file":"Transcript.d.ts","sourceRoot":"","sources":["../../src/tui/Transcript.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,OAAO,EAAE,KAAK,WAAW,EAAmD,MAAM,iBAAiB,CAAA;AAInG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,MAAM,WAAW,eAAe;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAC/C,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAC1C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,qBAAqB,CAAA;IACpE;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;IACtB,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC9B;AAaD,wBAAgB,UAAU,CAAC,EAC1B,QAAQ,EACR,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,GAAW,EACX,UAAkB,EAClB,QAAe,EACf,MAAM,EACN,YAAgB,GAChB,EAAE,eAAe,2CA8DjB;AA8KD,oEAAoE;AACpE,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC;;;GAGG;AACH,wBAAgB,UAAU,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,SAAS,GACT,EAAE;IACF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;CAC3B,2CAwBA;AAED,wFAAwF;AACxF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,OAAO,CAE9F;AAyCD,iFAAiF;AACjF,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,OAAO,CAM3E;AAoCD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS,MAAM,EAAE,CAIjF;AAiCD,wBAAgB,YAAY,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,MAAM,CAWpE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,MAAM,CAWzE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,MAAM,CAW3E"}
@@ -5,18 +5,29 @@
5
5
  * place (settled rows cannot be repainted; the live state belongs to the
6
6
  * rail under the footer):
7
7
  *
8
- * - a launch receipt per batch of agents: `● Launched 2 agents · <workflow> / <phase>`
9
- * with the agents' names beneath it as a `├`/`└` tree;
10
- * - a completion row per agent: `✓ <name> · 1.7s · 9.0k tokens`, carrying the
11
- * agent's final answer as a collapsed body Ctrl+O opens;
8
+ * - a launch receipt per batch of unlabelled agents: `● Launched 2 agents`
9
+ * with the agents' names beneath it as a `├`/`└` tree; agents the model
10
+ * gave a `workflow` label get ONE group line instead,
11
+ * `● Workflow <name>` / `⎿ Running in background · ↓ to manage`;
12
+ * - a completion row per unlabelled agent: `✓ <name> · 1.7s · 9.0k tokens`,
13
+ * carrying the agent's final answer as a collapsed body Ctrl+O opens (a
14
+ * workflow's agents are read in its detail view, and the workflow closes
15
+ * with one line);
12
16
  * - a closing line when a turn that delegated settles:
13
- * `✻ Worked for 38s · 3 agents in 2 phases · 27.0k tokens`.
17
+ * `✻ Worked for 38s · 3 agents · 27.0k tokens`.
14
18
  *
15
19
  * Pure so the wording is tested without an App.
16
20
  */
17
21
  import { type SubagentActivity } from '../integrations/subagents/activity.js';
18
- /** The key that opens the agent browser from anywhere the composer is. Never a key that may be dead. */
19
- export declare const AGENT_MANAGE_HINT = "ctrl+t to manage";
22
+ import { type RailWorkflow } from './AgentExplorer.js';
23
+ /**
24
+ * The key that reaches the agents from an empty composer: `↓` focuses the
25
+ * footer (the shells pill, then the rail rows). The same words the shell cell
26
+ * and the workflow launch use, so one key is named for all background work.
27
+ */
28
+ export declare const AGENT_MANAGE_HINT = "\u2193 to manage";
29
+ /** The key that opens the rail's workflow row from the composer. */
30
+ export declare const WORKFLOW_MANAGE_HINT = "\u2193 to manage";
20
31
  export interface LaunchReceipt {
21
32
  /** First line, then one tree line per agent when there are several. */
22
33
  readonly content: string;
@@ -39,21 +50,32 @@ export interface CompletionRow {
39
50
  }
40
51
  /** The row for one agent that reached a terminal state. */
41
52
  export declare function completionRow(agent: SubagentActivity, now?: number): CompletionRow;
53
+ export interface WorkflowNotice {
54
+ readonly content: string;
55
+ /** Completed reads quiet, failed is red, stopped is yellow. */
56
+ readonly tone: 'ok' | 'error' | 'warn';
57
+ readonly glyph: string;
58
+ }
59
+ /**
60
+ * The one line a workflow leaves in the conversation when its last agent
61
+ * settles: `Workflow Release audit completed · 4m02s · 7 agents · 112k tokens`.
62
+ * Written once per settled workflow, below the last agent's own row.
63
+ */
64
+ export declare function workflowNotice(workflow: RailWorkflow, now?: number): WorkflowNotice;
42
65
  /**
43
66
  * A turn that delegated nothing and took less than this closes without a
44
67
  * line: an answer that arrived at once needs no account of how long it took.
45
68
  */
46
69
  export declare const SETTLE_LINE_MIN_MS = 3000;
47
70
  /**
48
- * `Worked for 38s · 3 agents in 2 phases · 27.0k tokens`, or `Worked for 46s`
71
+ * `Worked for 38s · 3 agents · 27.0k tokens`, or `Worked for 46s`
49
72
  * for a turn that delegated nothing — a finished turn closes with how long it
50
73
  * took, as the reference terminal's do — or `undefined` for a turn that
51
74
  * delegated nothing and finished within {@link SETTLE_LINE_MIN_MS}.
52
75
  *
53
- * The phase count appears only when the model named two or more phases, the
54
- * tokens only when a child reported spend, and `· 1 failed` only when one
55
- * did: the reference closes a workflow with its agent count and spend, and a
56
- * failure is worth the words.
76
+ * Phases never appear here: the reference shows them only inside a
77
+ * workflow's detail view. The tokens appear only when a child reported
78
+ * spend, and `· 1 failed` only when one did.
57
79
  */
58
80
  export declare function settleLine(elapsedMs: number, agents: readonly SubagentActivity[]): string | undefined;
59
81
  //# sourceMappingURL=agent-transcript-rows.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-transcript-rows.d.ts","sourceRoot":"","sources":["../../src/tui/agent-transcript-rows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,uCAAuC,CAAA;AAK9C,wGAAwG;AACxG,eAAO,MAAM,iBAAiB,qBAAqB,CAAA;AAEnD,MAAM,WAAW,aAAa;IAC7B,uEAAuE;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,GAAG,aAAa,CA0BnF;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACrB;AAED,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,SAAa,GAAG,aAAa,CActF;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,OAAQ,CAAA;AAEvC;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CACzB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,gBAAgB,EAAE,GACjC,MAAM,GAAG,SAAS,CAiBpB"}
1
+ {"version":3,"file":"agent-transcript-rows.d.ts","sourceRoot":"","sources":["../../src/tui/agent-transcript-rows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,oBAAoB,CAAA;AAI1E;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,qBAAgB,CAAA;AAE9C,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,qBAAgB,CAAA;AAEjD,MAAM,WAAW,aAAa;IAC7B,uEAAuE;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,GAAG,aAAa,CAiCnF;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACrB;AAED,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,SAAa,GAAG,aAAa,CActF;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,GAAG,MAAM,CAAA;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACtB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,SAAa,GAAG,cAAc,CAoBvF;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,OAAQ,CAAA;AAEvC;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CACzB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,gBAAgB,EAAE,GACjC,MAAM,GAAG,SAAS,CAcpB"}
@@ -26,7 +26,7 @@ import { type AuthorizationRule, type BackgroundJob, type BackgroundJobOutput, t
26
26
  import { SubprocessComputerUseHost } from '@namzu/computer-use';
27
27
  import { type BrowserControl, type BrowserSessionOptions } from '../browser/control.js';
28
28
  import { FileCheckpointStore } from '../checkpoints/store.js';
29
- import type { CompactionCliConfig, DecisionConfig, HooksConfig, MemoryCliConfig, PluginConfig, RoutingConfig, SandboxConfig, SkillsConfig, TurnLimitsConfig, WebConfig } from '../config/schema.js';
29
+ import type { CompactionCliConfig, DecisionConfig, HooksConfig, MemoryCliConfig, PluginConfig, RoutingConfig, SandboxConfig, SkillsConfig, TurnLimitsConfig, WebConfig, WorkflowCliConfig } from '../config/schema.js';
30
30
  import { type ToolResultScreenConfig } from '../config/tool-result-screens.js';
31
31
  import { type SessionDirectories } from '../context/directories.js';
32
32
  import { type SandboxSummary } from '../context/sandbox.js';
@@ -39,6 +39,8 @@ import { type ConversationContext } from '../integrations/sessions/store.js';
39
39
  import type { SubagentActivity, SubagentActivitySource } from '../integrations/subagents/activity.js';
40
40
  import { type Batch } from '../integrations/subagents/batches.js';
41
41
  import { type SubagentMessageReceipt } from '../integrations/subagents/runtime.js';
42
+ import type { WorkflowRunEnd } from '../integrations/workflows/registry.js';
43
+ import type { WorkflowRunView } from '../integrations/workflows/view.js';
42
44
  import { type TypedNoteResult } from '../memory/typed.js';
43
45
  import type { PermissionMode } from '../permissions/mode.js';
44
46
  import { type ModelSwitchOutcome } from './model-switch-tool.js';
@@ -76,6 +78,8 @@ export type AgentEvent = {
76
78
  readonly detail?: readonly string[];
77
79
  /** A web search or fetch: what it is for, so its row can name it. */
78
80
  readonly web?: WebActivity;
81
+ /** A shell call's full command line, kept with its line breaks for the cell header. */
82
+ readonly command?: string;
79
83
  /**
80
84
  * The tool declares this call read-only. Absent means it changes
81
85
  * something, or the tool did not say. Read by the TUI's skill
@@ -168,6 +172,8 @@ export type AgentEvent = {
168
172
  readonly cancelled?: boolean;
169
173
  /** A web search or fetch, with whatever its result told us (query, result count). */
170
174
  readonly web?: WebActivity;
175
+ /** A shell call's output split into streams, for the command cell. */
176
+ readonly shell?: import('./shell-cell.js').ShellOutput;
171
177
  }
172
178
  /**
173
179
  * The model thinking, for the live region only. `text` is a delta;
@@ -484,6 +490,19 @@ export interface SendOptions {
484
490
  * so it is recorded. Absent, `permissionMode` holds for the whole turn.
485
491
  */
486
492
  readonly currentPermissionMode?: () => PermissionMode;
493
+ /**
494
+ * A host that can run workflows says so by passing this, and says who
495
+ * answers their reviews for as long as they run. A workflow outlives the
496
+ * turn that started it, so it cannot borrow `onPermission`, which belongs to
497
+ * the turn. Absent, the `workflow` tool is not offered at all: a host that
498
+ * has not built the screens for a background run (the desktop app today)
499
+ * must not hand the model a tool whose agents it cannot ask about.
500
+ */
501
+ readonly workflowReview?: {
502
+ /** Absent: nobody to ask (a headless host), so only a session set to run without asking may start one. */
503
+ readonly onPermission?: PermissionFn;
504
+ readonly currentPermissionMode: () => PermissionMode;
505
+ };
487
506
  /**
488
507
  * Caller-reserved identity for this new turn, for a host that has to name
489
508
  * the turn before it starts (a resident step's verifier). Absent: the
@@ -641,6 +660,29 @@ export interface AutoRouteSummary {
641
660
  readonly tier: RouteTier;
642
661
  readonly model: string;
643
662
  }
663
+ /** The workflow runs of one session, as the terminal reads and steers them. */
664
+ export interface SessionWorkflows {
665
+ /** Runs this process started, running and ended, oldest first. */
666
+ readonly runs: () => readonly WorkflowRunView[];
667
+ readonly subscribe: (listener: () => void) => () => void;
668
+ /** Stop one run; false when it is not running. */
669
+ readonly stop: (runId: string) => boolean;
670
+ /** Skip one agent of a run; false when it is not running. */
671
+ readonly skipAgent: (runId: string, index: number) => boolean;
672
+ /** Which run and agent a monitor row is, if it is a workflow agent. */
673
+ readonly agentOf: (viewId: string) => {
674
+ readonly runId: string;
675
+ readonly index: number;
676
+ } | undefined;
677
+ /** Every run of this conversation, newest first: the live ones, then the journaled rest. */
678
+ readonly history: () => Promise<readonly WorkflowRunView[]>;
679
+ /** Be told once when a run ends, whether or not a turn is running. */
680
+ readonly onEnd: (listener: (end: WorkflowRunEnd) => void) => () => void;
681
+ /** Resolves once no run is going, or when the signal aborts. */
682
+ readonly idle: (signal?: AbortSignal) => Promise<void>;
683
+ /** Forget ended runs and stop running ones (a new conversation). */
684
+ readonly reset: () => void;
685
+ }
644
686
  export interface AgentSession {
645
687
  /**
646
688
  * The browser the `browser` and `browser_act` tools drive, when this
@@ -832,7 +874,11 @@ export interface AgentSession {
832
874
  readonly text: string;
833
875
  }) => void) => () => void;
834
876
  readonly messageSubagent?: (viewId: string, message: string, opts?: SendOptions) => Promise<SubagentMessageReceipt>;
877
+ /** Stop one running child from the agents rail; false when it is not ours or already ended. */
878
+ readonly stopSubagent?: (viewId: string) => boolean;
835
879
  readonly subagents?: SubagentActivitySource;
880
+ /** Workflow runs of this conversation: the `workflow` tool's background runs. */
881
+ readonly workflows?: SessionWorkflows;
836
882
  /**
837
883
  * Children of this conversation's earlier turns, rebuilt from their own
838
884
  * session logs.
@@ -1205,6 +1251,8 @@ export interface AgentSessionOptions {
1205
1251
  readonly memory?: MemoryCliConfig;
1206
1252
  /** See `NamzuCliConfig.limits`: how many model calls and tokens one turn may spend. */
1207
1253
  readonly limits?: TurnLimitsConfig;
1254
+ /** See `NamzuCliConfig.workflow`: the caps a workflow run is held to. */
1255
+ readonly workflow?: WorkflowCliConfig;
1208
1256
  /**
1209
1257
  * Where this session's events are recorded, if anywhere.
1210
1258
  *