@namzu/cli 36.2.0 → 36.3.0
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.
- package/CHANGELOG.md +35 -0
- package/dist/bin.js +1 -1
- package/dist/chunks/{acp-P22WRX3A.js → acp-2DS2IECT.js} +58 -34
- package/dist/chunks/acp-2DS2IECT.js.map +6 -0
- package/dist/chunks/{activity-command-OK463NV4.js → activity-command-MCYEK4Z4.js} +10 -10
- package/dist/chunks/{add-ML53TFN2.js → add-ZQ3YWP4F.js} +16 -16
- package/dist/chunks/{agent-3ST7Q6HZ.js → agent-PAGVUATH.js} +22 -22
- package/dist/chunks/agent-session-PLIPF3XG.js +46 -0
- package/dist/chunks/{archive-WV2NBOHR.js → archive-VPREZOGC.js} +8 -8
- package/dist/chunks/{bin-main-FPJQMK33.js → bin-main-MWFKUXP2.js} +3 -3
- package/dist/chunks/{browser-JRWZ3PYX.js → browser-FZWYOIIJ.js} +6 -6
- package/dist/chunks/{chat-3IJFKDSN.js → chat-W355SFNQ.js} +13 -13
- package/dist/chunks/{chunk-S7E42272.js → chunk-2BZOT2CT.js} +2 -2
- package/dist/chunks/{chunk-7OEK2NAO.js → chunk-2O7KYX4V.js} +8 -8
- package/dist/chunks/{chunk-OS7IVIYH.js → chunk-2TGQ2B53.js} +242 -3
- package/dist/chunks/{chunk-OS7IVIYH.js.map → chunk-2TGQ2B53.js.map} +3 -3
- package/dist/chunks/{chunk-LIZPXS73.js → chunk-3F5DGROG.js} +2 -2
- package/dist/chunks/{chunk-NKEOCU52.js → chunk-3M3PMQ3I.js} +7 -7
- package/dist/chunks/{chunk-KNNQHRZ4.js → chunk-46B7KRXY.js} +6 -6
- package/dist/chunks/{chunk-PT7TZNBV.js → chunk-52OVP5BG.js} +4 -4
- package/dist/chunks/{chunk-X2YRM3UE.js → chunk-56OUKG5W.js} +3 -3
- package/dist/chunks/{chunk-53EZXXT4.js → chunk-5H4LJ4AN.js} +27 -9
- package/dist/chunks/chunk-5H4LJ4AN.js.map +6 -0
- package/dist/chunks/{chunk-HJ42RG5U.js → chunk-5URT3ZM2.js} +4 -4
- package/dist/chunks/{chunk-ZZ6Z2DO6.js → chunk-6CGC72OA.js} +10 -10
- package/dist/chunks/{chunk-GWOW3U2S.js → chunk-6TDJXZ5W.js} +4 -4
- package/dist/chunks/{chunk-7WQV2FSF.js → chunk-AHYHR5DY.js} +3 -3
- package/dist/chunks/{chunk-XAKL7C7B.js → chunk-AP5KD43Y.js} +2 -2
- package/dist/chunks/{chunk-NRML7BIR.js → chunk-AS7UWXMN.js} +4 -4
- package/dist/chunks/{chunk-QQLB573I.js → chunk-BOV53LZO.js} +2 -2
- package/dist/chunks/{chunk-GPBUDMUF.js → chunk-BUCICQWG.js} +2 -2
- package/dist/chunks/{chunk-5PQVJBIO.js → chunk-CZVHXYGD.js} +6 -3
- package/dist/chunks/{chunk-5PQVJBIO.js.map → chunk-CZVHXYGD.js.map} +1 -1
- package/dist/chunks/{chunk-CFN7CUD3.js → chunk-DYUOXP5Q.js} +13 -13
- package/dist/chunks/{chunk-G5XTLTDR.js → chunk-E7HLYLD7.js} +3 -3
- package/dist/chunks/{chunk-ABD2DOO2.js → chunk-EKUJUPFA.js} +4 -4
- package/dist/chunks/{chunk-YEFJAE2B.js → chunk-EZ6ZSHYX.js} +27 -26
- package/dist/chunks/{chunk-YEFJAE2B.js.map → chunk-EZ6ZSHYX.js.map} +1 -1
- package/dist/chunks/{chunk-AABPCENY.js → chunk-F3YQ2CSZ.js} +4 -4
- package/dist/chunks/{chunk-2VXA7GZU.js → chunk-FU4GQ7K2.js} +2 -2
- package/dist/chunks/{chunk-VHKKPDL2.js → chunk-GQN64E36.js} +3 -3
- package/dist/chunks/{chunk-3OZ2OBGU.js → chunk-HKDPP2JF.js} +2 -2
- package/dist/chunks/{chunk-YZ675PG4.js → chunk-HSEJGSXE.js} +2 -2
- package/dist/chunks/{chunk-ZXWJ6G3J.js → chunk-I6CDUPVR.js} +2 -2
- package/dist/chunks/{chunk-27VZRJTG.js → chunk-IQBR45AU.js} +2 -2
- package/dist/chunks/{chunk-HIZ7F6BT.js → chunk-JCDTR2ZU.js} +4 -4
- package/dist/chunks/{chunk-ZNAH4EGP.js → chunk-KMHLON54.js} +2 -2
- package/dist/chunks/{chunk-CXLSM5SH.js → chunk-KOG2WB66.js} +4 -4
- package/dist/chunks/{chunk-AGHVC2IJ.js → chunk-LBH5WVXU.js} +2 -2
- package/dist/chunks/{chunk-22P25PLK.js → chunk-LYDXPWAZ.js} +22 -4
- package/dist/chunks/{chunk-22P25PLK.js.map → chunk-LYDXPWAZ.js.map} +1 -1
- package/dist/chunks/{chunk-U5AWHJ7O.js → chunk-MBBFX64S.js} +2 -2
- package/dist/chunks/{chunk-PJ3UYK2K.js → chunk-MJO6CH5F.js} +3 -3
- package/dist/chunks/{chunk-AVIW5JJF.js → chunk-NATYSTPM.js} +2 -2
- package/dist/chunks/{chunk-YLIKDPD6.js → chunk-NBD5MAGK.js} +9 -9
- package/dist/chunks/{chunk-43FBWINL.js → chunk-PINPSIJ5.js} +5 -5
- package/dist/chunks/{chunk-AL6ESCHD.js → chunk-PLKJKF32.js} +12 -12
- package/dist/chunks/chunk-QBAISLAD.js +750 -0
- package/dist/chunks/chunk-QBAISLAD.js.map +6 -0
- package/dist/chunks/{chunk-KQOIPRZ5.js → chunk-QRT3N2K3.js} +2 -2
- package/dist/chunks/{chunk-DYBUCWAB.js → chunk-QXDKRJZ5.js} +3 -3
- package/dist/chunks/{chunk-EOO5AKO4.js → chunk-RBX6RVYO.js} +6 -6
- package/dist/chunks/{chunk-VSUHR44P.js → chunk-RM6HTBJK.js} +2 -2
- package/dist/chunks/{chunk-WW4VKEBD.js → chunk-S6MZK4LD.js} +2 -2
- package/dist/chunks/{chunk-H7VJHF5S.js → chunk-SFUUN6B3.js} +957 -262
- package/dist/chunks/chunk-SFUUN6B3.js.map +6 -0
- package/dist/chunks/{chunk-ZKTLXAQK.js → chunk-V3ZLK3XQ.js} +3243 -1041
- package/dist/chunks/chunk-V3ZLK3XQ.js.map +6 -0
- package/dist/chunks/{chunk-WNMRETWS.js → chunk-VUOS5SQ3.js} +2 -2
- package/dist/chunks/{chunk-YTJO7G24.js → chunk-XCWZZZOW.js} +3 -3
- package/dist/chunks/{chunk-RPAHIOW6.js → chunk-YYQFUKI7.js} +3 -3
- package/dist/chunks/{chunk-5GARJ3CK.js → chunk-YYVDLVUM.js} +2 -2
- package/dist/chunks/{chunk-HQZSTYKY.js → chunk-ZB5ETOVE.js} +3 -3
- package/dist/chunks/{chunk-GFSD2D3M.js → chunk-ZG6NVROB.js} +2 -2
- package/dist/chunks/{chunk-MBGQS5YA.js → chunk-ZHBHRMCI.js} +4 -4
- package/dist/chunks/{cli-runtime-CQKITOHY.js → cli-runtime-NG23IVRM.js} +8 -8
- package/dist/chunks/{commands-UEPVSG33.js → commands-LQISMOPF.js} +5 -5
- package/dist/chunks/{crash-report-3GQ3SJML.js → crash-report-EYK56MJJ.js} +6 -6
- package/dist/chunks/{dist-YDFJ4YOH.js → dist-3AMBKAG4.js} +2 -2
- package/dist/chunks/{dist-SCEJQJFY.js → dist-AUDNCB3F.js} +2 -2
- package/dist/chunks/{dist-FFMNE5LK.js → dist-AZJ56DQJ.js} +2 -2
- package/dist/chunks/{dist-IPJVDPA3.js → dist-DWB5AYXB.js} +2 -2
- package/dist/chunks/{dist-VJ2UQYSX.js → dist-EDKLCZY4.js} +2 -2
- package/dist/chunks/{dist-Q37IZHCW.js → dist-PZXF5NU3.js} +2 -2
- package/dist/chunks/{dist-AMYVT2VT.js → dist-XT4V74YL.js} +2 -2
- package/dist/chunks/{doctor-YWK25HGQ.js → doctor-3EOUWDYB.js} +6 -6
- package/dist/chunks/{drain-5R73B66Y.js → drain-IMNF2CDN.js} +10 -10
- package/dist/chunks/{eval-GYPUHRIK.js → eval-VHWEJ4GG.js} +2 -2
- package/dist/chunks/{exec-AHAC6YBQ.js → exec-2KM6DH56.js} +149 -41
- package/dist/chunks/exec-2KM6DH56.js.map +6 -0
- package/dist/chunks/{home-GI6TRZAN.js → home-H4GTIYO5.js} +3 -3
- package/dist/chunks/{host-queries-MN57UTDU.js → host-queries-5C4TCX6J.js} +13 -13
- package/dist/chunks/{lifecycle-7LD634AQ.js → lifecycle-IHW4P636.js} +23 -23
- package/dist/chunks/{list-DSHTQRTP.js → list-JJZ7I5OF.js} +12 -12
- package/dist/chunks/{login-R5P2OAXZ.js → login-T2RKNHK2.js} +8 -8
- package/dist/chunks/{logs-SGPSXLBY.js → logs-J6D4SEDY.js} +4 -4
- package/dist/chunks/{mcp-MC6B34XH.js → mcp-WONRVJ26.js} +15 -15
- package/dist/chunks/{message-command-4MV2SVHP.js → message-command-F3TFROMK.js} +29 -29
- package/dist/chunks/{operator-tools-GI63VOXH.js → operator-tools-H4MYC5PE.js} +11 -11
- package/dist/chunks/{output-schema-74VSN66J.js → output-schema-RFJUTQ2N.js} +3 -3
- package/dist/chunks/{pal-BWPYGQ4B.js → pal-UCYGJN75.js} +11 -11
- package/dist/chunks/{providers-YV45XVWS.js → providers-BHF65IUG.js} +6 -6
- package/dist/chunks/{resident-OC2D5V5I.js → resident-CNS3XQRU.js} +18 -18
- package/dist/chunks/{resume-command-DZBKOABY.js → resume-command-Y3NYDSI4.js} +4 -4
- package/dist/chunks/{schedule-GUD625PJ.js → schedule-KN5YGOSJ.js} +8 -8
- package/dist/chunks/{service-67FZ3N75.js → service-OEOHUGM6.js} +22 -22
- package/dist/chunks/session-step-AYHFVVX6.js +26 -0
- package/dist/chunks/{skills-DNNEKEOH.js → skills-K3JRZ3IR.js} +8 -8
- package/dist/chunks/{state-K7MMFNZC.js → state-QPSQI7U7.js} +2 -2
- package/dist/chunks/{store-2PDDGKYZ.js → store-7WZWQXKX.js} +6 -6
- package/dist/chunks/{store-NIBJFQOT.js → store-PSQKDEPY.js} +8 -8
- package/dist/chunks/{store-KYMOKW6X.js → store-Z3PS6LUZ.js} +4 -4
- package/dist/chunks/{tui-UY3ZLTMX.js → tui-JKZOXURU.js} +2535 -1325
- package/dist/chunks/tui-JKZOXURU.js.map +6 -0
- package/dist/chunks/{upgrade-2NO7NPPM.js → upgrade-C6QUXRLB.js} +3 -3
- package/dist/chunks/{worktree-ADQJ4AJ5.js → worktree-KLD2PAMU.js} +10 -10
- package/dist/cli.d.ts.map +1 -1
- package/dist/commands/acp-harness.d.ts.map +1 -1
- package/dist/commands/desktop-host-pr.d.ts +14 -0
- package/dist/commands/desktop-host-pr.d.ts.map +1 -0
- package/dist/commands/desktop-host.d.ts +3 -0
- package/dist/commands/desktop-host.d.ts.map +1 -1
- package/dist/commands/exec-json.d.ts.map +1 -1
- package/dist/commands/exec-workflows.d.ts +50 -0
- package/dist/commands/exec-workflows.d.ts.map +1 -0
- package/dist/commands/exec.d.ts.map +1 -1
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/schema.d.ts +13 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/index.js +9 -9
- package/dist/integrations/resident/runner-worker.js +16 -16
- package/dist/integrations/subagents/activity.d.ts +19 -0
- package/dist/integrations/subagents/activity.d.ts.map +1 -1
- package/dist/integrations/subagents/runtime.d.ts +52 -0
- package/dist/integrations/subagents/runtime.d.ts.map +1 -1
- package/dist/integrations/workflows/doctrine.d.ts +7 -0
- package/dist/integrations/workflows/doctrine.d.ts.map +1 -0
- package/dist/integrations/workflows/history.d.ts +13 -0
- package/dist/integrations/workflows/history.d.ts.map +1 -0
- package/dist/integrations/workflows/host.d.ts +59 -0
- package/dist/integrations/workflows/host.d.ts.map +1 -0
- package/dist/integrations/workflows/notice.d.ts +19 -0
- package/dist/integrations/workflows/notice.d.ts.map +1 -0
- package/dist/integrations/workflows/offering.d.ts +40 -0
- package/dist/integrations/workflows/offering.d.ts.map +1 -0
- package/dist/integrations/workflows/registry.d.ts +73 -0
- package/dist/integrations/workflows/registry.d.ts.map +1 -0
- package/dist/integrations/workflows/view.d.ts +97 -0
- package/dist/integrations/workflows/view.d.ts.map +1 -0
- package/dist/tui/AgentExplorer.d.ts +179 -32
- package/dist/tui/AgentExplorer.d.ts.map +1 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/BackgroundJobsPanel.d.ts.map +1 -1
- package/dist/tui/BrandHeader.d.ts +3 -1
- package/dist/tui/BrandHeader.d.ts.map +1 -1
- package/dist/tui/Composer.d.ts +23 -1
- package/dist/tui/Composer.d.ts.map +1 -1
- package/dist/tui/ComposerFrame.d.ts +10 -3
- package/dist/tui/ComposerFrame.d.ts.map +1 -1
- package/dist/tui/LiveActivity.d.ts +4 -0
- package/dist/tui/LiveActivity.d.ts.map +1 -1
- package/dist/tui/PendingInputPanel.d.ts +14 -11
- package/dist/tui/PendingInputPanel.d.ts.map +1 -1
- package/dist/tui/PermissionOverlay.d.ts.map +1 -1
- package/dist/tui/StatusBar.d.ts +61 -36
- package/dist/tui/StatusBar.d.ts.map +1 -1
- package/dist/tui/Transcript.d.ts +14 -0
- package/dist/tui/Transcript.d.ts.map +1 -1
- package/dist/tui/agent-transcript-rows.d.ts +34 -12
- package/dist/tui/agent-transcript-rows.d.ts.map +1 -1
- package/dist/tui/agent.d.ts +49 -1
- package/dist/tui/agent.d.ts.map +1 -1
- package/dist/tui/job-exit-row.d.ts +19 -0
- package/dist/tui/job-exit-row.d.ts.map +1 -0
- package/dist/tui/permission-review.d.ts +26 -0
- package/dist/tui/permission-review.d.ts.map +1 -1
- package/dist/tui/pr-status.d.ts +112 -0
- package/dist/tui/pr-status.d.ts.map +1 -0
- package/dist/tui/shell-cell.d.ts +86 -0
- package/dist/tui/shell-cell.d.ts.map +1 -0
- package/dist/tui/shorten-path.d.ts +10 -0
- package/dist/tui/shorten-path.d.ts.map +1 -0
- package/dist/tui/slashCommands.d.ts +4 -0
- package/dist/tui/slashCommands.d.ts.map +1 -1
- package/dist/tui/theme.d.ts +6 -0
- package/dist/tui/theme.d.ts.map +1 -1
- package/dist/tui/tidy-tool-output.d.ts +5 -0
- package/dist/tui/tidy-tool-output.d.ts.map +1 -1
- package/dist/tui/types.d.ts +10 -1
- package/dist/tui/types.d.ts.map +1 -1
- package/dist/tui/use-pr-status.d.ts +15 -0
- package/dist/tui/use-pr-status.d.ts.map +1 -0
- package/dist/tui/workflow-runs.d.ts +38 -0
- package/dist/tui/workflow-runs.d.ts.map +1 -0
- package/package.json +4 -4
- package/dist/chunks/acp-P22WRX3A.js.map +0 -6
- package/dist/chunks/agent-session-C2HDOXK4.js +0 -46
- package/dist/chunks/chunk-53EZXXT4.js.map +0 -6
- package/dist/chunks/chunk-H7VJHF5S.js.map +0 -6
- package/dist/chunks/chunk-L6FMG3R6.js +0 -380
- package/dist/chunks/chunk-L6FMG3R6.js.map +0 -6
- package/dist/chunks/chunk-ZKTLXAQK.js.map +0 -6
- package/dist/chunks/exec-AHAC6YBQ.js.map +0 -6
- package/dist/chunks/session-step-YNMU75FQ.js +0 -26
- package/dist/chunks/tui-UY3ZLTMX.js.map +0 -6
- /package/dist/chunks/{activity-command-OK463NV4.js.map → activity-command-MCYEK4Z4.js.map} +0 -0
- /package/dist/chunks/{add-ML53TFN2.js.map → add-ZQ3YWP4F.js.map} +0 -0
- /package/dist/chunks/{agent-3ST7Q6HZ.js.map → agent-PAGVUATH.js.map} +0 -0
- /package/dist/chunks/{agent-session-C2HDOXK4.js.map → agent-session-PLIPF3XG.js.map} +0 -0
- /package/dist/chunks/{archive-WV2NBOHR.js.map → archive-VPREZOGC.js.map} +0 -0
- /package/dist/chunks/{bin-main-FPJQMK33.js.map → bin-main-MWFKUXP2.js.map} +0 -0
- /package/dist/chunks/{browser-JRWZ3PYX.js.map → browser-FZWYOIIJ.js.map} +0 -0
- /package/dist/chunks/{chat-3IJFKDSN.js.map → chat-W355SFNQ.js.map} +0 -0
- /package/dist/chunks/{chunk-S7E42272.js.map → chunk-2BZOT2CT.js.map} +0 -0
- /package/dist/chunks/{chunk-7OEK2NAO.js.map → chunk-2O7KYX4V.js.map} +0 -0
- /package/dist/chunks/{chunk-LIZPXS73.js.map → chunk-3F5DGROG.js.map} +0 -0
- /package/dist/chunks/{chunk-NKEOCU52.js.map → chunk-3M3PMQ3I.js.map} +0 -0
- /package/dist/chunks/{chunk-KNNQHRZ4.js.map → chunk-46B7KRXY.js.map} +0 -0
- /package/dist/chunks/{chunk-PT7TZNBV.js.map → chunk-52OVP5BG.js.map} +0 -0
- /package/dist/chunks/{chunk-X2YRM3UE.js.map → chunk-56OUKG5W.js.map} +0 -0
- /package/dist/chunks/{chunk-HJ42RG5U.js.map → chunk-5URT3ZM2.js.map} +0 -0
- /package/dist/chunks/{chunk-ZZ6Z2DO6.js.map → chunk-6CGC72OA.js.map} +0 -0
- /package/dist/chunks/{chunk-GWOW3U2S.js.map → chunk-6TDJXZ5W.js.map} +0 -0
- /package/dist/chunks/{chunk-7WQV2FSF.js.map → chunk-AHYHR5DY.js.map} +0 -0
- /package/dist/chunks/{chunk-XAKL7C7B.js.map → chunk-AP5KD43Y.js.map} +0 -0
- /package/dist/chunks/{chunk-NRML7BIR.js.map → chunk-AS7UWXMN.js.map} +0 -0
- /package/dist/chunks/{chunk-QQLB573I.js.map → chunk-BOV53LZO.js.map} +0 -0
- /package/dist/chunks/{chunk-GPBUDMUF.js.map → chunk-BUCICQWG.js.map} +0 -0
- /package/dist/chunks/{chunk-CFN7CUD3.js.map → chunk-DYUOXP5Q.js.map} +0 -0
- /package/dist/chunks/{chunk-G5XTLTDR.js.map → chunk-E7HLYLD7.js.map} +0 -0
- /package/dist/chunks/{chunk-ABD2DOO2.js.map → chunk-EKUJUPFA.js.map} +0 -0
- /package/dist/chunks/{chunk-AABPCENY.js.map → chunk-F3YQ2CSZ.js.map} +0 -0
- /package/dist/chunks/{chunk-2VXA7GZU.js.map → chunk-FU4GQ7K2.js.map} +0 -0
- /package/dist/chunks/{chunk-VHKKPDL2.js.map → chunk-GQN64E36.js.map} +0 -0
- /package/dist/chunks/{chunk-3OZ2OBGU.js.map → chunk-HKDPP2JF.js.map} +0 -0
- /package/dist/chunks/{chunk-YZ675PG4.js.map → chunk-HSEJGSXE.js.map} +0 -0
- /package/dist/chunks/{chunk-ZXWJ6G3J.js.map → chunk-I6CDUPVR.js.map} +0 -0
- /package/dist/chunks/{chunk-27VZRJTG.js.map → chunk-IQBR45AU.js.map} +0 -0
- /package/dist/chunks/{chunk-HIZ7F6BT.js.map → chunk-JCDTR2ZU.js.map} +0 -0
- /package/dist/chunks/{chunk-ZNAH4EGP.js.map → chunk-KMHLON54.js.map} +0 -0
- /package/dist/chunks/{chunk-CXLSM5SH.js.map → chunk-KOG2WB66.js.map} +0 -0
- /package/dist/chunks/{chunk-AGHVC2IJ.js.map → chunk-LBH5WVXU.js.map} +0 -0
- /package/dist/chunks/{chunk-U5AWHJ7O.js.map → chunk-MBBFX64S.js.map} +0 -0
- /package/dist/chunks/{chunk-PJ3UYK2K.js.map → chunk-MJO6CH5F.js.map} +0 -0
- /package/dist/chunks/{chunk-AVIW5JJF.js.map → chunk-NATYSTPM.js.map} +0 -0
- /package/dist/chunks/{chunk-YLIKDPD6.js.map → chunk-NBD5MAGK.js.map} +0 -0
- /package/dist/chunks/{chunk-43FBWINL.js.map → chunk-PINPSIJ5.js.map} +0 -0
- /package/dist/chunks/{chunk-AL6ESCHD.js.map → chunk-PLKJKF32.js.map} +0 -0
- /package/dist/chunks/{chunk-KQOIPRZ5.js.map → chunk-QRT3N2K3.js.map} +0 -0
- /package/dist/chunks/{chunk-DYBUCWAB.js.map → chunk-QXDKRJZ5.js.map} +0 -0
- /package/dist/chunks/{chunk-EOO5AKO4.js.map → chunk-RBX6RVYO.js.map} +0 -0
- /package/dist/chunks/{chunk-VSUHR44P.js.map → chunk-RM6HTBJK.js.map} +0 -0
- /package/dist/chunks/{chunk-WW4VKEBD.js.map → chunk-S6MZK4LD.js.map} +0 -0
- /package/dist/chunks/{chunk-WNMRETWS.js.map → chunk-VUOS5SQ3.js.map} +0 -0
- /package/dist/chunks/{chunk-YTJO7G24.js.map → chunk-XCWZZZOW.js.map} +0 -0
- /package/dist/chunks/{chunk-RPAHIOW6.js.map → chunk-YYQFUKI7.js.map} +0 -0
- /package/dist/chunks/{chunk-5GARJ3CK.js.map → chunk-YYVDLVUM.js.map} +0 -0
- /package/dist/chunks/{chunk-HQZSTYKY.js.map → chunk-ZB5ETOVE.js.map} +0 -0
- /package/dist/chunks/{chunk-GFSD2D3M.js.map → chunk-ZG6NVROB.js.map} +0 -0
- /package/dist/chunks/{chunk-MBGQS5YA.js.map → chunk-ZHBHRMCI.js.map} +0 -0
- /package/dist/chunks/{cli-runtime-CQKITOHY.js.map → cli-runtime-NG23IVRM.js.map} +0 -0
- /package/dist/chunks/{commands-UEPVSG33.js.map → commands-LQISMOPF.js.map} +0 -0
- /package/dist/chunks/{crash-report-3GQ3SJML.js.map → crash-report-EYK56MJJ.js.map} +0 -0
- /package/dist/chunks/{dist-YDFJ4YOH.js.map → dist-3AMBKAG4.js.map} +0 -0
- /package/dist/chunks/{dist-SCEJQJFY.js.map → dist-AUDNCB3F.js.map} +0 -0
- /package/dist/chunks/{dist-FFMNE5LK.js.map → dist-AZJ56DQJ.js.map} +0 -0
- /package/dist/chunks/{dist-IPJVDPA3.js.map → dist-DWB5AYXB.js.map} +0 -0
- /package/dist/chunks/{dist-VJ2UQYSX.js.map → dist-EDKLCZY4.js.map} +0 -0
- /package/dist/chunks/{dist-Q37IZHCW.js.map → dist-PZXF5NU3.js.map} +0 -0
- /package/dist/chunks/{dist-AMYVT2VT.js.map → dist-XT4V74YL.js.map} +0 -0
- /package/dist/chunks/{doctor-YWK25HGQ.js.map → doctor-3EOUWDYB.js.map} +0 -0
- /package/dist/chunks/{drain-5R73B66Y.js.map → drain-IMNF2CDN.js.map} +0 -0
- /package/dist/chunks/{eval-GYPUHRIK.js.map → eval-VHWEJ4GG.js.map} +0 -0
- /package/dist/chunks/{home-GI6TRZAN.js.map → home-H4GTIYO5.js.map} +0 -0
- /package/dist/chunks/{host-queries-MN57UTDU.js.map → host-queries-5C4TCX6J.js.map} +0 -0
- /package/dist/chunks/{lifecycle-7LD634AQ.js.map → lifecycle-IHW4P636.js.map} +0 -0
- /package/dist/chunks/{list-DSHTQRTP.js.map → list-JJZ7I5OF.js.map} +0 -0
- /package/dist/chunks/{login-R5P2OAXZ.js.map → login-T2RKNHK2.js.map} +0 -0
- /package/dist/chunks/{logs-SGPSXLBY.js.map → logs-J6D4SEDY.js.map} +0 -0
- /package/dist/chunks/{mcp-MC6B34XH.js.map → mcp-WONRVJ26.js.map} +0 -0
- /package/dist/chunks/{message-command-4MV2SVHP.js.map → message-command-F3TFROMK.js.map} +0 -0
- /package/dist/chunks/{operator-tools-GI63VOXH.js.map → operator-tools-H4MYC5PE.js.map} +0 -0
- /package/dist/chunks/{output-schema-74VSN66J.js.map → output-schema-RFJUTQ2N.js.map} +0 -0
- /package/dist/chunks/{pal-BWPYGQ4B.js.map → pal-UCYGJN75.js.map} +0 -0
- /package/dist/chunks/{providers-YV45XVWS.js.map → providers-BHF65IUG.js.map} +0 -0
- /package/dist/chunks/{resident-OC2D5V5I.js.map → resident-CNS3XQRU.js.map} +0 -0
- /package/dist/chunks/{resume-command-DZBKOABY.js.map → resume-command-Y3NYDSI4.js.map} +0 -0
- /package/dist/chunks/{schedule-GUD625PJ.js.map → schedule-KN5YGOSJ.js.map} +0 -0
- /package/dist/chunks/{service-67FZ3N75.js.map → service-OEOHUGM6.js.map} +0 -0
- /package/dist/chunks/{session-step-YNMU75FQ.js.map → session-step-AYHFVVX6.js.map} +0 -0
- /package/dist/chunks/{skills-DNNEKEOH.js.map → skills-K3JRZ3IR.js.map} +0 -0
- /package/dist/chunks/{state-K7MMFNZC.js.map → state-QPSQI7U7.js.map} +0 -0
- /package/dist/chunks/{store-2PDDGKYZ.js.map → store-7WZWQXKX.js.map} +0 -0
- /package/dist/chunks/{store-KYMOKW6X.js.map → store-PSQKDEPY.js.map} +0 -0
- /package/dist/chunks/{store-NIBJFQOT.js.map → store-Z3PS6LUZ.js.map} +0 -0
- /package/dist/chunks/{upgrade-2NO7NPPM.js.map → upgrade-C6QUXRLB.js.map} +0 -0
- /package/dist/chunks/{worktree-ADQJ4AJ5.js.map → worktree-KLD2PAMU.js.map} +0 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `workflow` tool and the run registry it feeds, for one session.
|
|
3
|
+
*
|
|
4
|
+
* What starting an agent means is not decided here: `spawn` is the subagent
|
|
5
|
+
* runtime's own path (`launchWorkflowAgent`), so a workflow's agents keep the
|
|
6
|
+
* `Agent` tool's permission mode, rules, sandbox, tool roster and budget. This
|
|
7
|
+
* file adds no way around any of them.
|
|
8
|
+
*/
|
|
9
|
+
import { type ToolDefinition, type TurnId, type WorkflowLimits } from '@namzu/sdk';
|
|
10
|
+
import type { SubagentRuntime } from '../subagents/runtime.js';
|
|
11
|
+
import { type WorkflowRunEnd, WorkflowRunRegistry } from './registry.js';
|
|
12
|
+
/** Longest script the tool takes, in characters. The review shows all of it. */
|
|
13
|
+
export declare const MAX_WORKFLOW_SCRIPT_CHARS = 262144;
|
|
14
|
+
/** Longest `args` JSON the tool takes, in characters. */
|
|
15
|
+
export declare const MAX_WORKFLOW_ARGS_CHARS = 65536;
|
|
16
|
+
/** `w` and eight characters of `0-9a-z`, like a background job's `b…`. */
|
|
17
|
+
export declare function createWorkflowRunId(isTaken?: (id: string) => boolean): string;
|
|
18
|
+
/** The registrations one run needs for as long as it lives. */
|
|
19
|
+
export interface WorkflowRunTurn {
|
|
20
|
+
/** A turn id the delegation path accepts for this run. */
|
|
21
|
+
readonly turnId: TurnId;
|
|
22
|
+
/** Free the registrations. Safe to call twice. */
|
|
23
|
+
release(): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
export interface WorkflowHostOptions {
|
|
26
|
+
readonly subagents: Pick<SubagentRuntime, 'launchWorkflowAgent'>;
|
|
27
|
+
/**
|
|
28
|
+
* `<session>/runs`: each run keeps its journal in `<runId>/workflow/`.
|
|
29
|
+
* Absent for a session that keeps nothing on disk (an ephemeral one).
|
|
30
|
+
*/
|
|
31
|
+
readonly runsDirectory: (turnId: TurnId) => string | undefined;
|
|
32
|
+
/**
|
|
33
|
+
* Whether the turn may start a workflow, as a plain reason when it may not.
|
|
34
|
+
* Reviewed like a destructive call; with nobody to review, only a session
|
|
35
|
+
* set to run without asking may start one.
|
|
36
|
+
*/
|
|
37
|
+
readonly refusal: (turnId: TurnId) => string | undefined;
|
|
38
|
+
/** Register the run with the delegation path under a turn id of its own. */
|
|
39
|
+
readonly openRunTurn: (originTurnId: TurnId, runId: string) => WorkflowRunTurn;
|
|
40
|
+
/** Limits the run is held to, from the turn that started it. */
|
|
41
|
+
readonly limitsFor?: (turnId: TurnId) => WorkflowLimits | undefined;
|
|
42
|
+
/** Called once when a run ends (the conversation line and the model's message). */
|
|
43
|
+
readonly onEnd?: (end: WorkflowRunEnd) => void;
|
|
44
|
+
readonly registry?: WorkflowRunRegistry;
|
|
45
|
+
}
|
|
46
|
+
export interface WorkflowHost {
|
|
47
|
+
readonly registry: WorkflowRunRegistry;
|
|
48
|
+
readonly tool: ToolDefinition;
|
|
49
|
+
}
|
|
50
|
+
interface WorkflowToolInput {
|
|
51
|
+
script: string;
|
|
52
|
+
args?: unknown;
|
|
53
|
+
description?: string;
|
|
54
|
+
}
|
|
55
|
+
/** What a call to the tool is for, in one line: the model's own summary, else the script's `meta.description`. */
|
|
56
|
+
export declare function describeWorkflowCall(input: Partial<WorkflowToolInput>): string;
|
|
57
|
+
export declare function createWorkflowHost(options: WorkflowHostOptions): WorkflowHost;
|
|
58
|
+
export {};
|
|
59
|
+
//# sourceMappingURL=host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/integrations/workflows/host.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAGN,KAAK,cAAc,EACnB,KAAK,MAAM,EACX,KAAK,cAAc,EAMnB,MAAM,YAAY,CAAA;AAEnB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAG9D,OAAO,EAAE,KAAK,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExE,gFAAgF;AAChF,eAAO,MAAM,yBAAyB,SAAU,CAAA;AAChD,yDAAyD;AACzD,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAI7C,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAqB,GAAG,MAAM,CAa1F;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC/B,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,kDAAkD;IAClD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,qBAAqB,CAAC,CAAA;IAChE;;;OAGG;IACH,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;IAC9D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;IACxD,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,eAAe,CAAA;IAC9E,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,cAAc,GAAG,SAAS,CAAA;IACnE,mFAAmF;IACnF,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,CAAA;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAA;CACvC;AAED,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAA;IACtC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;CAC7B;AAED,UAAU,iBAAiB;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AAWD,kHAAkH;AAClH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAa9E;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,GAAG,YAAY,CA0J7E"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The words about a workflow run: what the model is told, and the one line the
|
|
3
|
+
* person gets in the conversation. Pure, so the wording is tested without a
|
|
4
|
+
* session.
|
|
5
|
+
*/
|
|
6
|
+
import { type WorkflowRunView } from './view.js';
|
|
7
|
+
/** Longest return value, in characters, that goes into the completion message. */
|
|
8
|
+
export declare const WORKFLOW_RESULT_CHAR_CAP = 8000;
|
|
9
|
+
export declare function formatDuration(ms: number): string;
|
|
10
|
+
/** What the model reads right after it started a run. Never shown to the person. */
|
|
11
|
+
export declare function launchedText(view: Pick<WorkflowRunView, 'runId' | 'name'>): string;
|
|
12
|
+
/**
|
|
13
|
+
* The single message the model gets when a run ends: status, the script's
|
|
14
|
+
* return value capped at {@link WORKFLOW_RESULT_CHAR_CAP}, the agents that
|
|
15
|
+
* failed and the usage. The return value comes from subagents that read
|
|
16
|
+
* files and the web, so it is wrapped as material, never as instructions.
|
|
17
|
+
*/
|
|
18
|
+
export declare function completionNotice(view: WorkflowRunView): string;
|
|
19
|
+
//# sourceMappingURL=notice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notice.d.ts","sourceRoot":"","sources":["../../../src/integrations/workflows/notice.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,KAAK,eAAe,EAA0B,MAAM,WAAW,CAAA;AAExE,kFAAkF;AAClF,eAAO,MAAM,wBAAwB,OAAO,CAAA;AAK5C,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMjD;AAWD,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC,GAAG,MAAM,CAMlF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CA2C9D"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* When the `workflow` tool is in the model's tool list.
|
|
3
|
+
*
|
|
4
|
+
* A workflow is a lot of work started on one decision, so the tool is only
|
|
5
|
+
* offered when the operator asked for orchestration: hypermode is on, or the
|
|
6
|
+
* message says "workflow" (or the Turkish "iş akışı"), or it is the `/workflow`
|
|
7
|
+
* command. Everything else gets the `Agent` tool alone. Pure.
|
|
8
|
+
*/
|
|
9
|
+
export declare const WORKFLOW_TOOL_NAME = "workflow";
|
|
10
|
+
/** The line under a workflow's launch row in the conversation. */
|
|
11
|
+
export declare const WORKFLOW_BACKGROUND_NOTE = "Running in the background (\u2193 to manage)";
|
|
12
|
+
/** Whether a message asks for a workflow in words. */
|
|
13
|
+
export declare function messageAsksForWorkflow(text: string): boolean;
|
|
14
|
+
export interface WorkflowOffering {
|
|
15
|
+
/** The session's hypermode. */
|
|
16
|
+
readonly hypermode: boolean;
|
|
17
|
+
/** The text of the operator's latest message. */
|
|
18
|
+
readonly userText: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function workflowOffered(input: WorkflowOffering): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* The `/workflow <task>` command, as the message the model receives: the
|
|
23
|
+
* operator's task, plus the words that make the request explicit.
|
|
24
|
+
*/
|
|
25
|
+
export declare function workflowCommandPrompt(task: string): string;
|
|
26
|
+
/** The tool's description, as the model reads it. */
|
|
27
|
+
export declare const WORKFLOW_TOOL_DESCRIPTION: string;
|
|
28
|
+
/**
|
|
29
|
+
* Why a turn may not start a workflow, or `undefined` when it may.
|
|
30
|
+
*
|
|
31
|
+
* A workflow is reviewed before it starts, like a destructive call: someone
|
|
32
|
+
* has to approve the script. A session set to run tools without asking
|
|
33
|
+
* (`auto`, which is what "bypass permissions" is) has already decided that.
|
|
34
|
+
* Anything else with nobody to ask refuses, in words the model can pass on.
|
|
35
|
+
*/
|
|
36
|
+
export declare function workflowRefusal(turn: {
|
|
37
|
+
readonly interactive: boolean;
|
|
38
|
+
readonly mode: string;
|
|
39
|
+
}): string | undefined;
|
|
40
|
+
//# sourceMappingURL=offering.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"offering.d.ts","sourceRoot":"","sources":["../../../src/integrations/workflows/offering.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAO,MAAM,kBAAkB,aAAa,CAAA;AAE5C,kEAAkE;AAClE,eAAO,MAAM,wBAAwB,iDAA4C,CAAA;AAMjF,sDAAsD;AACtD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAM5D;AAED,MAAM,WAAW,gBAAgB;IAChC,+BAA+B;IAC/B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAEhE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK1D;AAED,qDAAqD;AACrD,eAAO,MAAM,yBAAyB,QAmB1B,CAAA;AAEZ;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACrC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACrB,GAAG,MAAM,GAAG,SAAS,CAGrB"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The workflow runs of one session: started in the background, observed by the
|
|
3
|
+
* terminal, stopped or trimmed by the operator.
|
|
4
|
+
*
|
|
5
|
+
* A run is `WorkflowRuntime.run()` left going after the tool call that started
|
|
6
|
+
* it returned. The registry folds its events into a {@link WorkflowRunView}
|
|
7
|
+
* (what the rail and the detail read), hands out the controls the runtime
|
|
8
|
+
* gave (`skipAgent`) and an abort, and says once when the run ends. It knows
|
|
9
|
+
* nothing about subagents: starting an agent is the `spawnAgent` the host
|
|
10
|
+
* passes in.
|
|
11
|
+
*/
|
|
12
|
+
import type { WorkflowAgentRequest, WorkflowJournal, WorkflowLimits, WorkflowMeta, WorkflowRunResult, WorkflowSpawnAgent } from '@namzu/sdk';
|
|
13
|
+
import { WorkflowRuntime } from '@namzu/sdk';
|
|
14
|
+
import { type WorkflowRunView } from './view.js';
|
|
15
|
+
/** What the registry tells the host when a run ends. */
|
|
16
|
+
export interface WorkflowRunEnd {
|
|
17
|
+
readonly view: WorkflowRunView;
|
|
18
|
+
readonly result?: WorkflowRunResult;
|
|
19
|
+
}
|
|
20
|
+
export interface StartWorkflowRun {
|
|
21
|
+
readonly runId: string;
|
|
22
|
+
readonly meta: WorkflowMeta;
|
|
23
|
+
readonly script: string;
|
|
24
|
+
readonly args?: unknown;
|
|
25
|
+
readonly limits?: WorkflowLimits;
|
|
26
|
+
readonly journal?: WorkflowJournal;
|
|
27
|
+
/**
|
|
28
|
+
* Start one agent. `viewed` reports the agent's row in the monitor as soon
|
|
29
|
+
* as it exists; the registry records it on the run so the detail can open
|
|
30
|
+
* the agent's own transcript.
|
|
31
|
+
*/
|
|
32
|
+
readonly spawn: (request: WorkflowAgentRequest, signal: AbortSignal, viewed: (viewId: string) => void) => ReturnType<WorkflowSpawnAgent>;
|
|
33
|
+
/** Called once, after the run has ended and its last view is stored. */
|
|
34
|
+
readonly onEnd?: (end: WorkflowRunEnd) => void | Promise<void>;
|
|
35
|
+
}
|
|
36
|
+
export declare class WorkflowRunRegistry {
|
|
37
|
+
private readonly runs;
|
|
38
|
+
private readonly listeners;
|
|
39
|
+
private readonly runtime;
|
|
40
|
+
private readonly now;
|
|
41
|
+
private notifyTimer;
|
|
42
|
+
private closed;
|
|
43
|
+
constructor(options?: {
|
|
44
|
+
readonly now?: () => number;
|
|
45
|
+
readonly runtime?: WorkflowRuntime;
|
|
46
|
+
});
|
|
47
|
+
list(): readonly WorkflowRunView[];
|
|
48
|
+
get(runId: string): WorkflowRunView | undefined;
|
|
49
|
+
subscribe(listener: () => void): () => void;
|
|
50
|
+
/** Runs that have not ended. */
|
|
51
|
+
running(): readonly WorkflowRunView[];
|
|
52
|
+
/** Begin a run. Returns at once; the run goes on in the background. */
|
|
53
|
+
start(input: StartWorkflowRun): WorkflowRunView;
|
|
54
|
+
/**
|
|
55
|
+
* Resolves once no run is going, or when `signal` aborts (whichever is first).
|
|
56
|
+
* A run's own limits bound the wait: the runtime stops one at its duration cap.
|
|
57
|
+
*/
|
|
58
|
+
whenIdle(signal?: AbortSignal): Promise<void>;
|
|
59
|
+
/** Stop a run: queued agents never start, running ones are aborted. False when it is not running. */
|
|
60
|
+
stop(runId: string): boolean;
|
|
61
|
+
/** Skip one agent of a run. False when it is not running or already settled. */
|
|
62
|
+
skipAgent(runId: string, index: number): boolean;
|
|
63
|
+
/** Which run and agent a monitor row stands for, if any. */
|
|
64
|
+
agentOf(viewId: string): {
|
|
65
|
+
readonly runId: string;
|
|
66
|
+
readonly index: number;
|
|
67
|
+
} | undefined;
|
|
68
|
+
/** Forget runs that have ended (a new conversation). Running ones are stopped first. */
|
|
69
|
+
reset(): void;
|
|
70
|
+
close(): void;
|
|
71
|
+
private notifySoon;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/integrations/workflows/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACX,oBAAoB,EAGpB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,OAAO,EACN,KAAK,eAAe,EAKpB,MAAM,WAAW,CAAA;AAElB,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAA;CACnC;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAA;IAClC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,CACf,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,KAC5B,UAAU,CAAC,kBAAkB,CAAC,CAAA;IACnC,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9D;AAUD,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAClD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,WAAW,CAA2C;IAC9D,OAAO,CAAC,MAAM,CAAQ;gBAGrB,OAAO,GAAE;QACR,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;QAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAA;KAC7B;IAMP,IAAI,IAAI,SAAS,eAAe,EAAE;IAIlC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI/C,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAK3C,gCAAgC;IAChC,OAAO,IAAI,SAAS,eAAe,EAAE;IAIrC,uEAAuE;IACvE,KAAK,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe;IAgE/C;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB7C,qGAAqG;IACrG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAO5B,gFAAgF;IAChF,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAMhD,4DAA4D;IAC5D,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;IAQvF,wFAAwF;IACxF,KAAK,IAAI,IAAI;IAMb,KAAK,IAAI,IAAI;IAQb,OAAO,CAAC,UAAU;CAelB"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the terminal knows about one workflow run, as plain data.
|
|
3
|
+
*
|
|
4
|
+
* A run is folded from the SDK's workflow events (and, for a run from an
|
|
5
|
+
* earlier process, from its journal), so the rail, the detail view and the
|
|
6
|
+
* `/workflows` list all read one shape and none of them runs the script.
|
|
7
|
+
* Pure: no timers, no I/O.
|
|
8
|
+
*/
|
|
9
|
+
import type { WorkflowEvent, WorkflowJournalRecord, WorkflowPhaseMeta, WorkflowUsage } from '@namzu/sdk';
|
|
10
|
+
export type WorkflowRunStatus = 'running' | 'completed' | 'failed' | 'stopped';
|
|
11
|
+
export type WorkflowAgentStatus = 'queued' | 'running' | 'done' | 'failed' | 'skipped';
|
|
12
|
+
export interface WorkflowAgentView {
|
|
13
|
+
/** 1-based, in the order the script asked. */
|
|
14
|
+
readonly index: number;
|
|
15
|
+
readonly label: string;
|
|
16
|
+
readonly phaseIndex?: number;
|
|
17
|
+
readonly phaseTitle?: string;
|
|
18
|
+
readonly agentType?: string;
|
|
19
|
+
readonly model?: string;
|
|
20
|
+
readonly status: WorkflowAgentStatus;
|
|
21
|
+
readonly queuedAt: number;
|
|
22
|
+
readonly startedAt?: number;
|
|
23
|
+
readonly finishedAt?: number;
|
|
24
|
+
readonly tokens: number;
|
|
25
|
+
readonly toolCalls: number;
|
|
26
|
+
readonly lastTool?: string;
|
|
27
|
+
readonly promptPreview?: string;
|
|
28
|
+
readonly resultPreview?: string;
|
|
29
|
+
readonly error?: string;
|
|
30
|
+
/** The agent's own row in the subagent monitor, once it exists. */
|
|
31
|
+
readonly viewId?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface WorkflowPhaseView {
|
|
34
|
+
/** 1-based first-seen order; declared titles come first. */
|
|
35
|
+
readonly index: number;
|
|
36
|
+
readonly title: string;
|
|
37
|
+
readonly detail?: string;
|
|
38
|
+
readonly declared: boolean;
|
|
39
|
+
}
|
|
40
|
+
export interface WorkflowRunView {
|
|
41
|
+
readonly runId: string;
|
|
42
|
+
/** The id the run's agents carry as their `workflowId` in the monitor. */
|
|
43
|
+
readonly workflowId: string;
|
|
44
|
+
/** The display group the cockpit and the rail use for this run. */
|
|
45
|
+
readonly groupId: string;
|
|
46
|
+
readonly name: string;
|
|
47
|
+
readonly description: string;
|
|
48
|
+
readonly status: WorkflowRunStatus;
|
|
49
|
+
readonly startedAt: number;
|
|
50
|
+
readonly endedAt?: number;
|
|
51
|
+
readonly phases: readonly WorkflowPhaseView[];
|
|
52
|
+
readonly agents: readonly WorkflowAgentView[];
|
|
53
|
+
/** The last few `log()` lines, newest last. */
|
|
54
|
+
readonly logs: readonly string[];
|
|
55
|
+
readonly error?: string;
|
|
56
|
+
readonly result?: unknown;
|
|
57
|
+
readonly usage?: WorkflowUsage;
|
|
58
|
+
}
|
|
59
|
+
/** The monitor's `workflowId` for a run's agents. */
|
|
60
|
+
export declare function workflowRunWorkflowId(runId: string): string;
|
|
61
|
+
/** The display group id for a run. */
|
|
62
|
+
export declare function workflowRunGroupId(runId: string): string;
|
|
63
|
+
/** Whether a monitor row belongs to a workflow run (as opposed to an `Agent` tool call). */
|
|
64
|
+
export declare function isWorkflowRunAgent(agent: {
|
|
65
|
+
readonly workflowId: string;
|
|
66
|
+
}): boolean;
|
|
67
|
+
export declare function initialRunView(input: {
|
|
68
|
+
readonly runId: string;
|
|
69
|
+
readonly name: string;
|
|
70
|
+
readonly description: string;
|
|
71
|
+
readonly phases: readonly WorkflowPhaseMeta[];
|
|
72
|
+
readonly at: number;
|
|
73
|
+
}): WorkflowRunView;
|
|
74
|
+
/** Fold one SDK event into the run. Events of another run are ignored. */
|
|
75
|
+
export declare function reduceRunView(view: WorkflowRunView, event: WorkflowEvent): WorkflowRunView;
|
|
76
|
+
/** Record which monitor row is an agent's own, so the detail can open its transcript. */
|
|
77
|
+
export declare function attachAgentView(view: WorkflowRunView, index: number, viewId: string): WorkflowRunView;
|
|
78
|
+
/** The run ended while agents were still listed as going (a crash or a stop): close them. */
|
|
79
|
+
export declare function closeOpenAgents(view: WorkflowRunView, at: number): WorkflowRunView;
|
|
80
|
+
export interface WorkflowAgentCounts {
|
|
81
|
+
readonly total: number;
|
|
82
|
+
/** Agents that completed. Skipped, failed and stopped ones are not counted here. */
|
|
83
|
+
readonly done: number;
|
|
84
|
+
/** Agents that are no longer going, however they ended. */
|
|
85
|
+
readonly settled: number;
|
|
86
|
+
readonly failed: number;
|
|
87
|
+
readonly running: number;
|
|
88
|
+
readonly queued: number;
|
|
89
|
+
}
|
|
90
|
+
export declare function countAgents(view: Pick<WorkflowRunView, 'agents'>): WorkflowAgentCounts;
|
|
91
|
+
export declare function runTokens(view: Pick<WorkflowRunView, 'agents'>): number;
|
|
92
|
+
/**
|
|
93
|
+
* Rebuild a run from its journal, for a run this process did not start. Lines
|
|
94
|
+
* that are not records are skipped; the result is whatever the file proves.
|
|
95
|
+
*/
|
|
96
|
+
export declare function viewFromJournal(records: readonly WorkflowJournalRecord[]): WorkflowRunView | undefined;
|
|
97
|
+
//# sourceMappingURL=view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/integrations/workflows/view.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type SubagentActivity, type SubagentActivityStatus, type SubagentNarrationLine } from '../integrations/subagents/activity.js';
|
|
2
|
+
import { type WorkflowRunStatus, type WorkflowRunView } from '../integrations/workflows/view.js';
|
|
2
3
|
import { formatCompactCount } from './units.js';
|
|
3
4
|
/**
|
|
4
5
|
* Shown at the head of a transcript rebuilt from saved evidence.
|
|
@@ -42,48 +43,147 @@ export interface AgentNarrationBandProps {
|
|
|
42
43
|
* (`research/conversation-evidence/narration-band-cli.mjs`).
|
|
43
44
|
*/
|
|
44
45
|
export declare function AgentNarrationBand({ lines }: AgentNarrationBandProps): import("react/jsx-runtime").JSX.Element | null;
|
|
46
|
+
/** Rows of agents the rail shows at once; the rest sit behind `↓ N more`. */
|
|
47
|
+
export declare const AGENT_RAIL_WINDOW = 5;
|
|
48
|
+
/** How long a finished agent stays on the rail before it leaves. */
|
|
49
|
+
export declare const AGENT_RAIL_FINISHED_LINGER_MS = 30000;
|
|
50
|
+
/**
|
|
51
|
+
* The agents the rail lists: everything running, plus whatever finished less
|
|
52
|
+
* than {@link AGENT_RAIL_FINISHED_LINGER_MS} ago, oldest launch first.
|
|
53
|
+
*
|
|
54
|
+
* Saved children (`replayed`) never appear — they ended in another process,
|
|
55
|
+
* and the rail says what is moving now; the cockpit still lists them. An
|
|
56
|
+
* agent the operator already cleared with `x` stays off the rail.
|
|
57
|
+
*/
|
|
58
|
+
export declare function railAgents(agents: readonly SubagentActivity[], now: number, dismissed?: ReadonlySet<string>): readonly SubagentActivity[];
|
|
59
|
+
/**
|
|
60
|
+
* Milliseconds until the next finished agent leaves the rail, or undefined
|
|
61
|
+
* when none is waiting to leave. App sleeps exactly this long instead of
|
|
62
|
+
* ticking, so an idle session re-renders nothing.
|
|
63
|
+
*/
|
|
64
|
+
export declare function railNextEviction(agents: readonly SubagentActivity[], now: number, runs?: readonly WorkflowRunView[]): number | undefined;
|
|
65
|
+
/** Whether `x` stops this agent (it is running) or only clears it (it has finished). */
|
|
66
|
+
export declare function railActionFor(agent: SubagentActivity): 'stop' | 'clear';
|
|
67
|
+
/**
|
|
68
|
+
* The right-hand block of an agent row: how long it has run and what it has
|
|
69
|
+
* spent. A queued agent says so instead of showing a clock that has not
|
|
70
|
+
* started.
|
|
71
|
+
*/
|
|
72
|
+
export declare function railStatusText(agent: SubagentActivity, now: number): string;
|
|
73
|
+
/** What a workflow row shows about how the group ended; `running` until every member has settled. */
|
|
74
|
+
export type RailWorkflowStatus = 'running' | 'completed' | 'failed' | 'stopped';
|
|
75
|
+
/**
|
|
76
|
+
* One row of the rail: the agents that share an explicit `workflow` label,
|
|
77
|
+
* seen as a single piece of work. Derived from the agents alone — the kernel
|
|
78
|
+
* has no workflow object, only the display label each child carries.
|
|
79
|
+
*/
|
|
80
|
+
export interface RailWorkflow {
|
|
81
|
+
/** The group id the cockpit also uses, so a row opens its own workflow. */
|
|
82
|
+
readonly id: string;
|
|
83
|
+
/** Keyboard-focus id of the row; never collides with an agent's view id. */
|
|
84
|
+
readonly focusId: string;
|
|
85
|
+
readonly name: string;
|
|
86
|
+
readonly startedAt: number;
|
|
87
|
+
/** When the last member settled; undefined while any member is still going. */
|
|
88
|
+
readonly endedAt?: number;
|
|
89
|
+
readonly done: number;
|
|
90
|
+
readonly total: number;
|
|
91
|
+
/** Summed spend of the members that reported usage; undefined when none has. */
|
|
92
|
+
readonly tokens?: number;
|
|
93
|
+
readonly failed: number;
|
|
94
|
+
readonly status: RailWorkflowStatus;
|
|
95
|
+
readonly agents: readonly SubagentActivity[];
|
|
96
|
+
/** The `workflow` tool's run this row stands for; absent for a group of labelled `Agent` calls. */
|
|
97
|
+
readonly runId?: string;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* The workflows the rail lists: a group of agents the model gave one explicit
|
|
101
|
+
* `workflow` label, running or finished less than
|
|
102
|
+
* {@link AGENT_RAIL_FINISHED_LINGER_MS} ago, oldest first. Unlabelled batches
|
|
103
|
+
* are only agents, and saved (`replayed`) children belong to another process.
|
|
104
|
+
* A workflow the operator already cleared with `x` stays off the rail.
|
|
105
|
+
*/
|
|
106
|
+
export declare function railWorkflows(agents: readonly SubagentActivity[], now: number, dismissed?: ReadonlySet<string>, runs?: readonly WorkflowRunView[]): readonly RailWorkflow[];
|
|
107
|
+
/** One run's rail row, from the run itself: queued agents count, and a run with no agent yet still has a row. */
|
|
108
|
+
export declare function runRailWorkflow(run: WorkflowRunView, agents: readonly SubagentActivity[]): RailWorkflow;
|
|
109
|
+
/**
|
|
110
|
+
* Every labelled workflow whose members have all settled, however long ago:
|
|
111
|
+
* what a closing line reports. The rail's 30 second lifetime does not apply.
|
|
112
|
+
*/
|
|
113
|
+
export declare function settledWorkflows(agents: readonly SubagentActivity[]): readonly RailWorkflow[];
|
|
114
|
+
/** Whether `x` stops this workflow (something is still going) or only clears the finished row. */
|
|
115
|
+
export declare function railWorkflowActionFor(workflow: RailWorkflow): 'stop' | 'clear';
|
|
116
|
+
/** `▰▰▰▱▱▱`: filled cells are the share of agents settled, rounded down. */
|
|
117
|
+
export declare function railProgressBar(done: number, total: number, width: number): [string, string];
|
|
118
|
+
/** One way to draw a row's right-hand block: a bar width and the text after it. */
|
|
119
|
+
export interface WorkflowRowVariant {
|
|
120
|
+
readonly barWidth: number;
|
|
121
|
+
readonly text: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* The right-hand block of a workflow row, widest first. Words go before
|
|
125
|
+
* numbers as the row narrows: the counter, then the elapsed time, then the
|
|
126
|
+
* word `tokens`, then the bar shrinks from 20 to 12 to 8 cells and finally
|
|
127
|
+
* stands alone. The caller takes the first one that fits.
|
|
128
|
+
*/
|
|
129
|
+
export declare function workflowRowVariants(workflow: RailWorkflow, now: number): readonly WorkflowRowVariant[];
|
|
130
|
+
/**
|
|
131
|
+
* Picks how a workflow row is laid out in `columns` cells: the first variant
|
|
132
|
+
* of {@link workflowRowVariants} that leaves the name at least
|
|
133
|
+
* `min(8, nameWidth)` cells, with the name squeezed into whatever is left.
|
|
134
|
+
*/
|
|
135
|
+
export declare function layoutWorkflowRow(workflow: RailWorkflow, now: number, columns: number, nameWidth: number): {
|
|
136
|
+
readonly variant: WorkflowRowVariant;
|
|
137
|
+
readonly nameWidth: number;
|
|
138
|
+
};
|
|
45
139
|
export interface AgentTaskPanelProps {
|
|
140
|
+
/** Already filtered to what the rail shows — see {@link railAgents}. */
|
|
46
141
|
readonly agents: readonly SubagentActivity[];
|
|
142
|
+
/** One row each below the agents — see {@link railWorkflows}. */
|
|
143
|
+
readonly workflows?: readonly RailWorkflow[];
|
|
47
144
|
readonly terminalRows: number;
|
|
48
145
|
readonly terminalColumns: number;
|
|
49
146
|
/**
|
|
50
|
-
*
|
|
51
|
-
* operator still sees that the work they already approved is moving,
|
|
147
|
+
* One row only (`main` and a count). Used while a review owns the screen:
|
|
148
|
+
* the operator still sees that the work they already approved is moving,
|
|
52
149
|
* without the rows competing with the question being asked.
|
|
53
150
|
*/
|
|
54
151
|
readonly compact?: boolean;
|
|
152
|
+
/**
|
|
153
|
+
* The highlighted row while the rail has the keyboard: 0 is `main`, 1 the
|
|
154
|
+
* first agent, then the workflow rows after the last agent. Undefined
|
|
155
|
+
* means the rail is not focused.
|
|
156
|
+
*/
|
|
157
|
+
readonly selectedIndex?: number;
|
|
158
|
+
/** The agent whose transcript is on screen; undefined or null means `main`. */
|
|
159
|
+
readonly viewingId?: string | null;
|
|
160
|
+
/** Clock for tests; the panel otherwise ticks once a second. */
|
|
161
|
+
readonly now?: number;
|
|
55
162
|
}
|
|
56
163
|
/**
|
|
57
|
-
*
|
|
164
|
+
* The agents rail: a `main` row, then one row per running or recently
|
|
165
|
+
* finished sub-agent, drawn under the footer line.
|
|
58
166
|
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
167
|
+
* ```
|
|
168
|
+
* ● main
|
|
169
|
+
* ○ general-purpose Mine the UI reference 12s · ↓ 3.2k tokens
|
|
170
|
+
* ```
|
|
63
171
|
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*/
|
|
69
|
-
export declare function AgentTaskPanel({ agents, terminalRows, terminalColumns, compact, }: AgentTaskPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
70
|
-
/**
|
|
71
|
-
* Whether each running agent gets its own `⎿ activity` line. On a short
|
|
72
|
-
* terminal the activity stays inline after the elapsed time instead, so the
|
|
73
|
-
* rail keeps one row per agent where rows are scarcest.
|
|
74
|
-
*/
|
|
75
|
-
export declare function agentTaskPanelShowsActivity(terminalRows: number | undefined): boolean;
|
|
76
|
-
/**
|
|
77
|
-
* Agents the compact panel may show without crowding the composer/footer.
|
|
78
|
-
* An agent costs two rows where activity lines are drawn and one elsewhere,
|
|
79
|
-
* so the budget in ROWS stays what it was when every agent took one.
|
|
172
|
+
* `●` marks the transcript on screen, `○` the others; an agent's bullet turns
|
|
173
|
+
* green or red only once it has finished. Not a modal: the composer stays
|
|
174
|
+
* mounted above and keeps taking input until the operator presses ↓ on an
|
|
175
|
+
* empty composer to move into the rail.
|
|
80
176
|
*/
|
|
81
|
-
export declare function
|
|
177
|
+
export declare function AgentTaskPanel({ agents, workflows, terminalColumns, compact, selectedIndex, viewingId, now: nowOverride, }: AgentTaskPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
82
178
|
/**
|
|
83
|
-
*
|
|
84
|
-
*
|
|
179
|
+
* Whether the rail draws its `main` row: only beside at least one agent row,
|
|
180
|
+
* or while an agent's transcript is the one on screen (so the way back to the
|
|
181
|
+
* conversation is visible). A rail with nothing but workflow rows has no
|
|
182
|
+
* `main`; `compact` is the one-row form and always keeps it.
|
|
85
183
|
*/
|
|
86
|
-
export declare function
|
|
184
|
+
export declare function railShowsMain(agentCount: number, viewingId?: string | null, compact?: boolean): boolean;
|
|
185
|
+
/** The key line shown under the rail while it has the keyboard. */
|
|
186
|
+
export declare function railHint(selected: SubagentActivity | RailWorkflow | undefined, columns: number): string;
|
|
87
187
|
export type AgentCockpitFocus = 'workflows' | 'phases' | 'agents';
|
|
88
188
|
export interface AgentWorkflow {
|
|
89
189
|
readonly id: string;
|
|
@@ -92,6 +192,10 @@ export interface AgentWorkflow {
|
|
|
92
192
|
readonly status: SubagentActivityStatus;
|
|
93
193
|
readonly phases: readonly AgentPhase[];
|
|
94
194
|
readonly agents: readonly SubagentActivity[];
|
|
195
|
+
/** The `workflow` tool's run, when this is one: its agents are scripted, not model-launched. */
|
|
196
|
+
readonly runId?: string;
|
|
197
|
+
readonly description?: string;
|
|
198
|
+
readonly runStatus?: WorkflowRunStatus;
|
|
95
199
|
}
|
|
96
200
|
export interface AgentPhase {
|
|
97
201
|
readonly id: string;
|
|
@@ -108,6 +212,8 @@ export interface AgentPhase {
|
|
|
108
212
|
}
|
|
109
213
|
export interface AgentCockpitProps {
|
|
110
214
|
readonly agents: readonly SubagentActivity[];
|
|
215
|
+
/** The `workflow` tool's runs, for the phases they declared that nothing has started in yet. */
|
|
216
|
+
readonly runs?: readonly WorkflowRunView[];
|
|
111
217
|
readonly selectedPhaseId: string;
|
|
112
218
|
readonly selectedId: string;
|
|
113
219
|
readonly focus: AgentCockpitFocus;
|
|
@@ -118,13 +224,52 @@ export interface AgentCockpitProps {
|
|
|
118
224
|
* Live workflow projection. App owns input; this component renders only the
|
|
119
225
|
* bounded scheduler state it receives and never invents orchestration state.
|
|
120
226
|
*/
|
|
121
|
-
export declare function AgentCockpit({ agents, selectedPhaseId, selectedId, focus, terminalRows, terminalColumns, }: AgentCockpitProps): import("react/jsx-runtime").JSX.Element;
|
|
227
|
+
export declare function AgentCockpit({ agents, runs, selectedPhaseId, selectedId, focus, terminalRows, terminalColumns, }: AgentCockpitProps): import("react/jsx-runtime").JSX.Element | null;
|
|
228
|
+
/** Title of a group the model gave no `phase` label: one group, named for what it holds. */
|
|
229
|
+
export declare const UNLABELLED_PHASE_TITLE = "Agents";
|
|
230
|
+
/** The words a phase is listed under: the model's label verbatim, `Agents` when it gave none. */
|
|
231
|
+
export declare function phaseTitle(phase: Pick<AgentPhase, 'name'>): string;
|
|
232
|
+
export type PhaseOutcome = 'not-started' | 'running' | 'done' | 'failed';
|
|
233
|
+
/**
|
|
234
|
+
* How a phase stands, from its agents alone: `done` once every agent has
|
|
235
|
+
* settled cleanly, `failed` once every agent has settled and any failed or
|
|
236
|
+
* was stopped, `running` otherwise. Only a workflow run declares phases ahead
|
|
237
|
+
* of their agents, so only a run's phase is ever `not-started`.
|
|
238
|
+
*/
|
|
239
|
+
export declare function phaseOutcome(phase: Pick<AgentPhase, 'agents'>): PhaseOutcome;
|
|
240
|
+
/** The phase list's `done/total`: settled agents over every agent seen in it. */
|
|
241
|
+
export declare function phaseCount(phase: Pick<AgentPhase, 'agents'>): string;
|
|
242
|
+
/**
|
|
243
|
+
* Whether opening a workflow starts at its list of phases. A workflow the
|
|
244
|
+
* model labelled always does (its agents are only reachable through it); the
|
|
245
|
+
* unlabelled default group keeps jumping straight to its agents when it has
|
|
246
|
+
* a single group.
|
|
247
|
+
*/
|
|
248
|
+
export declare function cockpitEntryFocus(workflow: AgentWorkflow): 'phases' | 'agents';
|
|
249
|
+
/** Rows one list level can show; shared with the key handler so paging matches the screen. */
|
|
250
|
+
export declare function workflowDetailPageSize(terminalRows: number): number;
|
|
251
|
+
interface WorkflowDetailProps {
|
|
252
|
+
readonly workflow: AgentWorkflow;
|
|
253
|
+
readonly phases: readonly AgentPhase[];
|
|
254
|
+
readonly selectedPhaseIndex: number;
|
|
255
|
+
readonly selectedAgentIndex: number;
|
|
256
|
+
readonly level: 1 | 2;
|
|
257
|
+
readonly terminalRows: number;
|
|
258
|
+
readonly terminalColumns: number;
|
|
259
|
+
readonly now: number;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* The detail of one workflow, as the reference's dialog shows it: a header
|
|
263
|
+
* with the workflow's name and totals, then ONE list at a time. Level 1 is
|
|
264
|
+
* the phases, in order; level 2 is the agents of the selected phase.
|
|
265
|
+
*/
|
|
266
|
+
export declare function WorkflowDetail({ workflow, phases, selectedPhaseIndex, selectedAgentIndex, level, terminalRows, terminalColumns, now, }: WorkflowDetailProps): import("react/jsx-runtime").JSX.Element;
|
|
122
267
|
export declare function agentCockpitIsWide(terminalColumns: number): boolean;
|
|
123
268
|
/** Group retained work before exposing phases. Labels do not create execution dependencies. */
|
|
124
|
-
export declare function agentWorkflows(agents: readonly SubagentActivity[]): readonly AgentWorkflow[];
|
|
269
|
+
export declare function agentWorkflows(agents: readonly SubagentActivity[], runs?: readonly WorkflowRunView[]): readonly AgentWorkflow[];
|
|
125
270
|
export declare function agentWorkflowPageSize(terminalRows: number): number;
|
|
126
271
|
export declare function agentPhases(agents: readonly SubagentActivity[]): readonly AgentPhase[];
|
|
127
|
-
export declare function agentPhasePageSize(terminalRows: number,
|
|
272
|
+
export declare function agentPhasePageSize(terminalRows: number, _wide?: boolean): number;
|
|
128
273
|
export interface AgentTranscriptProps {
|
|
129
274
|
readonly agent: SubagentActivity;
|
|
130
275
|
/** Number of physical display rows skipped backward from the live tail. */
|
|
@@ -134,10 +279,12 @@ export interface AgentTranscriptProps {
|
|
|
134
279
|
/** Reserve more of a short terminal for the child's message editor. */
|
|
135
280
|
readonly compact?: boolean;
|
|
136
281
|
readonly navigationHint?: string;
|
|
282
|
+
/** What Esc does here: `agents` returns to the cockpit list, `back` to the rail. */
|
|
283
|
+
readonly escapeTo?: 'agents' | 'back';
|
|
137
284
|
}
|
|
138
285
|
/** Child screen; leave two parent footer rows and one terminal cursor row free. */
|
|
139
|
-
export declare function AgentTranscript({ agent, tailOffset, terminalRows, terminalColumns, compact, navigationHint, }: AgentTranscriptProps): import("react/jsx-runtime").JSX.Element;
|
|
140
|
-
export declare function agentPickerPageSize(terminalRows: number,
|
|
286
|
+
export declare function AgentTranscript({ agent, tailOffset, terminalRows, terminalColumns, compact, navigationHint, escapeTo, }: AgentTranscriptProps): import("react/jsx-runtime").JSX.Element;
|
|
287
|
+
export declare function agentPickerPageSize(terminalRows: number, _wide?: boolean): number;
|
|
141
288
|
export declare function agentTranscriptPageSize(terminalRows: number, reservedRows?: number): number;
|
|
142
289
|
export declare function maxAgentTranscriptTailOffset(agent: SubagentActivity, terminalRows: number, terminalColumns: number): number;
|
|
143
290
|
export declare function agentTranscriptPage(agent: SubagentActivity, tailOffset: number, terminalRows: number, terminalColumns: number): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentExplorer.d.ts","sourceRoot":"","sources":["../../src/tui/AgentExplorer.tsx"],"names":[],"mappings":"AAIA,OAAO,EAGN,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,MAAM,uCAAuC,CAAA;
|
|
1
|
+
{"version":3,"file":"AgentExplorer.d.ts","sourceRoot":"","sources":["../../src/tui/AgentExplorer.tsx"],"names":[],"mappings":"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"}
|
package/dist/tui/App.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/tui/App.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAUN,KAAK,OAAO,
|
|
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,2CAsgWV"}
|