@theokit/sdk 4.53.1 → 4.55.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 +1184 -0
- package/README.md +9 -4
- package/dist/a2a/agent-mailbox.d.cts +27 -0
- package/dist/a2a/agent-mailbox.d.ts +27 -0
- package/dist/a2a/index.cjs +9 -4
- package/dist/a2a/index.cjs.map +1 -1
- package/dist/a2a/index.js +7 -2
- package/dist/a2a/index.js.map +1 -1
- package/dist/a2a/message-bus.d.cts +39 -0
- package/dist/a2a/message-bus.d.ts +39 -0
- package/dist/a2a/subagent.d.cts +68 -7
- package/dist/a2a/subagent.d.ts +68 -7
- package/dist/a2a/types.d.cts +26 -0
- package/dist/a2a/types.d.ts +26 -0
- package/dist/{agent-B9HXlwID.d.ts → agent-D3Xr_-6Z.d.cts} +245 -850
- package/dist/{agent-nLqeXKIX.d.cts → agent-DIu6FooJ.d.ts} +245 -850
- package/dist/agent-HDEVVUBS.js +52 -0
- package/dist/{agent-FFVV4U5N.js.map → agent-HDEVVUBS.js.map} +1 -1
- package/dist/agent-R2HOJFZJ.cjs +61 -0
- package/dist/{agent-YLAHVHEH.cjs.map → agent-R2HOJFZJ.cjs.map} +1 -1
- package/dist/agent-builder.d.ts +19 -0
- package/dist/agent-session-store-P6V3FINW.js +7 -0
- package/dist/{agent-session-store-TNCGL5RN.js.map → agent-session-store-P6V3FINW.js.map} +1 -1
- package/dist/agent-session-store-ZJ3JSRS4.cjs +24 -0
- package/dist/{agent-session-store-DUGBAX5V.cjs.map → agent-session-store-ZJ3JSRS4.cjs.map} +1 -1
- package/dist/agent.d.ts +9 -6
- package/dist/auth/index.cjs +52 -35
- package/dist/auth/index.cjs.map +1 -1
- package/dist/auth/index.js +26 -9
- package/dist/auth/index.js.map +1 -1
- package/dist/{batch-UPKN4SG6.js → batch-2TGJMNCJ.js} +14 -13
- package/dist/batch-2TGJMNCJ.js.map +1 -0
- package/dist/{batch-ZEFN5SO7.cjs → batch-ND32UKZS.cjs} +31 -30
- package/dist/batch-ND32UKZS.cjs.map +1 -0
- package/dist/{chunk-TTJ54H3E.cjs → chunk-2ADR2GSO.cjs} +8 -8
- package/dist/chunk-2ADR2GSO.cjs.map +1 -0
- package/dist/chunk-2BDH744Z.js +15 -0
- package/dist/chunk-2BDH744Z.js.map +1 -0
- package/dist/{chunk-VGPXHHF3.cjs → chunk-2C72DXQF.cjs} +63 -27
- package/dist/chunk-2C72DXQF.cjs.map +1 -0
- package/dist/{chunk-4Q4K4WB5.js → chunk-2D34UTDC.js} +20 -4
- package/dist/chunk-2D34UTDC.js.map +1 -0
- package/dist/{chunk-UFIXH26P.js → chunk-2QKTVKH3.js} +4 -4
- package/dist/{chunk-UFIXH26P.js.map → chunk-2QKTVKH3.js.map} +1 -1
- package/dist/{chunk-GBBDINFK.js → chunk-3E77SX4H.js} +4 -4
- package/dist/{chunk-GBBDINFK.js.map → chunk-3E77SX4H.js.map} +1 -1
- package/dist/{chunk-VYHJZVL5.cjs → chunk-3EE6LVWT.cjs} +2 -2
- package/dist/chunk-3EE6LVWT.cjs.map +1 -0
- package/dist/{chunk-5NBUH3NO.js → chunk-3OR54XG4.js} +2 -2
- package/dist/{chunk-C6Y6CWYD.cjs.map → chunk-3OR54XG4.js.map} +1 -1
- package/dist/{chunk-ZN2DGEY3.cjs → chunk-3YJNUKYN.cjs} +15 -15
- package/dist/{chunk-ZN2DGEY3.cjs.map → chunk-3YJNUKYN.cjs.map} +1 -1
- package/dist/{chunk-POWRZSK4.js → chunk-44JAAH4X.js} +3 -3
- package/dist/{chunk-POWRZSK4.js.map → chunk-44JAAH4X.js.map} +1 -1
- package/dist/{chunk-SSDD676S.js → chunk-44MBDIHG.js} +4 -4
- package/dist/{chunk-SSDD676S.js.map → chunk-44MBDIHG.js.map} +1 -1
- package/dist/{chunk-OY7O3Q6R.js → chunk-4ERPXIVB.js} +5 -5
- package/dist/{chunk-OY7O3Q6R.js.map → chunk-4ERPXIVB.js.map} +1 -1
- package/dist/{chunk-3BK6YR5P.cjs → chunk-4I55V454.cjs} +4 -4
- package/dist/{chunk-3BK6YR5P.cjs.map → chunk-4I55V454.cjs.map} +1 -1
- package/dist/{chunk-B4YA6BRS.cjs → chunk-4O5TGQBW.cjs} +30 -7
- package/dist/chunk-4O5TGQBW.cjs.map +1 -0
- package/dist/{chunk-4JBHSLQO.cjs → chunk-4OTIXDMU.cjs} +2 -2
- package/dist/{chunk-4JBHSLQO.cjs.map → chunk-4OTIXDMU.cjs.map} +1 -1
- package/dist/{chunk-C6Y6CWYD.cjs → chunk-52NKC5HT.cjs} +2 -2
- package/dist/chunk-52NKC5HT.cjs.map +1 -0
- package/dist/{chunk-665SFFFR.cjs → chunk-53CBTBWO.cjs} +11 -11
- package/dist/{chunk-665SFFFR.cjs.map → chunk-53CBTBWO.cjs.map} +1 -1
- package/dist/{chunk-FFM3SJTQ.js → chunk-5JLFFPCH.js} +4 -4
- package/dist/{chunk-FFM3SJTQ.js.map → chunk-5JLFFPCH.js.map} +1 -1
- package/dist/{chunk-34XOCZJO.js → chunk-5PHVENFV.js} +3 -3
- package/dist/chunk-5PHVENFV.js.map +1 -0
- package/dist/{chunk-BDTVFIPB.cjs → chunk-5UOVYM3P.cjs} +36 -31
- package/dist/chunk-5UOVYM3P.cjs.map +1 -0
- package/dist/{chunk-VF7X6HDR.cjs → chunk-5USCYPPI.cjs} +15 -15
- package/dist/{chunk-VF7X6HDR.cjs.map → chunk-5USCYPPI.cjs.map} +1 -1
- package/dist/chunk-6HTXPPHK.cjs +18 -0
- package/dist/chunk-6HTXPPHK.cjs.map +1 -0
- package/dist/{chunk-D24WJWN2.js → chunk-AEOZTXVW.js} +3 -3
- package/dist/{chunk-D24WJWN2.js.map → chunk-AEOZTXVW.js.map} +1 -1
- package/dist/{chunk-DGOG5NXR.js → chunk-AG5JPQIY.js} +3 -3
- package/dist/{chunk-DGOG5NXR.js.map → chunk-AG5JPQIY.js.map} +1 -1
- package/dist/{chunk-BFYGJGC5.js → chunk-AQLGBKNT.js} +3 -3
- package/dist/chunk-AQLGBKNT.js.map +1 -0
- package/dist/{chunk-7W7ZWMLQ.js → chunk-AWO27VRZ.js} +3 -3
- package/dist/chunk-AWO27VRZ.js.map +1 -0
- package/dist/{chunk-VYCKUKPA.cjs → chunk-B2J4ZMZL.cjs} +3 -2
- package/dist/chunk-B2J4ZMZL.cjs.map +1 -0
- package/dist/{chunk-BERBYXFH.js → chunk-BMAZLQQ4.js} +3 -3
- package/dist/{chunk-BERBYXFH.js.map → chunk-BMAZLQQ4.js.map} +1 -1
- package/dist/{chunk-5YKNEMXR.cjs → chunk-BVZW2B5V.cjs} +4 -4
- package/dist/chunk-BVZW2B5V.cjs.map +1 -0
- package/dist/{chunk-MSFLYJDY.js → chunk-CQ2TQ32Y.js} +4 -4
- package/dist/chunk-CQ2TQ32Y.js.map +1 -0
- package/dist/{chunk-C5DEO6OI.cjs → chunk-CQGYNZ3K.cjs} +4 -4
- package/dist/{chunk-C5DEO6OI.cjs.map → chunk-CQGYNZ3K.cjs.map} +1 -1
- package/dist/{chunk-D75S2X6I.cjs → chunk-CTCGWIUD.cjs} +5 -5
- package/dist/{chunk-D75S2X6I.cjs.map → chunk-CTCGWIUD.cjs.map} +1 -1
- package/dist/{chunk-NZL4BNFQ.js → chunk-CV7XMBHP.js} +4 -4
- package/dist/chunk-CV7XMBHP.js.map +1 -0
- package/dist/{chunk-SEL2ZQMT.js → chunk-DAPSQZT4.js} +15 -10
- package/dist/chunk-DAPSQZT4.js.map +1 -0
- package/dist/{chunk-SVO5WPZX.cjs → chunk-DQKERTND.cjs} +11 -11
- package/dist/{chunk-SVO5WPZX.cjs.map → chunk-DQKERTND.cjs.map} +1 -1
- package/dist/{chunk-N5CR3TJZ.js → chunk-DZBSJX6J.js} +4 -4
- package/dist/{chunk-N5CR3TJZ.js.map → chunk-DZBSJX6J.js.map} +1 -1
- package/dist/{chunk-RAHSWE5C.cjs → chunk-EI2Q7SJ5.cjs} +12 -12
- package/dist/chunk-EI2Q7SJ5.cjs.map +1 -0
- package/dist/{chunk-UCFONJBG.js → chunk-EPSICJLZ.js} +2 -2
- package/dist/{chunk-UCFONJBG.js.map → chunk-EPSICJLZ.js.map} +1 -1
- package/dist/{chunk-3X6PM7DU.cjs → chunk-F3YZMOAU.cjs} +8 -8
- package/dist/{chunk-3X6PM7DU.cjs.map → chunk-F3YZMOAU.cjs.map} +1 -1
- package/dist/{chunk-F77UENR6.cjs → chunk-F5WMX4EA.cjs} +586 -398
- package/dist/chunk-F5WMX4EA.cjs.map +1 -0
- package/dist/{chunk-HE4BIAOS.js → chunk-F7AQV62G.js} +5 -4
- package/dist/chunk-F7AQV62G.js.map +1 -0
- package/dist/{chunk-2RW7K6FN.cjs → chunk-GHX4P3V2.cjs} +2 -2
- package/dist/chunk-GHX4P3V2.cjs.map +1 -0
- package/dist/{chunk-B6HOIWQ6.js → chunk-GJ6RK75E.js} +5 -5
- package/dist/chunk-GJ6RK75E.js.map +1 -0
- package/dist/{chunk-FOXKFTVZ.cjs → chunk-GNT35C5U.cjs} +13 -13
- package/dist/chunk-GNT35C5U.cjs.map +1 -0
- package/dist/{chunk-4NAKHID5.js → chunk-GTKFV7O5.js} +2 -2
- package/dist/chunk-GTKFV7O5.js.map +1 -0
- package/dist/{chunk-ELKO4ZLR.cjs → chunk-GWC3HADL.cjs} +4 -4
- package/dist/{chunk-ELKO4ZLR.cjs.map → chunk-GWC3HADL.cjs.map} +1 -1
- package/dist/{chunk-OXNYIMZZ.js → chunk-H73MEMQB.js} +2 -2
- package/dist/chunk-H73MEMQB.js.map +1 -0
- package/dist/{chunk-E7FJOO4G.cjs → chunk-HJBMA5MB.cjs} +11 -11
- package/dist/{chunk-E7FJOO4G.cjs.map → chunk-HJBMA5MB.cjs.map} +1 -1
- package/dist/{chunk-2FYEVT2B.cjs → chunk-HLPSLDGL.cjs} +275 -160
- package/dist/chunk-HLPSLDGL.cjs.map +1 -0
- package/dist/{chunk-VW6M4B3Z.cjs → chunk-HY57ULY2.cjs} +5 -5
- package/dist/{chunk-VW6M4B3Z.cjs.map → chunk-HY57ULY2.cjs.map} +1 -1
- package/dist/{chunk-CAH3G4IS.js → chunk-HY66GLM6.js} +2 -2
- package/dist/chunk-HY66GLM6.js.map +1 -0
- package/dist/{chunk-G3JWXOGY.js → chunk-I5BE5M5L.js} +310 -122
- package/dist/chunk-I5BE5M5L.js.map +1 -0
- package/dist/{chunk-C4H6PB5J.cjs → chunk-I6TGFUCO.cjs} +4 -4
- package/dist/{chunk-C4H6PB5J.cjs.map → chunk-I6TGFUCO.cjs.map} +1 -1
- package/dist/{chunk-U4UJHOSH.js → chunk-IDCKSLYH.js} +3 -3
- package/dist/{chunk-U4UJHOSH.js.map → chunk-IDCKSLYH.js.map} +1 -1
- package/dist/{chunk-WQ53UQL4.cjs → chunk-ILCGLTSA.cjs} +4 -4
- package/dist/{chunk-WQ53UQL4.cjs.map → chunk-ILCGLTSA.cjs.map} +1 -1
- package/dist/{chunk-QBTVATSF.cjs → chunk-ITSSOVOB.cjs} +44 -47
- package/dist/chunk-ITSSOVOB.cjs.map +1 -0
- package/dist/{chunk-V6HWJQQV.js → chunk-IVNNSANC.js} +27 -30
- package/dist/chunk-IVNNSANC.js.map +1 -0
- package/dist/{chunk-SZHU7A5B.cjs → chunk-IWBGCBR6.cjs} +4 -4
- package/dist/{chunk-SZHU7A5B.cjs.map → chunk-IWBGCBR6.cjs.map} +1 -1
- package/dist/{chunk-Q4RESANI.cjs → chunk-J24VJOH3.cjs} +20 -4
- package/dist/chunk-J24VJOH3.cjs.map +1 -0
- package/dist/{chunk-Y4AXQOT4.cjs → chunk-JHPGF3FP.cjs} +8 -8
- package/dist/{chunk-Y4AXQOT4.cjs.map → chunk-JHPGF3FP.cjs.map} +1 -1
- package/dist/{chunk-BM6N4KHO.cjs → chunk-JTB5Q42C.cjs} +6 -22
- package/dist/chunk-JTB5Q42C.cjs.map +1 -0
- package/dist/{chunk-LPVIRJVF.cjs → chunk-K3FW2XZD.cjs} +9 -9
- package/dist/{chunk-LPVIRJVF.cjs.map → chunk-K3FW2XZD.cjs.map} +1 -1
- package/dist/{chunk-LS3LMQ23.js → chunk-MVAPK2BX.js} +162 -49
- package/dist/chunk-MVAPK2BX.js.map +1 -0
- package/dist/{chunk-XPR366DL.cjs → chunk-NGESVVJN.cjs} +17 -17
- package/dist/chunk-NGESVVJN.cjs.map +1 -0
- package/dist/{chunk-VUKQL3L2.cjs → chunk-NIRE5CNO.cjs} +20 -13
- package/dist/chunk-NIRE5CNO.cjs.map +1 -0
- package/dist/{chunk-VC5ABJXC.js → chunk-NLTVXLGT.js} +3 -3
- package/dist/{chunk-VC5ABJXC.js.map → chunk-NLTVXLGT.js.map} +1 -1
- package/dist/chunk-NUKRL3I6.cjs +23 -0
- package/dist/chunk-NUKRL3I6.cjs.map +1 -0
- package/dist/{chunk-R5YZACGK.js → chunk-OC4NTGMN.js} +3 -3
- package/dist/{chunk-R5YZACGK.js.map → chunk-OC4NTGMN.js.map} +1 -1
- package/dist/{chunk-GOVJO4YE.js → chunk-OHBIUXKM.js} +6 -6
- package/dist/chunk-OHBIUXKM.js.map +1 -0
- package/dist/{chunk-FPYT5WZP.cjs → chunk-P6A3M6VD.cjs} +10 -10
- package/dist/{chunk-FPYT5WZP.cjs.map → chunk-P6A3M6VD.cjs.map} +1 -1
- package/dist/{chunk-OKLYRPKL.cjs → chunk-Q47R5E2X.cjs} +8 -8
- package/dist/chunk-Q47R5E2X.cjs.map +1 -0
- package/dist/{chunk-HSQ5Q3I5.js → chunk-Q4CMI2LP.js} +12 -5
- package/dist/chunk-Q4CMI2LP.js.map +1 -0
- package/dist/{chunk-2XLKLVVR.js → chunk-Q5EWJPRY.js} +2 -2
- package/dist/chunk-Q5EWJPRY.js.map +1 -0
- package/dist/{chunk-SK4QLUBK.js → chunk-QARJGQSA.js} +16 -7
- package/dist/chunk-QARJGQSA.js.map +1 -0
- package/dist/{chunk-CZ2GKKYL.cjs → chunk-QDED6YO6.cjs} +5 -5
- package/dist/{chunk-CZ2GKKYL.cjs.map → chunk-QDED6YO6.cjs.map} +1 -1
- package/dist/{chunk-VK7MAV65.cjs → chunk-QKLOP4VC.cjs} +2 -2
- package/dist/{chunk-VK7MAV65.cjs.map → chunk-QKLOP4VC.cjs.map} +1 -1
- package/dist/{chunk-FIOCJYLA.js → chunk-QRSUA2CV.js} +3 -3
- package/dist/{chunk-FIOCJYLA.js.map → chunk-QRSUA2CV.js.map} +1 -1
- package/dist/{chunk-ZT57WTUJ.cjs → chunk-R3UPQFKK.cjs} +21 -12
- package/dist/chunk-R3UPQFKK.cjs.map +1 -0
- package/dist/{chunk-X2FR4OIT.js → chunk-R7WIIPUR.js} +2 -2
- package/dist/chunk-R7WIIPUR.js.map +1 -0
- package/dist/{chunk-RP5HQVLD.js → chunk-RNB4APBZ.js} +30 -7
- package/dist/chunk-RNB4APBZ.js.map +1 -0
- package/dist/{chunk-GD63JPGC.cjs → chunk-ROYPRJH4.cjs} +9 -9
- package/dist/{chunk-GD63JPGC.cjs.map → chunk-ROYPRJH4.cjs.map} +1 -1
- package/dist/{chunk-V26QVGUG.js → chunk-RUDY2GTT.js} +59 -23
- package/dist/chunk-RUDY2GTT.js.map +1 -0
- package/dist/{chunk-JIQRXKTA.cjs → chunk-SKXBJ2NU.cjs} +7 -7
- package/dist/chunk-SKXBJ2NU.cjs.map +1 -0
- package/dist/{chunk-XROIW6BH.js → chunk-SUKXXLWD.js} +6 -6
- package/dist/chunk-SUKXXLWD.js.map +1 -0
- package/dist/{chunk-LTSTGCL6.js → chunk-T73NA43R.js} +3 -3
- package/dist/{chunk-LTSTGCL6.js.map → chunk-T73NA43R.js.map} +1 -1
- package/dist/chunk-T7O6K6PX.js +20 -0
- package/dist/chunk-T7O6K6PX.js.map +1 -0
- package/dist/{chunk-5F5NWKPN.js → chunk-T7XEKOVW.js} +5 -20
- package/dist/chunk-T7XEKOVW.js.map +1 -0
- package/dist/{chunk-HAWE74GQ.cjs → chunk-U2AC6JUP.cjs} +8 -8
- package/dist/chunk-U2AC6JUP.cjs.map +1 -0
- package/dist/{chunk-3WVMJY7F.js → chunk-UC3HT2S4.js} +3 -3
- package/dist/{chunk-3WVMJY7F.js.map → chunk-UC3HT2S4.js.map} +1 -1
- package/dist/{chunk-PBZ7HMBP.js → chunk-UPRJR6IP.js} +4 -4
- package/dist/chunk-UPRJR6IP.js.map +1 -0
- package/dist/{chunk-3V7UJLQT.js → chunk-UQGQFBRL.js} +3 -3
- package/dist/chunk-UQGQFBRL.js.map +1 -0
- package/dist/{chunk-2D43RD5D.cjs → chunk-V2UUGUY4.cjs} +27 -27
- package/dist/chunk-V2UUGUY4.cjs.map +1 -0
- package/dist/{chunk-6AZDM6LK.js → chunk-VF7EWVDG.js} +3 -3
- package/dist/{chunk-6AZDM6LK.js.map → chunk-VF7EWVDG.js.map} +1 -1
- package/dist/{chunk-PNVDQL5Y.cjs → chunk-VTYY7XL5.cjs} +2 -2
- package/dist/chunk-VTYY7XL5.cjs.map +1 -0
- package/dist/{chunk-Y4I4EQFK.js → chunk-WKRSH2VR.js} +3 -3
- package/dist/{chunk-Y4I4EQFK.js.map → chunk-WKRSH2VR.js.map} +1 -1
- package/dist/{chunk-4QEC4CCS.js → chunk-WTMU7J4U.js} +2 -2
- package/dist/{chunk-4QEC4CCS.js.map → chunk-WTMU7J4U.js.map} +1 -1
- package/dist/{chunk-KSWHTR54.js → chunk-XN7NOENA.js} +6 -6
- package/dist/chunk-XN7NOENA.js.map +1 -0
- package/dist/{chunk-ADLLFY3H.cjs → chunk-XSX2UU6Y.cjs} +10 -9
- package/dist/chunk-XSX2UU6Y.cjs.map +1 -0
- package/dist/{chunk-LD4MOBFX.js → chunk-XV4IZNV4.js} +9 -9
- package/dist/chunk-XV4IZNV4.js.map +1 -0
- package/dist/{chunk-EZ2YEF4F.cjs → chunk-XWL6O3SW.cjs} +4 -4
- package/dist/chunk-XWL6O3SW.cjs.map +1 -0
- package/dist/{chunk-PGP7IOJ2.js → chunk-YMA4S2WO.js} +4 -4
- package/dist/{chunk-PGP7IOJ2.js.map → chunk-YMA4S2WO.js.map} +1 -1
- package/dist/{chunk-OUOXM36O.cjs → chunk-YPJ5NH5N.cjs} +11 -11
- package/dist/chunk-YPJ5NH5N.cjs.map +1 -0
- package/dist/{chunk-YLQQX5W2.cjs → chunk-ZF2LDKQQ.cjs} +2 -2
- package/dist/chunk-ZF2LDKQQ.cjs.map +1 -0
- package/dist/{chunk-L5YO6PWL.cjs → chunk-ZNW6V4Y6.cjs} +2 -2
- package/dist/chunk-ZNW6V4Y6.cjs.map +1 -0
- package/dist/client/index.cjs.map +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/client/theokit-client.d.cts +36 -0
- package/dist/client/theokit-client.d.ts +36 -0
- package/dist/client/types.d.cts +30 -0
- package/dist/client/types.d.ts +30 -0
- package/dist/compact-session-FUJDVF7B.js +22 -0
- package/dist/{compact-session-4MNKNMO2.js.map → compact-session-FUJDVF7B.js.map} +1 -1
- package/dist/compact-session-LEWF554G.cjs +59 -0
- package/dist/{compact-session-EPFBQ46Z.cjs.map → compact-session-LEWF554G.cjs.map} +1 -1
- package/dist/compaction.cjs +17 -16
- package/dist/compaction.d.cts +13 -13
- package/dist/compaction.d.ts +13 -13
- package/dist/compaction.js +4 -3
- package/dist/concurrency.cjs +7 -6
- package/dist/concurrency.cjs.map +1 -1
- package/dist/concurrency.js +5 -4
- package/dist/concurrency.js.map +1 -1
- package/dist/context/index.cjs +7 -7
- package/dist/context/index.js +3 -3
- package/dist/context-FDOON2DB.js +6 -0
- package/dist/{context-ENXZNF6J.js.map → context-FDOON2DB.js.map} +1 -1
- package/dist/context-VMIE4BMD.cjs +23 -0
- package/dist/{context-7USNN6LP.cjs.map → context-VMIE4BMD.cjs.map} +1 -1
- package/dist/cron-BcWmzWzT.d.cts +240 -0
- package/dist/cron-De6hzWCF.d.ts +240 -0
- package/dist/cron.cjs +43 -41
- package/dist/cron.d.cts +5 -3
- package/dist/cron.d.ts +5 -3
- package/dist/cron.js +42 -40
- package/dist/define-tool.d.ts +14 -6
- package/dist/{errors-BSoXcl3F.d.cts → errors-BgJH9PHi.d.cts} +39 -24
- package/dist/{errors-CHllybaU.d.ts → errors-C5fJUqLk.d.ts} +39 -24
- package/dist/errors.cjs +22 -21
- package/dist/errors.d.cts +2 -2
- package/dist/errors.d.ts +2 -2
- package/dist/errors.js +3 -2
- package/dist/eval.cjs +61 -58
- package/dist/eval.cjs.map +1 -1
- package/dist/eval.d.cts +38 -0
- package/dist/eval.d.ts +38 -0
- package/dist/eval.js +51 -48
- package/dist/eval.js.map +1 -1
- package/dist/event-bus.d.ts +16 -0
- package/dist/{executor-2Z6XJJJG.js → executor-BMEHFOXZ.js} +8 -7
- package/dist/executor-BMEHFOXZ.js.map +1 -0
- package/dist/{executor-2Z3LGG3I.cjs → executor-ZERJ3DGN.cjs} +25 -24
- package/dist/executor-ZERJ3DGN.cjs.map +1 -0
- package/dist/filesystem/index.cjs +8 -7
- package/dist/filesystem/index.cjs.map +1 -1
- package/dist/filesystem/index.js +4 -3
- package/dist/filesystem/index.js.map +1 -1
- package/dist/filesystem/local-filesystem.d.cts +18 -0
- package/dist/filesystem/local-filesystem.d.ts +18 -0
- package/dist/filesystem/types.d.cts +12 -0
- package/dist/filesystem/types.d.ts +12 -0
- package/dist/fs-session-store-3MOJQGP2.cjs +20 -0
- package/dist/{fs-session-store-VVY2AHWG.cjs.map → fs-session-store-3MOJQGP2.cjs.map} +1 -1
- package/dist/fs-session-store-IN7JTTXD.js +11 -0
- package/dist/{fs-session-store-R5FD3EN6.js.map → fs-session-store-IN7JTTXD.js.map} +1 -1
- package/dist/generate-object-N5MDZUJI.js +8 -0
- package/dist/{generate-object-WQRCXFD2.js.map → generate-object-N5MDZUJI.js.map} +1 -1
- package/dist/generate-object-PGSP5U7N.cjs +21 -0
- package/dist/{generate-object-AVXOJK2I.cjs.map → generate-object-PGSP5U7N.cjs.map} +1 -1
- package/dist/generate-object.d.ts +20 -0
- package/dist/index-manager-NG5YENWO.cjs +22 -0
- package/dist/{index-manager-VRU3A2YL.cjs.map → index-manager-NG5YENWO.cjs.map} +1 -1
- package/dist/index-manager-ZMRJ6ZII.js +13 -0
- package/dist/{index-manager-WS7TVKUW.js.map → index-manager-ZMRJ6ZII.js.map} +1 -1
- package/dist/index.cjs +169 -155
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +702 -54
- package/dist/index.d.ts +702 -54
- package/dist/index.js +61 -58
- package/dist/index.js.map +1 -1
- package/dist/{inject-session-GMBMJVNZ.js → inject-session-BJMJH5BX.js} +9 -8
- package/dist/inject-session-BJMJH5BX.js.map +1 -0
- package/dist/inject-session-WQGGMCQY.cjs +29 -0
- package/dist/inject-session-WQGGMCQY.cjs.map +1 -0
- package/dist/internal/auth/auth-types.d.ts +83 -1
- package/dist/internal/auth/credential-store.d.ts +34 -6
- package/dist/internal/auth/oauth-device.d.ts +0 -1
- package/dist/internal/auth/resolve-credential.d.ts +40 -0
- package/dist/internal/budget/tracker/budget.d.ts +12 -14
- package/dist/internal/budget/usage-accumulator.d.ts +15 -0
- package/dist/internal/llm/anthropic-shared.d.ts +8 -4
- package/dist/internal/llm/model-identifier.d.ts +26 -0
- package/dist/internal/llm/openai.d.ts +8 -0
- package/dist/internal/llm/prompt-cache-key.d.ts +1 -0
- package/dist/internal/llm/responses.d.ts +67 -1
- package/dist/internal/llm/router.d.ts +8 -0
- package/dist/internal/llm/types.d.ts +27 -1
- package/dist/internal/local-agent/real-local-run-provider.d.ts +8 -3
- package/dist/internal/local-agent/real-local-run-tools.d.ts +23 -4
- package/dist/internal/mcp/oauth.d.ts +5 -0
- package/dist/internal/mcp/token-storage.d.ts +34 -0
- package/dist/internal/memory/adapters/index.cjs +12 -11
- package/dist/internal/memory/adapters/index.d.cts +3 -1
- package/dist/internal/memory/adapters/index.d.ts +3 -1
- package/dist/internal/memory/adapters/index.js +9 -8
- package/dist/internal/memory/adapters/openai-compatible.d.cts +45 -0
- package/dist/internal/memory/adapters/openai-compatible.d.ts +45 -0
- package/dist/internal/memory/embedding-cache.d.ts +42 -1
- package/dist/internal/memory/escape-like-pattern.d.ts +22 -0
- package/dist/internal/memory/sqlite-vec-loader.d.ts +1 -3
- package/dist/internal/memory/storage/markdown-store.d.ts +0 -5
- package/dist/internal/persistence/cwd-mutex.d.cts +34 -0
- package/dist/internal/persistence/cwd-mutex.d.ts +34 -0
- package/dist/internal/persistence/exclusive-create.d.cts +31 -0
- package/dist/internal/persistence/exclusive-create.d.ts +31 -0
- package/dist/internal/persistence/file-lock.d.cts +28 -0
- package/dist/internal/persistence/file-lock.d.ts +28 -0
- package/dist/internal/persistence/fs-session-store.d.cts +3 -0
- package/dist/internal/persistence/fs-session-store.d.ts +3 -0
- package/dist/internal/persistence/fts5-sanitize.d.cts +20 -0
- package/dist/internal/persistence/fts5-sanitize.d.ts +20 -0
- package/dist/internal/persistence/index.cjs +40 -39
- package/dist/internal/persistence/index.cjs.map +1 -1
- package/dist/internal/persistence/index.d.cts +6 -1
- package/dist/internal/persistence/index.d.ts +6 -1
- package/dist/internal/persistence/index.js +9 -8
- package/dist/internal/persistence/index.js.map +1 -1
- package/dist/internal/persistence/paths.d.cts +54 -1
- package/dist/internal/persistence/paths.d.ts +54 -1
- package/dist/internal/persistence/persistence-schema.d.cts +9 -1
- package/dist/internal/persistence/persistence-schema.d.ts +9 -1
- package/dist/internal/persistence/schema-version.d.cts +215 -1
- package/dist/internal/persistence/schema-version.d.ts +215 -1
- package/dist/internal/persistence/session-writer.d.cts +7 -7
- package/dist/internal/persistence/session-writer.d.ts +7 -7
- package/dist/internal/persistence/sqlite-cas.d.cts +37 -1
- package/dist/internal/persistence/sqlite-cas.d.ts +37 -1
- package/dist/internal/persistence/sqlite-open.d.cts +14 -0
- package/dist/internal/persistence/sqlite-open.d.ts +14 -0
- package/dist/internal/persistence/sqlite-wal.d.cts +45 -0
- package/dist/internal/persistence/sqlite-wal.d.ts +45 -0
- package/dist/internal/persistence/transcript-ops.d.cts +7 -1
- package/dist/internal/persistence/transcript-ops.d.ts +7 -1
- package/dist/internal/plugins/types.d.cts +1 -1
- package/dist/internal/plugins/types.d.ts +1 -1
- package/dist/internal/providers/builtin/openai-chatgpt.d.ts +12 -0
- package/dist/internal/providers/catalog-loader.d.ts +8 -0
- package/dist/internal/providers/catalog-schema.d.ts +55 -0
- package/dist/internal/providers/catalog-source-models-dev.d.ts +36 -0
- package/dist/internal/runtime/concurrency/delegation-depth.d.ts +27 -0
- package/dist/internal/runtime/concurrency/subagent-credentials.d.ts +33 -1
- package/dist/internal/runtime/context/context-discovery-runner.d.ts +44 -0
- package/dist/internal/runtime/context/context-discovery.d.ts +58 -0
- package/dist/internal/runtime/context/context-rules-frontmatter.d.ts +70 -1
- package/dist/internal/runtime/fixtures/fixture-mode.d.ts +15 -1
- package/dist/internal/runtime/lifecycle/post-run-lifecycle.d.ts +15 -0
- package/dist/internal/runtime/registry/agent-registry-store.d.ts +12 -0
- package/dist/internal/runtime/registry/live-agent-registry.d.ts +37 -0
- package/dist/internal/scorers/llm-judge.d.ts +6 -1
- package/dist/internal/security/index.cjs +14 -13
- package/dist/internal/security/index.d.cts +4 -1
- package/dist/internal/security/index.d.ts +4 -1
- package/dist/internal/security/index.js +4 -3
- package/dist/internal/security/path-guard.d.cts +46 -0
- package/dist/internal/security/path-guard.d.ts +46 -0
- package/dist/internal/security/redact.d.cts +71 -0
- package/dist/internal/security/redact.d.ts +71 -0
- package/dist/internal/session/agent-session.d.ts +15 -4
- package/dist/internal/session/session-cache.d.ts +5 -0
- package/dist/internal/task/store.d.ts +91 -5
- package/dist/internal/telemetry/span-names.d.ts +0 -1
- package/dist/internal/telemetry/tracer.d.ts +14 -0
- package/dist/job-queue.d.ts +18 -0
- package/dist/judge-call-DWHAJATE.js +6 -0
- package/dist/{judge-call-MDIPTBJI.js.map → judge-call-DWHAJATE.js.map} +1 -1
- package/dist/judge-call-EGYRC2RE.cjs +23 -0
- package/dist/{judge-call-G5SGV2M2.cjs.map → judge-call-EGYRC2RE.cjs.map} +1 -1
- package/dist/mcp-auth.cjs +41 -25
- package/dist/mcp-auth.cjs.map +1 -1
- package/dist/mcp-auth.js +34 -18
- package/dist/mcp-auth.js.map +1 -1
- package/dist/models.cjs +42 -27
- package/dist/models.cjs.map +1 -1
- package/dist/models.js +25 -10
- package/dist/models.js.map +1 -1
- package/dist/oauth-transaction-store-BT4GLTLK.cjs +36 -0
- package/dist/{oauth-transaction-store-7CKHPQRN.cjs.map → oauth-transaction-store-BT4GLTLK.cjs.map} +1 -1
- package/dist/oauth-transaction-store-W52KVHQ4.js +3 -0
- package/dist/{oauth-transaction-store-W74I6EFD.js.map → oauth-transaction-store-W52KVHQ4.js.map} +1 -1
- package/dist/path-safety.cjs +11 -10
- package/dist/path-safety.js +4 -3
- package/dist/permission-engine.d.ts +55 -0
- package/dist/persistence.cjs +43 -42
- package/dist/persistence.cjs.map +1 -1
- package/dist/persistence.js +13 -12
- package/dist/persistence.js.map +1 -1
- package/dist/project.cjs +9 -8
- package/dist/project.cjs.map +1 -1
- package/dist/project.js +5 -4
- package/dist/project.js.map +1 -1
- package/dist/providers.cjs +23 -0
- package/dist/providers.cjs.map +1 -0
- package/dist/providers.d.cts +29 -0
- package/dist/providers.d.ts +29 -0
- package/dist/providers.js +10 -0
- package/dist/providers.js.map +1 -0
- package/dist/registry-VFKX7WOP.cjs +47 -0
- package/dist/{registry-63ASMXT4.cjs.map → registry-VFKX7WOP.cjs.map} +1 -1
- package/dist/registry-VFP3WWQP.js +10 -0
- package/dist/{registry-O7FJ2MPM.js.map → registry-VFP3WWQP.js.map} +1 -1
- package/dist/retry.cjs +5 -4
- package/dist/retry.js +4 -3
- package/dist/{run-C8FBAC8o.d.cts → run-BYSHf58D.d.cts} +185 -33
- package/dist/{run-C8FBAC8o.d.ts → run-BYSHf58D.d.ts} +185 -33
- package/dist/{run-to-completion-JDPIUKSH.js → run-to-completion-DRO77625.js} +3 -3
- package/dist/{run-to-completion-JDPIUKSH.js.map → run-to-completion-DRO77625.js.map} +1 -1
- package/dist/{run-to-completion-J73I6IY4.cjs → run-to-completion-X4OWM673.cjs} +13 -13
- package/dist/{run-to-completion-J73I6IY4.cjs.map → run-to-completion-X4OWM673.cjs.map} +1 -1
- package/dist/sandbox/bwrap.d.cts +27 -13
- package/dist/sandbox/bwrap.d.ts +27 -13
- package/dist/sandbox/index.cjs +20 -19
- package/dist/sandbox/index.cjs.map +1 -1
- package/dist/sandbox/index.js +5 -4
- package/dist/sandbox/index.js.map +1 -1
- package/dist/sandbox/linux-sandbox.d.cts +72 -0
- package/dist/sandbox/linux-sandbox.d.ts +72 -0
- package/dist/sandbox/local-sandbox.d.cts +41 -0
- package/dist/sandbox/local-sandbox.d.ts +41 -0
- package/dist/sandbox/seccomp.d.cts +6 -0
- package/dist/sandbox/seccomp.d.ts +6 -0
- package/dist/sandbox/types.d.cts +64 -0
- package/dist/sandbox/types.d.ts +64 -0
- package/dist/scorers.d.ts +38 -7
- package/dist/sdk-agent-D8qJVkuV.d.ts +860 -0
- package/dist/sdk-agent-DEoKhA8a.d.cts +860 -0
- package/dist/server/auth/errors.d.cts +1 -1
- package/dist/server/auth/errors.d.ts +1 -1
- package/dist/server/auth/index.cjs +29 -21
- package/dist/server/auth/index.cjs.map +1 -1
- package/dist/server/auth/index.d.cts +25 -15
- package/dist/server/auth/index.d.ts +25 -15
- package/dist/server/auth/index.js +15 -7
- package/dist/server/auth/index.js.map +1 -1
- package/dist/server/auth/oauth-transaction-store.d.cts +13 -1
- package/dist/server/auth/oauth-transaction-store.d.ts +13 -1
- package/dist/server/auth/orchestrator.d.cts +1 -1
- package/dist/server/auth/orchestrator.d.ts +1 -1
- package/dist/server/auth/types.d.cts +1 -1
- package/dist/server/auth/types.d.ts +1 -1
- package/dist/server/auth/validate-return-to.d.cts +21 -11
- package/dist/server/auth/validate-return-to.d.ts +21 -11
- package/dist/server/errors-envelope.cjs +15 -14
- package/dist/server/errors-envelope.cjs.map +1 -1
- package/dist/server/errors-envelope.d.cts +4 -4
- package/dist/server/errors-envelope.d.ts +4 -4
- package/dist/server/errors-envelope.js +4 -3
- package/dist/server/errors-envelope.js.map +1 -1
- package/dist/session-transcript-AKDYYGXQ.js +6 -0
- package/dist/{session-transcript-RAKEK76V.js.map → session-transcript-AKDYYGXQ.js.map} +1 -1
- package/dist/session-transcript-JXHFTB7G.cjs +51 -0
- package/dist/{session-transcript-DOM3UTXR.cjs.map → session-transcript-JXHFTB7G.cjs.map} +1 -1
- package/dist/skills.cjs +8 -7
- package/dist/skills.js +6 -5
- package/dist/stream-object-BUCF5PHO.cjs +21 -0
- package/dist/{stream-object-L3Q7PBMF.cjs.map → stream-object-BUCF5PHO.cjs.map} +1 -1
- package/dist/stream-object-L57K4OFS.js +8 -0
- package/dist/{stream-object-ZYXWS4B2.js.map → stream-object-L57K4OFS.js.map} +1 -1
- package/dist/{stream-to-completion-DFJ5T3BK.js → stream-to-completion-QV5HCL3J.js} +3 -3
- package/dist/{stream-to-completion-DFJ5T3BK.js.map → stream-to-completion-QV5HCL3J.js.map} +1 -1
- package/dist/{stream-to-completion-H2MHISSK.cjs → stream-to-completion-SRISU5AB.cjs} +10 -10
- package/dist/{stream-to-completion-H2MHISSK.cjs.map → stream-to-completion-SRISU5AB.cjs.map} +1 -1
- package/dist/subagents-loader-AZIXJ7D3.cjs +16 -0
- package/dist/{subagents-loader-VRW73QQT.cjs.map → subagents-loader-AZIXJ7D3.cjs.map} +1 -1
- package/dist/subagents-loader-J54ESLDV.js +7 -0
- package/dist/{subagents-loader-I56GSKAQ.js.map → subagents-loader-J54ESLDV.js.map} +1 -1
- package/dist/subagents-loader.cjs +7 -6
- package/dist/subagents-loader.cjs.map +1 -1
- package/dist/subagents-loader.d.cts +3 -2
- package/dist/subagents-loader.d.ts +3 -2
- package/dist/subagents-loader.js +5 -4
- package/dist/subagents-loader.js.map +1 -1
- package/dist/subscription/define-subscription.d.cts +1 -1
- package/dist/subscription/define-subscription.d.ts +1 -1
- package/dist/subscription/index.cjs +22 -9
- package/dist/subscription/index.cjs.map +1 -1
- package/dist/subscription/index.d.cts +1 -1
- package/dist/subscription/index.d.ts +1 -1
- package/dist/subscription/index.js +21 -8
- package/dist/subscription/index.js.map +1 -1
- package/dist/subscription/internal/adapter-types.d.cts +1 -1
- package/dist/subscription/internal/adapter-types.d.ts +1 -1
- package/dist/subscription/internal/server-integration.d.cts +1 -1
- package/dist/subscription/internal/server-integration.d.ts +1 -1
- package/dist/subscription/internal/sse-encoder.d.cts +1 -1
- package/dist/subscription/internal/sse-encoder.d.ts +1 -1
- package/dist/subscription/internal/sse-parser.d.cts +1 -1
- package/dist/subscription/internal/sse-parser.d.ts +1 -1
- package/dist/subscription/internal/subscription-runtime.d.cts +1 -1
- package/dist/subscription/internal/subscription-runtime.d.ts +1 -1
- package/dist/subscription/internal/ws-adapter-node.d.cts +1 -1
- package/dist/subscription/internal/ws-adapter-node.d.ts +1 -1
- package/dist/subscription/theokit-subscribe.d.cts +14 -1
- package/dist/subscription/theokit-subscribe.d.ts +14 -1
- package/dist/subscription/types.d.cts +19 -1
- package/dist/subscription/types.d.ts +19 -1
- package/dist/task-store.cjs +8 -7
- package/dist/task-store.js +5 -4
- package/dist/types/agent-prims.d.ts +14 -0
- package/dist/types/agent.d.ts +92 -11
- package/dist/types/batch.d.ts +7 -1
- package/dist/types/conversation.d.ts +18 -5
- package/dist/types/goal-events.d.ts +4 -8
- package/dist/types/memory-adapter.d.ts +12 -1
- package/dist/types/plugin.d.ts +101 -0
- package/dist/types/provider-profile.d.ts +32 -0
- package/dist/types/run-events.d.ts +28 -1
- package/dist/types/run.d.ts +35 -23
- package/dist/types/sdk-agent.d.ts +14 -0
- package/dist/types/session-record.d.ts +18 -1
- package/dist/types/task.d.ts +15 -1
- package/dist/types/theokit.d.ts +10 -1
- package/dist/types/updates.d.ts +35 -4
- package/dist/types/workflow.d.ts +155 -0
- package/dist/workflow.cjs +29 -28
- package/dist/workflow.d.cts +666 -17
- package/dist/workflow.d.ts +666 -17
- package/dist/workflow.js +8 -7
- package/docs/error-codes.md +215 -0
- package/docs/harness-capability-map.md +1358 -0
- package/package.json +29 -16
- package/bin/init-claude.mjs +0 -68
- package/claude-template/AGENTS.md +0 -157
- package/claude-template/CLAUDE.md +0 -66
- package/claude-template/dot-claude/rules/theokit-conventions.md +0 -32
- package/claude-template/dot-claude/settings.json +0 -16
- package/claude-template/dot-claude/skills/theokit-agent-core/SKILL.md +0 -209
- package/claude-template/dot-claude/skills/theokit-auth/SKILL.md +0 -102
- package/claude-template/dot-claude/skills/theokit-budget/SKILL.md +0 -176
- package/claude-template/dot-claude/skills/theokit-client/SKILL.md +0 -58
- package/claude-template/dot-claude/skills/theokit-compaction/SKILL.md +0 -102
- package/claude-template/dot-claude/skills/theokit-concurrency/SKILL.md +0 -68
- package/claude-template/dot-claude/skills/theokit-config/SKILL.md +0 -139
- package/claude-template/dot-claude/skills/theokit-cron/SKILL.md +0 -148
- package/claude-template/dot-claude/skills/theokit-di/SKILL.md +0 -233
- package/claude-template/dot-claude/skills/theokit-di-agent/SKILL.md +0 -294
- package/claude-template/dot-claude/skills/theokit-errors/SKILL.md +0 -172
- package/claude-template/dot-claude/skills/theokit-eval/SKILL.md +0 -179
- package/claude-template/dot-claude/skills/theokit-filesystem/SKILL.md +0 -74
- package/claude-template/dot-claude/skills/theokit-gateways/SKILL.md +0 -209
- package/claude-template/dot-claude/skills/theokit-memory/SKILL.md +0 -176
- package/claude-template/dot-claude/skills/theokit-messages/SKILL.md +0 -58
- package/claude-template/dot-claude/skills/theokit-models/SKILL.md +0 -79
- package/claude-template/dot-claude/skills/theokit-path-safety/SKILL.md +0 -60
- package/claude-template/dot-claude/skills/theokit-persistence/SKILL.md +0 -85
- package/claude-template/dot-claude/skills/theokit-project/SKILL.md +0 -55
- package/claude-template/dot-claude/skills/theokit-retry/SKILL.md +0 -50
- package/claude-template/dot-claude/skills/theokit-sandbox/SKILL.md +0 -93
- package/claude-template/dot-claude/skills/theokit-sanitize/SKILL.md +0 -66
- package/claude-template/dot-claude/skills/theokit-skills/SKILL.md +0 -68
- package/claude-template/dot-claude/skills/theokit-streaming/SKILL.md +0 -156
- package/claude-template/dot-claude/skills/theokit-subagents/SKILL.md +0 -109
- package/claude-template/dot-claude/skills/theokit-subscriptions/SKILL.md +0 -148
- package/claude-template/dot-claude/skills/theokit-task-store/SKILL.md +0 -75
- package/claude-template/dot-claude/skills/theokit-tools/SKILL.md +0 -170
- package/claude-template/dot-claude/skills/theokit-workflows/SKILL.md +0 -218
- package/dist/agent-FFVV4U5N.js +0 -50
- package/dist/agent-YLAHVHEH.cjs +0 -59
- package/dist/agent-session-store-DUGBAX5V.cjs +0 -23
- package/dist/agent-session-store-TNCGL5RN.js +0 -6
- package/dist/batch-UPKN4SG6.js.map +0 -1
- package/dist/batch-ZEFN5SO7.cjs.map +0 -1
- package/dist/chunk-2D43RD5D.cjs.map +0 -1
- package/dist/chunk-2FYEVT2B.cjs.map +0 -1
- package/dist/chunk-2RW7K6FN.cjs.map +0 -1
- package/dist/chunk-2XLKLVVR.js.map +0 -1
- package/dist/chunk-34XOCZJO.js.map +0 -1
- package/dist/chunk-3V7UJLQT.js.map +0 -1
- package/dist/chunk-4NAKHID5.js.map +0 -1
- package/dist/chunk-4Q4K4WB5.js.map +0 -1
- package/dist/chunk-5F5NWKPN.js.map +0 -1
- package/dist/chunk-5NBUH3NO.js.map +0 -1
- package/dist/chunk-5YKNEMXR.cjs.map +0 -1
- package/dist/chunk-7W7ZWMLQ.js.map +0 -1
- package/dist/chunk-ADLLFY3H.cjs.map +0 -1
- package/dist/chunk-B4YA6BRS.cjs.map +0 -1
- package/dist/chunk-B6HOIWQ6.js.map +0 -1
- package/dist/chunk-BDTVFIPB.cjs.map +0 -1
- package/dist/chunk-BFYGJGC5.js.map +0 -1
- package/dist/chunk-BM6N4KHO.cjs.map +0 -1
- package/dist/chunk-CAH3G4IS.js.map +0 -1
- package/dist/chunk-EZ2YEF4F.cjs.map +0 -1
- package/dist/chunk-F77UENR6.cjs.map +0 -1
- package/dist/chunk-FOXKFTVZ.cjs.map +0 -1
- package/dist/chunk-G3JWXOGY.js.map +0 -1
- package/dist/chunk-GOVJO4YE.js.map +0 -1
- package/dist/chunk-HAWE74GQ.cjs.map +0 -1
- package/dist/chunk-HE4BIAOS.js.map +0 -1
- package/dist/chunk-HSQ5Q3I5.js.map +0 -1
- package/dist/chunk-JIQRXKTA.cjs.map +0 -1
- package/dist/chunk-KSWHTR54.js.map +0 -1
- package/dist/chunk-L5YO6PWL.cjs.map +0 -1
- package/dist/chunk-LD4MOBFX.js.map +0 -1
- package/dist/chunk-LS3LMQ23.js.map +0 -1
- package/dist/chunk-MSFLYJDY.js.map +0 -1
- package/dist/chunk-NZL4BNFQ.js.map +0 -1
- package/dist/chunk-OKLYRPKL.cjs.map +0 -1
- package/dist/chunk-OUOXM36O.cjs.map +0 -1
- package/dist/chunk-OXNYIMZZ.js.map +0 -1
- package/dist/chunk-PBZ7HMBP.js.map +0 -1
- package/dist/chunk-PNVDQL5Y.cjs.map +0 -1
- package/dist/chunk-Q4RESANI.cjs.map +0 -1
- package/dist/chunk-QBTVATSF.cjs.map +0 -1
- package/dist/chunk-RAHSWE5C.cjs.map +0 -1
- package/dist/chunk-RP5HQVLD.js.map +0 -1
- package/dist/chunk-SEL2ZQMT.js.map +0 -1
- package/dist/chunk-SK4QLUBK.js.map +0 -1
- package/dist/chunk-TTJ54H3E.cjs.map +0 -1
- package/dist/chunk-V26QVGUG.js.map +0 -1
- package/dist/chunk-V6HWJQQV.js.map +0 -1
- package/dist/chunk-VGPXHHF3.cjs.map +0 -1
- package/dist/chunk-VUKQL3L2.cjs.map +0 -1
- package/dist/chunk-VYCKUKPA.cjs.map +0 -1
- package/dist/chunk-VYHJZVL5.cjs.map +0 -1
- package/dist/chunk-X2FR4OIT.js.map +0 -1
- package/dist/chunk-XPR366DL.cjs.map +0 -1
- package/dist/chunk-XROIW6BH.js.map +0 -1
- package/dist/chunk-YLQQX5W2.cjs.map +0 -1
- package/dist/chunk-ZT57WTUJ.cjs.map +0 -1
- package/dist/compact-session-4MNKNMO2.js +0 -21
- package/dist/compact-session-EPFBQ46Z.cjs +0 -58
- package/dist/context-7USNN6LP.cjs +0 -22
- package/dist/context-ENXZNF6J.js +0 -5
- package/dist/cron-BMjgFH-_.d.ts +0 -631
- package/dist/cron-DFDdCdMM.d.cts +0 -631
- package/dist/executor-2Z3LGG3I.cjs.map +0 -1
- package/dist/executor-2Z6XJJJG.js.map +0 -1
- package/dist/fs-session-store-R5FD3EN6.js +0 -10
- package/dist/fs-session-store-VVY2AHWG.cjs +0 -19
- package/dist/generate-object-AVXOJK2I.cjs +0 -20
- package/dist/generate-object-WQRCXFD2.js +0 -7
- package/dist/index-manager-VRU3A2YL.cjs +0 -21
- package/dist/index-manager-WS7TVKUW.js +0 -12
- package/dist/inject-session-AUQLBDRS.cjs +0 -28
- package/dist/inject-session-AUQLBDRS.cjs.map +0 -1
- package/dist/inject-session-GMBMJVNZ.js.map +0 -1
- package/dist/judge-call-G5SGV2M2.cjs +0 -22
- package/dist/judge-call-MDIPTBJI.js +0 -5
- package/dist/oauth-transaction-store-7CKHPQRN.cjs +0 -32
- package/dist/oauth-transaction-store-W74I6EFD.js +0 -3
- package/dist/registry-63ASMXT4.cjs +0 -46
- package/dist/registry-O7FJ2MPM.js +0 -9
- package/dist/session-transcript-DOM3UTXR.cjs +0 -50
- package/dist/session-transcript-RAKEK76V.js +0 -5
- package/dist/stream-object-L3Q7PBMF.cjs +0 -20
- package/dist/stream-object-ZYXWS4B2.js +0 -7
- package/dist/subagents-loader-I56GSKAQ.js +0 -6
- package/dist/subagents-loader-VRW73QQT.cjs +0 -15
|
@@ -1,4 +1,31 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* M44 — the per-model catalog sub-schema. Field names mirror models.dev VERBATIM (snake_case) so
|
|
4
|
+
* `scripts/refresh-catalog.mjs` regenerates the vendored data mechanically from `api.json` with zero
|
|
5
|
+
* renaming (ADR D1).
|
|
6
|
+
* TOLERANT by design: every field optional, unknown keys ignored — models.dev adds fields over time and
|
|
7
|
+
* additive drift must never break the loader (Blueprint §6.4).
|
|
8
|
+
*
|
|
9
|
+
* theokit extensions beyond models.dev: `structured_output` / `cache_control` (both already exist on the
|
|
10
|
+
* SDK's `ModelCapabilities`; models.dev has no such flags).
|
|
11
|
+
*
|
|
12
|
+
* Semver-exempt: nothing here is declared in `package.json` `exports`. `MODALITIES` is nonetheless
|
|
13
|
+
* reachable from published declarations through the type graph, so it must be EMITTED.
|
|
14
|
+
*
|
|
15
|
+
* NOTE — no internal-visibility tag in this block. `tsconfig.base.json` sets `stripInternal: true`,
|
|
16
|
+
* and TypeScript scans EVERY leading comment range of the declaration that follows; the tag that
|
|
17
|
+
* used to sit here deleted the `MODALITIES` declaration below from the emitted `.d.ts`.
|
|
18
|
+
*/
|
|
19
|
+
export declare const MODALITIES: readonly ["text", "audio", "image", "video", "pdf"];
|
|
20
|
+
/**
|
|
21
|
+
* One input or output medium a model accepts or produces.
|
|
22
|
+
*
|
|
23
|
+
* The union is derived from `MODALITIES`, so it is closed: a models.dev entry whose
|
|
24
|
+
* `modalities.input` or `modalities.output` array contains a string outside this set fails
|
|
25
|
+
* `catalogModelSchema.safeParse`, and `patchIndexFromApiJson` drops that single model rather
|
|
26
|
+
* than the whole payload. Widening the catalog to a new medium means adding it to `MODALITIES`
|
|
27
|
+
* first — nothing else in the schema enumerates media.
|
|
28
|
+
*/
|
|
2
29
|
export type Modality = (typeof MODALITIES)[number];
|
|
3
30
|
declare const costSchema: z.ZodObject<{
|
|
4
31
|
input: z.ZodNumber;
|
|
@@ -48,6 +75,34 @@ export declare const catalogModelSchema: z.ZodObject<{
|
|
|
48
75
|
deprecated: "deprecated";
|
|
49
76
|
}>>;
|
|
50
77
|
}, z.core.$loose>;
|
|
78
|
+
/**
|
|
79
|
+
* One model entry as it is stored in the vendored catalog and as models.dev publishes it.
|
|
80
|
+
*
|
|
81
|
+
* Every field is optional, so an entry that carries only `name` still parses. Reading a value
|
|
82
|
+
* therefore means handling `undefined` at each level — `model.cost?.cache_read`, not
|
|
83
|
+
* `model.cost.cache_read`. Field names are models.dev's own snake_case, kept verbatim so the
|
|
84
|
+
* refresh script can copy `api.json` across without renaming.
|
|
85
|
+
*
|
|
86
|
+
* The schema is loose rather than strict: unknown keys survive parsing and stay on the returned
|
|
87
|
+
* object instead of being rejected or dropped. That is what lets models.dev add a field without
|
|
88
|
+
* breaking the loader — the cost is that a typo in a key name parses silently, so a caller
|
|
89
|
+
* cannot use "it parsed" as evidence that a field it expected was present.
|
|
90
|
+
*
|
|
91
|
+
* `structured_output` and `cache_control` are theokit's own additions; models.dev publishes
|
|
92
|
+
* neither.
|
|
93
|
+
*/
|
|
51
94
|
export type CatalogModel = z.infer<typeof catalogModelSchema>;
|
|
95
|
+
/**
|
|
96
|
+
* Per-token pricing for one model, in USD per 1M tokens (models.dev's unit — not per token, and
|
|
97
|
+
* not per 1K).
|
|
98
|
+
*
|
|
99
|
+
* `input` and `output` are required and non-negative; the two cache buckets are optional and
|
|
100
|
+
* absent for models that do not price caching separately. Absent is not zero: a missing
|
|
101
|
+
* `cache_read` means the catalog says nothing about the cost of a cache hit, so a caller that
|
|
102
|
+
* defaults it to 0 is asserting free cache reads on its own authority.
|
|
103
|
+
*
|
|
104
|
+
* Like `CatalogModel`, the shape is loose — unknown pricing keys published upstream are kept on
|
|
105
|
+
* the parsed value.
|
|
106
|
+
*/
|
|
52
107
|
export type CatalogModelCost = z.infer<typeof costSchema>;
|
|
53
108
|
export {};
|
|
@@ -1,4 +1,21 @@
|
|
|
1
1
|
import { getCatalogModelInfo } from "./catalog-loader.js";
|
|
2
|
+
/**
|
|
3
|
+
* Arguments to `refreshModelCatalog`, the SDK's only network trigger for model metadata.
|
|
4
|
+
*
|
|
5
|
+
* `url` wins over the `THEOKIT_MODELS_URL` environment variable, which in turn wins over
|
|
6
|
+
* `https://models.dev/api.json`. A non-default URL gets its own cache file, named by a hash of
|
|
7
|
+
* the URL, so switching sources never reads another source's cache.
|
|
8
|
+
*
|
|
9
|
+
* `force` skips only the freshness check — it does not skip the kill switch. When
|
|
10
|
+
* `THEOKIT_DISABLE_MODELS_FETCH` is set to anything other than an empty string, `"0"` or
|
|
11
|
+
* `"false"`, the call returns `source: "skipped"` with no fetch and no cache read, whatever
|
|
12
|
+
* `force` says.
|
|
13
|
+
*
|
|
14
|
+
* Without `force`, a cache file whose mtime is under an hour old is served directly and no
|
|
15
|
+
* request is made.
|
|
16
|
+
*
|
|
17
|
+
* `deps` exists so tests can drive the fetch and the clock; production leaves it unset.
|
|
18
|
+
*/
|
|
2
19
|
export interface RefreshModelCatalogOptions {
|
|
3
20
|
/** Override the source URL (`THEOKIT_MODELS_URL` env also honored). */
|
|
4
21
|
url?: string;
|
|
@@ -10,6 +27,25 @@ export interface RefreshModelCatalogOptions {
|
|
|
10
27
|
now?: () => number;
|
|
11
28
|
};
|
|
12
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* What `refreshModelCatalog` did. It never throws on a failed refresh, so this is the only place
|
|
32
|
+
* the outcome is reported.
|
|
33
|
+
*
|
|
34
|
+
* `source` is `"network"` only when a request succeeded, its body parsed as JSON, and the models
|
|
35
|
+
* were patched in. Every failure path — kill switch aside — returns `"cache"`: an HTTP error
|
|
36
|
+
* after retries, a timeout, an unparseable body, or a patch that threw. `"cache"` therefore means
|
|
37
|
+
* "serving what was already there", which may be a fresh cache, a stale one, or nothing but the
|
|
38
|
+
* vendored catalog. Read `models` to tell those apart. `"skipped"` means the kill switch was set.
|
|
39
|
+
*
|
|
40
|
+
* `models` counts the models patched into the index during this call, not the catalog's size. It
|
|
41
|
+
* counts each model once even when the provider has aliases and the model is written under several
|
|
42
|
+
* index keys, and it excludes models whose payload failed schema validation and models under
|
|
43
|
+
* providers the SDK does not know. It is 0 whenever there was no cache to fall back on, and 0 for
|
|
44
|
+
* `"skipped"`.
|
|
45
|
+
*
|
|
46
|
+
* A cache write that fails is logged and otherwise ignored: the result can still say `"network"`
|
|
47
|
+
* with the data live in memory and nothing on disk.
|
|
48
|
+
*/
|
|
13
49
|
export interface RefreshModelCatalogResult {
|
|
14
50
|
/** Where the data came from: a fresh network fetch, the still-fresh disk cache, or skipped entirely. */
|
|
15
51
|
source: "network" | "cache" | "skipped";
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #364 — how deep the current delegation chain already is, delivered through the CALL.
|
|
3
|
+
*
|
|
4
|
+
* ## The bug this replaces
|
|
5
|
+
*
|
|
6
|
+
* `maxDelegationDepth` was checked once, at tool-CONSTRUCTION time, against a `_parentDepth`
|
|
7
|
+
* argument that nothing in the SDK ever incremented. Constructing a tool says nothing about how
|
|
8
|
+
* deep it will later be invoked, so with the documented call — `SubAgent.create(spec)` — the test
|
|
9
|
+
* was `1 > maxDepth`, false for every spec that did not ask for depth 0. A subagent whose tools
|
|
10
|
+
* include another subagent recursed unbounded, which is precisely what the guard exists to stop.
|
|
11
|
+
* The only path that ever tripped it was a caller threading the number by hand.
|
|
12
|
+
*
|
|
13
|
+
* ## Why the async scope closes it
|
|
14
|
+
*
|
|
15
|
+
* Depth is a property of the RUN, not of the object. A child's run loop — and therefore every tool
|
|
16
|
+
* it dispatches — executes inside the async continuation of its parent's handler, so a value
|
|
17
|
+
* published on that context is exactly what a nested dispatch needs to read. This is the same seam
|
|
18
|
+
* `subagent-credentials.ts` uses, and for the same reason: what survives every layer that rebuilds
|
|
19
|
+
* a tool object is the call, never the object.
|
|
20
|
+
*
|
|
21
|
+
* It is kept in its own module rather than folded into the credentials payload because depth is a
|
|
22
|
+
* separate concern with a separate lifetime — the credentials scope is opened once per run by the
|
|
23
|
+
* run loop, while depth is opened per delegation by the dispatching tool.
|
|
24
|
+
*
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
export {};
|
|
@@ -32,4 +32,36 @@
|
|
|
32
32
|
*
|
|
33
33
|
* @internal
|
|
34
34
|
*/
|
|
35
|
-
|
|
35
|
+
import type { ModelSelection } from "../../../types/agent-prims.js";
|
|
36
|
+
import type { Plugin } from "../../plugins/types.js";
|
|
37
|
+
/**
|
|
38
|
+
* Credentials a parent agent hands down to its subagent tools so the child inherits the parent's
|
|
39
|
+
* auth (and, absent an explicit `spec.model`, its model).
|
|
40
|
+
*
|
|
41
|
+
* Declared here rather than in `a2a/subagent.ts` so the delivery mechanism owns the payload shape
|
|
42
|
+
* and the dependency runs one way (`a2a/subagent` -> this module). `a2a/subagent.ts` briefly
|
|
43
|
+
* re-exported it "for back-compat"; knip proved there was no back-compat surface to preserve — the
|
|
44
|
+
* type was never in the public barrel nor the exports map — so the re-export was deleted.
|
|
45
|
+
*
|
|
46
|
+
* Emitted rather than erased: `a2a/subagent.d.ts` imports it by name, and that entry IS published,
|
|
47
|
+
* so erasing this declaration ships a `.d.ts` that does not compile. Not being in the exports map
|
|
48
|
+
* is what keeps it out of the semver contract; erasure is not what does that.
|
|
49
|
+
*/
|
|
50
|
+
export interface InheritedCredentials {
|
|
51
|
+
readonly apiKey?: string;
|
|
52
|
+
readonly model?: ModelSelection;
|
|
53
|
+
/**
|
|
54
|
+
* The parent's shell-sandbox posture (`local.sandboxOptions.enabled`), handed down so a delegated
|
|
55
|
+
* child of a sandboxed parent stays sandboxed unless its role explicitly opts out. Without this a
|
|
56
|
+
* child ran unsandboxed whenever its role omitted `sandbox` — a default-open the sandbox wiring
|
|
57
|
+
* exists to prevent.
|
|
58
|
+
*/
|
|
59
|
+
readonly sandbox?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* #55 — the parent's code-registered plugins (e.g. a `PermissionPlugin`) handed down so the child
|
|
62
|
+
* runs under the SAME policy. Without this, a delegated child's inner tool calls escape the
|
|
63
|
+
* parent's argument-level permission gate. First-party delegation path only — never exposed to
|
|
64
|
+
* third-party tool `ctx`.
|
|
65
|
+
*/
|
|
66
|
+
readonly plugins?: readonly Plugin[];
|
|
67
|
+
}
|
|
@@ -12,7 +12,22 @@
|
|
|
12
12
|
*
|
|
13
13
|
* @internal
|
|
14
14
|
*/
|
|
15
|
+
import type { AggregatorSource } from "./context-aggregator.js";
|
|
15
16
|
import { type DiscoverySpec } from "./context-discovery.js";
|
|
17
|
+
/**
|
|
18
|
+
* Input to the context-discovery run: where to walk, how much of each file to keep, and which
|
|
19
|
+
* trust boundary an `@import` may not cross.
|
|
20
|
+
*
|
|
21
|
+
* `cwd` and `maxBytesPerFile` are required because neither has a safe default — an unset root walks
|
|
22
|
+
* the wrong tree, and an unset cap lets one large file consume the context window.
|
|
23
|
+
*
|
|
24
|
+
* `importRoot` is the field to reach for when the caller's trust boundary is narrower than the
|
|
25
|
+
* repository. Left unset, the repository IS the boundary (`gitRoot ?? cwd`), which is the honest
|
|
26
|
+
* default for a document found by walking the repository — but it does mean an `@import` can pull
|
|
27
|
+
* in any file the repo contains.
|
|
28
|
+
*
|
|
29
|
+
* @public — re-exported from '@theokit/sdk/context', and therefore under semver.
|
|
30
|
+
*/
|
|
16
31
|
export interface DiscoveryRunnerOptions {
|
|
17
32
|
/** Workspace root passed to all discovery scopes. */
|
|
18
33
|
readonly cwd: string;
|
|
@@ -34,3 +49,32 @@ export interface DiscoveryRunnerOptions {
|
|
|
34
49
|
*/
|
|
35
50
|
readonly importRoot?: string;
|
|
36
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Find, read and parse every context file the specs describe, and return them ready for the
|
|
54
|
+
* aggregator.
|
|
55
|
+
*
|
|
56
|
+
* Specs are processed in the order given — `opts.specs` when supplied, otherwise
|
|
57
|
+
* `DEFAULT_DISCOVERY_SPECS` — and within a spec, in the order its scope resolves paths. The
|
|
58
|
+
* returned array carries `priority` on each source; it is NOT sorted here, so the aggregator is
|
|
59
|
+
* what applies the ordering.
|
|
60
|
+
*
|
|
61
|
+
* A path already emitted is skipped, across specs as well as within one. Paths arrive resolved
|
|
62
|
+
* through `realpath`, so two specs pointing at the same physical file through a symlink produce
|
|
63
|
+
* one source rather than two.
|
|
64
|
+
*
|
|
65
|
+
* Missing and unreadable files are not errors: a file that does not exist is simply not matched,
|
|
66
|
+
* and one that fails to read or parse is dropped and the run continues. A frontmatter file whose
|
|
67
|
+
* activation conditions do not hold — `enabled: false`, or a scope that no touched file matches —
|
|
68
|
+
* is dropped the same way. So a shorter result than expected means "nothing qualified", and this
|
|
69
|
+
* function will not tell you which of those it was.
|
|
70
|
+
*
|
|
71
|
+
* Reads the filesystem and nothing else. No network, no writes, and no mutation of `opts`.
|
|
72
|
+
*
|
|
73
|
+
* Privacy: `<source name="">` is built from the path RELATIVE to the git root (or `cwd` when
|
|
74
|
+
* there is no git root), never an absolute path, so a home directory never reaches the prompt.
|
|
75
|
+
* `@import` resolution is bounded by `opts.importRoot`, defaulting to that same root — a document
|
|
76
|
+
* cannot pull in a file from outside the repository.
|
|
77
|
+
*
|
|
78
|
+
* @public — re-exported from `@theokit/sdk/context`, and therefore under semver.
|
|
79
|
+
*/
|
|
80
|
+
export declare function runDiscovery(opts: DiscoveryRunnerOptions): Promise<AggregatorSource[]>;
|
|
@@ -19,3 +19,61 @@
|
|
|
19
19
|
export type DiscoveryScope = "cwd-only" | "git-root-walk" | "globbed";
|
|
20
20
|
/** Parser to apply once file is read. */
|
|
21
21
|
export type DiscoveryParser = "plain-markdown" | "mdc" | "frontmatter-zod" | "rules-frontmatter";
|
|
22
|
+
/**
|
|
23
|
+
* One kind of context file the runner knows how to find and read. The shipped registry is
|
|
24
|
+
* `DEFAULT_DISCOVERY_SPECS`; a caller supplies its own array to change the set.
|
|
25
|
+
*
|
|
26
|
+
* `scope` decides how `pattern` is used and how many files a single spec can yield:
|
|
27
|
+
* `cwd-only` looks for one path and stops, `git-root-walk` collects a match in every directory
|
|
28
|
+
* from `cwd` up to the git root (nearest first), and `globbed` expands `pattern` as a glob
|
|
29
|
+
* relative to `cwd`. So `pattern` is a filename for the first two and a glob for the third —
|
|
30
|
+
* putting a glob on a walk scope silently finds nothing.
|
|
31
|
+
*
|
|
32
|
+
* `priority` orders the merged prompt, ascending, and is a plain number rather than an index, so
|
|
33
|
+
* a new spec can be slotted between two existing ones. Lower means earlier and therefore more
|
|
34
|
+
* general; later content wins on conflict.
|
|
35
|
+
*
|
|
36
|
+
* `parser` must match the file format — `plain-markdown` reads the whole file, `mdc` and
|
|
37
|
+
* `rules-frontmatter` parse frontmatter and can DECLINE the file when its activation conditions
|
|
38
|
+
* do not hold, and `frontmatter-zod` is the legacy path the runner currently skips entirely.
|
|
39
|
+
*
|
|
40
|
+
* `followImports` is honored only by `plain-markdown`, and turns `@path` directives in the body
|
|
41
|
+
* into inlined content bounded by the import root. Setting it on a frontmatter parser does
|
|
42
|
+
* nothing.
|
|
43
|
+
*
|
|
44
|
+
* `id` names the source in `<source name="">` and in telemetry. When one spec matches files in
|
|
45
|
+
* several directories, the runner suffixes it with the path relative to the git root to keep them
|
|
46
|
+
* apart.
|
|
47
|
+
*
|
|
48
|
+
* @public — re-exported from `@theokit/sdk/context`, and therefore under semver.
|
|
49
|
+
*/
|
|
50
|
+
export interface DiscoverySpec {
|
|
51
|
+
/** Stable identifier — used as `<source name="">` and telemetry key. */
|
|
52
|
+
readonly id: string;
|
|
53
|
+
/** Priority for merge (lower = earlier in prompt). */
|
|
54
|
+
readonly priority: number;
|
|
55
|
+
/** Filename (cwd-only/git-root-walk) or glob (globbed). */
|
|
56
|
+
readonly pattern: string;
|
|
57
|
+
readonly scope: DiscoveryScope;
|
|
58
|
+
readonly parser: DiscoveryParser;
|
|
59
|
+
/** Whether to follow `@path` import directives (CLAUDE.md / GEMINI.md). */
|
|
60
|
+
readonly followImports: boolean;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The context files theokit looks for out of the box, in the order they are concatenated.
|
|
64
|
+
*
|
|
65
|
+
* Two things follow from the ordering. `AGENTS.md` comes first at priority 10 and `THEO.md` last,
|
|
66
|
+
* so theokit-specific instruction wins over the vendor-neutral file on conflict. And the array is
|
|
67
|
+
* consumed in the order written — the runner does not re-sort it — so a caller passing its own
|
|
68
|
+
* array is responsible for keeping `priority` and array position consistent.
|
|
69
|
+
*
|
|
70
|
+
* `CLAUDE.md` and `GEMINI.md` are the only two entries with `followImports: true`, which means
|
|
71
|
+
* they are the only files whose `@path` directives pull other files into the prompt. Those
|
|
72
|
+
* imports cannot escape the import root.
|
|
73
|
+
*
|
|
74
|
+
* Frozen only by type: `ReadonlyArray` is a compile-time constraint, and the array and its
|
|
75
|
+
* elements are not deep-frozen at runtime. Build a new array rather than mutating this one.
|
|
76
|
+
*
|
|
77
|
+
* @public — re-exported from `@theokit/sdk/context`, and therefore under semver.
|
|
78
|
+
*/
|
|
79
|
+
export declare const DEFAULT_DISCOVERY_SPECS: ReadonlyArray<DiscoverySpec>;
|
|
@@ -21,10 +21,79 @@
|
|
|
21
21
|
*
|
|
22
22
|
* Glob + YAML subset are shared with the MDC parser (DRY, no new dependency).
|
|
23
23
|
*
|
|
24
|
-
*
|
|
24
|
+
* NOTE — no internal-visibility tag in this block. `tsconfig.base.json` sets `stripInternal: true`,
|
|
25
|
+
* and TypeScript scans EVERY leading comment range of the declaration that follows, including the
|
|
26
|
+
* import right below this one. The tag that used to sit here deleted that import from the emitted
|
|
27
|
+
* `.d.ts`, leaving the types it binds unresolvable for any consumer running type-aware lint
|
|
28
|
+
* (usetheodev/theokit-sdk#283 records the same trap on a declaration).
|
|
25
29
|
*/
|
|
30
|
+
import { z } from "zod";
|
|
31
|
+
/**
|
|
32
|
+
* YAML frontmatter schema for `.theokit/rules/*.md` files.
|
|
33
|
+
*
|
|
34
|
+
* Every field is optional, and unknown keys are dropped rather than rejected — `safeParse` failing
|
|
35
|
+
* therefore means a declared key had the wrong TYPE (`paths` as a bare string, `enabled` as the
|
|
36
|
+
* string `"false"`), never that an unexpected key was present.
|
|
37
|
+
*
|
|
38
|
+
* Exported because {@link RulesFrontmatter} is inferred from it and appears in the signature of
|
|
39
|
+
* {@link shouldActivateRule}, which `@theokit/sdk/context` publishes: the constant has to reach the
|
|
40
|
+
* emitted declarations for that inferred type to resolve in a consumer's project.
|
|
41
|
+
*/
|
|
42
|
+
export declare const RulesFrontmatterSchema: z.ZodObject<{
|
|
43
|
+
description: z.ZodOptional<z.ZodString>;
|
|
44
|
+
paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
45
|
+
globs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
46
|
+
alwaysApply: z.ZodOptional<z.ZodBoolean>;
|
|
47
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
48
|
+
}, z.core.$strip>;
|
|
26
49
|
export type RulesFrontmatter = z.infer<typeof RulesFrontmatterSchema>;
|
|
27
50
|
export interface RulesParseResult {
|
|
28
51
|
readonly frontmatter: RulesFrontmatter;
|
|
29
52
|
readonly body: string;
|
|
30
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Split a `.theokit/rules/*.md` document into its frontmatter and its body.
|
|
56
|
+
*
|
|
57
|
+
* A file with no `---` fence is not an error: the whole text becomes the body and the frontmatter
|
|
58
|
+
* is synthesised as `{ alwaysApply: true }`, so a plain markdown rule with no metadata applies
|
|
59
|
+
* unconditionally. That default is the one thing to know before adding a fence — adding one and
|
|
60
|
+
* omitting both `alwaysApply` and a path pattern turns an always-on rule into a dormant one.
|
|
61
|
+
*
|
|
62
|
+
* `undefined` means the fence was there and its contents did not survive: YAML the lite parser
|
|
63
|
+
* could not read, or a shape the schema rejected (`paths` as a bare string rather than a list,
|
|
64
|
+
* `enabled` as `"false"` rather than `false`). It never throws, and it does not say WHICH of the
|
|
65
|
+
* two happened — the caller drops the file and counts it.
|
|
66
|
+
*
|
|
67
|
+
* Unknown frontmatter keys are dropped rather than rejected, so a misspelled `alwaysAply` parses
|
|
68
|
+
* fine and simply has no effect.
|
|
69
|
+
*
|
|
70
|
+
* Nothing here decides whether the rule applies; that is `shouldActivateRule`.
|
|
71
|
+
*
|
|
72
|
+
* @public — re-exported from `@theokit/sdk/context`, and therefore under semver.
|
|
73
|
+
*/
|
|
74
|
+
export declare function parseRules(content: string): RulesParseResult | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* Decide whether a parsed rule applies to this turn, given the files in scope.
|
|
77
|
+
*
|
|
78
|
+
* Checked in strict order, first match wins:
|
|
79
|
+
*
|
|
80
|
+
* 1. `enabled: false` — never applies, whatever else the frontmatter says. This overrides
|
|
81
|
+
* `alwaysApply: true`, which is the point of having it.
|
|
82
|
+
* 2. `alwaysApply: true` — applies, and `inScopePaths` is not consulted.
|
|
83
|
+
* 3. otherwise — applies only if some pattern from `paths` or `globs` matches some path in
|
|
84
|
+
* `inScopePaths`. The two lists are a union, not alternatives; `globs` exists for
|
|
85
|
+
* Cursor compatibility and behaves identically.
|
|
86
|
+
*
|
|
87
|
+
* A scoped rule with an EMPTY `inScopePaths` never applies. That is the case worth planning for:
|
|
88
|
+
* `contextPaths` is empty on a plain `agent.send()`, so a rule scoped by path stays dormant until
|
|
89
|
+
* the caller declares which files the turn is about. It is quiet — a dormant rule looks exactly
|
|
90
|
+
* like a rule that was never written.
|
|
91
|
+
*
|
|
92
|
+
* A rule with a fence but no patterns and no `alwaysApply` also never applies, since step 3 has
|
|
93
|
+
* nothing to match.
|
|
94
|
+
*
|
|
95
|
+
* `description` is not consulted. It is a note for humans, not an activation condition.
|
|
96
|
+
*
|
|
97
|
+
* @public — re-exported from `@theokit/sdk/context`, and therefore under semver.
|
|
98
|
+
*/
|
|
99
|
+
export declare function shouldActivateRule(fm: RulesFrontmatter, inScopePaths: ReadonlyArray<string>): boolean;
|
|
@@ -13,4 +13,18 @@
|
|
|
13
13
|
*
|
|
14
14
|
* @internal
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
/**
|
|
17
|
+
* The provider credentials `shouldUseRealLocalRuntime` consults by name.
|
|
18
|
+
*
|
|
19
|
+
* Exported so the "Missing API key" refusal can name the ones the caller actually set (#338 item
|
|
20
|
+
* 5). The list used to live only inside the predicate below, which meant a caller with
|
|
21
|
+
* `OPENROUTER_API_KEY` set and `THEOKIT_API_KEY` unset was refused by a message naming neither —
|
|
22
|
+
* the SDK checks this exact variable a few lines down to decide the runtime, so the environment
|
|
23
|
+
* looks configured to the person who set it up. Reported as a three-hour diagnosis.
|
|
24
|
+
*
|
|
25
|
+
* One list, two readers: a variable added here is recognised by the predicate AND named by the
|
|
26
|
+
* error on the same commit, which is the only way the two stay in step.
|
|
27
|
+
*/
|
|
28
|
+
export declare const PROVIDER_CREDENTIAL_ENV_VARS: readonly string[];
|
|
29
|
+
/** Those of {@link PROVIDER_CREDENTIAL_ENV_VARS} that are non-empty in this process. */
|
|
30
|
+
export declare function presentProviderCredentialEnvVars(): readonly string[];
|
|
@@ -1 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Post-run side effects executed inside the per-agent send mutex (ADR D19):
|
|
3
|
+
*
|
|
4
|
+
* 1. Persist the assistant turn to the per-agent JSONL (ADR D18).
|
|
5
|
+
* 2. On status=finished, write a session-summary markdown for the
|
|
6
|
+
* `corpus="sessions"` memory_search index (ADR D20).
|
|
7
|
+
* 3. Fire the `postRun` hook with the resolved status.
|
|
8
|
+
* 4. Flush pending session writes so dispose() never races the writer.
|
|
9
|
+
*
|
|
10
|
+
* Errors are swallowed at the call site so `agent.send()` callers observe
|
|
11
|
+
* failures through their own `run.wait()` / `stream()` surfaces. Mutex release
|
|
12
|
+
* is guaranteed via the final `flushSessionWrites` even on the cancelled path.
|
|
13
|
+
*
|
|
14
|
+
* Extracted from LocalAgent to keep that class under the G8 LoC budget.
|
|
15
|
+
*/
|
|
1
16
|
export declare function runPostRunLifecycle(inputs: PostRunLifecycleInputs): Promise<void>;
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Persistent agent registry (ADR D17).
|
|
3
|
+
*
|
|
4
|
+
* Per-cwd JSON file at `.theokit/agents/registry.json`. Atomic writes via
|
|
5
|
+
* `replaceFileAtomic`. Secrets in `options` are stripped before persisting
|
|
6
|
+
* (D17 + reuses the cloud-config-serializer allow-list philosophy).
|
|
7
|
+
*
|
|
8
|
+
* Multi-process write race is the documented limitation: one SDK process per
|
|
9
|
+
* cwd (EC-10).
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
1
13
|
import type { ModelSelection } from "../../../types/agent-prims.js";
|
|
2
14
|
export interface SerializedAgentOptions {
|
|
3
15
|
name?: string;
|
|
@@ -19,6 +19,20 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import type { SDKAgent } from "../../../types/agent.js";
|
|
21
21
|
export type EvictReason = "lru" | "idle" | "explicit";
|
|
22
|
+
/**
|
|
23
|
+
* Knobs for {@link LiveAgentRegistry.configure}.
|
|
24
|
+
*
|
|
25
|
+
* The three numeric fields are a partial reconfigure — one left out keeps its current value.
|
|
26
|
+
* `onEvict` is NOT: it is assigned on every call, so `configure({ maxAgents: 200 })` clears a
|
|
27
|
+
* listener registered earlier. Re-pass the listener whenever you reconfigure.
|
|
28
|
+
*
|
|
29
|
+
* Two values are load-bearing zeroes. `maxAgents: 0` disables caching entirely, so every lookup
|
|
30
|
+
* misses and every agent is rebuilt; `idleTimeoutMs: 0` keeps the cache but leaves LRU as the only
|
|
31
|
+
* eviction, because the sweep is not started at all below that threshold. Negative numbers are
|
|
32
|
+
* clamped rather than rejected — up to 1000ms for `sweepIntervalMs`, up to 0 for the other two.
|
|
33
|
+
*
|
|
34
|
+
* @public
|
|
35
|
+
*/
|
|
22
36
|
export interface AgentRegistryOptions {
|
|
23
37
|
/**
|
|
24
38
|
* Maximum number of agents kept alive simultaneously. LRU eviction when
|
|
@@ -45,6 +59,29 @@ export interface AgentRegistryOptions {
|
|
|
45
59
|
*/
|
|
46
60
|
onEvict?: (id: string, reason: EvictReason) => void;
|
|
47
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* An LRU-plus-idle cache of live `SDKAgent` instances, reached through `Agent.registry`.
|
|
64
|
+
*
|
|
65
|
+
* It exists for long-running servers that would otherwise build a fresh agent per conversation and
|
|
66
|
+
* never release one. Do not confuse it with the metadata registry in `agent-registry.ts`, which
|
|
67
|
+
* persists `RegisteredAgent` records to disk: that one is the address book, this one is the live
|
|
68
|
+
* cache, and they share nothing.
|
|
69
|
+
*
|
|
70
|
+
* The lifecycle rule that matters to callers: eviction — by LRU, by idle timeout, or by an explicit
|
|
71
|
+
* `evict` — calls `dispose()` on the agent. A reference you held onto before eviction is a disposed
|
|
72
|
+
* agent, not a detached one. `get` counts as a use and refreshes the entry's timestamp, so polling
|
|
73
|
+
* for an agent keeps it alive indefinitely.
|
|
74
|
+
*
|
|
75
|
+
* Idle eviction depends on a background sweep that only `configure` starts. A registry nobody
|
|
76
|
+
* configured caches with the documented defaults but evicts by LRU alone, so entries can sit past
|
|
77
|
+
* `idleTimeoutMs` indefinitely; call `configure` — even with no changes — to arm the sweep.
|
|
78
|
+
*
|
|
79
|
+
* Failures on the eviction path are swallowed and reported to the diagnostics channel — a throwing
|
|
80
|
+
* `dispose()` or a throwing `onEvict` listener must not stop the sweep. Configuration is
|
|
81
|
+
* process-wide and last-call-wins.
|
|
82
|
+
*
|
|
83
|
+
* @public
|
|
84
|
+
*/
|
|
48
85
|
export declare class LiveAgentRegistry {
|
|
49
86
|
#private;
|
|
50
87
|
/**
|
|
@@ -6,8 +6,13 @@
|
|
|
6
6
|
* structured judge prompt, parses score from the response. Returns 0 (with
|
|
7
7
|
* diagnostic reason) on any parse failure.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* NOTE — no internal-visibility tag in this block. `tsconfig.base.json` sets `stripInternal: true`,
|
|
10
|
+
* and TypeScript scans EVERY leading comment range of the declaration that follows, including the
|
|
11
|
+
* import right below this one. The tag that used to sit here deleted that import from the emitted
|
|
12
|
+
* `.d.ts`, leaving the types it binds unresolvable for any consumer running type-aware lint
|
|
13
|
+
* (usetheodev/theokit-sdk#283 records the same trap on a declaration).
|
|
10
14
|
*/
|
|
15
|
+
import type { ModelSelection } from "../../types/agent.js";
|
|
11
16
|
import type { Score } from "../../types/eval.js";
|
|
12
17
|
import type { ProviderRoutingSettings } from "../../types/providers.js";
|
|
13
18
|
export interface LlmJudgeOptions {
|
|
@@ -1,52 +1,53 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
require('../../chunk-MUUQ2WFJ.cjs');
|
|
4
|
-
var
|
|
4
|
+
var chunkR3UPQFKK_cjs = require('../../chunk-R3UPQFKK.cjs');
|
|
5
5
|
require('../../chunk-VKJ7V7EB.cjs');
|
|
6
|
-
require('../../chunk-
|
|
7
|
-
var
|
|
6
|
+
require('../../chunk-K3FW2XZD.cjs');
|
|
7
|
+
var chunkJTB5Q42C_cjs = require('../../chunk-JTB5Q42C.cjs');
|
|
8
|
+
require('../../chunk-NUKRL3I6.cjs');
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
Object.defineProperty(exports, "ForbiddenPathError", {
|
|
12
13
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkR3UPQFKK_cjs.ForbiddenPathError; }
|
|
14
15
|
});
|
|
15
16
|
Object.defineProperty(exports, "PathTraversalError", {
|
|
16
17
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkR3UPQFKK_cjs.PathTraversalError; }
|
|
18
19
|
});
|
|
19
20
|
Object.defineProperty(exports, "assertNoSymlinkEscape", {
|
|
20
21
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
22
|
+
get: function () { return chunkR3UPQFKK_cjs.assertNoSymlinkEscape; }
|
|
22
23
|
});
|
|
23
24
|
Object.defineProperty(exports, "isForbiddenPath", {
|
|
24
25
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
26
|
+
get: function () { return chunkR3UPQFKK_cjs.isForbiddenPath; }
|
|
26
27
|
});
|
|
27
28
|
Object.defineProperty(exports, "safePathJoin", {
|
|
28
29
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
30
|
+
get: function () { return chunkR3UPQFKK_cjs.safePathJoin; }
|
|
30
31
|
});
|
|
31
32
|
Object.defineProperty(exports, "sanitizeIdentifier", {
|
|
32
33
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
34
|
+
get: function () { return chunkR3UPQFKK_cjs.sanitizeIdentifier; }
|
|
34
35
|
});
|
|
35
36
|
Object.defineProperty(exports, "validateArtifactPath", {
|
|
36
37
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
38
|
+
get: function () { return chunkR3UPQFKK_cjs.validateArtifactPath; }
|
|
38
39
|
});
|
|
39
40
|
Object.defineProperty(exports, "addPattern", {
|
|
40
41
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
42
|
+
get: function () { return chunkJTB5Q42C_cjs.addPattern; }
|
|
42
43
|
});
|
|
43
44
|
Object.defineProperty(exports, "maskToken", {
|
|
44
45
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
46
|
+
get: function () { return chunkJTB5Q42C_cjs.maskToken; }
|
|
46
47
|
});
|
|
47
48
|
Object.defineProperty(exports, "redactSecrets", {
|
|
48
49
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
50
|
+
get: function () { return chunkJTB5Q42C_cjs.redactSecrets; }
|
|
50
51
|
});
|
|
51
52
|
//# sourceMappingURL=index.cjs.map
|
|
52
53
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -6,6 +6,9 @@
|
|
|
6
6
|
* `internal/runtime/agent-session-store.ts`,
|
|
7
7
|
* `internal/memory/migrate-sqlite-to-lance.ts`.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* Semver-exempt: the `@theokit/sdk/internal/security` sub-path exists for packages extracted out of
|
|
10
|
+
* this one and is NOT covered by the package's semver contract. It IS declared in `package.json`
|
|
11
|
+
* `exports`, so every name below must survive into the published declarations.
|
|
10
12
|
*/
|
|
13
|
+
export { assertNoSymlinkEscape, ForbiddenPathError, isForbiddenPath, PathTraversalError, safePathJoin, sanitizeIdentifier, validateArtifactPath, } from "./path-guard.js";
|
|
11
14
|
export { addPattern, maskToken, redactSecrets } from "./redact.js";
|
|
@@ -6,6 +6,9 @@
|
|
|
6
6
|
* `internal/runtime/agent-session-store.ts`,
|
|
7
7
|
* `internal/memory/migrate-sqlite-to-lance.ts`.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* Semver-exempt: the `@theokit/sdk/internal/security` sub-path exists for packages extracted out of
|
|
10
|
+
* this one and is NOT covered by the package's semver contract. It IS declared in `package.json`
|
|
11
|
+
* `exports`, so every name below must survive into the published declarations.
|
|
10
12
|
*/
|
|
13
|
+
export { assertNoSymlinkEscape, ForbiddenPathError, isForbiddenPath, PathTraversalError, safePathJoin, sanitizeIdentifier, validateArtifactPath, } from "./path-guard.js";
|
|
11
14
|
export { addPattern, maskToken, redactSecrets } from "./redact.js";
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import '../../chunk-FD2UT76F.js';
|
|
2
|
-
export { ForbiddenPathError, PathTraversalError, assertNoSymlinkEscape, isForbiddenPath, safePathJoin, sanitizeIdentifier, validateArtifactPath } from '../../chunk-
|
|
2
|
+
export { ForbiddenPathError, PathTraversalError, assertNoSymlinkEscape, isForbiddenPath, safePathJoin, sanitizeIdentifier, validateArtifactPath } from '../../chunk-QARJGQSA.js';
|
|
3
3
|
import '../../chunk-RIAM53CP.js';
|
|
4
|
-
import '../../chunk-
|
|
5
|
-
export { addPattern, maskToken, redactSecrets } from '../../chunk-
|
|
4
|
+
import '../../chunk-IDCKSLYH.js';
|
|
5
|
+
export { addPattern, maskToken, redactSecrets } from '../../chunk-T7XEKOVW.js';
|
|
6
|
+
import '../../chunk-T7O6K6PX.js';
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
|
7
8
|
//# sourceMappingURL=index.js.map
|