@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,380 +0,0 @@
1
- import { createRequire as __namzuCreateRequire } from 'node:module';
2
- const require = __namzuCreateRequire(import.meta.url);
3
- import {
4
- SKILL_TIERS,
5
- discoverSkillRoster,
6
- parseSkillMarkdown,
7
- projectSkillsDir,
8
- skillTierLabel,
9
- userSkillsDir
10
- } from "./chunk-PJ3UYK2K.js";
11
- import {
12
- defineTool,
13
- mcpJsonSchemaToZod,
14
- revealHiddenCharacters,
15
- scanSchedulePrompt
16
- } from "./chunk-ZKTLXAQK.js";
17
- import {
18
- __name
19
- } from "./chunk-76FLAFCG.js";
20
-
21
- // src/config/turn-guards.ts
22
- var GUARD_KEYS = ["tokenBudget", "maxIterations", "timeoutMs"];
23
- function resolveTurnGuards(...layers) {
24
- const resolved = { tokenBudget: 0, maxIterations: 0, timeoutMs: 0 };
25
- for (const layer of layers) {
26
- for (const key of GUARD_KEYS) {
27
- const value = layer?.[key];
28
- if (value === void 0) continue;
29
- if (!Number.isSafeInteger(value) || value < 0 || key === "timeoutMs" && value > 2147483647)
30
- throw new Error(
31
- `Invalid ${key}: use a nonnegative safe integer${key === "timeoutMs" ? " at most 2147483647" : ""}. 0 means unlimited.`
32
- );
33
- resolved[key] = value;
34
- }
35
- }
36
- return resolved;
37
- }
38
- __name(resolveTurnGuards, "resolveTurnGuards");
39
- async function readStoredTurnGuards(log, turnId) {
40
- for await (const { record } of log.read({ mode: "strict" })) {
41
- if (record.type !== "turn_started" || record.turnId !== turnId) continue;
42
- if (record.sessionId !== log.sessionId)
43
- throw new Error("Turn record belongs to a different session than the resumed turn");
44
- const config = { ...record.config };
45
- if (GUARD_KEYS.some((key) => typeof config[key] !== "number"))
46
- throw new Error("Turn record does not contain its original limits");
47
- return resolveTurnGuards({
48
- tokenBudget: config.tokenBudget,
49
- maxIterations: config.maxIterations,
50
- timeoutMs: config.timeoutMs
51
- });
52
- }
53
- return void 0;
54
- }
55
- __name(readStoredTurnGuards, "readStoredTurnGuards");
56
-
57
- // src/skills/save.ts
58
- import { randomBytes } from "node:crypto";
59
- import { closeSync, fsyncSync, mkdirSync, openSync, renameSync, rmSync, writeSync } from "node:fs";
60
- import { homedir } from "node:os";
61
- import { dirname, join, relative, sep } from "node:path";
62
- var SAVE_SKILL_TOOL_NAME = "save_skill";
63
- var SKILL_CREATOR_SKILL = "skill-creator";
64
- function newSkillPrompt(idea) {
65
- const what = idea.trim();
66
- return [
67
- `Help me create a new skill. Load the ${SKILL_CREATOR_SKILL} skill with the skill tool and follow it: interview me, show me the draft, and save it with save_skill only after I agree. Write the skill in the language of my own messages, not in English by default (namzu writes this request in English; it does not count).`,
68
- what ? `What the skill should do: ${what}` : "Start by asking what the skill should do."
69
- ].join(" ");
70
- }
71
- __name(newSkillPrompt, "newSkillPrompt");
72
- function learnSkillPrompt(name) {
73
- return [
74
- `Save what we just did in this conversation as a reusable skill. Load the ${SKILL_CREATOR_SKILL} skill with the skill tool and follow its "from this conversation" mode: generalise the task, replace this run's names, paths, values and dates with placeholders, leave out secrets and personal data, and never copy tool, file or page output into it.`,
75
- name ? `Name it ${name}.` : "Choose a short name for the kind of task, not for this instance of it.",
76
- "Write the description and instructions in the language of my own earlier messages in this conversation, not in English by default (namzu writes this request in English; it does not count). The name stays lowercase ASCII with dashes.",
77
- 'The save_skill confirmation screen is my review of the draft: call save_skill with origin "learned" in this turn, without asking me in a reply first. If I cancel, ask what to change.'
78
- ].join(" ");
79
- }
80
- __name(learnSkillPrompt, "learnSkillPrompt");
81
- var SKILL_NAME_MAX_CHARS = 64;
82
- var SKILL_DESCRIPTION_MAX_CHARS = 1024;
83
- var SKILL_BODY_MAX_BYTES = 64 * 1024;
84
- var SKILL_NAME_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
85
- var SkillDraftError = class extends Error {
86
- static {
87
- __name(this, "SkillDraftError");
88
- }
89
- name = "SkillDraftError";
90
- };
91
- function validateSkillDraft(input) {
92
- const name = input.name.trim();
93
- if (name.length === 0 || name.length > SKILL_NAME_MAX_CHARS || !SKILL_NAME_PATTERN.test(name)) {
94
- throw new SkillDraftError(
95
- `name "${name}" must be 1\u2013${SKILL_NAME_MAX_CHARS} lowercase letters, digits and single hyphens (like "release-notes").`
96
- );
97
- }
98
- const description = input.description.replace(/\s+/g, " ").trim();
99
- if (description.length === 0) throw new SkillDraftError("description must not be empty.");
100
- if (description.length > SKILL_DESCRIPTION_MAX_CHARS) {
101
- throw new SkillDraftError(
102
- `description is ${description.length} characters; at most ${SKILL_DESCRIPTION_MAX_CHARS}.`
103
- );
104
- }
105
- const body = input.body.replace(/\r\n?/g, "\n").trim();
106
- if (body.length === 0) throw new SkillDraftError("body must not be empty.");
107
- const bytes = Buffer.byteLength(body, "utf8");
108
- if (bytes > SKILL_BODY_MAX_BYTES) {
109
- throw new SkillDraftError(`body is ${bytes} bytes; at most ${SKILL_BODY_MAX_BYTES}.`);
110
- }
111
- if (/^---[ \t]*$/m.test(body.split("\n", 1)[0] ?? "")) {
112
- throw new SkillDraftError(
113
- "body must be the instructions only; pass name and description as fields, not as frontmatter."
114
- );
115
- }
116
- return { name, description, body, origin: input.origin ?? "created" };
117
- }
118
- __name(validateSkillDraft, "validateSkillDraft");
119
- function composeSkillMarkdown(draft, meta) {
120
- const lines = [
121
- "---",
122
- `name: ${draft.name}`,
123
- `description: "${draft.description}"`,
124
- "metadata:",
125
- ` namzu-origin: ${draft.origin}`,
126
- ...meta.sessionId ? [` namzu-session: "${meta.sessionId}"`] : [],
127
- ` namzu-created: "${meta.createdAt.toISOString()}"`,
128
- "---",
129
- "",
130
- draft.body,
131
- ""
132
- ];
133
- const markdown = lines.join("\n");
134
- let parsed;
135
- try {
136
- parsed = parseSkillMarkdown(markdown);
137
- } catch (error) {
138
- throw new SkillDraftError(
139
- `the file would not load: ${error instanceof Error ? error.message : String(error)}`
140
- );
141
- }
142
- if (parsed.name !== draft.name || parsed.description !== draft.description) {
143
- throw new SkillDraftError(
144
- "the description would read back differently from what was written; drop leading or trailing quotes and brackets."
145
- );
146
- }
147
- return markdown;
148
- }
149
- __name(composeSkillMarkdown, "composeSkillMarkdown");
150
- function displayPath(path, cwd) {
151
- const rel = relative(cwd, path);
152
- if (rel && !rel.startsWith("..") && !rel.startsWith(sep)) return `.${sep}${rel}`;
153
- const home = homedir();
154
- const fromHome = relative(home, path);
155
- if (fromHome && !fromHome.startsWith("..")) return `~${sep}${fromHome}`;
156
- return path;
157
- }
158
- __name(displayPath, "displayPath");
159
- function planSkillTargets(name, options) {
160
- const roster = discoverSkillRoster({
161
- cwd: options.cwd,
162
- ...options.home !== void 0 ? { home: options.home } : {},
163
- // Every tier, the built-in one included even when the config turns it
164
- // off: "replaces" is about files, and the file is there.
165
- config: { ...options.config ?? {}, builtin: true, disabled: [] }
166
- });
167
- const existing = [
168
- ...roster.skills.filter((skill) => skill.name === name),
169
- ...roster.shadowed.filter((skill) => skill.name === name)
170
- ];
171
- const target = /* @__PURE__ */ __name((scope) => {
172
- const tier = scope;
173
- const dir = scope === "user" ? userSkillsDir(options.home) : projectSkillsDir(options.cwd);
174
- const path = join(dir, name, "SKILL.md");
175
- const rank = SKILL_TIERS.indexOf(tier);
176
- const collisions = existing.map((skill) => {
177
- const overwrite = skill.path === path;
178
- const higher = !overwrite && SKILL_TIERS.indexOf(skill.tier) > rank;
179
- return {
180
- effect: higher ? "hidden-by" : "replaces",
181
- where: skillTierLabel(skill.tier),
182
- path: skill.path,
183
- overwrite
184
- };
185
- }).sort((a, b) => Number(b.overwrite) - Number(a.overwrite));
186
- return { scope, path, displayPath: displayPath(path, options.cwd), collisions };
187
- }, "target");
188
- return { user: target("user"), project: target("project") };
189
- }
190
- __name(planSkillTargets, "planSkillTargets");
191
- function describeCollision(collision, cwd) {
192
- const where = displayPath(collision.path, cwd);
193
- if (collision.overwrite) return `replaces ${collision.where} skill ${where} (overwrites it)`;
194
- return collision.effect === "replaces" ? `replaces ${collision.where} skill ${where}` : `hidden by ${collision.where} skill ${where}, which keeps winning`;
195
- }
196
- __name(describeCollision, "describeCollision");
197
- function skillWarnings(markdown) {
198
- return scanSchedulePrompt(markdown).map((finding) => finding.replace(/^The prompt/, "The skill"));
199
- }
200
- __name(skillWarnings, "skillWarnings");
201
- function writeFileAtomically(path, text) {
202
- mkdirSync(dirname(path), { recursive: true });
203
- const temporary = join(
204
- dirname(path),
205
- `.SKILL.md.${process.pid}.${randomBytes(6).toString("hex")}.tmp`
206
- );
207
- try {
208
- const fd = openSync(temporary, "wx", 420);
209
- try {
210
- writeSync(fd, text);
211
- fsyncSync(fd);
212
- } finally {
213
- closeSync(fd);
214
- }
215
- renameSync(temporary, path);
216
- } catch (error) {
217
- rmSync(temporary, { force: true });
218
- throw error;
219
- }
220
- }
221
- __name(writeFileAtomically, "writeFileAtomically");
222
- var inputSchema = mcpJsonSchemaToZod({
223
- type: "object",
224
- properties: {
225
- name: {
226
- type: "string",
227
- minLength: 1,
228
- maxLength: 128,
229
- description: "Directory and skill name: lowercase letters, digits and single hyphens, at most 64."
230
- },
231
- description: {
232
- type: "string",
233
- minLength: 1,
234
- maxLength: 4096,
235
- description: "One or two sentences saying WHEN to use the skill (the task and the words a user would use), at most 1024 characters. The model decides to load a skill from this alone."
236
- },
237
- body: {
238
- type: "string",
239
- minLength: 1,
240
- maxLength: 2e5,
241
- description: "The instructions: markdown, no frontmatter. Steps, constraints, examples."
242
- },
243
- scope: {
244
- type: "string",
245
- enum: ["user", "project"],
246
- description: "Where you suggest it go: user (~/.namzu/skills, every project) or project (./.namzu/skills). The operator chooses."
247
- },
248
- replaces: {
249
- type: "string",
250
- description: "The name of the existing skill this updates, when it is one. Must equal name."
251
- },
252
- origin: {
253
- type: "string",
254
- enum: ["created", "learned"],
255
- description: "created: written with the operator; learned: generalised from this conversation."
256
- }
257
- },
258
- required: ["name", "description", "body"],
259
- additionalProperties: false
260
- });
261
- function refuse(error) {
262
- return { success: false, output: "", error };
263
- }
264
- __name(refuse, "refuse");
265
- function buildSaveSkillTool(host) {
266
- return defineTool({
267
- name: SAVE_SKILL_TOOL_NAME,
268
- description: "Propose a reusable skill (a SKILL.md: name, description, instructions) for the operator to save. The operator sees the whole file and where it would go, and picks user, project or cancel; nothing is written without that. Use it only when the operator asked for a skill (the skill-creator skill describes how to draft one).",
269
- inputSchema,
270
- category: "custom",
271
- permissions: ["file_write"],
272
- readOnly: false,
273
- destructive: false,
274
- concurrencySafe: false,
275
- // A person reads the whole file before answering; the default two
276
- // minutes would close the question on them.
277
- timeoutMs: 30 * 6e4,
278
- presentCall: /* @__PURE__ */ __name((input) => ({
279
- kind: "generic",
280
- label: `Propose skill ${typeof input.name === "string" ? input.name : ""}`.trim(),
281
- presentation: "activity"
282
- }), "presentCall"),
283
- // The operator's No on the tool's own screen is not a failure.
284
- presentResult: /* @__PURE__ */ __name((_input, result) => !result.success && result.data?.cancelled === true ? { kind: "generic", label: "Cancelled \u2014 nothing was saved", outcome: "cancelled" } : void 0, "presentResult"),
285
- async execute(raw, context) {
286
- const input = raw;
287
- let draft;
288
- try {
289
- draft = validateSkillDraft({
290
- name: input.name,
291
- description: input.description,
292
- body: input.body,
293
- ...input.origin ? { origin: input.origin } : {}
294
- });
295
- } catch (error) {
296
- return refuse(`save_skill: ${error instanceof Error ? error.message : String(error)}`);
297
- }
298
- if (input.replaces !== void 0 && input.replaces.trim() !== draft.name) {
299
- return refuse(
300
- `save_skill: replaces "${input.replaces}" must equal name "${draft.name}"; a skill is updated under its own name, not renamed.`
301
- );
302
- }
303
- const sessionId = host.sessionId();
304
- let markdown;
305
- try {
306
- markdown = composeSkillMarkdown(draft, {
307
- ...sessionId ? { sessionId } : {},
308
- createdAt: (host.now ?? (() => /* @__PURE__ */ new Date()))()
309
- });
310
- } catch (error) {
311
- return refuse(`save_skill: ${error instanceof Error ? error.message : String(error)}`);
312
- }
313
- const cwd = host.cwd();
314
- const home = host.home?.();
315
- const config = host.config?.();
316
- const targets = planSkillTargets(draft.name, {
317
- cwd,
318
- ...home !== void 0 ? { home } : {},
319
- ...config ? { config } : {}
320
- });
321
- const request = {
322
- draft,
323
- markdown,
324
- revealed: revealHiddenCharacters(markdown),
325
- targets,
326
- suggested: input.scope ?? "user",
327
- ...sessionId ? { sessionId } : {},
328
- warnings: skillWarnings(markdown)
329
- };
330
- let answer;
331
- try {
332
- answer = await host.confirm(request, context.abortSignal);
333
- } catch {
334
- answer = "cancel";
335
- }
336
- if (context.abortSignal?.aborted) answer = "cancel";
337
- if (answer !== "user" && answer !== "project") {
338
- return {
339
- ...refuse(
340
- "The operator cancelled; nothing was written. Ask what to change, or leave it."
341
- ),
342
- data: { cancelled: true }
343
- };
344
- }
345
- const target = targets[answer];
346
- try {
347
- writeFileAtomically(target.path, markdown);
348
- } catch (error) {
349
- return refuse(
350
- `save_skill: could not write ${target.path}: ${error instanceof Error ? error.message : String(error)}`
351
- );
352
- }
353
- host.saved?.({ name: draft.name, path: target.path });
354
- const notes = target.collisions.map((c) => describeCollision(c, cwd));
355
- return {
356
- success: true,
357
- output: [
358
- `Saved skill "${draft.name}" to ${target.displayPath}.${notes.length > 0 ? ` It ${notes.join("; ")}.` : ""}`,
359
- `It is offered to the model from the next turn; the operator can activate it now with /skills ${draft.name}.`
360
- ].join(" "),
361
- data: { name: draft.name, path: target.path, scope: answer }
362
- };
363
- }
364
- });
365
- }
366
- __name(buildSaveSkillTool, "buildSaveSkillTool");
367
-
368
- export {
369
- resolveTurnGuards,
370
- readStoredTurnGuards,
371
- SAVE_SKILL_TOOL_NAME,
372
- SKILL_CREATOR_SKILL,
373
- newSkillPrompt,
374
- learnSkillPrompt,
375
- SKILL_NAME_MAX_CHARS,
376
- SKILL_NAME_PATTERN,
377
- describeCollision,
378
- buildSaveSkillTool
379
- };
380
- //# sourceMappingURL=chunk-L6FMG3R6.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/config/turn-guards.ts", "../../src/skills/save.ts"],
4
- "mappings": "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",
5
- "names": []
6
- }