@theokit/sdk 4.53.0 → 4.54.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 +1096 -8
- package/LICENSE +2 -2
- package/README.md +14 -9
- package/bin/theokit-migrate-config.mjs +11 -2
- 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-BiCINq25.d.ts → agent-CIUgz7cN.d.cts} +211 -858
- package/dist/{agent-Zta1kvGH.d.cts → agent-DSec-E0c.d.ts} +211 -858
- package/dist/agent-NOEGF4GI.cjs +61 -0
- package/dist/{agent-JX5SBYDE.cjs.map → agent-NOEGF4GI.cjs.map} +1 -1
- package/dist/agent-VGD5WL4N.js +52 -0
- package/dist/{agent-ZAGG6ZBS.js.map → agent-VGD5WL4N.js.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-JMU7ASDB.js.map → agent-session-store-P6V3FINW.js.map} +1 -1
- package/dist/agent-session-store-ZJ3JSRS4.cjs +24 -0
- package/dist/{agent-session-store-EPX2WQI4.cjs.map → agent-session-store-ZJ3JSRS4.cjs.map} +1 -1
- package/dist/agent.d.ts +25 -7
- package/dist/auth/index.cjs +53 -36
- package/dist/auth/index.cjs.map +1 -1
- package/dist/auth/index.d.cts +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.js +27 -10
- package/dist/auth/index.js.map +1 -1
- package/dist/{batch-NLIS4QTW.js → batch-2TGJMNCJ.js} +14 -13
- package/dist/batch-2TGJMNCJ.js.map +1 -0
- package/dist/{batch-WQ3AJCDV.cjs → batch-ND32UKZS.cjs} +31 -30
- package/dist/batch-ND32UKZS.cjs.map +1 -0
- package/dist/{chunk-TR4V2LHV.cjs → chunk-2ADR2GSO.cjs} +8 -8
- package/dist/chunk-2ADR2GSO.cjs.map +1 -0
- package/dist/{chunk-7HQVDLFI.cjs → chunk-2C72DXQF.cjs} +65 -27
- package/dist/chunk-2C72DXQF.cjs.map +1 -0
- package/dist/{chunk-DEZ75ET5.js → chunk-2D34UTDC.js} +21 -5
- package/dist/chunk-2D34UTDC.js.map +1 -0
- package/dist/{chunk-XGYI2KQH.js → chunk-2QKTVKH3.js} +4 -4
- package/dist/{chunk-XGYI2KQH.js.map → chunk-2QKTVKH3.js.map} +1 -1
- package/dist/{chunk-BBZYXVLZ.cjs → chunk-2ZPEDVLM.cjs} +2 -2
- package/dist/chunk-2ZPEDVLM.cjs.map +1 -0
- package/dist/{chunk-DHVNJYTO.js → chunk-3E77SX4H.js} +4 -4
- package/dist/{chunk-DHVNJYTO.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-3KGLRRFC.cjs +18 -0
- package/dist/chunk-3KGLRRFC.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-FUASIT3E.cjs → chunk-3YJNUKYN.cjs} +15 -15
- package/dist/{chunk-FUASIT3E.cjs.map → chunk-3YJNUKYN.cjs.map} +1 -1
- package/dist/{chunk-R7TKOQMJ.js → chunk-44JAAH4X.js} +3 -3
- package/dist/chunk-44JAAH4X.js.map +1 -0
- package/dist/{chunk-XRI6DXPZ.js → chunk-44MBDIHG.js} +4 -4
- package/dist/chunk-44MBDIHG.js.map +1 -0
- package/dist/{chunk-BXVSBYGW.js → chunk-4ERPXIVB.js} +5 -5
- package/dist/{chunk-BXVSBYGW.js.map → chunk-4ERPXIVB.js.map} +1 -1
- package/dist/{chunk-T6QUCG7L.cjs → chunk-4I55V454.cjs} +4 -4
- package/dist/chunk-4I55V454.cjs.map +1 -0
- 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-3YYDHUNH.cjs → chunk-53CBTBWO.cjs} +11 -11
- package/dist/{chunk-3YYDHUNH.cjs.map → chunk-53CBTBWO.cjs.map} +1 -1
- package/dist/{chunk-2QMK627M.cjs → chunk-5BJV5UPY.cjs} +27 -27
- package/dist/chunk-5BJV5UPY.cjs.map +1 -0
- package/dist/{chunk-OZXPA3ME.js → chunk-5JLFFPCH.js} +4 -4
- package/dist/{chunk-OZXPA3ME.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-EQMLJ52C.cjs → chunk-5UOVYM3P.cjs} +36 -31
- package/dist/chunk-5UOVYM3P.cjs.map +1 -0
- package/dist/{chunk-33L2NVTJ.cjs → chunk-5USCYPPI.cjs} +15 -15
- package/dist/chunk-5USCYPPI.cjs.map +1 -0
- package/dist/{chunk-I732VEDW.js → chunk-AEOZTXVW.js} +3 -3
- package/dist/{chunk-I732VEDW.js.map → chunk-AEOZTXVW.js.map} +1 -1
- package/dist/{chunk-5XXUYU3M.js → chunk-AG5JPQIY.js} +3 -3
- package/dist/{chunk-5XXUYU3M.js.map → chunk-AG5JPQIY.js.map} +1 -1
- package/dist/{chunk-3SHW7XKK.js → chunk-AGSBJD2L.js} +27 -29
- package/dist/chunk-AGSBJD2L.js.map +1 -0
- package/dist/{chunk-KZBB4YKU.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-UJ3SXRZZ.js → chunk-BMAZLQQ4.js} +3 -3
- package/dist/{chunk-UJ3SXRZZ.js.map → chunk-BMAZLQQ4.js.map} +1 -1
- package/dist/{chunk-NUEL6RCZ.cjs → chunk-BVZW2B5V.cjs} +4 -4
- package/dist/chunk-BVZW2B5V.cjs.map +1 -0
- package/dist/{chunk-W4FV7JBH.js → chunk-CQ2TQ32Y.js} +4 -4
- package/dist/chunk-CQ2TQ32Y.js.map +1 -0
- package/dist/{chunk-NFATC6ZF.cjs → chunk-CQGYNZ3K.cjs} +4 -4
- package/dist/{chunk-NFATC6ZF.cjs.map → chunk-CQGYNZ3K.cjs.map} +1 -1
- package/dist/{chunk-3R4ZCQAZ.cjs → chunk-CTCGWIUD.cjs} +5 -5
- package/dist/{chunk-3R4ZCQAZ.cjs.map → chunk-CTCGWIUD.cjs.map} +1 -1
- package/dist/{chunk-HTK54K2J.js → chunk-CV7XMBHP.js} +4 -4
- package/dist/chunk-CV7XMBHP.js.map +1 -0
- package/dist/{chunk-NOS7PTKP.js → chunk-DAPSQZT4.js} +15 -10
- package/dist/chunk-DAPSQZT4.js.map +1 -0
- package/dist/{chunk-E3OCRJU6.cjs → chunk-DQKERTND.cjs} +11 -11
- package/dist/{chunk-E3OCRJU6.cjs.map → chunk-DQKERTND.cjs.map} +1 -1
- package/dist/{chunk-I5OTK2RP.js → chunk-DUIF54UP.js} +6 -6
- package/dist/chunk-DUIF54UP.js.map +1 -0
- package/dist/{chunk-C4EU627W.js → chunk-DZBSJX6J.js} +4 -4
- package/dist/{chunk-C4EU627W.js.map → chunk-DZBSJX6J.js.map} +1 -1
- package/dist/{chunk-ADVZIC43.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-RAACTJ7C.cjs → chunk-F3YZMOAU.cjs} +8 -8
- package/dist/{chunk-RAACTJ7C.cjs.map → chunk-F3YZMOAU.cjs.map} +1 -1
- package/dist/{chunk-KIX45IKP.js → chunk-F7AQV62G.js} +5 -4
- package/dist/chunk-F7AQV62G.js.map +1 -0
- package/dist/{chunk-2YWWPCGX.js → chunk-FXEUP75G.js} +10 -12
- package/dist/chunk-FXEUP75G.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-634YVZLU.js → chunk-GJ6RK75E.js} +5 -5
- package/dist/chunk-GJ6RK75E.js.map +1 -0
- package/dist/{chunk-Z5U2JGEK.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-BWGXYOBZ.cjs → chunk-GWC3HADL.cjs} +4 -4
- package/dist/{chunk-BWGXYOBZ.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-RTLUZKDL.cjs → chunk-HJBMA5MB.cjs} +11 -11
- package/dist/{chunk-RTLUZKDL.cjs.map → chunk-HJBMA5MB.cjs.map} +1 -1
- package/dist/{chunk-AM2CNBKE.js → chunk-HKCKOAIO.js} +2 -2
- package/dist/chunk-HKCKOAIO.js.map +1 -0
- package/dist/{chunk-PVBANCWU.cjs → chunk-HY57ULY2.cjs} +5 -5
- package/dist/{chunk-PVBANCWU.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-2CFEET3Y.cjs → chunk-I6TGFUCO.cjs} +4 -4
- package/dist/chunk-I6TGFUCO.cjs.map +1 -0
- package/dist/{chunk-HI4ZW62S.js → chunk-IDCKSLYH.js} +4 -4
- package/dist/chunk-IDCKSLYH.js.map +1 -0
- package/dist/{chunk-KNZU4YO5.cjs → chunk-ILCGLTSA.cjs} +4 -4
- package/dist/{chunk-KNZU4YO5.cjs.map → chunk-ILCGLTSA.cjs.map} +1 -1
- package/dist/{chunk-44IISBRZ.cjs → chunk-IWBGCBR6.cjs} +4 -4
- package/dist/{chunk-44IISBRZ.cjs.map → chunk-IWBGCBR6.cjs.map} +1 -1
- package/dist/{chunk-R3CKCRK3.cjs → chunk-J24VJOH3.cjs} +22 -6
- package/dist/chunk-J24VJOH3.cjs.map +1 -0
- package/dist/{chunk-ECPL5RV6.cjs → chunk-JHPGF3FP.cjs} +8 -8
- package/dist/{chunk-ECPL5RV6.cjs.map → chunk-JHPGF3FP.cjs.map} +1 -1
- package/dist/{chunk-SXSPMRSV.cjs → chunk-JTB5Q42C.cjs} +21 -19
- package/dist/chunk-JTB5Q42C.cjs.map +1 -0
- package/dist/{chunk-2YGIBOUH.cjs → chunk-K3FW2XZD.cjs} +9 -9
- package/dist/chunk-K3FW2XZD.cjs.map +1 -0
- package/dist/{chunk-6DCTL32L.cjs → chunk-NGESVVJN.cjs} +17 -17
- package/dist/chunk-NGESVVJN.cjs.map +1 -0
- package/dist/{chunk-MV4TOCUK.js → chunk-NLTVXLGT.js} +3 -3
- package/dist/{chunk-MV4TOCUK.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-ZSJPRPN7.js → chunk-OC4NTGMN.js} +3 -3
- package/dist/{chunk-ZSJPRPN7.js.map → chunk-OC4NTGMN.js.map} +1 -1
- package/dist/{chunk-K42QGAKM.cjs → chunk-P6A3M6VD.cjs} +10 -10
- package/dist/{chunk-K42QGAKM.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-2XLKLVVR.js → chunk-Q5EWJPRY.js} +2 -2
- package/dist/chunk-Q5EWJPRY.js.map +1 -0
- package/dist/{chunk-XWCTBGYK.js → chunk-QARJGQSA.js} +16 -7
- package/dist/chunk-QARJGQSA.js.map +1 -0
- package/dist/{chunk-EUBGGYPH.cjs → chunk-QDED6YO6.cjs} +5 -5
- package/dist/{chunk-EUBGGYPH.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-PLUCC4N5.js → chunk-QRSUA2CV.js} +3 -3
- package/dist/{chunk-PLUCC4N5.js.map → chunk-QRSUA2CV.js.map} +1 -1
- package/dist/{chunk-YTO5BRBD.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-BC5EUG7R.cjs → chunk-RM7Y65IG.cjs} +18 -20
- package/dist/chunk-RM7Y65IG.cjs.map +1 -0
- package/dist/{chunk-RP5HQVLD.js → chunk-RNB4APBZ.js} +30 -7
- package/dist/chunk-RNB4APBZ.js.map +1 -0
- package/dist/{chunk-V45L2OYP.cjs → chunk-ROYPRJH4.cjs} +9 -9
- package/dist/{chunk-V45L2OYP.cjs.map → chunk-ROYPRJH4.cjs.map} +1 -1
- package/dist/{chunk-JJZ4NIAG.js → chunk-RUDY2GTT.js} +61 -24
- package/dist/chunk-RUDY2GTT.js.map +1 -0
- package/dist/{chunk-QLAWEGTZ.cjs → chunk-SKXBJ2NU.cjs} +7 -7
- package/dist/chunk-SKXBJ2NU.cjs.map +1 -0
- package/dist/chunk-SSQZA3DZ.js +15 -0
- package/dist/chunk-SSQZA3DZ.js.map +1 -0
- package/dist/{chunk-7TB5U7RK.js → chunk-SUKXXLWD.js} +6 -6
- package/dist/chunk-SUKXXLWD.js.map +1 -0
- package/dist/{chunk-N43XLTHZ.js → chunk-T73NA43R.js} +3 -3
- package/dist/{chunk-N43XLTHZ.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-4X3SBHPK.js → chunk-T7XEKOVW.js} +18 -17
- package/dist/chunk-T7XEKOVW.js.map +1 -0
- package/dist/{chunk-NZOR3N4E.js → chunk-TPTZA6NI.js} +293 -126
- package/dist/chunk-TPTZA6NI.js.map +1 -0
- package/dist/{chunk-QN5N3ZVT.cjs → chunk-TTHBHAJI.cjs} +44 -46
- package/dist/chunk-TTHBHAJI.cjs.map +1 -0
- package/dist/{chunk-CZHPR2G7.cjs → chunk-U2AC6JUP.cjs} +8 -8
- package/dist/chunk-U2AC6JUP.cjs.map +1 -0
- package/dist/{chunk-ITQ4NO4P.js → chunk-UC3HT2S4.js} +3 -3
- package/dist/{chunk-ITQ4NO4P.js.map → chunk-UC3HT2S4.js.map} +1 -1
- package/dist/{chunk-2VFZQEDW.cjs → chunk-UFAO4T7Z.cjs} +565 -399
- package/dist/chunk-UFAO4T7Z.cjs.map +1 -0
- package/dist/{chunk-DM6Y5B2G.cjs → chunk-UNDROG5N.cjs} +201 -154
- package/dist/chunk-UNDROG5N.cjs.map +1 -0
- package/dist/{chunk-L7EGRCKJ.js → chunk-UPRJR6IP.js} +4 -4
- package/dist/chunk-UPRJR6IP.js.map +1 -0
- package/dist/{chunk-23VZBRDQ.js → chunk-UQGQFBRL.js} +3 -3
- package/dist/chunk-UQGQFBRL.js.map +1 -0
- package/dist/{chunk-2Y5NO2SY.js → chunk-VDEWG5TV.js} +88 -43
- package/dist/chunk-VDEWG5TV.js.map +1 -0
- package/dist/{chunk-CHVSMEKM.js → chunk-VF7EWVDG.js} +3 -3
- package/dist/chunk-VF7EWVDG.js.map +1 -0
- package/dist/{chunk-PNVDQL5Y.cjs → chunk-VTYY7XL5.cjs} +2 -2
- package/dist/chunk-VTYY7XL5.cjs.map +1 -0
- package/dist/{chunk-E6T264NS.js → chunk-WKRSH2VR.js} +3 -3
- package/dist/{chunk-E6T264NS.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-EFXJ5C7X.js → chunk-XN7NOENA.js} +6 -6
- package/dist/chunk-XN7NOENA.js.map +1 -0
- package/dist/{chunk-AMYY3JHQ.cjs → chunk-XSX2UU6Y.cjs} +10 -9
- package/dist/chunk-XSX2UU6Y.cjs.map +1 -0
- package/dist/{chunk-6PTCKXD3.js → chunk-XV4IZNV4.js} +9 -9
- package/dist/chunk-XV4IZNV4.js.map +1 -0
- package/dist/{chunk-FBZMSLDC.cjs → chunk-XWL6O3SW.cjs} +4 -4
- package/dist/chunk-XWL6O3SW.cjs.map +1 -0
- package/dist/{chunk-OIBHY6JQ.js → chunk-YMA4S2WO.js} +4 -4
- package/dist/{chunk-OIBHY6JQ.js.map → chunk-YMA4S2WO.js.map} +1 -1
- package/dist/{chunk-T5ZWI3MC.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-K5LXTBPJ.js +22 -0
- package/dist/{compact-session-EJ36VH5I.js.map → compact-session-K5LXTBPJ.js.map} +1 -1
- package/dist/compact-session-YCT6JMBX.cjs +59 -0
- package/dist/{compact-session-6GKIS4SD.cjs.map → compact-session-YCT6JMBX.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-DCECDKWN.js.map → context-FDOON2DB.js.map} +1 -1
- package/dist/context-VMIE4BMD.cjs +23 -0
- package/dist/{context-4HGPCOH6.cjs.map → context-VMIE4BMD.cjs.map} +1 -1
- package/dist/cron-CRwy2JBF.d.ts +240 -0
- package/dist/cron-DxxeQ-sK.d.cts +240 -0
- package/dist/cron.cjs +44 -42
- package/dist/cron.d.cts +5 -3
- package/dist/cron.d.ts +5 -3
- package/dist/cron.js +43 -41
- package/dist/define-tool.d.ts +14 -6
- package/dist/{errors-CHllybaU.d.ts → errors-BgJH9PHi.d.cts} +39 -24
- package/dist/{errors-BSoXcl3F.d.cts → 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 +62 -59
- 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 +52 -49
- package/dist/eval.js.map +1 -1
- package/dist/event-bus.d.ts +16 -0
- package/dist/{executor-3CGPLVJL.js → executor-BMEHFOXZ.js} +8 -7
- package/dist/executor-BMEHFOXZ.js.map +1 -0
- package/dist/{executor-4SW7QGZ4.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-VXXDIBGM.cjs.map → fs-session-store-3MOJQGP2.cjs.map} +1 -1
- package/dist/fs-session-store-IN7JTTXD.js +11 -0
- package/dist/{fs-session-store-LIKYT24K.js.map → fs-session-store-IN7JTTXD.js.map} +1 -1
- package/dist/generate-object-N5MDZUJI.js +8 -0
- package/dist/{generate-object-TVQCW2IZ.js.map → generate-object-N5MDZUJI.js.map} +1 -1
- package/dist/generate-object-PGSP5U7N.cjs +21 -0
- package/dist/{generate-object-E465DX5I.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-HGGL4DD5.cjs.map → index-manager-NG5YENWO.cjs.map} +1 -1
- package/dist/index-manager-ZMRJ6ZII.js +13 -0
- package/dist/{index-manager-EA6FGIQG.js.map → index-manager-ZMRJ6ZII.js.map} +1 -1
- package/dist/index.cjs +176 -154
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +761 -57
- package/dist/index.d.ts +761 -57
- package/dist/index.js +62 -59
- package/dist/index.js.map +1 -1
- package/dist/{inject-session-HO7FYVCX.js → inject-session-DDR6X6PC.js} +9 -8
- package/dist/inject-session-DDR6X6PC.js.map +1 -0
- package/dist/inject-session-XLO3KTBM.cjs +29 -0
- package/dist/inject-session-XLO3KTBM.cjs.map +1 -0
- package/dist/internal/auth/auth-types.d.ts +84 -2
- package/dist/internal/auth/credential-store.d.ts +34 -6
- package/dist/internal/auth/oauth-device.d.ts +2 -3
- 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/router.d.ts +8 -0
- package/dist/internal/llm/types.d.ts +12 -1
- package/dist/internal/local-agent/mcp-pool.d.ts +2 -4
- package/dist/internal/local-agent/real-local-run-provider.d.ts +8 -3
- package/dist/internal/local-agent/real-local-run-tools.d.ts +8 -0
- package/dist/internal/mcp/oauth.d.ts +19 -1
- package/dist/internal/mcp/token-storage.d.ts +52 -1
- 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/atomic-write.d.cts +93 -0
- package/dist/internal/persistence/atomic-write.d.ts +93 -0
- 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 +41 -1
- package/dist/internal/persistence/file-lock.d.ts +41 -1
- 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 +29 -1
- package/dist/internal/persistence/fts5-sanitize.d.ts +29 -1
- 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-dir.d.cts +1 -0
- package/dist/internal/persistence/session-dir.d.ts +1 -0
- package/dist/internal/persistence/session-writer.d.cts +20 -7
- package/dist/internal/persistence/session-writer.d.ts +20 -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 +53 -0
- package/dist/internal/persistence/sqlite-wal.d.ts +53 -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/cerebras.d.ts +2 -2
- package/dist/internal/providers/builtin/deepinfra.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 +37 -1
- 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/env-policy.d.ts +1 -3
- 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 +107 -0
- package/dist/internal/security/path-guard.d.ts +107 -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/compact-session.d.ts +2 -2
- 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 +38 -0
- package/dist/job-queue.d.ts +18 -0
- package/dist/judge-call-DWHAJATE.js +6 -0
- package/dist/{judge-call-QMKGC2ZK.js.map → judge-call-DWHAJATE.js.map} +1 -1
- package/dist/judge-call-EGYRC2RE.cjs +23 -0
- package/dist/{judge-call-GVIJWQVE.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 +43 -28
- package/dist/models.cjs.map +1 -1
- package/dist/models.js +26 -11
- 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-UBY26R4I.cjs.map → registry-VFKX7WOP.cjs.map} +1 -1
- package/dist/registry-VFP3WWQP.js +10 -0
- package/dist/{registry-GC7BQMSV.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.ts → run-BYSHf58D.d.cts} +185 -33
- package/dist/{run-C8FBAC8o.d.cts → 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 -14
- package/dist/sandbox/bwrap.d.ts +27 -14
- package/dist/sandbox/index.cjs +21 -20
- package/dist/sandbox/index.cjs.map +1 -1
- package/dist/sandbox/index.js +6 -5
- 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-SKIRBEJE.js.map → session-transcript-AKDYYGXQ.js.map} +1 -1
- package/dist/session-transcript-JXHFTB7G.cjs +51 -0
- package/dist/{session-transcript-TNAJ4O3M.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-T4DAMNVB.cjs.map → stream-object-BUCF5PHO.cjs.map} +1 -1
- package/dist/stream-object-L57K4OFS.js +8 -0
- package/dist/{stream-object-QMNR3YFF.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-3CXBQWWY.cjs.map → subagents-loader-AZIXJ7D3.cjs.map} +1 -1
- package/dist/subagents-loader-J54ESLDV.js +7 -0
- package/dist/{subagents-loader-WN2SB6PV.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 +69 -17
- 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 +21 -2
- 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 +208 -172
- package/docs/harness-capability-map.md +1357 -304
- package/package.json +21 -8
- 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-JX5SBYDE.cjs +0 -59
- package/dist/agent-ZAGG6ZBS.js +0 -50
- package/dist/agent-session-store-EPX2WQI4.cjs +0 -23
- package/dist/agent-session-store-JMU7ASDB.js +0 -6
- package/dist/batch-NLIS4QTW.js.map +0 -1
- package/dist/batch-WQ3AJCDV.cjs.map +0 -1
- package/dist/chunk-23VZBRDQ.js.map +0 -1
- package/dist/chunk-2CFEET3Y.cjs.map +0 -1
- package/dist/chunk-2QMK627M.cjs.map +0 -1
- package/dist/chunk-2RW7K6FN.cjs.map +0 -1
- package/dist/chunk-2VFZQEDW.cjs.map +0 -1
- package/dist/chunk-2XLKLVVR.js.map +0 -1
- package/dist/chunk-2Y5NO2SY.js.map +0 -1
- package/dist/chunk-2YGIBOUH.cjs.map +0 -1
- package/dist/chunk-2YWWPCGX.js.map +0 -1
- package/dist/chunk-33L2NVTJ.cjs.map +0 -1
- package/dist/chunk-34XOCZJO.js.map +0 -1
- package/dist/chunk-3SHW7XKK.js.map +0 -1
- package/dist/chunk-4NAKHID5.js.map +0 -1
- package/dist/chunk-4X3SBHPK.js.map +0 -1
- package/dist/chunk-5NBUH3NO.js.map +0 -1
- package/dist/chunk-634YVZLU.js.map +0 -1
- package/dist/chunk-6DCTL32L.cjs.map +0 -1
- package/dist/chunk-6PTCKXD3.js.map +0 -1
- package/dist/chunk-7HQVDLFI.cjs.map +0 -1
- package/dist/chunk-7TB5U7RK.js.map +0 -1
- package/dist/chunk-7W7ZWMLQ.js.map +0 -1
- package/dist/chunk-ADVZIC43.cjs.map +0 -1
- package/dist/chunk-AM2CNBKE.js.map +0 -1
- package/dist/chunk-AMYY3JHQ.cjs.map +0 -1
- package/dist/chunk-B4YA6BRS.cjs.map +0 -1
- package/dist/chunk-BBZYXVLZ.cjs.map +0 -1
- package/dist/chunk-BC5EUG7R.cjs.map +0 -1
- package/dist/chunk-CAH3G4IS.js.map +0 -1
- package/dist/chunk-CHVSMEKM.js.map +0 -1
- package/dist/chunk-CZHPR2G7.cjs.map +0 -1
- package/dist/chunk-DEZ75ET5.js.map +0 -1
- package/dist/chunk-DM6Y5B2G.cjs.map +0 -1
- package/dist/chunk-EFXJ5C7X.js.map +0 -1
- package/dist/chunk-EQMLJ52C.cjs.map +0 -1
- package/dist/chunk-FBZMSLDC.cjs.map +0 -1
- package/dist/chunk-HI4ZW62S.js.map +0 -1
- package/dist/chunk-HTK54K2J.js.map +0 -1
- package/dist/chunk-I5OTK2RP.js.map +0 -1
- package/dist/chunk-JJZ4NIAG.js.map +0 -1
- package/dist/chunk-KIX45IKP.js.map +0 -1
- package/dist/chunk-KZBB4YKU.js.map +0 -1
- package/dist/chunk-L5YO6PWL.cjs.map +0 -1
- package/dist/chunk-L7EGRCKJ.js.map +0 -1
- package/dist/chunk-NOS7PTKP.js.map +0 -1
- package/dist/chunk-NUEL6RCZ.cjs.map +0 -1
- package/dist/chunk-NZOR3N4E.js.map +0 -1
- package/dist/chunk-OKLYRPKL.cjs.map +0 -1
- package/dist/chunk-OXNYIMZZ.js.map +0 -1
- package/dist/chunk-PNVDQL5Y.cjs.map +0 -1
- package/dist/chunk-QLAWEGTZ.cjs.map +0 -1
- package/dist/chunk-QN5N3ZVT.cjs.map +0 -1
- package/dist/chunk-R3CKCRK3.cjs.map +0 -1
- package/dist/chunk-R7TKOQMJ.js.map +0 -1
- package/dist/chunk-RP5HQVLD.js.map +0 -1
- package/dist/chunk-SXSPMRSV.cjs.map +0 -1
- package/dist/chunk-T5ZWI3MC.cjs.map +0 -1
- package/dist/chunk-T6QUCG7L.cjs.map +0 -1
- package/dist/chunk-TR4V2LHV.cjs.map +0 -1
- package/dist/chunk-VYCKUKPA.cjs.map +0 -1
- package/dist/chunk-VYHJZVL5.cjs.map +0 -1
- package/dist/chunk-W4FV7JBH.js.map +0 -1
- package/dist/chunk-X2FR4OIT.js.map +0 -1
- package/dist/chunk-XRI6DXPZ.js.map +0 -1
- package/dist/chunk-XWCTBGYK.js.map +0 -1
- package/dist/chunk-YLQQX5W2.cjs.map +0 -1
- package/dist/chunk-YTO5BRBD.cjs.map +0 -1
- package/dist/chunk-Z5U2JGEK.cjs.map +0 -1
- package/dist/compact-session-6GKIS4SD.cjs +0 -58
- package/dist/compact-session-EJ36VH5I.js +0 -21
- package/dist/context-4HGPCOH6.cjs +0 -22
- package/dist/context-DCECDKWN.js +0 -5
- package/dist/cron-DgHJnMAK.d.cts +0 -631
- package/dist/cron-DyWQsEG6.d.ts +0 -631
- package/dist/executor-3CGPLVJL.js.map +0 -1
- package/dist/executor-4SW7QGZ4.cjs.map +0 -1
- package/dist/fs-session-store-LIKYT24K.js +0 -10
- package/dist/fs-session-store-VXXDIBGM.cjs +0 -19
- package/dist/generate-object-E465DX5I.cjs +0 -20
- package/dist/generate-object-TVQCW2IZ.js +0 -7
- package/dist/index-manager-EA6FGIQG.js +0 -12
- package/dist/index-manager-HGGL4DD5.cjs +0 -21
- package/dist/inject-session-67SF65FC.cjs +0 -28
- package/dist/inject-session-67SF65FC.cjs.map +0 -1
- package/dist/inject-session-HO7FYVCX.js.map +0 -1
- package/dist/judge-call-GVIJWQVE.cjs +0 -22
- package/dist/judge-call-QMKGC2ZK.js +0 -5
- package/dist/oauth-transaction-store-7CKHPQRN.cjs +0 -32
- package/dist/oauth-transaction-store-W74I6EFD.js +0 -3
- package/dist/registry-GC7BQMSV.js +0 -9
- package/dist/registry-UBY26R4I.cjs +0 -46
- package/dist/session-transcript-SKIRBEJE.js +0 -5
- package/dist/session-transcript-TNAJ4O3M.cjs +0 -50
- package/dist/stream-object-QMNR3YFF.js +0 -7
- package/dist/stream-object-T4DAMNVB.cjs +0 -20
- package/dist/subagents-loader-3CXBQWWY.cjs +0 -15
- package/dist/subagents-loader-WN2SB6PV.js +0 -6
|
@@ -1,34 +1,36 @@
|
|
|
1
|
-
import { enqueueSessionWrite, hydrateSession, persistTurnToTranscript, flushSessionWrites, appendSessionMessage, getSessionMessages, discardSession, clearSession } from './chunk-
|
|
2
|
-
import {
|
|
1
|
+
import { enqueueSessionWrite, hydrateSession, persistTurnToTranscript, flushSessionWrites, appendSessionMessage, getSessionMessages, discardSession, clearSession } from './chunk-DUIF54UP.js';
|
|
2
|
+
import { IndexManager, writeSessionSummary, memoryDir, appendFact, readFacts, legacyMemoryJsonPath, memoryMdPath, appendFactToMarkdown } from './chunk-DAPSQZT4.js';
|
|
3
|
+
import { loadHookConfig, warnOnce, currentPersonalityContext, warnPersonalitySwitchInsideFork } from './chunk-YMA4S2WO.js';
|
|
3
4
|
import { extractCodePlugins } from './chunk-2SFBB54R.js';
|
|
4
|
-
import { submit, emitRunEvent } from './chunk-
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { resolveChildEnv } from './chunk-
|
|
9
|
-
import { DEFAULT_MAX_BYTES_PER_FILE, runDiscovery, truncateWithMarker } from './chunk-
|
|
10
|
-
import { readVersionedJson, getTheokitHome, writeVersionedJson } from './chunk-
|
|
11
|
-
import {
|
|
5
|
+
import { submit, emitRunEvent } from './chunk-SUKXXLWD.js';
|
|
6
|
+
import { createOpenAiCompatibleRuntime } from './chunk-XN7NOENA.js';
|
|
7
|
+
import { FsSessionStore } from './chunk-GJ6RK75E.js';
|
|
8
|
+
import { discoverProviderPlugins, getConfiguredBaseUrl, httpRequest, isFixtureApiKey, presentProviderCredentialEnvVars, CircuitBreaker, buildDefaultSummarizer, shouldUseRealLocalRuntime, parseSseStream, resolveProviderChain, inferProviderFromApiKey, detectPrimaryProvider, warnProviderPrecedenceOnce, tryFirstEvent, relayStream, renderToolResultContentText } from './chunk-VDEWG5TV.js';
|
|
9
|
+
import { resolveChildEnv } from './chunk-HKCKOAIO.js';
|
|
10
|
+
import { DEFAULT_MAX_BYTES_PER_FILE, runDiscovery, truncateWithMarker } from './chunk-5PHVENFV.js';
|
|
11
|
+
import { readVersionedJson, getTheokitHome, writeVersionedJson } from './chunk-UPRJR6IP.js';
|
|
12
|
+
import { toJsonSchema } from './chunk-4VPXM6UU.js';
|
|
12
13
|
import { sanitizeToolInput } from './chunk-U54XCYG3.js';
|
|
13
|
-
import { withInheritedSubAgentCredentials, subAgentToolsFromDefinitions } from './chunk-
|
|
14
|
+
import { withInheritedSubAgentCredentials, subAgentToolsFromDefinitions } from './chunk-RNB4APBZ.js';
|
|
14
15
|
import { setAgentFacade } from './chunk-6X6ID4MO.js';
|
|
16
|
+
import { escapeBlockBody, buildSkillsBlock, discoverSkills, stripSkillFrontmatter } from './chunk-4ERPXIVB.js';
|
|
15
17
|
import { withToolWhitelist, checkToolWhitelist } from './chunk-7AD3ZTZL.js';
|
|
16
|
-
import {
|
|
17
|
-
import { defaultBaseDir, expandTilde } from './chunk-C4EU627W.js';
|
|
18
|
-
import { withFileLock } from './chunk-HTK54K2J.js';
|
|
19
|
-
import { withCwdMutex } from './chunk-2XLKLVVR.js';
|
|
20
|
-
import { toJsonSchema } from './chunk-4VPXM6UU.js';
|
|
21
|
-
import { atomicWriteJson } from './chunk-CHVSMEKM.js';
|
|
22
|
-
import { loadSubagents } from './chunk-XGYI2KQH.js';
|
|
23
|
-
import { resolveEffectiveContextWindow, CONTEXT_WINDOW_FLOOR, CONTEXT_WINDOW_MARGIN } from './chunk-KIX45IKP.js';
|
|
24
|
-
import { parseModelId } from './chunk-X2FR4OIT.js';
|
|
25
|
-
import { getCatalogModelInfo, registerBuiltins, getProviderProfile, registerProvider, isPatchedModelKey } from './chunk-2YWWPCGX.js';
|
|
26
|
-
import { escapeBlockBody, buildSkillsBlock, discoverSkills, stripSkillFrontmatter } from './chunk-BXVSBYGW.js';
|
|
27
|
-
import { validateArtifactPath, PathTraversalError, safePathJoin } from './chunk-XWCTBGYK.js';
|
|
18
|
+
import { validateArtifactPath, PathTraversalError, safePathJoin } from './chunk-QARJGQSA.js';
|
|
28
19
|
import { insideRoot, atOrInsideRoot } from './chunk-RIAM53CP.js';
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
20
|
+
import { mapWithConcurrency } from './chunk-UC3HT2S4.js';
|
|
21
|
+
import { expandTilde, defaultBaseDir } from './chunk-DZBSJX6J.js';
|
|
22
|
+
import { withFileLock } from './chunk-CV7XMBHP.js';
|
|
23
|
+
import { withCwdMutex } from './chunk-Q5EWJPRY.js';
|
|
24
|
+
import { atomicWriteJson } from './chunk-VF7EWVDG.js';
|
|
25
|
+
import { loadSubagents } from './chunk-2QKTVKH3.js';
|
|
26
|
+
import { readWorkspaceDir, parseSimpleYaml } from './chunk-AG5JPQIY.js';
|
|
27
|
+
import { resolveEffectiveContextWindow, CONTEXT_WINDOW_FLOOR, CONTEXT_WINDOW_MARGIN } from './chunk-F7AQV62G.js';
|
|
28
|
+
import { parseModelId } from './chunk-R7WIIPUR.js';
|
|
29
|
+
import { getProviderProfile } from './chunk-SSQZA3DZ.js';
|
|
30
|
+
import { getCatalogModelInfo, registerBuiltins, getProviderProfile as getProviderProfile$1, registerProvider, isPatchedModelKey } from './chunk-FXEUP75G.js';
|
|
31
|
+
import { AgentRunError, coerceToKnownAgentRunErrorCode, UnknownAgentError, ConfigurationError, AuthenticationError, AgentDisposedError, UnsupportedRunOperationError, NetworkError, TheokitAgentError } from './chunk-IDCKSLYH.js';
|
|
32
|
+
import { resolveApiKey, API_KEY_ENV_VAR, redactSecrets } from './chunk-T7XEKOVW.js';
|
|
33
|
+
import { diag } from './chunk-T7O6K6PX.js';
|
|
32
34
|
import { stat, mkdir, readFile, readdir, access, unlink } from 'fs/promises';
|
|
33
35
|
import { randomUUID, createHash } from 'crypto';
|
|
34
36
|
import { join, dirname, resolve, isAbsolute } from 'path';
|
|
@@ -223,7 +225,7 @@ async function agentGenerate(agent, agentModel, agentApiKey, agentLocal, input,
|
|
|
223
225
|
const { output, maxRetries, errorStrategy, ...sendOptions } = options;
|
|
224
226
|
const run = await agent.send(input, sendOptions);
|
|
225
227
|
const result = await run.wait();
|
|
226
|
-
const { generateObjectImpl, GenerateObjectError } = await import('./generate-object-
|
|
228
|
+
const { generateObjectImpl, GenerateObjectError } = await import('./generate-object-N5MDZUJI.js');
|
|
227
229
|
const answer = structurableAnswerOrThrow(result, GenerateObjectError);
|
|
228
230
|
const { getAgentFacade } = await import('./agent-factory-registry-ZVTABLEY.js');
|
|
229
231
|
const facade = getAgentFacade();
|
|
@@ -277,19 +279,6 @@ function structurableAnswerOrThrow(result, GenerateObjectError) {
|
|
|
277
279
|
}
|
|
278
280
|
return answer;
|
|
279
281
|
}
|
|
280
|
-
|
|
281
|
-
// src/internal/env.ts
|
|
282
|
-
var API_KEY_ENV_VAR = "THEOKIT_API_KEY";
|
|
283
|
-
function resolveApiKey(explicit) {
|
|
284
|
-
if (explicit !== void 0 && explicit.length > 0) {
|
|
285
|
-
return explicit;
|
|
286
|
-
}
|
|
287
|
-
const fromEnv = process.env[API_KEY_ENV_VAR];
|
|
288
|
-
if (fromEnv !== void 0 && fromEnv.length > 0) {
|
|
289
|
-
return fromEnv;
|
|
290
|
-
}
|
|
291
|
-
return void 0;
|
|
292
|
-
}
|
|
293
282
|
var PREFIX = {
|
|
294
283
|
localAgent: "agent-",
|
|
295
284
|
cloudAgent: "bc-",
|
|
@@ -568,10 +557,11 @@ function registerAgent(agent) {
|
|
|
568
557
|
function getRegisteredAgent(agentId) {
|
|
569
558
|
return agents.get(agentId);
|
|
570
559
|
}
|
|
571
|
-
function listRegisteredAgents(runtime, cwd) {
|
|
560
|
+
function listRegisteredAgents(runtime, cwd, includeArchived = false) {
|
|
572
561
|
let out = Array.from(agents.values());
|
|
573
562
|
if (runtime !== void 0) out = out.filter((agent) => agent.runtime === runtime);
|
|
574
563
|
if (cwd !== void 0) out = out.filter((agent) => resolveRegistryCwd(agent) === cwd);
|
|
564
|
+
if (!includeArchived) out = out.filter((agent) => !agent.archived);
|
|
575
565
|
return out;
|
|
576
566
|
}
|
|
577
567
|
function updateRegisteredAgent(agentId, update) {
|
|
@@ -1721,7 +1711,7 @@ var RealCloudRun = class extends FixtureRunBase {
|
|
|
1721
1711
|
}
|
|
1722
1712
|
if (eventName === "result") {
|
|
1723
1713
|
const update = {
|
|
1724
|
-
finalStatus: parsed.status
|
|
1714
|
+
finalStatus: parsed.status === void 0 ? "finished" : toRunStatus(parsed.status)
|
|
1725
1715
|
};
|
|
1726
1716
|
if (typeof parsed.result === "string") update.finalText = parsed.result;
|
|
1727
1717
|
return update;
|
|
@@ -1733,7 +1723,7 @@ var RealCloudRun = class extends FixtureRunBase {
|
|
|
1733
1723
|
type: "status",
|
|
1734
1724
|
agent_id: this.agentId,
|
|
1735
1725
|
run_id: this.id,
|
|
1736
|
-
status
|
|
1726
|
+
status: toWireStatus(status)
|
|
1737
1727
|
};
|
|
1738
1728
|
}
|
|
1739
1729
|
buildAssistantEvent(text) {
|
|
@@ -1755,6 +1745,43 @@ var RealCloudRun = class extends FixtureRunBase {
|
|
|
1755
1745
|
this.transitionTo("error");
|
|
1756
1746
|
}
|
|
1757
1747
|
};
|
|
1748
|
+
var SERVER_STATUS_TO_RUN_STATUS = {
|
|
1749
|
+
creating: "running",
|
|
1750
|
+
running: "running",
|
|
1751
|
+
finished: "finished",
|
|
1752
|
+
error: "error",
|
|
1753
|
+
cancelled: "cancelled",
|
|
1754
|
+
expired: "error"
|
|
1755
|
+
};
|
|
1756
|
+
var WIRE_STATUSES = [
|
|
1757
|
+
"CREATING",
|
|
1758
|
+
"RUNNING",
|
|
1759
|
+
"FINISHED",
|
|
1760
|
+
"ERROR",
|
|
1761
|
+
"CANCELLED",
|
|
1762
|
+
"EXPIRED"
|
|
1763
|
+
];
|
|
1764
|
+
function toWireStatus(token) {
|
|
1765
|
+
if (typeof token === "string") {
|
|
1766
|
+
const upper = token.toUpperCase();
|
|
1767
|
+
const match = WIRE_STATUSES.find((candidate) => candidate === upper);
|
|
1768
|
+
if (match !== void 0) return match;
|
|
1769
|
+
}
|
|
1770
|
+
throw new NetworkError(
|
|
1771
|
+
`Cloud Run stream reported an unrecognised status ${JSON.stringify(token)}; expected one of ${WIRE_STATUSES.join(", ")} (case-insensitive)`,
|
|
1772
|
+
{ code: "cloud_run_unknown_status" }
|
|
1773
|
+
);
|
|
1774
|
+
}
|
|
1775
|
+
function toRunStatus(token) {
|
|
1776
|
+
if (typeof token === "string") {
|
|
1777
|
+
const mapped = SERVER_STATUS_TO_RUN_STATUS[token.toLowerCase()];
|
|
1778
|
+
if (mapped !== void 0) return mapped;
|
|
1779
|
+
}
|
|
1780
|
+
throw new NetworkError(
|
|
1781
|
+
`Cloud Run stream reported an unrecognised status ${JSON.stringify(token)}; expected one of ${Object.keys(SERVER_STATUS_TO_RUN_STATUS).join(", ")} (case-insensitive)`,
|
|
1782
|
+
{ code: "cloud_run_unknown_status" }
|
|
1783
|
+
);
|
|
1784
|
+
}
|
|
1758
1785
|
function safeParse(data2) {
|
|
1759
1786
|
try {
|
|
1760
1787
|
return JSON.parse(data2);
|
|
@@ -1820,6 +1847,7 @@ var CloudAgent = class {
|
|
|
1820
1847
|
);
|
|
1821
1848
|
}
|
|
1822
1849
|
async send(message, options = {}) {
|
|
1850
|
+
if (this.disposed) throw new AgentDisposedError(this.agentId);
|
|
1823
1851
|
if (options.tools !== void 0 && options.tools.length > 0) {
|
|
1824
1852
|
throw new ConfigurationError(
|
|
1825
1853
|
"Custom inline tools are local-only in SDK v1.0 \u2014 cloud agents cannot serialize handler functions",
|
|
@@ -2073,6 +2101,25 @@ function isStdioCommandConfig(config) {
|
|
|
2073
2101
|
function isLocalPath(command) {
|
|
2074
2102
|
return command.startsWith("/") || command.startsWith("~/") || command.startsWith("./") || command.startsWith("../");
|
|
2075
2103
|
}
|
|
2104
|
+
|
|
2105
|
+
// src/internal/persistence/session-dir.ts
|
|
2106
|
+
function resolveSessionDir(local) {
|
|
2107
|
+
if (local?.sessionDir !== void 0) {
|
|
2108
|
+
if (local.baseDir !== void 0) {
|
|
2109
|
+
diag(
|
|
2110
|
+
"[theokit-sdk] local.sessionDir and local.baseDir are both set; using sessionDir. baseDir is the deprecated name for the same option (#301)."
|
|
2111
|
+
);
|
|
2112
|
+
}
|
|
2113
|
+
return expandTilde(local.sessionDir);
|
|
2114
|
+
}
|
|
2115
|
+
if (local?.baseDir !== void 0) {
|
|
2116
|
+
diag(
|
|
2117
|
+
"[theokit-sdk] local.baseDir is deprecated; rename it to local.sessionDir (#301). It is the directory for session transcripts, not the working directory \u2014 that is local.cwd."
|
|
2118
|
+
);
|
|
2119
|
+
return expandTilde(local.baseDir);
|
|
2120
|
+
}
|
|
2121
|
+
return defaultBaseDir();
|
|
2122
|
+
}
|
|
2076
2123
|
var SCHEMA_VERSION2 = 1;
|
|
2077
2124
|
var FILE_NAME = "personality.json";
|
|
2078
2125
|
function emptyState() {
|
|
@@ -3450,6 +3497,9 @@ var langsmithAdapter = {
|
|
|
3450
3497
|
|
|
3451
3498
|
// src/internal/telemetry/adapters/posthog.ts
|
|
3452
3499
|
var registeredHere6 = false;
|
|
3500
|
+
function presentEnv(value) {
|
|
3501
|
+
return value !== void 0 && value.trim().length > 0 ? value : void 0;
|
|
3502
|
+
}
|
|
3453
3503
|
var posthogAdapter = {
|
|
3454
3504
|
moduleName: "posthog-node",
|
|
3455
3505
|
displayName: "PostHog",
|
|
@@ -3459,12 +3509,12 @@ var posthogAdapter = {
|
|
|
3459
3509
|
const ph = safeRequire("posthog-node");
|
|
3460
3510
|
const otel = safeRequire("@opentelemetry/api");
|
|
3461
3511
|
if (ph === void 0 || otel === void 0) return;
|
|
3462
|
-
const key = process.env.POSTHOG_API_KEY ?? process.env.POSTHOG_PROJECT_API_KEY;
|
|
3512
|
+
const key = presentEnv(process.env.POSTHOG_API_KEY) ?? presentEnv(process.env.POSTHOG_PROJECT_API_KEY);
|
|
3463
3513
|
if (typeof key !== "string" || key.length === 0) {
|
|
3464
3514
|
return;
|
|
3465
3515
|
}
|
|
3466
3516
|
const client = new ph.PostHog(key, {
|
|
3467
|
-
host: process.env.POSTHOG_HOST ?? "https://us.i.posthog.com"
|
|
3517
|
+
host: presentEnv(process.env.POSTHOG_HOST) ?? "https://us.i.posthog.com"
|
|
3468
3518
|
});
|
|
3469
3519
|
const provider = otel.trace.getTracerProvider();
|
|
3470
3520
|
if (provider.addSpanProcessor === void 0) return;
|
|
@@ -3742,10 +3792,11 @@ var ProvidersManagerImpl = class {
|
|
|
3742
3792
|
routes() {
|
|
3743
3793
|
const resolved = [];
|
|
3744
3794
|
const modelProvider = providerFromModel(this.model);
|
|
3795
|
+
const modelId = this.model?.id;
|
|
3745
3796
|
const seen = /* @__PURE__ */ new Set();
|
|
3746
3797
|
if (this.providers?.routes !== void 0) {
|
|
3747
3798
|
for (const route of this.providers.routes) {
|
|
3748
|
-
const resolvedRoute = resolveRoute(route, modelProvider, this.plugins);
|
|
3799
|
+
const resolvedRoute = resolveRoute(route, modelProvider, modelId, this.plugins);
|
|
3749
3800
|
if (!seen.has(route.capability)) {
|
|
3750
3801
|
seen.add(route.capability);
|
|
3751
3802
|
resolved.push(resolvedRoute);
|
|
@@ -3761,9 +3812,9 @@ function providerFromModel(model) {
|
|
|
3761
3812
|
if (id.includes(":")) return id.split(":")[0];
|
|
3762
3813
|
return void 0;
|
|
3763
3814
|
}
|
|
3764
|
-
function resolveRoute(route, modelProvider, plugins) {
|
|
3815
|
+
function resolveRoute(route, modelProvider, modelId, plugins) {
|
|
3765
3816
|
if (route.capability === "chat" && modelProvider === route.provider) {
|
|
3766
|
-
const modelName = extractModelName(modelProvider, route);
|
|
3817
|
+
const modelName = extractModelName(modelProvider, modelId, route);
|
|
3767
3818
|
const base = {
|
|
3768
3819
|
capability: route.capability,
|
|
3769
3820
|
provider: route.provider,
|
|
@@ -3785,13 +3836,11 @@ function resolveRoute(route, modelProvider, plugins) {
|
|
|
3785
3836
|
reason: "explicit-route"
|
|
3786
3837
|
};
|
|
3787
3838
|
}
|
|
3788
|
-
function extractModelName(prefix, route) {
|
|
3839
|
+
function extractModelName(prefix, modelId, route) {
|
|
3789
3840
|
if (route.model !== void 0) return route.model;
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
if (provider === "anthropic") return "claude-3-7-sonnet";
|
|
3794
|
-
return void 0;
|
|
3841
|
+
if (prefix !== route.provider || modelId === void 0) return void 0;
|
|
3842
|
+
const name = modelId.slice(modelId.indexOf(":") + 1);
|
|
3843
|
+
return name.length > 0 ? name : void 0;
|
|
3795
3844
|
}
|
|
3796
3845
|
var MAX_MD_FILE_BYTES = 1048576;
|
|
3797
3846
|
async function loadMarkdownEntities(opts) {
|
|
@@ -4109,7 +4158,6 @@ async function loadSources(config, cwd) {
|
|
|
4109
4158
|
continue;
|
|
4110
4159
|
}
|
|
4111
4160
|
try {
|
|
4112
|
-
await stat(absolute);
|
|
4113
4161
|
const content = await readFile(absolute, "utf8");
|
|
4114
4162
|
const tokens = tokenizeContent(content);
|
|
4115
4163
|
results.push({ ...source, status: "included", tokens });
|
|
@@ -4224,6 +4272,21 @@ var PluginsManager = class {
|
|
|
4224
4272
|
});
|
|
4225
4273
|
}
|
|
4226
4274
|
}
|
|
4275
|
+
/**
|
|
4276
|
+
* B-107 measured this guard as unreachable and it was REMOVED on 2026-08-20. The pre-push gate
|
|
4277
|
+
* caught the regression the same hour: `tests/contract/plugins.contract.test.ts:69` drives
|
|
4278
|
+
* `Agent.create` with `cloud` plus `plugins.paths` and requires a `ConfigurationError`.
|
|
4279
|
+
*
|
|
4280
|
+
* The measurement that said "unreachable" was a `tsc` probe returning TS2353 — `plugins.paths` is
|
|
4281
|
+
* not in the declared `AgentOptions`. That proves the option is undeclarable in TypeScript; it
|
|
4282
|
+
* does NOT prove the value cannot arrive. The contract test casts through a `ProposedAgentOptions`
|
|
4283
|
+
* shape it declares itself, which is exactly what a JavaScript caller, a JSON config or an `as`
|
|
4284
|
+
* cast does. Runtime boundary validation exists for values types cannot stop
|
|
4285
|
+
* (`rules/architecture.md` § 1) — so "the type system forbids it" is never on its own a reason to
|
|
4286
|
+
* delete a boundary check.
|
|
4287
|
+
*
|
|
4288
|
+
* Do not remove this again without making `tests/contract/plugins.contract.test.ts` go red first.
|
|
4289
|
+
*/
|
|
4227
4290
|
assertCloudRules() {
|
|
4228
4291
|
if (!this.cloud) return;
|
|
4229
4292
|
if (this.localPaths !== void 0 && this.localPaths.length > 0) {
|
|
@@ -4871,7 +4934,13 @@ async function initLoopContext(inputs) {
|
|
|
4871
4934
|
}
|
|
4872
4935
|
async function safeListTools(client, serverName, sink) {
|
|
4873
4936
|
try {
|
|
4874
|
-
|
|
4937
|
+
const listed = await client.listTools();
|
|
4938
|
+
emitRunEvent(sink, {
|
|
4939
|
+
type: "mcp_server_ready",
|
|
4940
|
+
serverName: serverName ?? "unknown",
|
|
4941
|
+
tools: listed.map((tool) => tool.name)
|
|
4942
|
+
});
|
|
4943
|
+
return listed;
|
|
4875
4944
|
} catch (cause) {
|
|
4876
4945
|
const message = cause instanceof Error ? cause.message : String(cause);
|
|
4877
4946
|
const server = serverName ?? "unknown";
|
|
@@ -5023,13 +5092,12 @@ async function streamLlmTurn(inputs, ctx) {
|
|
|
5023
5092
|
};
|
|
5024
5093
|
}
|
|
5025
5094
|
async function collectLlmEvents(generator, inputs, ctx) {
|
|
5026
|
-
let accumulatedText = "";
|
|
5027
5095
|
let errored = false;
|
|
5028
5096
|
let finishValue;
|
|
5029
5097
|
let thinking;
|
|
5098
|
+
const partial = { text: "" };
|
|
5030
5099
|
try {
|
|
5031
|
-
const result = await runCollectorLoop(generator, inputs, ctx);
|
|
5032
|
-
accumulatedText = result.accumulatedText;
|
|
5100
|
+
const result = await runCollectorLoop(generator, inputs, ctx, partial);
|
|
5033
5101
|
errored = result.errored;
|
|
5034
5102
|
finishValue = result.finishValue;
|
|
5035
5103
|
thinking = result.thinking;
|
|
@@ -5039,10 +5107,12 @@ async function collectLlmEvents(generator, inputs, ctx) {
|
|
|
5039
5107
|
ctx.events.push(buildAssistantEvent(inputs, "[aborted]"));
|
|
5040
5108
|
} else {
|
|
5041
5109
|
registerLoopError(ctx, cause);
|
|
5042
|
-
ctx.finalText =
|
|
5110
|
+
ctx.finalText = partial.text;
|
|
5111
|
+
if (partial.text !== "") ctx.events.push(buildAssistantEvent(inputs, partial.text));
|
|
5043
5112
|
}
|
|
5044
5113
|
errored = true;
|
|
5045
5114
|
}
|
|
5115
|
+
const accumulatedText = partial.text;
|
|
5046
5116
|
return {
|
|
5047
5117
|
accumulatedText,
|
|
5048
5118
|
errored,
|
|
@@ -5073,8 +5143,7 @@ async function consumeStreamEvent(inputs, reasoning, event) {
|
|
|
5073
5143
|
}
|
|
5074
5144
|
return "";
|
|
5075
5145
|
}
|
|
5076
|
-
async function runCollectorLoop(generator, inputs, ctx) {
|
|
5077
|
-
let accumulatedText = "";
|
|
5146
|
+
async function runCollectorLoop(generator, inputs, ctx, partial) {
|
|
5078
5147
|
const reasoning = { text: "", startedAt: void 0, signature: void 0 };
|
|
5079
5148
|
let errored = false;
|
|
5080
5149
|
let finishValue;
|
|
@@ -5088,16 +5157,16 @@ async function runCollectorLoop(generator, inputs, ctx) {
|
|
|
5088
5157
|
}
|
|
5089
5158
|
if (next.value.type === "error") {
|
|
5090
5159
|
registerLoopError(ctx, next.value);
|
|
5091
|
-
ctx.finalText =
|
|
5160
|
+
ctx.finalText = partial.text;
|
|
5092
5161
|
errored = true;
|
|
5093
5162
|
break;
|
|
5094
5163
|
}
|
|
5095
|
-
|
|
5164
|
+
partial.text += await consumeStreamEvent(inputs, reasoning, next.value);
|
|
5096
5165
|
}
|
|
5097
5166
|
} finally {
|
|
5098
5167
|
thinking = await finalizeReasoning(inputs, ctx, reasoning);
|
|
5099
5168
|
}
|
|
5100
|
-
return {
|
|
5169
|
+
return { errored, finishValue, ...thinking !== void 0 ? { thinking } : {} };
|
|
5101
5170
|
}
|
|
5102
5171
|
async function consumeReasoningDelta(inputs, reasoning, delta) {
|
|
5103
5172
|
if (delta.signature !== void 0) reasoning.signature = delta.signature;
|
|
@@ -5919,7 +5988,7 @@ function stripDateSuffix(model) {
|
|
|
5919
5988
|
return model.replace(/-\d{4}-?\d{2}-?\d{2}$/, "");
|
|
5920
5989
|
}
|
|
5921
5990
|
function normalizeAnthropicDots(model) {
|
|
5922
|
-
return model.replace(/(
|
|
5991
|
+
return model.replace(/(?<=\d)\.(?=\d)/g, "-");
|
|
5923
5992
|
}
|
|
5924
5993
|
function stripOpenRouterPrefix(modelId) {
|
|
5925
5994
|
return modelId.startsWith("openrouter/") ? modelId.slice("openrouter/".length) : modelId;
|
|
@@ -6172,6 +6241,12 @@ async function runAgentLoop(inputs) {
|
|
|
6172
6241
|
}
|
|
6173
6242
|
if (budget.shouldContinue() === false && ctx.finalStatus === "finished" && ctx.finalText === "") {
|
|
6174
6243
|
ctx.finalStatus = "error";
|
|
6244
|
+
if (ctx.error === void 0) {
|
|
6245
|
+
ctx.error = {
|
|
6246
|
+
message: `Run stopped after ${budget.total} iteration(s) without producing a reply \u2014 the model was still calling tools when the budget ran out. Raise \`SendOptions.maxIterations\` (default 8), or inspect \`RunResult.stoppedAtIterationLimit\` to continue the run.`,
|
|
6247
|
+
code: "iteration_limit_reached"
|
|
6248
|
+
};
|
|
6249
|
+
}
|
|
6175
6250
|
}
|
|
6176
6251
|
sendSpan?.setAttribute("status", ctx.finalStatus);
|
|
6177
6252
|
if (ctx.stoppedByDoomLoop === true) sendSpan?.setAttribute("stoppedByDoomLoop", true);
|
|
@@ -6735,12 +6810,6 @@ var HttpMcpClient = class extends BaseMcpClient {
|
|
|
6735
6810
|
...this.config.headers ?? {}
|
|
6736
6811
|
};
|
|
6737
6812
|
}
|
|
6738
|
-
/**
|
|
6739
|
-
* Capture the session on the FIRST response that carries it (the `initialize`).
|
|
6740
|
-
*
|
|
6741
|
-
* Never overwritten by a later one: a server that re-issues mid-session would otherwise split
|
|
6742
|
-
* the session in two, and the second half would not see the first half's state.
|
|
6743
|
-
*/
|
|
6744
6813
|
/**
|
|
6745
6814
|
* Read one JSON-RPC response, in either encoding the server may choose.
|
|
6746
6815
|
*
|
|
@@ -6766,6 +6835,12 @@ var HttpMcpClient = class extends BaseMcpClient {
|
|
|
6766
6835
|
code: "mcp_http_error"
|
|
6767
6836
|
});
|
|
6768
6837
|
}
|
|
6838
|
+
/**
|
|
6839
|
+
* Capture the session on the FIRST response that carries it (the `initialize`).
|
|
6840
|
+
*
|
|
6841
|
+
* Never overwritten by a later one: a server that re-issues mid-session would otherwise split
|
|
6842
|
+
* the session in two, and the second half would not see the first half's state.
|
|
6843
|
+
*/
|
|
6769
6844
|
captureSession(response) {
|
|
6770
6845
|
if (this.sessionId !== void 0) return;
|
|
6771
6846
|
const issued = response.headers.get("mcp-session-id");
|
|
@@ -7012,9 +7087,10 @@ function resolveRunProvider(options) {
|
|
|
7012
7087
|
`);
|
|
7013
7088
|
}
|
|
7014
7089
|
const parsedModel = parseModelId(options.model?.id);
|
|
7015
|
-
const modelInferredProvider = parsedModel.provider !== void 0 && getProviderProfile(parsedModel.provider) !== void 0 ? parsedModel.provider : void 0;
|
|
7090
|
+
const modelInferredProvider = parsedModel.provider !== void 0 && getProviderProfile$1(parsedModel.provider) !== void 0 ? parsedModel.provider : void 0;
|
|
7016
7091
|
const keyInferredProvider = inferProviderFromApiKey(options.agentOptions.apiKey);
|
|
7017
7092
|
const primary = options.agentOptions.providers?.routes?.[0]?.provider ?? keyInferredProvider ?? modelInferredProvider ?? detectPrimaryProvider();
|
|
7093
|
+
warnProviderPrecedenceOnce(modelInferredProvider, primary);
|
|
7018
7094
|
const effectiveModelId = modelInferredProvider !== void 0 && modelInferredProvider === primary ? parsedModel.name : options.model?.id ?? "claude-sonnet-4-6";
|
|
7019
7095
|
return { primary, effectiveModelId };
|
|
7020
7096
|
}
|
|
@@ -7043,8 +7119,10 @@ function buildLoopInputs(options, runId, userText, userImages) {
|
|
|
7043
7119
|
const credentialPoolStrategy = options.agentOptions.providers?.credentialPoolStrategy;
|
|
7044
7120
|
const extractToolCallsFromContent = options.agentOptions.providers?.routes?.[0]?.extractToolCallsFromContent;
|
|
7045
7121
|
const rateLimitSink = options.sendOptions.onRunEvent;
|
|
7122
|
+
const modelBaseUrl = options.model?.url;
|
|
7046
7123
|
const chain = resolveProviderChain({
|
|
7047
7124
|
primary,
|
|
7125
|
+
...modelBaseUrl !== void 0 ? { baseUrl: modelBaseUrl } : {},
|
|
7048
7126
|
...fallback !== void 0 ? { fallback } : {},
|
|
7049
7127
|
...apiKeys !== void 0 ? { apiKeys } : {},
|
|
7050
7128
|
...credentialPoolStrategy !== void 0 ? { credentialPoolStrategy } : {},
|
|
@@ -8448,22 +8526,33 @@ var LocalAgentMemory = class {
|
|
|
8448
8526
|
};
|
|
8449
8527
|
|
|
8450
8528
|
// src/internal/local-agent/local-agent-memory-direct.ts
|
|
8529
|
+
async function createAvailableAdapters(entries, workspaceCwd) {
|
|
8530
|
+
const available = [];
|
|
8531
|
+
for (const entry of entries) {
|
|
8532
|
+
const instance = await entry.createProvider(workspaceCwd);
|
|
8533
|
+
if (instance.isAvailable() === false) {
|
|
8534
|
+
diag(
|
|
8535
|
+
`[theokit-sdk] memory adapter "${instance.id}" reports itself unavailable (plugin "${entry.pluginName}") \u2014 skipping it. Check its credentials.
|
|
8536
|
+
`
|
|
8537
|
+
);
|
|
8538
|
+
continue;
|
|
8539
|
+
}
|
|
8540
|
+
available.push(instance);
|
|
8541
|
+
}
|
|
8542
|
+
return available;
|
|
8543
|
+
}
|
|
8451
8544
|
function buildAgentMemory(pluginManager, workspaceCwd, defaultContext) {
|
|
8452
8545
|
let resolved;
|
|
8453
8546
|
async function ensure() {
|
|
8454
8547
|
if (resolved !== void 0) return resolved;
|
|
8455
8548
|
const entries = pluginManager.aggregated.memoryProviders;
|
|
8456
|
-
const created =
|
|
8457
|
-
for (const entry of entries) {
|
|
8458
|
-
const instance = await entry.createProvider(workspaceCwd);
|
|
8459
|
-
created.push(instance);
|
|
8460
|
-
}
|
|
8549
|
+
const created = await createAvailableAdapters(entries, workspaceCwd);
|
|
8461
8550
|
for (const adapter of created) {
|
|
8462
8551
|
if (adapter.initialize !== void 0) {
|
|
8463
8552
|
await adapter.initialize();
|
|
8464
8553
|
}
|
|
8465
8554
|
}
|
|
8466
|
-
resolved = { adapters: created, initialized: true };
|
|
8555
|
+
resolved = { adapters: created, initialized: true, registered: entries.length };
|
|
8467
8556
|
return resolved;
|
|
8468
8557
|
}
|
|
8469
8558
|
function mergeContext(partial) {
|
|
@@ -8487,7 +8576,7 @@ function buildAgentMemory(pluginManager, workspaceCwd, defaultContext) {
|
|
|
8487
8576
|
const r = await ensure();
|
|
8488
8577
|
if (r.adapters.length === 0) {
|
|
8489
8578
|
throw new ConfigurationError(
|
|
8490
|
-
"No memory adapter registered. Pass a memory plugin in AgentOptions.plugins (e.g. supermemoryMemory({...}))."
|
|
8579
|
+
r.registered === 0 ? "No memory adapter registered. Pass a memory plugin in AgentOptions.plugins (e.g. supermemoryMemory({...}))." : `All ${r.registered} registered memory adapter(s) reported themselves unavailable \u2014 see the warnings naming each one. Check their credentials.`,
|
|
8491
8580
|
{ code: "no_memory_adapter" }
|
|
8492
8581
|
);
|
|
8493
8582
|
}
|
|
@@ -8791,7 +8880,7 @@ function localAgentRunUntil(agent, goal, options) {
|
|
|
8791
8880
|
async function* wrap() {
|
|
8792
8881
|
const { runUntilImpl } = await import('./run-until-HEQOUVU6.js');
|
|
8793
8882
|
const buildDeps = async () => {
|
|
8794
|
-
const { judgeCallImpl } = await import('./judge-call-
|
|
8883
|
+
const { judgeCallImpl } = await import('./judge-call-DWHAJATE.js');
|
|
8795
8884
|
const { getAgentFacade } = await import('./agent-factory-registry-ZVTABLEY.js');
|
|
8796
8885
|
const create = getAgentFacade().create;
|
|
8797
8886
|
return {
|
|
@@ -8812,19 +8901,19 @@ function localAgentRunUntil(agent, goal, options) {
|
|
|
8812
8901
|
}
|
|
8813
8902
|
function localAgentRunToCompletion(agent, message, options) {
|
|
8814
8903
|
async function run() {
|
|
8815
|
-
const { runToCompletionImpl } = await import('./run-to-completion-
|
|
8904
|
+
const { runToCompletionImpl } = await import('./run-to-completion-DRO77625.js');
|
|
8816
8905
|
return runToCompletionImpl({ send: (m, o) => agent.send(m, o) }, message, options);
|
|
8817
8906
|
}
|
|
8818
8907
|
return run();
|
|
8819
8908
|
}
|
|
8820
8909
|
async function* localAgentStreamToCompletion(agent, message, options) {
|
|
8821
|
-
const { streamToCompletionImpl } = await import('./stream-to-completion-
|
|
8910
|
+
const { streamToCompletionImpl } = await import('./stream-to-completion-QV5HCL3J.js');
|
|
8822
8911
|
return yield* streamToCompletionImpl({ send: (m, o) => agent.send(m, o) }, message, options);
|
|
8823
8912
|
}
|
|
8824
8913
|
async function localAgentFork(parent, options) {
|
|
8825
8914
|
const { forkAgentImpl } = await import('./fork-agent-RSV4E3EA.js');
|
|
8826
8915
|
const { getAgentFacade } = await import('./agent-factory-registry-ZVTABLEY.js');
|
|
8827
|
-
const { withPersonalityContext } = await import('./context-
|
|
8916
|
+
const { withPersonalityContext } = await import('./context-FDOON2DB.js');
|
|
8828
8917
|
const create = getAgentFacade().create;
|
|
8829
8918
|
return withPersonalityContext(
|
|
8830
8919
|
{ slug: parent.personalitySlugSnapshot, isFork: true },
|
|
@@ -9074,6 +9163,15 @@ ${recalled}
|
|
|
9074
9163
|
${args.userText}`;
|
|
9075
9164
|
return typeof args.original === "string" ? wrapped : { ...args.original, text: wrapped };
|
|
9076
9165
|
}
|
|
9166
|
+
async function runCalledATool(run) {
|
|
9167
|
+
try {
|
|
9168
|
+
for await (const event of run.stream()) {
|
|
9169
|
+
if (event.type === "tool_call") return true;
|
|
9170
|
+
}
|
|
9171
|
+
} catch {
|
|
9172
|
+
}
|
|
9173
|
+
return false;
|
|
9174
|
+
}
|
|
9077
9175
|
function wrapRunWithPostReplyHook(args) {
|
|
9078
9176
|
const handlers = args.pluginManager.hooksFor("post_assistant_reply");
|
|
9079
9177
|
if (handlers.length === 0) return args.run;
|
|
@@ -9085,6 +9183,12 @@ function wrapRunWithPostReplyHook(args) {
|
|
|
9085
9183
|
reply: replyText,
|
|
9086
9184
|
agentId: args.agentId,
|
|
9087
9185
|
runId: result.id,
|
|
9186
|
+
// #358 — whether this reply is safely replayable. A consumer (the semantic cache) must not
|
|
9187
|
+
// re-serve an answer produced by a tool call, and had nothing to key on. The run knows:
|
|
9188
|
+
// `stream()` replays its buffered events after `wait()` (ADR 0006), so a `tool_call` among
|
|
9189
|
+
// them is the signal. Computed here, inside a path that only runs when a hook is registered
|
|
9190
|
+
// and is already fire-and-forget, so it never lands on the caller's critical path.
|
|
9191
|
+
usedTools: await runCalledATool(args.run),
|
|
9088
9192
|
...args.options.memoryContext !== void 0 ? { memoryContext: args.options.memoryContext } : {}
|
|
9089
9193
|
};
|
|
9090
9194
|
void args.pluginManager.runPostAssistantReplyHooks(ctx);
|
|
@@ -9205,7 +9309,7 @@ async function executeSendLocked(inputs, message, options) {
|
|
|
9205
9309
|
function buildCompletionCheckDeps() {
|
|
9206
9310
|
return {
|
|
9207
9311
|
judge: async (ctx, opts) => {
|
|
9208
|
-
const { judgeCallImpl } = await import('./judge-call-
|
|
9312
|
+
const { judgeCallImpl } = await import('./judge-call-DWHAJATE.js');
|
|
9209
9313
|
const { getAgentFacade } = await import('./agent-factory-registry-ZVTABLEY.js');
|
|
9210
9314
|
return judgeCallImpl(ctx, opts, { create: getAgentFacade().create });
|
|
9211
9315
|
}
|
|
@@ -9257,8 +9361,9 @@ var LocalAgent = class {
|
|
|
9257
9361
|
options;
|
|
9258
9362
|
workspaceCwd;
|
|
9259
9363
|
/**
|
|
9260
|
-
*
|
|
9261
|
-
* `~/.theokit`; set `local.
|
|
9364
|
+
* Directory for the native Claude-shaped session transcript. Default
|
|
9365
|
+
* `~/.theokit`; set `local.sessionDir: "~/.claude"` for Claude Code CLI interop.
|
|
9366
|
+
* (`local.baseDir` is the deprecated name for the same option — #301.)
|
|
9262
9367
|
*/
|
|
9263
9368
|
transcriptBaseDir;
|
|
9264
9369
|
/**
|
|
@@ -9308,7 +9413,7 @@ var LocalAgent = class {
|
|
|
9308
9413
|
this.model = normalizeModel(options.model);
|
|
9309
9414
|
this.options = options;
|
|
9310
9415
|
this.workspaceCwd = resolveCwd(options.local?.cwd);
|
|
9311
|
-
this.transcriptBaseDir =
|
|
9416
|
+
this.transcriptBaseDir = resolveSessionDir(options.local);
|
|
9312
9417
|
this.sessionStore = options.local?.sessionStore ?? new FsSessionStore({ baseDir: this.transcriptBaseDir, cwd: this.workspaceCwd });
|
|
9313
9418
|
this.settingSourcesIncludeProject = includesSetting(options, "project");
|
|
9314
9419
|
this.settingSourcesIncludePlugins = includesSetting(options, "plugins");
|
|
@@ -9611,9 +9716,6 @@ var LocalAgent = class {
|
|
|
9611
9716
|
function resolveCwd(cwd) {
|
|
9612
9717
|
return (Array.isArray(cwd) ? cwd[0] : cwd) ?? process.cwd();
|
|
9613
9718
|
}
|
|
9614
|
-
function resolveBaseDir(baseDir) {
|
|
9615
|
-
return baseDir === void 0 ? defaultBaseDir() : expandTilde(baseDir);
|
|
9616
|
-
}
|
|
9617
9719
|
function includesSetting(options, source) {
|
|
9618
9720
|
const sources = options.local?.settingSources;
|
|
9619
9721
|
return sources !== void 0 && (sources.includes(source) || sources.includes("all"));
|
|
@@ -9687,27 +9789,37 @@ async function maybeInjectHandoffTools(options) {
|
|
|
9687
9789
|
tools: [...existingTools, ...handoffTools]
|
|
9688
9790
|
};
|
|
9689
9791
|
}
|
|
9792
|
+
function keyWillFlowToProvider(apiKey, provider) {
|
|
9793
|
+
if (isFixtureApiKey(apiKey)) return false;
|
|
9794
|
+
if (getConfiguredBaseUrl() !== void 0) return false;
|
|
9795
|
+
if (provider === void 0) return false;
|
|
9796
|
+
const profile = getProviderProfile(provider);
|
|
9797
|
+
if (profile === void 0) return false;
|
|
9798
|
+
return profile.authType !== "none";
|
|
9799
|
+
}
|
|
9800
|
+
function missingApiKeyMessage() {
|
|
9801
|
+
const present = presentProviderCredentialEnvVars();
|
|
9802
|
+
const base = `Missing API key \u2014 set ${API_KEY_ENV_VAR}, or pass \`apiKey\` to Agent.create()`;
|
|
9803
|
+
if (present.length === 0) return `${base}.`;
|
|
9804
|
+
return `${base}. ${present.join(" and ")} ${present.length === 1 ? "is" : "are"} set, but a provider credential is not read from the environment automatically \u2014 pass it explicitly, e.g. \`Agent.create({ apiKey: process.env.${present[0]}, ... })\`.`;
|
|
9805
|
+
}
|
|
9690
9806
|
async function createLocalAgent(options) {
|
|
9691
9807
|
const apiKey = resolveApiKey(options.apiKey);
|
|
9692
9808
|
if (apiKey === void 0) {
|
|
9693
|
-
throw new AuthenticationError(
|
|
9809
|
+
throw new AuthenticationError(missingApiKeyMessage(), { code: "missing_api_key" });
|
|
9694
9810
|
}
|
|
9695
|
-
const
|
|
9811
|
+
const provider = providerFromModelId(normalizeModel(options.model)?.id);
|
|
9812
|
+
const willFlowToProvider = keyWillFlowToProvider(apiKey, provider);
|
|
9696
9813
|
const shape = validateApiKeyShape(apiKey, {
|
|
9697
9814
|
strict: willFlowToProvider,
|
|
9698
9815
|
// `options.model` is already normalized by `runCreateUnderSpan`; `normalizeModel`
|
|
9699
9816
|
// here is the idempotent narrowing of the widened public type (`{id}` passes
|
|
9700
9817
|
// through by reference) — cleaner than an `as` cast.
|
|
9701
|
-
...willFlowToProvider ? { provider
|
|
9818
|
+
...willFlowToProvider ? { provider } : {}
|
|
9702
9819
|
});
|
|
9703
9820
|
if (shape.malformed) {
|
|
9704
9821
|
throw new AuthenticationError(shape.message, { code: "malformed_api_key" });
|
|
9705
9822
|
}
|
|
9706
|
-
if (!isFixtureApiKey(apiKey) && getConfiguredBaseUrl() === void 0 && !shouldUseRealLocalRuntime(apiKey)) {
|
|
9707
|
-
throw new AuthenticationError("Invalid API key", {
|
|
9708
|
-
code: "authentication_error"
|
|
9709
|
-
});
|
|
9710
|
-
}
|
|
9711
9823
|
const agent = new LocalAgent(options);
|
|
9712
9824
|
await agent.initialize();
|
|
9713
9825
|
return agent;
|
|
@@ -9828,10 +9940,10 @@ async function setAgentName(agentId, name) {
|
|
|
9828
9940
|
updateRegisteredAgent(agentId, { name });
|
|
9829
9941
|
await flushRegistrySaves();
|
|
9830
9942
|
}
|
|
9831
|
-
async function getRegisteredAgentOrThrow(agentId) {
|
|
9943
|
+
async function getRegisteredAgentOrThrow(agentId, cwd = process.cwd()) {
|
|
9832
9944
|
let agent = getRegisteredAgent(agentId);
|
|
9833
9945
|
if (agent === void 0) {
|
|
9834
|
-
await hydrateRegistryFromDisk(
|
|
9946
|
+
await hydrateRegistryFromDisk(cwd);
|
|
9835
9947
|
agent = getRegisteredAgent(agentId);
|
|
9836
9948
|
}
|
|
9837
9949
|
if (agent === void 0) {
|
|
@@ -9839,6 +9951,22 @@ async function getRegisteredAgentOrThrow(agentId) {
|
|
|
9839
9951
|
}
|
|
9840
9952
|
return agent;
|
|
9841
9953
|
}
|
|
9954
|
+
function paginateByKey(all, keyOf, limit, cursor, sortByKey) {
|
|
9955
|
+
if (limit === void 0) return { items: [...all] };
|
|
9956
|
+
const ordered = sortByKey ? [...all].sort((a, b) => {
|
|
9957
|
+
const ka = keyOf(a);
|
|
9958
|
+
const kb = keyOf(b);
|
|
9959
|
+
return ka < kb ? -1 : ka > kb ? 1 : 0;
|
|
9960
|
+
}) : [...all];
|
|
9961
|
+
const startIndex = cursor === void 0 ? 0 : ordered.findIndex((item) => keyOf(item) === cursor) + 1;
|
|
9962
|
+
const page = ordered.slice(startIndex, startIndex + limit);
|
|
9963
|
+
const hasMore = startIndex + limit < ordered.length;
|
|
9964
|
+
const last = page[page.length - 1];
|
|
9965
|
+
return {
|
|
9966
|
+
items: page,
|
|
9967
|
+
...hasMore && last !== void 0 ? { nextCursor: keyOf(last) } : {}
|
|
9968
|
+
};
|
|
9969
|
+
}
|
|
9842
9970
|
|
|
9843
9971
|
// src/agent.ts
|
|
9844
9972
|
var streamObjectImport;
|
|
@@ -9892,7 +10020,22 @@ var Agent = class _Agent {
|
|
|
9892
10020
|
}
|
|
9893
10021
|
}
|
|
9894
10022
|
/**
|
|
9895
|
-
* One-shot prompt: create an agent, send a single message, wait, dispose
|
|
10023
|
+
* One-shot prompt: create an agent, send a single message, wait, **dispose**.
|
|
10024
|
+
*
|
|
10025
|
+
* `Agent.prompt` is STATIC and owns the agent's whole lifecycle. To send to an
|
|
10026
|
+
* agent you already hold, use the instance method — `agent.send(message)` —
|
|
10027
|
+
* which keeps the conversation and does not dispose anything:
|
|
10028
|
+
*
|
|
10029
|
+
* ```ts
|
|
10030
|
+
* const agent = await Agent.create({ ... });
|
|
10031
|
+
* const run = await agent.send("first"); // NOT agent.prompt(...)
|
|
10032
|
+
* const run2 = await agent.send("follow-up"); // full context retained
|
|
10033
|
+
* ```
|
|
10034
|
+
*
|
|
10035
|
+
* There is no `agent.prompt()` (#302). The natural sentence for the second
|
|
10036
|
+
* operation is "prompt the agent", so it is the method people reach for; the
|
|
10037
|
+
* two differ in whether the agent survives the call, which is why they do not
|
|
10038
|
+
* share a name.
|
|
9896
10039
|
*
|
|
9897
10040
|
* When `options.throwOnError === true`, rejects with `AgentRunError` if
|
|
9898
10041
|
* the run terminates with `status: 'error'` (instead of resolving with the
|
|
@@ -9963,7 +10106,7 @@ var Agent = class _Agent {
|
|
|
9963
10106
|
* @public
|
|
9964
10107
|
*/
|
|
9965
10108
|
static async generateObject(options) {
|
|
9966
|
-
const { generateObjectImpl } = await import('./generate-object-
|
|
10109
|
+
const { generateObjectImpl } = await import('./generate-object-N5MDZUJI.js');
|
|
9967
10110
|
return generateObjectImpl(options, {
|
|
9968
10111
|
create: (opts) => _Agent.create(opts),
|
|
9969
10112
|
delete: (agentId) => _Agent.delete(agentId)
|
|
@@ -9987,7 +10130,7 @@ var Agent = class _Agent {
|
|
|
9987
10130
|
delete: (agentId) => _Agent.delete(agentId)
|
|
9988
10131
|
};
|
|
9989
10132
|
async function* wrapper() {
|
|
9990
|
-
streamObjectImport ??= import('./stream-object-
|
|
10133
|
+
streamObjectImport ??= import('./stream-object-L57K4OFS.js');
|
|
9991
10134
|
const { streamObjectImpl } = await streamObjectImport;
|
|
9992
10135
|
yield* streamObjectImpl(options, deps);
|
|
9993
10136
|
}
|
|
@@ -10011,7 +10154,7 @@ var Agent = class _Agent {
|
|
|
10011
10154
|
* @public
|
|
10012
10155
|
*/
|
|
10013
10156
|
static async batch(prompts, options) {
|
|
10014
|
-
const { batchImpl } = await import('./batch-
|
|
10157
|
+
const { batchImpl } = await import('./batch-2TGJMNCJ.js');
|
|
10015
10158
|
return batchImpl(prompts, options, { create: (opts) => _Agent.create(opts) });
|
|
10016
10159
|
}
|
|
10017
10160
|
/**
|
|
@@ -10055,34 +10198,57 @@ var Agent = class _Agent {
|
|
|
10055
10198
|
return fresh;
|
|
10056
10199
|
}
|
|
10057
10200
|
/**
|
|
10058
|
-
* List agents (local or cloud). M107 — `cwd` is READ
|
|
10059
|
-
* `limit`/`cursor`
|
|
10201
|
+
* List agents (local or cloud). M107 — `cwd` is READ, not ignored. B-115 (2026-08-19) —
|
|
10202
|
+
* `includeArchived` and `limit`/`cursor` are READ too now; see `ListAgentsOptions`'s doc for the
|
|
10203
|
+
* pagination contract and why the unlimited (no `limit`) case is unaffected.
|
|
10060
10204
|
*
|
|
10061
10205
|
* @public
|
|
10062
10206
|
*/
|
|
10063
10207
|
static async list(options = {}) {
|
|
10064
10208
|
const cwd = ("cwd" in options ? options.cwd : void 0) ?? process.cwd();
|
|
10065
10209
|
await hydrateRegistryFromDisk(cwd);
|
|
10066
|
-
const
|
|
10067
|
-
|
|
10210
|
+
const includeArchived = "includeArchived" in options ? options.includeArchived ?? false : false;
|
|
10211
|
+
const agents2 = listRegisteredAgents(options.runtime, cwd, includeArchived);
|
|
10212
|
+
const { items, nextCursor } = paginateByKey(
|
|
10213
|
+
agents2,
|
|
10214
|
+
(agent) => agent.agentId,
|
|
10215
|
+
options.limit,
|
|
10216
|
+
options.cursor,
|
|
10217
|
+
/* sortByKey */
|
|
10218
|
+
true
|
|
10219
|
+
);
|
|
10220
|
+
return {
|
|
10221
|
+
items: items.map((agent) => toAgentInfo(agent)),
|
|
10222
|
+
...nextCursor !== void 0 ? { nextCursor } : {}
|
|
10223
|
+
};
|
|
10068
10224
|
}
|
|
10069
10225
|
/**
|
|
10070
|
-
* Get metadata for a single agent.
|
|
10226
|
+
* Get metadata for a single agent. B-115 (2026-08-19) — `cwd` is READ now (see
|
|
10227
|
+
* `GetAgentOptions`'s doc); it used to be accepted and silently ignored.
|
|
10071
10228
|
*
|
|
10072
10229
|
* @public
|
|
10073
10230
|
*/
|
|
10074
|
-
static async get(agentId,
|
|
10075
|
-
const agent = await getRegisteredAgentOrThrow(agentId);
|
|
10231
|
+
static async get(agentId, options = {}) {
|
|
10232
|
+
const agent = await getRegisteredAgentOrThrow(agentId, options.cwd);
|
|
10076
10233
|
return toAgentInfo(agent);
|
|
10077
10234
|
}
|
|
10078
10235
|
/**
|
|
10079
|
-
* List runs for an agent.
|
|
10236
|
+
* List runs for an agent. B-115 (2026-08-19) — `cwd` and `limit`/`cursor` are READ now (see
|
|
10237
|
+
* `ListRunsOptions`'s doc); they used to be accepted and silently ignored.
|
|
10080
10238
|
*
|
|
10081
10239
|
* @public
|
|
10082
10240
|
*/
|
|
10083
|
-
static async listRuns(agentId,
|
|
10084
|
-
await getRegisteredAgentOrThrow(agentId);
|
|
10085
|
-
|
|
10241
|
+
static async listRuns(agentId, options = {}) {
|
|
10242
|
+
await getRegisteredAgentOrThrow(agentId, options.cwd);
|
|
10243
|
+
const { items, nextCursor } = paginateByKey(
|
|
10244
|
+
listRunsByAgent(agentId),
|
|
10245
|
+
(run) => run.id,
|
|
10246
|
+
options.limit,
|
|
10247
|
+
options.cursor,
|
|
10248
|
+
/* sortByKey */
|
|
10249
|
+
false
|
|
10250
|
+
);
|
|
10251
|
+
return { items, ...nextCursor !== void 0 ? { nextCursor } : {} };
|
|
10086
10252
|
}
|
|
10087
10253
|
/**
|
|
10088
10254
|
* Get a single run.
|
|
@@ -10149,7 +10315,7 @@ var Agent = class _Agent {
|
|
|
10149
10315
|
`No local agent "${agentId}" registered \u2014 compact targets local sessions.`
|
|
10150
10316
|
);
|
|
10151
10317
|
}
|
|
10152
|
-
const { compactSessionTranscript, buildDefaultSummarizer: buildDefaultSummarizer2 } = await import('./compact-session-
|
|
10318
|
+
const { compactSessionTranscript, buildDefaultSummarizer: buildDefaultSummarizer2 } = await import('./compact-session-K5LXTBPJ.js');
|
|
10153
10319
|
const { cwd, model, store } = await openLocalStore(reg);
|
|
10154
10320
|
return enqueueSessionWrite(
|
|
10155
10321
|
cwd,
|
|
@@ -10185,7 +10351,7 @@ var Agent = class _Agent {
|
|
|
10185
10351
|
`No local agent "${agentId}" registered \u2014 injectSessionTurn targets local sessions.`
|
|
10186
10352
|
);
|
|
10187
10353
|
}
|
|
10188
|
-
const { injectSessionTurn } = await import('./inject-session-
|
|
10354
|
+
const { injectSessionTurn } = await import('./inject-session-DDR6X6PC.js');
|
|
10189
10355
|
const { cwd, model, store } = await openLocalStore(reg);
|
|
10190
10356
|
await injectSessionTurn({
|
|
10191
10357
|
store,
|
|
@@ -10224,7 +10390,7 @@ var Agent = class _Agent {
|
|
|
10224
10390
|
`No local agent "${agentId}" registered \u2014 transcript targets local sessions.`
|
|
10225
10391
|
);
|
|
10226
10392
|
}
|
|
10227
|
-
const { readSessionMessages } = await import('./agent-session-store-
|
|
10393
|
+
const { readSessionMessages } = await import('./agent-session-store-P6V3FINW.js');
|
|
10228
10394
|
const { store } = await openLocalStore(reg);
|
|
10229
10395
|
return readSessionMessages(store, agentId);
|
|
10230
10396
|
}
|
|
@@ -10245,7 +10411,7 @@ var Agent = class _Agent {
|
|
|
10245
10411
|
*/
|
|
10246
10412
|
static async describe(agentId) {
|
|
10247
10413
|
const agent = await getRegisteredAgentOrThrow(agentId);
|
|
10248
|
-
const { loadSubagents: loadSubagents2 } = await import('./subagents-loader-
|
|
10414
|
+
const { loadSubagents: loadSubagents2 } = await import('./subagents-loader-J54ESLDV.js');
|
|
10249
10415
|
const settingSources = agent.options.local?.settingSources;
|
|
10250
10416
|
const subagents = await loadSubagents2(
|
|
10251
10417
|
agent.cwd ?? process.cwd(),
|
|
@@ -10312,12 +10478,13 @@ async function openLocalStore(reg) {
|
|
|
10312
10478
|
const cwd = reg.cwd ?? process.cwd();
|
|
10313
10479
|
const optModel = reg.options.model;
|
|
10314
10480
|
const model = reg.model?.id ?? (typeof optModel === "string" ? optModel : optModel?.id) ?? "unknown";
|
|
10315
|
-
const { FsSessionStore: FsSessionStore2 } = await import('./fs-session-store-
|
|
10316
|
-
const { defaultBaseDir: defaultBaseDir2, expandTilde: expandTilde2 } = await import('./session-transcript-
|
|
10317
|
-
const
|
|
10481
|
+
const { FsSessionStore: FsSessionStore2 } = await import('./fs-session-store-IN7JTTXD.js');
|
|
10482
|
+
const { defaultBaseDir: defaultBaseDir2, expandTilde: expandTilde2 } = await import('./session-transcript-AKDYYGXQ.js');
|
|
10483
|
+
const configuredSessionDir = reg.options.local?.sessionDir ?? reg.options.local?.baseDir;
|
|
10484
|
+
const baseDir = configuredSessionDir !== void 0 ? expandTilde2(configuredSessionDir) : defaultBaseDir2();
|
|
10318
10485
|
return { cwd, model, store: new FsSessionStore2({ baseDir, cwd }) };
|
|
10319
10486
|
}
|
|
10320
10487
|
|
|
10321
|
-
export { Agent, AgentBuilder, DEFAULT_AGENTIC_MODEL_ID, MEMORY_EMBEDDING_ADAPTERS, Tool, ToolError, UsageAccumulator, computeCost, generateCronId, getPricingEntry, openRouterMemoryEmbeddingProviderAdapter
|
|
10322
|
-
//# sourceMappingURL=chunk-
|
|
10323
|
-
//# sourceMappingURL=chunk-
|
|
10488
|
+
export { Agent, AgentBuilder, DEFAULT_AGENTIC_MODEL_ID, MEMORY_EMBEDDING_ADAPTERS, Tool, ToolError, UsageAccumulator, computeCost, generateCronId, getPricingEntry, openRouterMemoryEmbeddingProviderAdapter };
|
|
10489
|
+
//# sourceMappingURL=chunk-TPTZA6NI.js.map
|
|
10490
|
+
//# sourceMappingURL=chunk-TPTZA6NI.js.map
|