@theokit/sdk 4.23.0 → 4.25.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/dist/a2a/index.cjs +10 -171
- package/dist/a2a/index.cjs.map +1 -1
- package/dist/a2a/index.js +3 -170
- package/dist/a2a/index.js.map +1 -1
- package/dist/agent-factory-registry-UU46BUMU.cjs +16 -0
- package/dist/agent-factory-registry-UU46BUMU.cjs.map +1 -0
- package/dist/agent-factory-registry-ZVTABLEY.js +3 -0
- package/dist/agent-factory-registry-ZVTABLEY.js.map +1 -0
- package/dist/auth/index.cjs +63 -343
- package/dist/auth/index.cjs.map +1 -1
- package/dist/auth/index.js +6 -318
- package/dist/auth/index.js.map +1 -1
- package/dist/batch-2FSD2UNL.cjs +244 -0
- package/dist/batch-2FSD2UNL.cjs.map +1 -0
- package/dist/batch-MR2HKYMS.js +241 -0
- package/dist/batch-MR2HKYMS.js.map +1 -0
- package/dist/chunk-2HRYBRD7.cjs +31 -0
- package/dist/chunk-2HRYBRD7.cjs.map +1 -0
- package/dist/chunk-2MF3IE2D.cjs +2863 -0
- package/dist/chunk-2MF3IE2D.cjs.map +1 -0
- package/dist/chunk-2ONFGMBV.js +6 -0
- package/dist/chunk-2ONFGMBV.js.map +1 -0
- package/dist/chunk-2SFBB54R.js +23 -0
- package/dist/chunk-2SFBB54R.js.map +1 -0
- package/dist/chunk-2XLKLVVR.js +18 -0
- package/dist/chunk-2XLKLVVR.js.map +1 -0
- package/dist/chunk-4HKMQEPX.js +458 -0
- package/dist/chunk-4HKMQEPX.js.map +1 -0
- package/dist/chunk-4SXHEZIV.cjs +240 -0
- package/dist/chunk-4SXHEZIV.cjs.map +1 -0
- package/dist/chunk-4VPXM6UU.js +10 -0
- package/dist/chunk-4VPXM6UU.js.map +1 -0
- package/dist/chunk-4WL52CXU.cjs +148 -0
- package/dist/chunk-4WL52CXU.cjs.map +1 -0
- package/dist/chunk-5NBUH3NO.js +39 -0
- package/dist/chunk-5NBUH3NO.js.map +1 -0
- package/dist/chunk-5PZMMF4H.js +43 -0
- package/dist/chunk-5PZMMF4H.js.map +1 -0
- package/dist/chunk-6CLRANZA.js +289 -0
- package/dist/chunk-6CLRANZA.js.map +1 -0
- package/dist/chunk-6JSIEDKL.cjs +121 -0
- package/dist/chunk-6JSIEDKL.cjs.map +1 -0
- package/dist/chunk-6M4ODB2V.cjs +145 -0
- package/dist/chunk-6M4ODB2V.cjs.map +1 -0
- package/dist/chunk-6X6ID4MO.js +20 -0
- package/dist/chunk-6X6ID4MO.js.map +1 -0
- package/dist/chunk-77FOZCOT.js +165 -0
- package/dist/chunk-77FOZCOT.js.map +1 -0
- package/dist/chunk-7AD3ZTZL.js +25 -0
- package/dist/chunk-7AD3ZTZL.js.map +1 -0
- package/dist/chunk-7GFX45DD.js +57 -0
- package/dist/chunk-7GFX45DD.js.map +1 -0
- package/dist/chunk-7RMWOMDB.cjs +460 -0
- package/dist/chunk-7RMWOMDB.cjs.map +1 -0
- package/dist/chunk-7S7KKUO6.cjs +45 -0
- package/dist/chunk-7S7KKUO6.cjs.map +1 -0
- package/dist/chunk-7W7ZWMLQ.js +99 -0
- package/dist/chunk-7W7ZWMLQ.js.map +1 -0
- package/dist/chunk-A44COQJJ.cjs +353 -0
- package/dist/chunk-A44COQJJ.cjs.map +1 -0
- package/dist/chunk-AKSBP7OO.js +185 -0
- package/dist/chunk-AKSBP7OO.js.map +1 -0
- package/dist/chunk-ANIZEWTU.cjs +196 -0
- package/dist/chunk-ANIZEWTU.cjs.map +1 -0
- package/dist/chunk-BEURCLDV.cjs +139 -0
- package/dist/chunk-BEURCLDV.cjs.map +1 -0
- package/dist/chunk-BFWPZMG7.js +379 -0
- package/dist/chunk-BFWPZMG7.js.map +1 -0
- package/dist/chunk-BUUUWQMB.cjs +34 -0
- package/dist/chunk-BUUUWQMB.cjs.map +1 -0
- package/dist/chunk-BV2MWEMV.cjs +26 -0
- package/dist/chunk-BV2MWEMV.cjs.map +1 -0
- package/dist/chunk-BWT67BI4.cjs +268 -0
- package/dist/chunk-BWT67BI4.cjs.map +1 -0
- package/dist/chunk-BXV2QUIC.js +191 -0
- package/dist/chunk-BXV2QUIC.js.map +1 -0
- package/dist/chunk-C6Y6CWYD.cjs +44 -0
- package/dist/chunk-C6Y6CWYD.cjs.map +1 -0
- package/dist/chunk-C7PICHRF.cjs +68 -0
- package/dist/chunk-C7PICHRF.cjs.map +1 -0
- package/dist/chunk-CAH3G4IS.js +13 -0
- package/dist/chunk-CAH3G4IS.js.map +1 -0
- package/dist/chunk-CJ6YJ2L3.cjs +10590 -0
- package/dist/chunk-CJ6YJ2L3.cjs.map +1 -0
- package/dist/chunk-D42XHI4O.cjs +565 -0
- package/dist/chunk-D42XHI4O.cjs.map +1 -0
- package/dist/chunk-DGRZNMTU.js +104 -0
- package/dist/chunk-DGRZNMTU.js.map +1 -0
- package/dist/chunk-DUK5WMKJ.js +71 -0
- package/dist/chunk-DUK5WMKJ.js.map +1 -0
- package/dist/chunk-EEZ7CFMM.js +14 -0
- package/dist/chunk-EEZ7CFMM.js.map +1 -0
- package/dist/chunk-EPYZOCOL.cjs +82 -0
- package/dist/chunk-EPYZOCOL.cjs.map +1 -0
- package/dist/chunk-EVADEGM7.cjs +168 -0
- package/dist/chunk-EVADEGM7.cjs.map +1 -0
- package/dist/chunk-F3XVLFLM.js +10573 -0
- package/dist/chunk-F3XVLFLM.js.map +1 -0
- package/dist/chunk-FD2UT76F.js +3 -0
- package/dist/chunk-FD2UT76F.js.map +1 -0
- package/dist/chunk-FV3YEMQ7.js +179 -0
- package/dist/chunk-FV3YEMQ7.js.map +1 -0
- package/dist/chunk-G2F67XUR.cjs +184 -0
- package/dist/chunk-G2F67XUR.cjs.map +1 -0
- package/dist/chunk-G6GO6BXD.js +994 -0
- package/dist/chunk-G6GO6BXD.js.map +1 -0
- package/dist/chunk-GIW4L6HY.cjs +27 -0
- package/dist/chunk-GIW4L6HY.cjs.map +1 -0
- package/dist/chunk-GJAGKFTR.js +74 -0
- package/dist/chunk-GJAGKFTR.js.map +1 -0
- package/dist/chunk-HFPGOTVF.cjs +324 -0
- package/dist/chunk-HFPGOTVF.cjs.map +1 -0
- package/dist/chunk-HRA3CPGG.js +486 -0
- package/dist/chunk-HRA3CPGG.js.map +1 -0
- package/dist/chunk-HZQEDNF6.js +66 -0
- package/dist/chunk-HZQEDNF6.js.map +1 -0
- package/dist/chunk-IT3PWBW4.cjs +19 -0
- package/dist/chunk-IT3PWBW4.cjs.map +1 -0
- package/dist/chunk-JD74LN7R.cjs +171 -0
- package/dist/chunk-JD74LN7R.cjs.map +1 -0
- package/dist/chunk-JTFYYKDT.js +135 -0
- package/dist/chunk-JTFYYKDT.js.map +1 -0
- package/dist/chunk-K2BQQ445.js +30 -0
- package/dist/chunk-K2BQQ445.js.map +1 -0
- package/dist/chunk-KAP4GJHO.js +546 -0
- package/dist/chunk-KAP4GJHO.js.map +1 -0
- package/dist/chunk-KIO7QFIV.cjs +223 -0
- package/dist/chunk-KIO7QFIV.cjs.map +1 -0
- package/dist/chunk-KSKU6JY6.cjs +71 -0
- package/dist/chunk-KSKU6JY6.cjs.map +1 -0
- package/dist/chunk-LSLPF6OI.cjs +192 -0
- package/dist/chunk-LSLPF6OI.cjs.map +1 -0
- package/dist/chunk-LU7VALW5.js +312 -0
- package/dist/chunk-LU7VALW5.js.map +1 -0
- package/dist/chunk-LUSXDZPV.cjs +296 -0
- package/dist/chunk-LUSXDZPV.cjs.map +1 -0
- package/dist/chunk-M72RJVPC.js +69 -0
- package/dist/chunk-M72RJVPC.js.map +1 -0
- package/dist/chunk-MQLCZ4HJ.cjs +1010 -0
- package/dist/chunk-MQLCZ4HJ.cjs.map +1 -0
- package/dist/chunk-MUUQ2WFJ.cjs +4 -0
- package/dist/chunk-MUUQ2WFJ.cjs.map +1 -0
- package/dist/chunk-MZ5ZRORA.cjs +496 -0
- package/dist/chunk-MZ5ZRORA.cjs.map +1 -0
- package/dist/chunk-N24XBYNX.cjs +140 -0
- package/dist/chunk-N24XBYNX.cjs.map +1 -0
- package/dist/chunk-NINIJCHU.cjs +23 -0
- package/dist/chunk-NINIJCHU.cjs.map +1 -0
- package/dist/chunk-NRSH7RJY.js +2841 -0
- package/dist/chunk-NRSH7RJY.js.map +1 -0
- package/dist/chunk-OIYQBUW4.cjs +111 -0
- package/dist/chunk-OIYQBUW4.cjs.map +1 -0
- package/dist/chunk-PNVDQL5Y.cjs +15 -0
- package/dist/chunk-PNVDQL5Y.cjs.map +1 -0
- package/dist/chunk-POQT2OIF.js +214 -0
- package/dist/chunk-POQT2OIF.js.map +1 -0
- package/dist/chunk-QUTUJ6P6.cjs +76 -0
- package/dist/chunk-QUTUJ6P6.cjs.map +1 -0
- package/dist/chunk-S2BBRVQX.js +68 -0
- package/dist/chunk-S2BBRVQX.js.map +1 -0
- package/dist/chunk-S5RCBTSF.js +145 -0
- package/dist/chunk-S5RCBTSF.js.map +1 -0
- package/dist/chunk-S7OEXQMI.cjs +136 -0
- package/dist/chunk-S7OEXQMI.cjs.map +1 -0
- package/dist/chunk-SKWVAQAY.js +129 -0
- package/dist/chunk-SKWVAQAY.js.map +1 -0
- package/dist/chunk-SQLZ7ONU.js +152 -0
- package/dist/chunk-SQLZ7ONU.js.map +1 -0
- package/dist/chunk-TIZ4TS5V.cjs +72 -0
- package/dist/chunk-TIZ4TS5V.cjs.map +1 -0
- package/dist/chunk-TQKCU7CL.js +142 -0
- package/dist/chunk-TQKCU7CL.js.map +1 -0
- package/dist/chunk-U54XCYG3.js +116 -0
- package/dist/chunk-U54XCYG3.js.map +1 -0
- package/dist/chunk-U6QGZHPN.js +29 -0
- package/dist/chunk-U6QGZHPN.js.map +1 -0
- package/dist/chunk-UCFONJBG.js +79 -0
- package/dist/chunk-UCFONJBG.js.map +1 -0
- package/dist/chunk-UJ7IQJAG.js +141 -0
- package/dist/chunk-UJ7IQJAG.js.map +1 -0
- package/dist/chunk-UVNG67DG.js +253 -0
- package/dist/chunk-UVNG67DG.js.map +1 -0
- package/dist/chunk-V4XRLPEF.js +25 -0
- package/dist/chunk-V4XRLPEF.js.map +1 -0
- package/dist/chunk-VJ26EKGJ.cjs +28 -0
- package/dist/chunk-VJ26EKGJ.cjs.map +1 -0
- package/dist/chunk-VK7MAV65.cjs +90 -0
- package/dist/chunk-VK7MAV65.cjs.map +1 -0
- package/dist/chunk-VYCKUKPA.cjs +106 -0
- package/dist/chunk-VYCKUKPA.cjs.map +1 -0
- package/dist/chunk-VYHJZVL5.cjs +29 -0
- package/dist/chunk-VYHJZVL5.cjs.map +1 -0
- package/dist/chunk-WA3FO4R7.js +155 -0
- package/dist/chunk-WA3FO4R7.js.map +1 -0
- package/dist/chunk-WJVHMTKB.cjs +12 -0
- package/dist/chunk-WJVHMTKB.cjs.map +1 -0
- package/dist/chunk-WLKFWQSJ.js +333 -0
- package/dist/chunk-WLKFWQSJ.js.map +1 -0
- package/dist/chunk-WPZTYOUX.cjs +59 -0
- package/dist/chunk-WPZTYOUX.cjs.map +1 -0
- package/dist/chunk-X2FR4OIT.js +27 -0
- package/dist/chunk-X2FR4OIT.js.map +1 -0
- package/dist/chunk-XIG2IE3L.js +134 -0
- package/dist/chunk-XIG2IE3L.js.map +1 -0
- package/dist/chunk-YLQQX5W2.cjs +20 -0
- package/dist/chunk-YLQQX5W2.cjs.map +1 -0
- package/dist/chunk-YPEPCZHF.cjs +147 -0
- package/dist/chunk-YPEPCZHF.cjs.map +1 -0
- package/dist/chunk-YPQF26X7.cjs +8 -0
- package/dist/chunk-YPQF26X7.cjs.map +1 -0
- package/dist/chunk-YU6KON2I.cjs +160 -0
- package/dist/chunk-YU6KON2I.cjs.map +1 -0
- package/dist/chunk-Z2OC3UIW.cjs +388 -0
- package/dist/chunk-Z2OC3UIW.cjs.map +1 -0
- package/dist/chunk-ZZWTY3RX.js +230 -0
- package/dist/chunk-ZZWTY3RX.js.map +1 -0
- package/dist/compact-session-OO2GD76G.js +17 -0
- package/dist/compact-session-OO2GD76G.js.map +1 -0
- package/dist/compact-session-OO7NVWPB.cjs +54 -0
- package/dist/compact-session-OO7NVWPB.cjs.map +1 -0
- package/dist/compaction.cjs +54 -303
- package/dist/compaction.cjs.map +1 -1
- package/dist/compaction.js +3 -292
- package/dist/compaction.js.map +1 -1
- package/dist/concurrency.cjs +9 -81
- package/dist/concurrency.cjs.map +1 -1
- package/dist/concurrency.js +5 -80
- package/dist/concurrency.js.map +1 -1
- package/dist/context-GWANQLX4.js +5 -0
- package/dist/context-GWANQLX4.js.map +1 -0
- package/dist/context-KNWVTZSY.cjs +22 -0
- package/dist/context-KNWVTZSY.cjs.map +1 -0
- package/dist/cron.cjs +44 -20675
- package/dist/cron.cjs.map +1 -1
- package/dist/cron.js +38 -20675
- package/dist/cron.js.map +1 -1
- package/dist/errors.cjs +78 -470
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.js +2 -455
- package/dist/errors.js.map +1 -1
- package/dist/eval.cjs +72 -20410
- package/dist/eval.cjs.map +1 -1
- package/dist/eval.js +59 -20401
- package/dist/eval.js.map +1 -1
- package/dist/executor-ORJS5GV2.js +981 -0
- package/dist/executor-ORJS5GV2.js.map +1 -0
- package/dist/executor-Y4MKPIUD.cjs +985 -0
- package/dist/executor-Y4MKPIUD.cjs.map +1 -0
- package/dist/filesystem/index.cjs +7 -112
- package/dist/filesystem/index.cjs.map +1 -1
- package/dist/filesystem/index.js +4 -109
- package/dist/filesystem/index.js.map +1 -1
- package/dist/fork-agent-RSV4E3EA.js +61 -0
- package/dist/fork-agent-RSV4E3EA.js.map +1 -0
- package/dist/fork-agent-Y2IK2RYU.cjs +64 -0
- package/dist/fork-agent-Y2IK2RYU.cjs.map +1 -0
- package/dist/fs-session-store-KAUQYSGI.cjs +17 -0
- package/dist/fs-session-store-KAUQYSGI.cjs.map +1 -0
- package/dist/fs-session-store-ZKB5NN37.js +8 -0
- package/dist/fs-session-store-ZKB5NN37.js.map +1 -0
- package/dist/generate-object-H3RNAM6S.cjs +20 -0
- package/dist/generate-object-H3RNAM6S.cjs.map +1 -0
- package/dist/generate-object-YJPDV5BS.js +7 -0
- package/dist/generate-object-YJPDV5BS.js.map +1 -0
- package/dist/index-manager-CB6I7XFQ.cjs +19 -0
- package/dist/index-manager-CB6I7XFQ.cjs.map +1 -0
- package/dist/index-manager-L27Q3QAC.js +10 -0
- package/dist/index-manager-L27Q3QAC.js.map +1 -0
- package/dist/index.cjs +371 -22887
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +92 -22712
- package/dist/index.js.map +1 -1
- package/dist/inject-session-6MJUSGZP.cjs +27 -0
- package/dist/inject-session-6MJUSGZP.cjs.map +1 -0
- package/dist/inject-session-KOFHS5K3.js +25 -0
- package/dist/inject-session-KOFHS5K3.js.map +1 -0
- package/dist/internal/auth/credential-store.d.ts +20 -3
- package/dist/internal/persistence/index.cjs +93 -508
- package/dist/internal/persistence/index.cjs.map +1 -1
- package/dist/internal/persistence/index.js +11 -489
- package/dist/internal/persistence/index.js.map +1 -1
- package/dist/internal/security/index.cjs +44 -361
- package/dist/internal/security/index.cjs.map +1 -1
- package/dist/internal/security/index.js +4 -355
- package/dist/internal/security/index.js.map +1 -1
- package/dist/judge-call-7CF7D334.cjs +95 -0
- package/dist/judge-call-7CF7D334.cjs.map +1 -0
- package/dist/judge-call-VIMNK5TA.js +92 -0
- package/dist/judge-call-VIMNK5TA.js.map +1 -0
- package/dist/models.cjs +24 -913
- package/dist/models.cjs.map +1 -1
- package/dist/models.js +11 -901
- package/dist/models.js.map +1 -1
- package/dist/oauth-transaction-store-7CKHPQRN.cjs +32 -0
- package/dist/oauth-transaction-store-7CKHPQRN.cjs.map +1 -0
- package/dist/oauth-transaction-store-W74I6EFD.js +3 -0
- package/dist/oauth-transaction-store-W74I6EFD.js.map +1 -0
- package/dist/path-safety.cjs +31 -200
- package/dist/path-safety.cjs.map +1 -1
- package/dist/path-safety.js +3 -197
- package/dist/path-safety.js.map +1 -1
- package/dist/persistence.cjs +73 -393
- package/dist/persistence.cjs.map +1 -1
- package/dist/persistence.js +9 -381
- package/dist/persistence.js.map +1 -1
- package/dist/project.cjs +8 -112
- package/dist/project.cjs.map +1 -1
- package/dist/project.js +6 -110
- package/dist/project.js.map +1 -1
- package/dist/registry-34IWWDQQ.js +9 -0
- package/dist/registry-34IWWDQQ.js.map +1 -0
- package/dist/registry-APYDISL6.cjs +46 -0
- package/dist/registry-APYDISL6.cjs.map +1 -0
- package/dist/retry.cjs +7 -87
- package/dist/retry.cjs.map +1 -1
- package/dist/retry.js +3 -90
- package/dist/retry.js.map +1 -1
- package/dist/run-to-completion-J73I6IY4.cjs +48 -0
- package/dist/run-to-completion-J73I6IY4.cjs.map +1 -0
- package/dist/run-to-completion-JDPIUKSH.js +3 -0
- package/dist/run-to-completion-JDPIUKSH.js.map +1 -0
- package/dist/run-until-2PX4QBHZ.js +168 -0
- package/dist/run-until-2PX4QBHZ.js.map +1 -0
- package/dist/run-until-DB3LVGZS.cjs +171 -0
- package/dist/run-until-DB3LVGZS.cjs.map +1 -0
- package/dist/sandbox/index.cjs +35 -337
- package/dist/sandbox/index.cjs.map +1 -1
- package/dist/sandbox/index.js +7 -323
- package/dist/sandbox/index.js.map +1 -1
- package/dist/sanitize/index.cjs +5 -112
- package/dist/sanitize/index.cjs.map +1 -1
- package/dist/sanitize/index.js +1 -114
- package/dist/sanitize/index.js.map +1 -1
- package/dist/server/auth/index.cjs +35 -175
- package/dist/server/auth/index.cjs.map +1 -1
- package/dist/server/auth/index.js +7 -161
- package/dist/server/auth/index.js.map +1 -1
- package/dist/server/errors-envelope.cjs +17 -328
- package/dist/server/errors-envelope.cjs.map +1 -1
- package/dist/server/errors-envelope.js +4 -317
- package/dist/server/errors-envelope.js.map +1 -1
- package/dist/session-transcript-LPNZR3YS.cjs +46 -0
- package/dist/session-transcript-LPNZR3YS.cjs.map +1 -0
- package/dist/session-transcript-T7LGJUGW.js +5 -0
- package/dist/session-transcript-T7LGJUGW.js.map +1 -0
- package/dist/skills.cjs +12 -280
- package/dist/skills.cjs.map +1 -1
- package/dist/skills.js +4 -282
- package/dist/skills.js.map +1 -1
- package/dist/stream-object-QEQJJDTI.cjs +20 -0
- package/dist/stream-object-QEQJJDTI.cjs.map +1 -0
- package/dist/stream-object-WUQSSRY2.js +7 -0
- package/dist/stream-object-WUQSSRY2.js.map +1 -0
- package/dist/stream-to-completion-DFJ5T3BK.js +30 -0
- package/dist/stream-to-completion-DFJ5T3BK.js.map +1 -0
- package/dist/stream-to-completion-H2MHISSK.cjs +32 -0
- package/dist/stream-to-completion-H2MHISSK.cjs.map +1 -0
- package/dist/subagents.cjs +2 -8
- package/dist/subagents.cjs.map +1 -1
- package/dist/subagents.js +1 -7
- package/dist/subagents.js.map +1 -1
- package/dist/subscription/index.cjs +4 -17
- package/dist/subscription/index.cjs.map +1 -1
- package/dist/subscription/index.js +3 -16
- package/dist/subscription/index.js.map +1 -1
- package/dist/task-store.cjs +16 -258
- package/dist/task-store.cjs.map +1 -1
- package/dist/task-store.js +4 -259
- package/dist/task-store.js.map +1 -1
- package/dist/workflow.cjs +71 -2797
- package/dist/workflow.cjs.map +1 -1
- package/dist/workflow.js +8 -2812
- package/dist/workflow.js.map +1 -1
- package/package.json +1 -1
package/dist/sandbox/index.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LocalSandbox, shellEscapePosix } from '../chunk-SKWVAQAY.js';
|
|
2
|
+
export { LocalSandbox, SandboxBackend, SandboxNotAvailableError, SandboxSecurityError, resolveSandbox } from '../chunk-SKWVAQAY.js';
|
|
3
|
+
import '../chunk-7GFX45DD.js';
|
|
4
|
+
import { TheokitAgentError } from '../chunk-WLKFWQSJ.js';
|
|
5
|
+
import { redactSecrets } from '../chunk-JTFYYKDT.js';
|
|
6
|
+
import { execFileSync } from 'child_process';
|
|
2
7
|
import { existsSync, mkdtempSync, writeFileSync, rmSync } from 'fs';
|
|
3
8
|
import path, { dirname, join } from 'path';
|
|
4
9
|
import { tmpdir } from 'os';
|
|
5
|
-
import { mkdir, writeFile } from 'fs/promises';
|
|
6
10
|
|
|
7
|
-
// src/sandbox/bwrap.ts
|
|
8
11
|
function buildBwrapArgv(mode, opts) {
|
|
9
12
|
if (mode === "danger-full-access") return null;
|
|
10
13
|
const cwd = path.resolve(opts.cwd);
|
|
@@ -106,309 +109,6 @@ function resetBwrapMemo() {
|
|
|
106
109
|
memo = void 0;
|
|
107
110
|
}
|
|
108
111
|
|
|
109
|
-
// src/internal/security/redact.ts
|
|
110
|
-
var REDACT_ENABLED = readEnvOnce();
|
|
111
|
-
function readEnvOnce() {
|
|
112
|
-
const raw = process.env.THEOKIT_REDACT_SECRETS;
|
|
113
|
-
if (raw === void 0) return true;
|
|
114
|
-
return ["1", "true", "yes", "on"].includes(raw.toLowerCase());
|
|
115
|
-
}
|
|
116
|
-
var warnedOptOut = false;
|
|
117
|
-
if (!REDACT_ENABLED && !warnedOptOut) {
|
|
118
|
-
process.stderr.write(
|
|
119
|
-
"[theokit-sdk] Secret redaction is DISABLED via THEOKIT_REDACT_SECRETS. Credentials may leak into errors, telemetry, logs, transcripts.\n"
|
|
120
|
-
);
|
|
121
|
-
warnedOptOut = true;
|
|
122
|
-
}
|
|
123
|
-
var BUILTIN_PATTERNS = [
|
|
124
|
-
// T5.4: 30+ vendor prefixes (was 12 pre-T5.4). Order matters — more
|
|
125
|
-
// specific prefixes precede generic ones (e.g., sk-ant-admin01 before
|
|
126
|
-
// sk-ant-, sk-proj- before sk-). PEM block deliberately first so its
|
|
127
|
-
// multi-line span runs before any per-line patterns can fire.
|
|
128
|
-
/-----BEGIN[ ]+(?:RSA |EC |DSA |OPENSSH |ENCRYPTED |)PRIVATE KEY-----[\s\S]+?-----END[ ]+(?:RSA |EC |DSA |OPENSSH |ENCRYPTED |)PRIVATE KEY-----/g,
|
|
129
|
-
// JWT — exact 3-segment base64url. Dotted; the body floor of 4 chars per
|
|
130
|
-
// segment matches the minimum legal payload while skipping `a.b.c` noise.
|
|
131
|
-
/eyJ[A-Za-z0-9_-]{4,}\.eyJ[A-Za-z0-9_-]{4,}\.[A-Za-z0-9_-]{4,}/g,
|
|
132
|
-
// Azure Storage SAS — match the sig= component (URL-encoded base64).
|
|
133
|
-
/(?<=[?&]sig=)[A-Za-z0-9%+/]{20,}/g,
|
|
134
|
-
// Anthropic
|
|
135
|
-
/sk-ant-admin01-[A-Za-z0-9_-]{10,}/g,
|
|
136
|
-
// Anthropic admin keys (must precede sk-ant-)
|
|
137
|
-
/sk-ant-[A-Za-z0-9_-]{10,}/g,
|
|
138
|
-
// Anthropic regular
|
|
139
|
-
// OpenAI family + clones (sk- generic must come AFTER all sk-foo- variants)
|
|
140
|
-
/sk-proj-[A-Za-z0-9_-]{10,}/g,
|
|
141
|
-
// OpenAI project key (must precede sk- generic)
|
|
142
|
-
/sk-[A-Za-z0-9_-]{10,}/g,
|
|
143
|
-
// OpenAI / OpenRouter / DeepInfra / Together / DeepSeek
|
|
144
|
-
// Provider prefixes (alphabetized for maintainability)
|
|
145
|
-
/AIza[A-Za-z0-9_-]{35}/g,
|
|
146
|
-
// Google API key
|
|
147
|
-
/AKIA[A-Z0-9]{16}/g,
|
|
148
|
-
// AWS access key
|
|
149
|
-
/fw_[A-Za-z0-9]{20,}/g,
|
|
150
|
-
// Fireworks
|
|
151
|
-
/glpat-[A-Za-z0-9_-]{20}/g,
|
|
152
|
-
// GitLab PAT
|
|
153
|
-
/ghp_[A-Za-z0-9]{36}/g,
|
|
154
|
-
// GitHub PAT classic
|
|
155
|
-
/github_pat_[A-Za-z0-9_]{82}/g,
|
|
156
|
-
// GitHub PAT fine-grained
|
|
157
|
-
/gsk_[A-Za-z0-9]{20,}/g,
|
|
158
|
-
// Groq
|
|
159
|
-
/hf_[A-Za-z0-9]{20,}/g,
|
|
160
|
-
// HuggingFace
|
|
161
|
-
/\bpa-[A-Za-z0-9_-]{20,}/g,
|
|
162
|
-
// Voyage AI (word-boundary to skip CSS / kebab IDs)
|
|
163
|
-
/pcsk_[A-Za-z0-9_-]{20,}/g,
|
|
164
|
-
// Pinecone
|
|
165
|
-
/pplx-[A-Za-z0-9_-]{20,}/g,
|
|
166
|
-
// Perplexity
|
|
167
|
-
/r8_[A-Za-z0-9_-]{20,}/g,
|
|
168
|
-
// Replicate
|
|
169
|
-
/rk_live_[A-Za-z0-9]{20,}/g,
|
|
170
|
-
// Stripe restricted
|
|
171
|
-
/sk_live_[A-Za-z0-9]{20,}/g,
|
|
172
|
-
// Stripe secret
|
|
173
|
-
/sntrys_[A-Za-z0-9]{40,}/g,
|
|
174
|
-
// Sentry user auth
|
|
175
|
-
/xai-[A-Za-z0-9_-]{20,}/g,
|
|
176
|
-
// xAI (Grok)
|
|
177
|
-
/xox[bpasr]-[A-Za-z0-9-]{10,}/g,
|
|
178
|
-
//Slack tokens
|
|
179
|
-
// Additional unique-prefix tokens with low false-positive risk
|
|
180
|
-
/npm_[A-Za-z0-9]{36}/g,
|
|
181
|
-
// npm access token
|
|
182
|
-
/SG\.[A-Za-z0-9_-]{22}\.[A-Za-z0-9_-]{43}/g,
|
|
183
|
-
// SendGrid
|
|
184
|
-
/\bSK[A-Za-z0-9]{32}\b/g,
|
|
185
|
-
// Twilio API SID (word-boundary to skip CSS class noise)
|
|
186
|
-
/\bkey-[a-f0-9]{32}\b/g,
|
|
187
|
-
// Mailgun (hex-only narrows false positives)
|
|
188
|
-
/MT[A-Za-z0-9_-]{23}\.[A-Za-z0-9_-]{6}\.[A-Za-z0-9_-]{27}/g,
|
|
189
|
-
// Discord bot
|
|
190
|
-
/\b(?:sdk|mob)-[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}\b/g
|
|
191
|
-
// LaunchDarkly
|
|
192
|
-
];
|
|
193
|
-
var BEARER_PATTERN = /\b(Bearer\s+)([A-Za-z0-9_\-.+/=]{8,})/g;
|
|
194
|
-
var PARAM_PATTERN = /(\b(?:access_token|api_key|api-key|client_secret|credential|credentials|id_token|jwt|password|private_key|refresh_token|secret|service_account|session_token|token|x-api-key)\b["']?\s*[:=]\s*["']?)([A-Za-z0-9_\-.+/]+)/gi;
|
|
195
|
-
var _extraPatterns = [];
|
|
196
|
-
function maskToken(token) {
|
|
197
|
-
if (token.length < 18) return "***";
|
|
198
|
-
return `${token.slice(0, 6)}...${token.slice(-4)}`;
|
|
199
|
-
}
|
|
200
|
-
var MASK_SHAPE = /^.{6}\.\.\..{4}$/s;
|
|
201
|
-
function coerceToString(value) {
|
|
202
|
-
if (typeof value === "string") return value;
|
|
203
|
-
if (value === null || value === void 0) return null;
|
|
204
|
-
if (typeof value === "object") {
|
|
205
|
-
try {
|
|
206
|
-
const s = JSON.stringify(value);
|
|
207
|
-
return s === void 0 ? null : s;
|
|
208
|
-
} catch {
|
|
209
|
-
return "[unredactable: circular]";
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
return String(value);
|
|
213
|
-
}
|
|
214
|
-
function redactSecrets(text, opts) {
|
|
215
|
-
const coerced = coerceToString(text);
|
|
216
|
-
if (coerced === null) return "";
|
|
217
|
-
if (!REDACT_ENABLED) return coerced;
|
|
218
|
-
let s = coerced;
|
|
219
|
-
for (const re of BUILTIN_PATTERNS) {
|
|
220
|
-
s = s.replace(re, (m) => maskToken(m));
|
|
221
|
-
}
|
|
222
|
-
for (const re of _extraPatterns) {
|
|
223
|
-
s = s.replace(re, (m) => maskToken(m));
|
|
224
|
-
}
|
|
225
|
-
{
|
|
226
|
-
s = s.replace(BEARER_PATTERN, (_, prefix) => `${prefix}***`);
|
|
227
|
-
s = s.replace(PARAM_PATTERN, (whole, prefix, value) => {
|
|
228
|
-
if (MASK_SHAPE.test(value)) return whole;
|
|
229
|
-
return `${prefix}***`;
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
return s;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
// src/internal/runtime/lifecycle/env-policy.ts
|
|
236
|
-
var SECRET_PATTERNS = [
|
|
237
|
-
/KEY/i,
|
|
238
|
-
/SECRET/i,
|
|
239
|
-
/TOKEN/i,
|
|
240
|
-
/PASSWORD/i,
|
|
241
|
-
/PASSWD/i,
|
|
242
|
-
/PASSPHRASE/i,
|
|
243
|
-
/[_-]PWD/i,
|
|
244
|
-
/CREDENTIAL/i,
|
|
245
|
-
/PRIVATE/i,
|
|
246
|
-
/_AUTH/i,
|
|
247
|
-
// #54-a — value-embedded-secret conventions (no generic `*_URL` — see keep-list test).
|
|
248
|
-
/DSN/i,
|
|
249
|
-
/WEBHOOK/i,
|
|
250
|
-
/COOKIE/i,
|
|
251
|
-
/CONNECTION[_-]?STRING/i,
|
|
252
|
-
// Known DB / message-broker connection-string vars (carry `user:pass@`).
|
|
253
|
-
/(?:^|[_-])(?:DATABASE|DB|REDIS|MONGO(?:DB)?|POSTGRES(?:QL)?|MYSQL|MARIADB|AMQP|RABBITMQ|CLICKHOUSE|ELASTIC(?:SEARCH)?|CASSANDRA|COUCHDB|MEMCACHED|NATS|KAFKA)[_-]?(?:URL|URI|DSN|CONNECTION)/i
|
|
254
|
-
];
|
|
255
|
-
var CORE_VARS = [
|
|
256
|
-
"PATH",
|
|
257
|
-
"HOME",
|
|
258
|
-
"SHELL",
|
|
259
|
-
"LANG",
|
|
260
|
-
"LC_ALL",
|
|
261
|
-
"LC_CTYPE",
|
|
262
|
-
"TMPDIR",
|
|
263
|
-
"TMP",
|
|
264
|
-
"TEMP",
|
|
265
|
-
"USER",
|
|
266
|
-
"LOGNAME"
|
|
267
|
-
];
|
|
268
|
-
function isSecretName(name) {
|
|
269
|
-
return SECRET_PATTERNS.some((re) => re.test(name));
|
|
270
|
-
}
|
|
271
|
-
function inheritsUnderPolicy(name, policy) {
|
|
272
|
-
if (policy === "all") return true;
|
|
273
|
-
if (policy === "core") return CORE_VARS.includes(name);
|
|
274
|
-
return !isSecretName(name);
|
|
275
|
-
}
|
|
276
|
-
function resolveChildEnv(options = {}) {
|
|
277
|
-
const parent = options.parent ?? process.env;
|
|
278
|
-
const policy = options.policy ?? "inherit-scrubbed";
|
|
279
|
-
const base = {};
|
|
280
|
-
for (const [name, value] of Object.entries(parent)) {
|
|
281
|
-
if (value !== void 0 && inheritsUnderPolicy(name, policy)) base[name] = value;
|
|
282
|
-
}
|
|
283
|
-
for (const [name, value] of Object.entries(options.overrides ?? {})) {
|
|
284
|
-
base[name] = value;
|
|
285
|
-
}
|
|
286
|
-
return base;
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
// src/sandbox/shell-escape.ts
|
|
290
|
-
function shellEscapePosix(arg) {
|
|
291
|
-
return `'${arg.replace(/'/g, "'\\''")}'`;
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
// src/sandbox/types.ts
|
|
295
|
-
var SandboxSecurityError = class extends Error {
|
|
296
|
-
code = "sandbox_security";
|
|
297
|
-
constructor(message) {
|
|
298
|
-
super(message);
|
|
299
|
-
this.name = "SandboxSecurityError";
|
|
300
|
-
}
|
|
301
|
-
};
|
|
302
|
-
var SandboxNotAvailableError = class extends Error {
|
|
303
|
-
code = "sandbox_not_available";
|
|
304
|
-
constructor(message) {
|
|
305
|
-
super(message);
|
|
306
|
-
this.name = "SandboxNotAvailableError";
|
|
307
|
-
}
|
|
308
|
-
};
|
|
309
|
-
var SandboxBackend = class {
|
|
310
|
-
config;
|
|
311
|
-
constructor(config = {}) {
|
|
312
|
-
this.config = {
|
|
313
|
-
workDir: config.workDir ?? "/tmp",
|
|
314
|
-
timeoutMs: config.timeoutMs ?? 3e4,
|
|
315
|
-
maxOutputBytes: config.maxOutputBytes ?? 5 * 1024 * 1024,
|
|
316
|
-
// #54 — preserve the env policy so backends can scrub secrets.
|
|
317
|
-
env: config.env ?? "inherit-scrubbed"
|
|
318
|
-
};
|
|
319
|
-
}
|
|
320
|
-
async readFile(path2) {
|
|
321
|
-
const result = await this.execute(`cat ${this.shellEscape(path2)}`);
|
|
322
|
-
if (result.exitCode !== 0) {
|
|
323
|
-
throw new Error(`readFile failed: ${result.stderr}`);
|
|
324
|
-
}
|
|
325
|
-
return result.stdout;
|
|
326
|
-
}
|
|
327
|
-
async writeFile(path2, content) {
|
|
328
|
-
await this.uploadFile(path2, content);
|
|
329
|
-
}
|
|
330
|
-
async glob(pattern, cwd) {
|
|
331
|
-
const dir = cwd ?? this.config.workDir ?? ".";
|
|
332
|
-
const result = await this.execute(
|
|
333
|
-
`find ${this.shellEscape(dir)} -name ${this.shellEscape(pattern)} -type f 2>/dev/null`
|
|
334
|
-
);
|
|
335
|
-
if (result.exitCode !== 0) return [];
|
|
336
|
-
return result.stdout.trim().split("\n").filter(Boolean);
|
|
337
|
-
}
|
|
338
|
-
async grep(pattern, path2) {
|
|
339
|
-
const target = path2 ?? ".";
|
|
340
|
-
const result = await this.execute(
|
|
341
|
-
`grep -rn ${this.shellEscape(pattern)} ${this.shellEscape(target)} 2>/dev/null`
|
|
342
|
-
);
|
|
343
|
-
if (result.exitCode !== 0) return [];
|
|
344
|
-
return result.stdout.trim().split("\n").filter(Boolean);
|
|
345
|
-
}
|
|
346
|
-
async listDir(path2) {
|
|
347
|
-
const result = await this.execute(`ls -1 ${this.shellEscape(path2)}`);
|
|
348
|
-
if (result.exitCode !== 0) return [];
|
|
349
|
-
return result.stdout.trim().split("\n").filter(Boolean);
|
|
350
|
-
}
|
|
351
|
-
truncateOutput(output) {
|
|
352
|
-
const max = this.config.maxOutputBytes ?? 5 * 1024 * 1024;
|
|
353
|
-
if (Buffer.byteLength(output) > max) {
|
|
354
|
-
return `${output.slice(0, max)}
|
|
355
|
-
...(truncated)`;
|
|
356
|
-
}
|
|
357
|
-
return output;
|
|
358
|
-
}
|
|
359
|
-
shellEscape(arg) {
|
|
360
|
-
return shellEscapePosix(arg);
|
|
361
|
-
}
|
|
362
|
-
};
|
|
363
|
-
async function resolveSandbox(provider, ctx) {
|
|
364
|
-
return provider instanceof SandboxBackend ? provider : provider(ctx);
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
// src/sandbox/local-sandbox.ts
|
|
368
|
-
var LocalSandbox = class extends SandboxBackend {
|
|
369
|
-
constructor(config = {}) {
|
|
370
|
-
super(config);
|
|
371
|
-
}
|
|
372
|
-
async execute(command, opts) {
|
|
373
|
-
const timeout = opts?.timeoutMs ?? this.config.timeoutMs ?? 3e4;
|
|
374
|
-
const max = this.config.maxOutputBytes ?? 5 * 1024 * 1024;
|
|
375
|
-
return new Promise((resolve) => {
|
|
376
|
-
const child = execFile(
|
|
377
|
-
"/bin/sh",
|
|
378
|
-
["-c", command],
|
|
379
|
-
{
|
|
380
|
-
cwd: this.config.workDir,
|
|
381
|
-
timeout,
|
|
382
|
-
maxBuffer: max,
|
|
383
|
-
encoding: "utf-8",
|
|
384
|
-
// #54 — scrub secret-like host env vars from the child by default.
|
|
385
|
-
env: resolveChildEnv({ policy: this.config.env })
|
|
386
|
-
},
|
|
387
|
-
(error, stdout, stderr) => {
|
|
388
|
-
resolve(this.buildResult(error, stdout ?? "", stderr ?? ""));
|
|
389
|
-
}
|
|
390
|
-
);
|
|
391
|
-
child.on("error", () => {
|
|
392
|
-
resolve({ stdout: "", stderr: "spawn error", exitCode: 1, timedOut: false });
|
|
393
|
-
});
|
|
394
|
-
});
|
|
395
|
-
}
|
|
396
|
-
buildResult(error, stdout, stderr) {
|
|
397
|
-
const timedOut = error !== null && "killed" in error && error.killed;
|
|
398
|
-
return {
|
|
399
|
-
stdout: this.truncateOutput(stdout),
|
|
400
|
-
stderr: this.truncateOutput(stderr),
|
|
401
|
-
exitCode: timedOut ? 124 : error ? 1 : 0,
|
|
402
|
-
timedOut
|
|
403
|
-
};
|
|
404
|
-
}
|
|
405
|
-
async uploadFile(path2, content) {
|
|
406
|
-
const fullPath = path2.startsWith("/") ? path2 : `${this.config.workDir}/${path2}`;
|
|
407
|
-
await mkdir(dirname(fullPath), { recursive: true });
|
|
408
|
-
await writeFile(fullPath, content, "utf-8");
|
|
409
|
-
}
|
|
410
|
-
};
|
|
411
|
-
|
|
412
112
|
// src/sandbox/seccomp.ts
|
|
413
113
|
var BPF_LD = 0;
|
|
414
114
|
var BPF_W = 0;
|
|
@@ -686,22 +386,6 @@ function interactiveWrapCommand(opts) {
|
|
|
686
386
|
};
|
|
687
387
|
}
|
|
688
388
|
|
|
689
|
-
// src/errors.ts
|
|
690
|
-
var TheokitAgentError = class extends Error {
|
|
691
|
-
name = "TheokitAgentError";
|
|
692
|
-
isRetryable;
|
|
693
|
-
code;
|
|
694
|
-
protoErrorCode;
|
|
695
|
-
metadata;
|
|
696
|
-
constructor(message, options = {}) {
|
|
697
|
-
super(message, options.cause !== void 0 ? { cause: options.cause } : void 0);
|
|
698
|
-
this.isRetryable = options.isRetryable ?? false;
|
|
699
|
-
if (options.code !== void 0) this.code = options.code;
|
|
700
|
-
if (options.protoErrorCode !== void 0) this.protoErrorCode = options.protoErrorCode;
|
|
701
|
-
if (options.metadata !== void 0) this.metadata = options.metadata;
|
|
702
|
-
}
|
|
703
|
-
};
|
|
704
|
-
|
|
705
389
|
// src/sandbox/provision.ts
|
|
706
390
|
var RepoProvisionError = class extends TheokitAgentError {
|
|
707
391
|
constructor(instanceId, message, options = {}) {
|
|
@@ -751,6 +435,6 @@ async function provisionRepo(sandboxOrOpts, maybeOpts) {
|
|
|
751
435
|
return { repoDir };
|
|
752
436
|
}
|
|
753
437
|
|
|
754
|
-
export { LinuxSandbox,
|
|
438
|
+
export { LinuxSandbox, RepoProvisionError, allowlistedEnv, buildBwrapArgv, buildSeccompFilter, createSandboxBackend, detectBwrap, detectBwrapMemoizado, interactiveWrapCommand, provisionRepo, realProbeCount, realProbes, resetBwrapMemo, resetInteractiveWarnLatch, resetSandboxWarnLatch, resolveSandboxPosture, restrictedSeccompPath, seccompPathForArch, wrapCommandForSandbox };
|
|
755
439
|
//# sourceMappingURL=index.js.map
|
|
756
440
|
//# sourceMappingURL=index.js.map
|