@cuylabs/agent-core 4.8.1 → 4.10.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.
Files changed (667) hide show
  1. package/README.md +11 -12
  2. package/dist/agent/chat-loop/commit-batch.d.ts +10 -0
  3. package/dist/agent/chat-loop/commit-batch.d.ts.map +1 -0
  4. package/dist/agent/chat-loop/context-recovery.d.ts +29 -0
  5. package/dist/agent/chat-loop/context-recovery.d.ts.map +1 -0
  6. package/dist/agent/chat-loop/finalize-turn.d.ts +19 -0
  7. package/dist/agent/chat-loop/finalize-turn.d.ts.map +1 -0
  8. package/dist/agent/chat-loop/index.d.ts +7 -0
  9. package/dist/agent/chat-loop/index.d.ts.map +1 -0
  10. package/dist/agent/chat-loop/loop.d.ts +8 -0
  11. package/dist/agent/chat-loop/loop.d.ts.map +1 -0
  12. package/dist/agent/chat-loop/model-step-runner.d.ts +26 -0
  13. package/dist/agent/chat-loop/model-step-runner.d.ts.map +1 -0
  14. package/dist/agent/chat-loop/model-step-snapshot.d.ts +49 -0
  15. package/dist/agent/chat-loop/model-step-snapshot.d.ts.map +1 -0
  16. package/dist/agent/chat-loop/turn-tools.d.ts +19 -0
  17. package/dist/agent/chat-loop/turn-tools.d.ts.map +1 -0
  18. package/dist/agent/chat-loop/types.d.ts +60 -0
  19. package/dist/agent/chat-loop/types.d.ts.map +1 -0
  20. package/dist/agent/defaults.d.ts +69 -0
  21. package/dist/agent/defaults.d.ts.map +1 -0
  22. package/dist/agent/event-printer.d.ts +94 -0
  23. package/dist/agent/event-printer.d.ts.map +1 -0
  24. package/dist/agent/fork.d.ts +59 -0
  25. package/dist/agent/fork.d.ts.map +1 -0
  26. package/dist/agent/index.d.ts +17 -0
  27. package/dist/agent/index.d.ts.map +1 -0
  28. package/dist/agent/instance/context-management.d.ts +29 -0
  29. package/dist/agent/instance/context-management.d.ts.map +1 -0
  30. package/dist/agent/instance/forking.d.ts +26 -0
  31. package/dist/agent/instance/forking.d.ts.map +1 -0
  32. package/dist/agent/instance/index.d.ts +170 -0
  33. package/dist/agent/instance/index.d.ts.map +1 -0
  34. package/dist/agent/instance/interventions.d.ts +10 -0
  35. package/dist/agent/instance/interventions.d.ts.map +1 -0
  36. package/dist/agent/instance/mcp.d.ts +21 -0
  37. package/dist/agent/instance/mcp.d.ts.map +1 -0
  38. package/dist/agent/instance/sessions.d.ts +8 -0
  39. package/dist/agent/instance/sessions.d.ts.map +1 -0
  40. package/dist/agent/instance/tools.d.ts +16 -0
  41. package/dist/agent/instance/tools.d.ts.map +1 -0
  42. package/dist/agent/instance/turn-lifecycle.d.ts +61 -0
  43. package/dist/agent/instance/turn-lifecycle.d.ts.map +1 -0
  44. package/dist/agent/session.d.ts +16 -0
  45. package/dist/agent/session.d.ts.map +1 -0
  46. package/dist/agent/setup/config.d.ts +8 -0
  47. package/dist/agent/setup/config.d.ts.map +1 -0
  48. package/dist/agent/setup/context-window.d.ts +4 -0
  49. package/dist/agent/setup/context-window.d.ts.map +1 -0
  50. package/dist/agent/setup/environment.d.ts +5 -0
  51. package/dist/agent/setup/environment.d.ts.map +1 -0
  52. package/dist/agent/setup/middleware.d.ts +9 -0
  53. package/dist/agent/setup/middleware.d.ts.map +1 -0
  54. package/dist/agent/setup/runtime-config.d.ts +9 -0
  55. package/dist/agent/setup/runtime-config.d.ts.map +1 -0
  56. package/dist/agent/setup/state.d.ts +4 -0
  57. package/dist/agent/setup/state.d.ts.map +1 -0
  58. package/dist/agent/setup/tools.d.ts +8 -0
  59. package/dist/agent/setup/tools.d.ts.map +1 -0
  60. package/dist/agent/setup.d.ts +47 -0
  61. package/dist/agent/setup.d.ts.map +1 -0
  62. package/dist/agent/stream-provider.d.ts +27 -0
  63. package/dist/agent/stream-provider.d.ts.map +1 -0
  64. package/dist/agent/turn-context/compaction/agent-context.d.ts +53 -0
  65. package/dist/agent/turn-context/compaction/agent-context.d.ts.map +1 -0
  66. package/dist/agent/turn-context/compaction/budget.d.ts +4 -0
  67. package/dist/agent/turn-context/compaction/budget.d.ts.map +1 -0
  68. package/dist/agent/turn-context/compaction/check.d.ts +39 -0
  69. package/dist/agent/turn-context/compaction/check.d.ts.map +1 -0
  70. package/dist/agent/turn-context/compaction/fragments.d.ts +4 -0
  71. package/dist/agent/turn-context/compaction/fragments.d.ts.map +1 -0
  72. package/dist/agent/turn-context/compaction/index.d.ts +5 -0
  73. package/dist/agent/turn-context/compaction/index.d.ts.map +1 -0
  74. package/dist/agent/turn-context/compaction/memory.d.ts +17 -0
  75. package/dist/agent/turn-context/compaction/memory.d.ts.map +1 -0
  76. package/dist/agent/turn-context/compaction/results.d.ts +19 -0
  77. package/dist/agent/turn-context/compaction/results.d.ts.map +1 -0
  78. package/dist/agent/turn-context/compaction/summary.d.ts +3 -0
  79. package/dist/agent/turn-context/compaction/summary.d.ts.map +1 -0
  80. package/dist/agent/turn-context/compaction/types.d.ts +24 -0
  81. package/dist/agent/turn-context/compaction/types.d.ts.map +1 -0
  82. package/dist/agent/turn-context/fit-model-context.d.ts +29 -0
  83. package/dist/agent/turn-context/fit-model-context.d.ts.map +1 -0
  84. package/dist/agent/turn-context/index.d.ts +5 -0
  85. package/dist/agent/turn-context/index.d.ts.map +1 -0
  86. package/dist/agent/turn-context/system-prompts.d.ts +12 -0
  87. package/dist/agent/turn-context/system-prompts.d.ts.map +1 -0
  88. package/dist/agent/types/config.d.ts +199 -0
  89. package/dist/agent/types/config.d.ts.map +1 -0
  90. package/dist/agent/types/index.d.ts +11 -0
  91. package/dist/agent/types/index.d.ts.map +1 -0
  92. package/dist/agent/types/state.d.ts +16 -0
  93. package/dist/agent/types/state.d.ts.map +1 -0
  94. package/dist/agent/types/tracing.d.ts +12 -0
  95. package/dist/agent/types/tracing.d.ts.map +1 -0
  96. package/dist/{chunk-KYLPMBHD.js → chunk-336EDIBL.js} +1 -1
  97. package/dist/chunk-AAGKWUXR.js +539 -0
  98. package/dist/chunk-AHDCR7SX.js +83 -0
  99. package/dist/{chunk-CSR75JVC.js → chunk-ASXF5AC6.js} +1 -1
  100. package/dist/{chunk-2TTOLHBT.js → chunk-CFBSQLP5.js} +1 -1
  101. package/dist/{chunk-GJFP5L2V.js → chunk-CNM6OROH.js} +15 -3
  102. package/dist/chunk-E66PKKDL.js +772 -0
  103. package/dist/{chunk-HSUPTXNV.js → chunk-EBVSPHXA.js} +13 -10
  104. package/dist/chunk-EEAGM5MS.js +257 -0
  105. package/dist/chunk-IQA64CAO.js +84 -0
  106. package/dist/chunk-JFH6HBUG.js +227 -0
  107. package/dist/{chunk-MWPU2EVV.js → chunk-JUIL2NJC.js} +4 -81
  108. package/dist/{chunk-NS7D7JJU.js → chunk-K453AFTL.js} +35 -16
  109. package/dist/chunk-LX4AHGI3.js +960 -0
  110. package/dist/chunk-MJRZ2ZRI.js +498 -0
  111. package/dist/chunk-NMJNN6LS.js +1155 -0
  112. package/dist/{chunk-UMIVJDEJ.js → chunk-SAWRDGBE.js} +30 -7
  113. package/dist/{chunk-GEBFHREI.js → chunk-TU5KDFWI.js} +30 -5
  114. package/dist/{chunk-QJV5XPPS.js → chunk-UEEHZ4QH.js} +1 -1
  115. package/dist/chunk-UG5PVNZV.js +53 -0
  116. package/dist/{chunk-BGG2HVIR.js → chunk-V4MIDL5B.js} +9 -0
  117. package/dist/{chunk-BJC46FIF.js → chunk-V4YQ6MBK.js} +2 -2
  118. package/dist/{chunk-H3GRHFFG.js → chunk-VMGZKIFT.js} +30 -9
  119. package/dist/chunk-W6LWIMIX.js +8 -0
  120. package/dist/context/assembly/index.d.ts +3 -0
  121. package/dist/context/assembly/index.d.ts.map +1 -0
  122. package/dist/context/assembly/prepare.d.ts +11 -0
  123. package/dist/context/assembly/prepare.d.ts.map +1 -0
  124. package/dist/context/assembly/types.d.ts +60 -0
  125. package/dist/context/assembly/types.d.ts.map +1 -0
  126. package/dist/context/config.d.ts +11 -0
  127. package/dist/context/config.d.ts.map +1 -0
  128. package/dist/context/fragments/index.d.ts +4 -0
  129. package/dist/context/fragments/index.d.ts.map +1 -0
  130. package/dist/context/fragments/messages.d.ts +10 -0
  131. package/dist/context/fragments/messages.d.ts.map +1 -0
  132. package/dist/context/fragments/render.d.ts +16 -0
  133. package/dist/context/fragments/render.d.ts.map +1 -0
  134. package/dist/context/fragments/types.d.ts +87 -0
  135. package/dist/context/fragments/types.d.ts.map +1 -0
  136. package/dist/context/index.d.ts +13 -0
  137. package/dist/context/index.d.ts.map +1 -0
  138. package/dist/context/index.js +90 -0
  139. package/dist/context/text/truncation.d.ts +13 -0
  140. package/dist/context/text/truncation.d.ts.map +1 -0
  141. package/dist/context/window/budget.d.ts +108 -0
  142. package/dist/context/window/budget.d.ts.map +1 -0
  143. package/dist/context/window/compactor.d.ts +74 -0
  144. package/dist/context/window/compactor.d.ts.map +1 -0
  145. package/dist/context/window/cut-planner.d.ts +64 -0
  146. package/dist/context/window/cut-planner.d.ts.map +1 -0
  147. package/dist/context/window/decision.d.ts +41 -0
  148. package/dist/context/window/decision.d.ts.map +1 -0
  149. package/dist/context/window/estimation.d.ts +45 -0
  150. package/dist/context/window/estimation.d.ts.map +1 -0
  151. package/dist/context/window/index.d.ts +26 -0
  152. package/dist/context/window/index.d.ts.map +1 -0
  153. package/dist/context/window/manager.d.ts +80 -0
  154. package/dist/context/window/manager.d.ts.map +1 -0
  155. package/dist/context/window/summary-policy.d.ts +50 -0
  156. package/dist/context/window/summary-policy.d.ts.map +1 -0
  157. package/dist/context/window/summary.d.ts +56 -0
  158. package/dist/context/window/summary.d.ts.map +1 -0
  159. package/dist/context/window/tool-pruning.d.ts +62 -0
  160. package/dist/context/window/tool-pruning.d.ts.map +1 -0
  161. package/dist/dispatch/executor.d.ts +56 -0
  162. package/dist/dispatch/executor.d.ts.map +1 -0
  163. package/dist/dispatch/index.d.ts +7 -95
  164. package/dist/dispatch/index.d.ts.map +1 -0
  165. package/dist/dispatch/index.js +4 -3
  166. package/dist/dispatch/results.d.ts +9 -0
  167. package/dist/dispatch/results.d.ts.map +1 -0
  168. package/dist/dispatch/runtime.d.ts +19 -0
  169. package/dist/dispatch/runtime.d.ts.map +1 -0
  170. package/dist/dispatch/tool-factories.d.ts +8 -0
  171. package/dist/dispatch/tool-factories.d.ts.map +1 -0
  172. package/dist/dispatch/tools.d.ts +10 -0
  173. package/dist/dispatch/tools.d.ts.map +1 -0
  174. package/dist/dispatch/types.d.ts +131 -0
  175. package/dist/dispatch/types.d.ts.map +1 -0
  176. package/dist/events/event-bus/index.d.ts +13 -0
  177. package/dist/events/event-bus/index.d.ts.map +1 -0
  178. package/dist/events/event-bus/index.js +6 -0
  179. package/dist/events/event-bus/local.d.ts +14 -0
  180. package/dist/events/event-bus/local.d.ts.map +1 -0
  181. package/dist/events/event-bus/types.d.ts +78 -0
  182. package/dist/events/event-bus/types.d.ts.map +1 -0
  183. package/dist/events/index.d.ts +10 -89
  184. package/dist/events/index.d.ts.map +1 -0
  185. package/dist/events/index.js +6 -1
  186. package/dist/events/signal/index.d.ts +18 -0
  187. package/dist/events/signal/index.d.ts.map +1 -0
  188. package/dist/events/signal/index.js +6 -0
  189. package/dist/events/signal/local.d.ts +22 -0
  190. package/dist/events/signal/local.d.ts.map +1 -0
  191. package/dist/events/signal/types.d.ts +69 -0
  192. package/dist/events/signal/types.d.ts.map +1 -0
  193. package/dist/execution/index.d.ts +33 -481
  194. package/dist/execution/index.d.ts.map +1 -0
  195. package/dist/execution/index.js +45 -19
  196. package/dist/execution/scope/index.d.ts +10 -0
  197. package/dist/execution/scope/index.d.ts.map +1 -0
  198. package/dist/execution/scope/index.js +12 -0
  199. package/dist/execution/scope/run.d.ts +8 -0
  200. package/dist/execution/scope/run.d.ts.map +1 -0
  201. package/dist/execution/scope/store.d.ts +6 -0
  202. package/dist/execution/scope/store.d.ts.map +1 -0
  203. package/dist/execution/scope/types.d.ts +28 -0
  204. package/dist/execution/scope/types.d.ts.map +1 -0
  205. package/dist/execution/shared/usage.d.ts +9 -0
  206. package/dist/execution/shared/usage.d.ts.map +1 -0
  207. package/dist/execution/task/index.d.ts +6 -0
  208. package/dist/execution/task/index.d.ts.map +1 -0
  209. package/dist/execution/task/observer.d.ts +80 -0
  210. package/dist/execution/task/observer.d.ts.map +1 -0
  211. package/dist/execution/task/runner.d.ts +39 -0
  212. package/dist/execution/task/runner.d.ts.map +1 -0
  213. package/dist/execution/task/types.d.ts +85 -0
  214. package/dist/execution/task/types.d.ts.map +1 -0
  215. package/dist/execution/turn/engine/commit-batch.d.ts +16 -0
  216. package/dist/execution/turn/engine/commit-batch.d.ts.map +1 -0
  217. package/dist/execution/turn/engine/engine.d.ts +32 -0
  218. package/dist/execution/turn/engine/engine.d.ts.map +1 -0
  219. package/dist/execution/turn/engine/index.d.ts +12 -0
  220. package/dist/execution/turn/engine/index.d.ts.map +1 -0
  221. package/dist/execution/turn/engine/types.d.ts +67 -0
  222. package/dist/execution/turn/engine/types.d.ts.map +1 -0
  223. package/dist/execution/turn/index.d.ts +18 -0
  224. package/dist/execution/turn/index.d.ts.map +1 -0
  225. package/dist/execution/turn/index.js +52 -0
  226. package/dist/execution/turn/runner/commit.d.ts +11 -0
  227. package/dist/execution/turn/runner/commit.d.ts.map +1 -0
  228. package/dist/execution/turn/runner/index.d.ts +16 -0
  229. package/dist/execution/turn/runner/index.d.ts.map +1 -0
  230. package/dist/execution/turn/runner/prepare.d.ts +6 -0
  231. package/dist/execution/turn/runner/prepare.d.ts.map +1 -0
  232. package/dist/execution/turn/runner/stream-step.d.ts +8 -0
  233. package/dist/execution/turn/runner/stream-step.d.ts.map +1 -0
  234. package/dist/execution/turn/runner/tool-batch.d.ts +13 -0
  235. package/dist/execution/turn/runner/tool-batch.d.ts.map +1 -0
  236. package/dist/execution/turn/runner/types.d.ts +111 -0
  237. package/dist/execution/turn/runner/types.d.ts.map +1 -0
  238. package/dist/execution/turn/state.d.ts +110 -0
  239. package/dist/execution/turn/state.d.ts.map +1 -0
  240. package/dist/execution/turn/step-ledger.d.ts +89 -0
  241. package/dist/execution/turn/step-ledger.d.ts.map +1 -0
  242. package/dist/execution/turn/step-processing/doom-loop.d.ts +28 -0
  243. package/dist/execution/turn/step-processing/doom-loop.d.ts.map +1 -0
  244. package/dist/execution/turn/step-processing/index.d.ts +14 -0
  245. package/dist/execution/turn/step-processing/index.d.ts.map +1 -0
  246. package/dist/execution/turn/step-processing/overflow.d.ts +17 -0
  247. package/dist/execution/turn/step-processing/overflow.d.ts.map +1 -0
  248. package/dist/execution/turn/step-processing/process.d.ts +7 -0
  249. package/dist/execution/turn/step-processing/process.d.ts.map +1 -0
  250. package/dist/execution/turn/step-processing/types.d.ts +65 -0
  251. package/dist/execution/turn/step-processing/types.d.ts.map +1 -0
  252. package/dist/execution/workflow/index.d.ts +12 -0
  253. package/dist/execution/workflow/index.d.ts.map +1 -0
  254. package/dist/execution/workflow/index.js +39 -0
  255. package/dist/execution/workflow/planner/apply.d.ts +30 -0
  256. package/dist/execution/workflow/planner/apply.d.ts.map +1 -0
  257. package/dist/execution/workflow/planner/helpers.d.ts +6 -0
  258. package/dist/execution/workflow/planner/helpers.d.ts.map +1 -0
  259. package/dist/execution/workflow/planner/index.d.ts +13 -0
  260. package/dist/execution/workflow/planner/index.d.ts.map +1 -0
  261. package/dist/execution/workflow/planner/plan.d.ts +7 -0
  262. package/dist/execution/workflow/planner/plan.d.ts.map +1 -0
  263. package/dist/execution/workflow/planner/types.d.ts +49 -0
  264. package/dist/execution/workflow/planner/types.d.ts.map +1 -0
  265. package/dist/execution/workflow/snapshot.d.ts +11 -0
  266. package/dist/execution/workflow/snapshot.d.ts.map +1 -0
  267. package/dist/execution/workflow/state.d.ts +161 -0
  268. package/dist/execution/workflow/state.d.ts.map +1 -0
  269. package/dist/human/controller.d.ts +24 -0
  270. package/dist/human/controller.d.ts.map +1 -0
  271. package/dist/human/handler.d.ts +15 -0
  272. package/dist/human/handler.d.ts.map +1 -0
  273. package/dist/human/index.d.ts +5 -0
  274. package/dist/human/index.d.ts.map +1 -0
  275. package/dist/human/tool.d.ts +17 -0
  276. package/dist/human/tool.d.ts.map +1 -0
  277. package/dist/human/types.d.ts +62 -0
  278. package/dist/human/types.d.ts.map +1 -0
  279. package/dist/index.d.ts +66 -567
  280. package/dist/index.d.ts.map +1 -0
  281. package/dist/index.js +2482 -1846
  282. package/dist/inference/defaults.d.ts +8 -0
  283. package/dist/inference/defaults.d.ts.map +1 -0
  284. package/dist/inference/errors/classify.d.ts +5 -0
  285. package/dist/inference/errors/classify.d.ts.map +1 -0
  286. package/dist/inference/errors/extract.d.ts +3 -0
  287. package/dist/inference/errors/extract.d.ts.map +1 -0
  288. package/dist/inference/errors/index.d.ts +8 -11
  289. package/dist/inference/errors/index.d.ts.map +1 -0
  290. package/dist/inference/errors/llm-error.d.ts +14 -0
  291. package/dist/inference/errors/llm-error.d.ts.map +1 -0
  292. package/dist/inference/errors/types.d.ts +18 -0
  293. package/dist/inference/errors/types.d.ts.map +1 -0
  294. package/dist/inference/errors/utils.d.ts +5 -0
  295. package/dist/inference/errors/utils.d.ts.map +1 -0
  296. package/dist/inference/index.d.ts +17 -49
  297. package/dist/inference/index.d.ts.map +1 -0
  298. package/dist/inference/index.js +7 -7
  299. package/dist/inference/middleware-support.d.ts +14 -0
  300. package/dist/inference/middleware-support.d.ts.map +1 -0
  301. package/dist/{model-messages-n_ZMZwIm.d.ts → inference/model-messages.d.ts} +4 -6
  302. package/dist/inference/model-messages.d.ts.map +1 -0
  303. package/dist/inference/retry.d.ts +73 -0
  304. package/dist/inference/retry.d.ts.map +1 -0
  305. package/dist/inference/stream.d.ts +16 -0
  306. package/dist/inference/stream.d.ts.map +1 -0
  307. package/dist/inference/toolset.d.ts +26 -0
  308. package/dist/inference/toolset.d.ts.map +1 -0
  309. package/dist/inference/types.d.ts +129 -0
  310. package/dist/inference/types.d.ts.map +1 -0
  311. package/dist/intervention/follow-up-policy.d.ts +41 -0
  312. package/dist/intervention/follow-up-policy.d.ts.map +1 -0
  313. package/dist/intervention/index.d.ts +5 -0
  314. package/dist/intervention/index.d.ts.map +1 -0
  315. package/dist/intervention/intervention.d.ts +130 -0
  316. package/dist/intervention/intervention.d.ts.map +1 -0
  317. package/dist/intervention/types.d.ts +74 -0
  318. package/dist/intervention/types.d.ts.map +1 -0
  319. package/dist/logger/index.d.ts +5 -47
  320. package/dist/logger/index.d.ts.map +1 -0
  321. package/dist/logger/logger.d.ts +46 -0
  322. package/dist/logger/logger.d.ts.map +1 -0
  323. package/dist/{types-RSCv7nQ4.d.ts → logger/types.d.ts} +6 -7
  324. package/dist/logger/types.d.ts.map +1 -0
  325. package/dist/mcp/auth.d.ts +109 -0
  326. package/dist/mcp/auth.d.ts.map +1 -0
  327. package/dist/mcp/diagnostics.d.ts +23 -0
  328. package/dist/mcp/diagnostics.d.ts.map +1 -0
  329. package/dist/mcp/factories.d.ts +47 -0
  330. package/dist/mcp/factories.d.ts.map +1 -0
  331. package/dist/mcp/index.d.ts +14 -175
  332. package/dist/mcp/index.d.ts.map +1 -0
  333. package/dist/mcp/index.js +1 -1
  334. package/dist/mcp/manager.d.ts +45 -0
  335. package/dist/mcp/manager.d.ts.map +1 -0
  336. package/dist/mcp/modules.d.ts +6 -0
  337. package/dist/mcp/modules.d.ts.map +1 -0
  338. package/dist/{types-DMjoFKKv.d.ts → mcp/types.d.ts} +18 -19
  339. package/dist/mcp/types.d.ts.map +1 -0
  340. package/dist/memory/config.d.ts +4 -0
  341. package/dist/memory/config.d.ts.map +1 -0
  342. package/dist/memory/format.d.ts +8 -0
  343. package/dist/memory/format.d.ts.map +1 -0
  344. package/dist/memory/index.d.ts +5 -0
  345. package/dist/memory/index.d.ts.map +1 -0
  346. package/dist/memory/index.js +14 -0
  347. package/dist/memory/middleware.d.ts +14 -0
  348. package/dist/memory/middleware.d.ts.map +1 -0
  349. package/dist/memory/types.d.ts +232 -0
  350. package/dist/memory/types.d.ts.map +1 -0
  351. package/dist/middleware/approval.d.ts +70 -0
  352. package/dist/middleware/approval.d.ts.map +1 -0
  353. package/dist/middleware/index.d.ts +24 -110
  354. package/dist/middleware/index.d.ts.map +1 -0
  355. package/dist/middleware/index.js +2 -2
  356. package/dist/middleware/prompt-cache/cache.d.ts +44 -0
  357. package/dist/middleware/prompt-cache/cache.d.ts.map +1 -0
  358. package/dist/middleware/prompt-cache/index.d.ts +14 -0
  359. package/dist/middleware/prompt-cache/index.d.ts.map +1 -0
  360. package/dist/middleware/prompt-cache/types.d.ts +50 -0
  361. package/dist/middleware/prompt-cache/types.d.ts.map +1 -0
  362. package/dist/middleware/runner.d.ts +100 -0
  363. package/dist/middleware/runner.d.ts.map +1 -0
  364. package/dist/middleware/telemetry/index.d.ts +12 -0
  365. package/dist/middleware/telemetry/index.d.ts.map +1 -0
  366. package/dist/middleware/telemetry/otel.d.ts +4 -0
  367. package/dist/middleware/telemetry/otel.d.ts.map +1 -0
  368. package/dist/middleware/telemetry/provider.d.ts +3 -0
  369. package/dist/middleware/telemetry/provider.d.ts.map +1 -0
  370. package/dist/middleware/telemetry/types.d.ts +150 -0
  371. package/dist/middleware/telemetry/types.d.ts.map +1 -0
  372. package/dist/middleware/types.d.ts +371 -0
  373. package/dist/middleware/types.d.ts.map +1 -0
  374. package/dist/models/cache/adapters.d.ts +4 -0
  375. package/dist/models/cache/adapters.d.ts.map +1 -0
  376. package/dist/models/cache/index.d.ts +5 -0
  377. package/dist/models/cache/index.d.ts.map +1 -0
  378. package/dist/models/cache/manager.d.ts +32 -0
  379. package/dist/models/cache/manager.d.ts.map +1 -0
  380. package/dist/models/cache/types.d.ts +17 -0
  381. package/dist/models/cache/types.d.ts.map +1 -0
  382. package/dist/models/capability-resolver.d.ts +104 -0
  383. package/dist/models/capability-resolver.d.ts.map +1 -0
  384. package/dist/models/identifiers.d.ts +23 -0
  385. package/dist/models/identifiers.d.ts.map +1 -0
  386. package/dist/models/index.d.ts +35 -256
  387. package/dist/models/index.d.ts.map +1 -0
  388. package/dist/models/index.js +1 -1
  389. package/dist/models/overrides.d.ts +10 -0
  390. package/dist/models/overrides.d.ts.map +1 -0
  391. package/dist/models/profiles.d.ts +38 -0
  392. package/dist/models/profiles.d.ts.map +1 -0
  393. package/dist/models/reasoning/config.d.ts +49 -0
  394. package/dist/models/reasoning/config.d.ts.map +1 -0
  395. package/dist/models/reasoning/index.d.ts +12 -4
  396. package/dist/models/reasoning/index.d.ts.map +1 -0
  397. package/dist/models/reasoning/index.js +1 -1
  398. package/dist/models/reasoning/providers.d.ts +63 -0
  399. package/dist/models/reasoning/providers.d.ts.map +1 -0
  400. package/dist/{types-CQaXbRsS.d.ts → models/reasoning/types.d.ts} +7 -8
  401. package/dist/models/reasoning/types.d.ts.map +1 -0
  402. package/dist/models/remote/fetcher.d.ts +13 -0
  403. package/dist/models/remote/fetcher.d.ts.map +1 -0
  404. package/dist/models/remote/index.d.ts +8 -0
  405. package/dist/models/remote/index.d.ts.map +1 -0
  406. package/dist/models/remote/network.d.ts +6 -0
  407. package/dist/models/remote/network.d.ts.map +1 -0
  408. package/dist/models/remote/source.d.ts +16 -0
  409. package/dist/models/remote/source.d.ts.map +1 -0
  410. package/dist/models/remote/transform.d.ts +4 -0
  411. package/dist/models/remote/transform.d.ts.map +1 -0
  412. package/dist/models/remote/types.d.ts +28 -0
  413. package/dist/models/remote/types.d.ts.map +1 -0
  414. package/dist/models/resolver.d.ts +26 -0
  415. package/dist/models/resolver.d.ts.map +1 -0
  416. package/dist/models/types.d.ts +137 -0
  417. package/dist/models/types.d.ts.map +1 -0
  418. package/dist/plugin/compatibility.d.ts +11 -0
  419. package/dist/plugin/compatibility.d.ts.map +1 -0
  420. package/dist/plugin/define.d.ts +77 -0
  421. package/dist/plugin/define.d.ts.map +1 -0
  422. package/dist/plugin/event-bus.d.ts +31 -0
  423. package/dist/plugin/event-bus.d.ts.map +1 -0
  424. package/dist/plugin/index.d.ts +9 -458
  425. package/dist/plugin/index.d.ts.map +1 -0
  426. package/dist/plugin/loader.d.ts +63 -0
  427. package/dist/plugin/loader.d.ts.map +1 -0
  428. package/dist/plugin/registry.d.ts +81 -0
  429. package/dist/plugin/registry.d.ts.map +1 -0
  430. package/dist/plugin/settings.d.ts +36 -0
  431. package/dist/plugin/settings.d.ts.map +1 -0
  432. package/dist/plugin/types.d.ts +168 -0
  433. package/dist/plugin/types.d.ts.map +1 -0
  434. package/dist/profiles/apply.d.ts +17 -0
  435. package/dist/profiles/apply.d.ts.map +1 -0
  436. package/dist/profiles/builtins.d.ts +18 -0
  437. package/dist/profiles/builtins.d.ts.map +1 -0
  438. package/dist/profiles/index.d.ts +12 -55
  439. package/dist/profiles/index.d.ts.map +1 -0
  440. package/dist/profiles/patterns.d.ts +12 -0
  441. package/dist/profiles/patterns.d.ts.map +1 -0
  442. package/dist/profiles/types.d.ts +48 -0
  443. package/dist/profiles/types.d.ts.map +1 -0
  444. package/dist/prompt/builder/builder.d.ts +27 -0
  445. package/dist/prompt/builder/builder.d.ts.map +1 -0
  446. package/dist/prompt/builder/index.d.ts +11 -0
  447. package/dist/prompt/builder/index.d.ts.map +1 -0
  448. package/dist/prompt/builder/priorities.d.ts +13 -0
  449. package/dist/prompt/builder/priorities.d.ts.map +1 -0
  450. package/dist/prompt/builder/sections.d.ts +30 -0
  451. package/dist/prompt/builder/sections.d.ts.map +1 -0
  452. package/dist/prompt/environment.d.ts +46 -0
  453. package/dist/prompt/environment.d.ts.map +1 -0
  454. package/dist/prompt/index.d.ts +31 -220
  455. package/dist/prompt/index.d.ts.map +1 -0
  456. package/dist/prompt/index.js +3 -1
  457. package/dist/prompt/instructions.d.ts +104 -0
  458. package/dist/prompt/instructions.d.ts.map +1 -0
  459. package/dist/prompt/templates.d.ts +56 -0
  460. package/dist/prompt/templates.d.ts.map +1 -0
  461. package/dist/prompt/types.d.ts +218 -0
  462. package/dist/prompt/types.d.ts.map +1 -0
  463. package/dist/safety/errors.d.ts +18 -0
  464. package/dist/safety/errors.d.ts.map +1 -0
  465. package/dist/safety/handler.d.ts +16 -0
  466. package/dist/safety/handler.d.ts.map +1 -0
  467. package/dist/safety/index.d.ts +11 -133
  468. package/dist/safety/index.d.ts.map +1 -0
  469. package/dist/safety/patterns.d.ts +17 -0
  470. package/dist/safety/patterns.d.ts.map +1 -0
  471. package/dist/safety/policy.d.ts +31 -0
  472. package/dist/safety/policy.d.ts.map +1 -0
  473. package/dist/safety/presets.d.ts +43 -0
  474. package/dist/safety/presets.d.ts.map +1 -0
  475. package/dist/safety/risk.d.ts +14 -0
  476. package/dist/safety/risk.d.ts.map +1 -0
  477. package/dist/safety/types.d.ts +165 -0
  478. package/dist/safety/types.d.ts.map +1 -0
  479. package/dist/sandbox/index.d.ts +2 -81
  480. package/dist/sandbox/index.d.ts.map +1 -0
  481. package/dist/sandbox/types.d.ts +79 -0
  482. package/dist/sandbox/types.d.ts.map +1 -0
  483. package/dist/skill/discovery/constants.d.ts +6 -0
  484. package/dist/skill/discovery/constants.d.ts.map +1 -0
  485. package/dist/skill/discovery/dedupe.d.ts +3 -0
  486. package/dist/skill/discovery/dedupe.d.ts.map +1 -0
  487. package/dist/skill/discovery/discover.d.ts +3 -0
  488. package/dist/skill/discovery/discover.d.ts.map +1 -0
  489. package/dist/skill/discovery/fs.d.ts +4 -0
  490. package/dist/skill/discovery/fs.d.ts.map +1 -0
  491. package/dist/skill/discovery/index.d.ts +6 -0
  492. package/dist/skill/discovery/index.d.ts.map +1 -0
  493. package/dist/skill/discovery/scan.d.ts +3 -0
  494. package/dist/skill/discovery/scan.d.ts.map +1 -0
  495. package/dist/skill/discovery/types.d.ts +15 -0
  496. package/dist/skill/discovery/types.d.ts.map +1 -0
  497. package/dist/skill/index.d.ts +67 -89
  498. package/dist/skill/index.d.ts.map +1 -0
  499. package/dist/skill/index.js +2 -2
  500. package/dist/skill/loader/constants.d.ts +5 -0
  501. package/dist/skill/loader/constants.d.ts.map +1 -0
  502. package/dist/skill/loader/frontmatter.d.ts +5 -0
  503. package/dist/skill/loader/frontmatter.d.ts.map +1 -0
  504. package/dist/skill/loader/index.d.ts +8 -0
  505. package/dist/skill/loader/index.d.ts.map +1 -0
  506. package/dist/skill/loader/metadata.d.ts +3 -0
  507. package/dist/skill/loader/metadata.d.ts.map +1 -0
  508. package/dist/skill/loader/resources.d.ts +5 -0
  509. package/dist/skill/loader/resources.d.ts.map +1 -0
  510. package/dist/skill/registry.d.ts +177 -0
  511. package/dist/skill/registry.d.ts.map +1 -0
  512. package/dist/skill/tools.d.ts +77 -0
  513. package/dist/skill/tools.d.ts.map +1 -0
  514. package/dist/skill/types.d.ts +291 -0
  515. package/dist/skill/types.d.ts.map +1 -0
  516. package/dist/storage/file/helpers.d.ts +16 -0
  517. package/dist/storage/file/helpers.d.ts.map +1 -0
  518. package/dist/storage/file/index.d.ts +6 -0
  519. package/dist/storage/file/index.d.ts.map +1 -0
  520. package/dist/storage/file/storage.d.ts +29 -0
  521. package/dist/storage/file/storage.d.ts.map +1 -0
  522. package/dist/storage/file/types.d.ts +6 -0
  523. package/dist/storage/file/types.d.ts.map +1 -0
  524. package/dist/storage/index.d.ts +11 -188
  525. package/dist/storage/index.d.ts.map +1 -0
  526. package/dist/storage/index.js +2 -1
  527. package/dist/storage/lock.d.ts +18 -0
  528. package/dist/storage/lock.d.ts.map +1 -0
  529. package/dist/storage/manager/default.d.ts +11 -0
  530. package/dist/storage/manager/default.d.ts.map +1 -0
  531. package/dist/storage/manager/index.d.ts +12 -0
  532. package/dist/storage/manager/index.d.ts.map +1 -0
  533. package/dist/storage/manager/session-manager.d.ts +57 -0
  534. package/dist/storage/manager/session-manager.d.ts.map +1 -0
  535. package/dist/storage/manager/types.d.ts +42 -0
  536. package/dist/storage/manager/types.d.ts.map +1 -0
  537. package/dist/storage/memory.d.ts +22 -0
  538. package/dist/storage/memory.d.ts.map +1 -0
  539. package/dist/storage/paths.d.ts +37 -0
  540. package/dist/storage/paths.d.ts.map +1 -0
  541. package/dist/storage/types.d.ts +205 -0
  542. package/dist/storage/types.d.ts.map +1 -0
  543. package/dist/storage/utils.d.ts +77 -0
  544. package/dist/storage/utils.d.ts.map +1 -0
  545. package/dist/subagents/index.d.ts +8 -179
  546. package/dist/subagents/index.d.ts.map +1 -0
  547. package/dist/subagents/index.js +5 -4
  548. package/dist/subagents/installation.d.ts +23 -0
  549. package/dist/subagents/installation.d.ts.map +1 -0
  550. package/dist/subagents/results.d.ts +15 -0
  551. package/dist/subagents/results.d.ts.map +1 -0
  552. package/dist/subagents/roles/discovery.d.ts +38 -0
  553. package/dist/subagents/roles/discovery.d.ts.map +1 -0
  554. package/dist/subagents/roles/index.d.ts +5 -0
  555. package/dist/subagents/roles/index.d.ts.map +1 -0
  556. package/dist/subagents/roles/markdown-profile.d.ts +61 -0
  557. package/dist/subagents/roles/markdown-profile.d.ts.map +1 -0
  558. package/dist/subagents/tool-factories.d.ts +11 -0
  559. package/dist/subagents/tool-factories.d.ts.map +1 -0
  560. package/dist/subagents/tools.d.ts +13 -0
  561. package/dist/subagents/tools.d.ts.map +1 -0
  562. package/dist/subagents/types.d.ts +21 -0
  563. package/dist/subagents/types.d.ts.map +1 -0
  564. package/dist/team/coordinator/coordinator.d.ts +342 -0
  565. package/dist/team/coordinator/coordinator.d.ts.map +1 -0
  566. package/dist/team/coordinator/inbox.d.ts +99 -0
  567. package/dist/team/coordinator/inbox.d.ts.map +1 -0
  568. package/dist/team/coordinator/index.d.ts +19 -0
  569. package/dist/team/coordinator/index.d.ts.map +1 -0
  570. package/dist/team/coordinator/planning.d.ts +33 -0
  571. package/dist/team/coordinator/planning.d.ts.map +1 -0
  572. package/dist/team/coordinator/policy.d.ts +31 -0
  573. package/dist/team/coordinator/policy.d.ts.map +1 -0
  574. package/dist/team/coordinator/round-engine.d.ts +25 -0
  575. package/dist/team/coordinator/round-engine.d.ts.map +1 -0
  576. package/dist/team/coordinator/synthesis.d.ts +20 -0
  577. package/dist/team/coordinator/synthesis.d.ts.map +1 -0
  578. package/dist/team/coordinator/turn.d.ts +107 -0
  579. package/dist/team/coordinator/turn.d.ts.map +1 -0
  580. package/dist/team/coordinator/types.d.ts +344 -0
  581. package/dist/team/coordinator/types.d.ts.map +1 -0
  582. package/dist/team/events.d.ts +148 -0
  583. package/dist/team/events.d.ts.map +1 -0
  584. package/dist/team/execution.d.ts +51 -0
  585. package/dist/team/execution.d.ts.map +1 -0
  586. package/dist/team/index.d.ts +23 -545
  587. package/dist/team/index.d.ts.map +1 -0
  588. package/dist/team/index.js +2 -2
  589. package/dist/team/mailbox.d.ts +91 -0
  590. package/dist/team/mailbox.d.ts.map +1 -0
  591. package/dist/team/notifications.d.ts +23 -0
  592. package/dist/team/notifications.d.ts.map +1 -0
  593. package/dist/team/permissions.d.ts +88 -0
  594. package/dist/team/permissions.d.ts.map +1 -0
  595. package/dist/team/shutdown.d.ts +38 -0
  596. package/dist/team/shutdown.d.ts.map +1 -0
  597. package/dist/team/task-board.d.ts +161 -0
  598. package/dist/team/task-board.d.ts.map +1 -0
  599. package/dist/team/types.d.ts +233 -0
  600. package/dist/team/types.d.ts.map +1 -0
  601. package/dist/team/work-loop.d.ts +30 -0
  602. package/dist/team/work-loop.d.ts.map +1 -0
  603. package/dist/tool/executor.d.ts +59 -0
  604. package/dist/tool/executor.d.ts.map +1 -0
  605. package/dist/tool/host/index.d.ts +7 -38
  606. package/dist/tool/host/index.d.ts.map +1 -0
  607. package/dist/tool/host/local.d.ts +15 -0
  608. package/dist/tool/host/local.d.ts.map +1 -0
  609. package/dist/tool/host/registry.d.ts +17 -0
  610. package/dist/tool/host/registry.d.ts.map +1 -0
  611. package/dist/{types-C_LCeYNg.d.ts → tool/host/types.d.ts} +6 -7
  612. package/dist/tool/host/types.d.ts.map +1 -0
  613. package/dist/tool/index.d.ts +21 -285
  614. package/dist/tool/index.d.ts.map +1 -0
  615. package/dist/tool/index.js +4 -3
  616. package/dist/tool/registry.d.ts +130 -0
  617. package/dist/tool/registry.d.ts.map +1 -0
  618. package/dist/tool/replay.d.ts +11 -0
  619. package/dist/tool/replay.d.ts.map +1 -0
  620. package/dist/tool/tool-search.d.ts +50 -0
  621. package/dist/tool/tool-search.d.ts.map +1 -0
  622. package/dist/tool/tool.d.ts +308 -0
  623. package/dist/tool/tool.d.ts.map +1 -0
  624. package/dist/tool/truncation.d.ts +34 -0
  625. package/dist/tool/truncation.d.ts.map +1 -0
  626. package/dist/tool/turn-tools.d.ts +71 -0
  627. package/dist/tool/turn-tools.d.ts.map +1 -0
  628. package/dist/tracking/file-tracking.d.ts +25 -0
  629. package/dist/tracking/file-tracking.d.ts.map +1 -0
  630. package/dist/tracking/index.d.ts +9 -0
  631. package/dist/tracking/index.d.ts.map +1 -0
  632. package/dist/tracking/turn-tracker/diff.d.ts +11 -0
  633. package/dist/tracking/turn-tracker/diff.d.ts.map +1 -0
  634. package/dist/tracking/turn-tracker/index.d.ts +11 -0
  635. package/dist/tracking/turn-tracker/index.d.ts.map +1 -0
  636. package/dist/tracking/turn-tracker/tracker.d.ts +31 -0
  637. package/dist/tracking/turn-tracker/tracker.d.ts.map +1 -0
  638. package/dist/tracking/turn-tracker/types.d.ts +66 -0
  639. package/dist/tracking/turn-tracker/types.d.ts.map +1 -0
  640. package/dist/types/compaction.d.ts +142 -0
  641. package/dist/types/compaction.d.ts.map +1 -0
  642. package/dist/types/doom-loop.d.ts +25 -0
  643. package/dist/types/doom-loop.d.ts.map +1 -0
  644. package/dist/types/events.d.ts +194 -0
  645. package/dist/types/events.d.ts.map +1 -0
  646. package/dist/types/index.d.ts +17 -0
  647. package/dist/types/index.d.ts.map +1 -0
  648. package/dist/types/messages.d.ts +119 -0
  649. package/dist/types/messages.d.ts.map +1 -0
  650. package/dist/types/stream.d.ts +172 -0
  651. package/dist/types/stream.d.ts.map +1 -0
  652. package/dist/types/tool.d.ts +309 -0
  653. package/dist/types/tool.d.ts.map +1 -0
  654. package/dist/types/turn-source.d.ts +36 -0
  655. package/dist/types/turn-source.d.ts.map +1 -0
  656. package/dist/utils/sleep.d.ts +7 -0
  657. package/dist/utils/sleep.d.ts.map +1 -0
  658. package/package.json +45 -8
  659. package/dist/chunk-CJI7PVS2.js +0 -58
  660. package/dist/chunk-V6ETEYST.js +0 -2091
  661. package/dist/index-BCqEGzBj.d.ts +0 -251
  662. package/dist/instance-Bg61WSyz.d.ts +0 -6004
  663. package/dist/llm-error-D93FNNLY.d.ts +0 -32
  664. package/dist/turn-tools/index.d.ts +0 -12
  665. package/dist/turn-tools/index.js +0 -1
  666. package/dist/{chunk-O2WCYSXQ.js → chunk-3NBTQHVV.js} +0 -0
  667. package/dist/{chunk-Q742PSH3.js → chunk-MJML3A2F.js} +36 -36
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Thrown when a user or rule denies an operation.
3
+ */
4
+ export declare class ApprovalDeniedError extends Error {
5
+ readonly tool: string;
6
+ readonly args: unknown;
7
+ readonly feedback?: string;
8
+ constructor(tool: string, args: unknown, detail?: string);
9
+ }
10
+ /**
11
+ * Thrown when an approval request times out.
12
+ */
13
+ export declare class ApprovalTimeoutError extends Error {
14
+ readonly tool: string;
15
+ readonly timeoutMs: number;
16
+ constructor(tool: string, timeoutMs: number);
17
+ }
18
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/safety/errors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAI1B,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,OAAO;IAJ/B,SAAgB,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAGhB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EAC7B,MAAM,CAAC,EAAE,MAAM;CAMlB;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;aAE3B,IAAI,EAAE,MAAM;aACZ,SAAS,EAAE,MAAM;gBADjB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM;CAKpC"}
@@ -0,0 +1,16 @@
1
+ import type { ApprovalConfig, ApprovalEventContext, ApprovalEvaluation, ApprovalRule, RiskLevel, RuleSource } from "./types.js";
2
+ import type { ToolCapabilities } from "../types/tool.js";
3
+ /**
4
+ * Creates an approval handler for managing tool execution permissions.
5
+ */
6
+ export declare function createApprovalHandler(config?: ApprovalConfig): {
7
+ evaluate: (sessionId: string, tool: string, args: unknown, customRisks?: Record<string, RiskLevel>, capabilities?: ToolCapabilities, patternExtractor?: (input: unknown) => string[], extraRules?: ApprovalRule[]) => ApprovalEvaluation;
8
+ request: (sessionId: string, tool: string, args: unknown, customRisks?: Record<string, RiskLevel>, capabilities?: ToolCapabilities, patternExtractor?: (input: unknown) => string[], extraRules?: ApprovalRule[], eventContext?: ApprovalEventContext) => Promise<void>;
9
+ cancelAll: (_reason?: string) => void;
10
+ addRule: (rule: ApprovalRule) => void;
11
+ getRules: () => readonly ApprovalRule[];
12
+ clearSessionRules: () => void;
13
+ clearBySource: (source: RuleSource) => void;
14
+ };
15
+ export type ApprovalHandler = ReturnType<typeof createApprovalHandler>;
16
+ //# sourceMappingURL=handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/safety/handler.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,cAAc,EAEd,oBAAoB,EACpB,kBAAkB,EAElB,YAAY,EAEZ,SAAS,EACT,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAoEzD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,GAAE,cAAmB;0BA0IlD,MAAM,QACX,MAAM,QACN,OAAO,gBACC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,iBACxB,gBAAgB,qBACZ,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,EAAE,eACnC,YAAY,EAAE,KACzB,kBAAkB;yBAjIR,MAAM,QACX,MAAM,QACN,OAAO,gBACC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,iBACxB,gBAAgB,qBACZ,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,EAAE,eACnC,YAAY,EAAE,iBACZ,oBAAoB,KACjC,OAAO,CAAC,IAAI,CAAC;0BA4La,MAAM,KAAG,IAAI;oBAOnB,YAAY,KAAG,IAAI;oBAIrB,SAAS,YAAY,EAAE;6BAKd,IAAI;4BAKH,UAAU,KAAG,IAAI;EAiBjD;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -1,135 +1,13 @@
1
- import { ck as RiskLevel, aw as ApprovalRule, au as ApprovalRequest, ax as ApprovalRuleContext, cl as RuleSource, aj as ApprovalCascadePolicy, at as ApprovalRememberScope, am as ApprovalDecision, ak as ApprovalConfig } from '../instance-Bg61WSyz.js';
2
- export { ag as ApprovalAction, ai as ApprovalCascadeMode, al as ApprovalCorrection, an as ApprovalEvaluation, ap as ApprovalEventContext, aq as ApprovalHandler, ar as ApprovalLifecycleEvent, av as ApprovalResolution, dR as createApprovalHandler } from '../instance-Bg61WSyz.js';
3
- import '../types-C_LCeYNg.js';
4
- import 'ai';
5
- import '../types-RSCv7nQ4.js';
6
- import 'zod';
7
- import '../types-CQaXbRsS.js';
8
- import '../types-DMjoFKKv.js';
9
- import '@modelcontextprotocol/sdk/client/auth.js';
10
- import '@modelcontextprotocol/sdk/types.js';
11
- import '@ai-sdk/provider-utils';
12
- import '../sandbox/index.js';
13
- import '../llm-error-D93FNNLY.js';
14
-
15
1
  /**
16
- * Get the risk level for a tool.
2
+ * Safety module for @cuylabs/agent-core
17
3
  *
18
- * Resolution order (first match wins):
19
- * 1. Caller-supplied `customRisks` map (e.g. from ApprovalMiddlewareConfig)
20
- * 2. Tool-declared `riskLevel` from capabilities (set via Tool.define)
21
- * 3. Built-in `DEFAULT_TOOL_RISKS` map
22
- * 4. Fallback: `"moderate"`
23
- */
24
- declare function getToolRisk(tool: string, customRisks?: Record<string, RiskLevel>,
25
- /** Risk level declared by the tool's own capabilities. */
26
- declaredRisk?: RiskLevel): RiskLevel;
27
-
28
- /**
29
- * Thrown when a user or rule denies an operation.
30
- */
31
- declare class ApprovalDeniedError extends Error {
32
- readonly tool: string;
33
- readonly args: unknown;
34
- readonly feedback?: string;
35
- constructor(tool: string, args: unknown, detail?: string);
36
- }
37
- /**
38
- * Thrown when an approval request times out.
39
- */
40
- declare class ApprovalTimeoutError extends Error {
41
- readonly tool: string;
42
- readonly timeoutMs: number;
43
- constructor(tool: string, timeoutMs: number);
44
- }
45
-
46
- type ApprovalRuleCondition = NonNullable<ApprovalRule["when"]>;
47
- declare function createConditionalApprovalRule(rule: Omit<ApprovalRule, "when">, when: ApprovalRuleCondition): ApprovalRule;
48
- declare function allApprovalConditions(...conditions: ApprovalRuleCondition[]): ApprovalRuleCondition;
49
- declare function anyApprovalConditions(...conditions: ApprovalRuleCondition[]): ApprovalRuleCondition;
50
- declare function matchApprovalSessions(...sessionIds: string[]): ApprovalRuleCondition;
51
- declare function matchApprovalRisks(...risks: RiskLevel[]): ApprovalRuleCondition;
52
- declare function matchApprovalArgValue(path: string, predicate: (value: unknown, context: ApprovalRuleContext) => boolean): ApprovalRuleCondition;
53
- interface ApprovalNumericThresholdOptions {
54
- gt?: number;
55
- gte?: number;
56
- lt?: number;
57
- lte?: number;
58
- }
59
- declare function matchApprovalNumericArg(path: string, thresholds: ApprovalNumericThresholdOptions): ApprovalRuleCondition;
60
- declare function matchApprovalStringPrefixes(path: string, ...prefixes: string[]): ApprovalRuleCondition;
61
- declare function normalizeApprovalCascadePolicy(input?: ApprovalCascadePolicy): Required<ApprovalCascadePolicy>;
62
- declare function normalizeRememberScopes(scopes?: readonly ApprovalRememberScope[]): ApprovalRememberScope[];
63
- declare function selectRememberScope(decision: ApprovalDecision, request: ApprovalRequest, fallback?: ApprovalRememberScope): ApprovalRememberScope;
64
- declare function createRememberedApprovalRules(request: ApprovalRequest, source?: RuleSource): ApprovalRule[];
65
- declare function approvalRequestsOverlap(left: ApprovalRequest, right: ApprovalRequest): boolean;
66
- declare function shouldCascadeApprovalDecision(resolved: ApprovalRequest, candidate: ApprovalRequest, decision: ApprovalDecision): boolean;
67
- declare function formatApprovalDeniedReason(tool: string, detail?: string): string;
68
- declare function createApprovalCorrection(tool: string, detail?: string): {
69
- kind: "approval-denied";
70
- tool: string;
71
- reason: string;
72
- feedback?: string;
73
- };
74
- declare function buildApprovalRuleContext(sessionId: string, tool: string, args: unknown, risk: RiskLevel, patternExtractor?: (input: unknown) => string[]): ApprovalRuleContext;
75
-
76
- type ApprovalPolicyPresetName = "interactive" | "headless-deny" | "dangerously-allow-all" | "risk-tier";
77
- interface ApprovalPolicyPresetOptions {
78
- onRequest?: ApprovalConfig["onRequest"];
79
- rules?: ApprovalRule[];
80
- timeout?: number;
81
- rememberScope?: ApprovalRememberScope;
82
- allowedRememberScopes?: ApprovalConfig["allowedRememberScopes"];
83
- cascade?: ApprovalConfig["cascade"];
84
- }
85
- interface RiskTierApprovalPolicyOptions extends ApprovalPolicyPresetOptions {
86
- safe?: ApprovalConfig["defaultAction"];
87
- moderate?: ApprovalConfig["defaultAction"];
88
- dangerous?: ApprovalConfig["defaultAction"];
89
- source?: RuleSource;
90
- }
91
- interface TrustedSessionApprovalPolicyOptions extends ApprovalPolicyPresetOptions {
92
- sessionIds: string[];
93
- tools?: string[];
94
- patterns?: string[];
95
- risks?: RiskLevel[];
96
- source?: RuleSource;
97
- }
98
- interface ThresholdApprovalRuleOptions {
99
- tool: string;
100
- pattern?: string;
101
- action: "allow" | "deny";
102
- argPath: string;
103
- gt?: number;
104
- gte?: number;
105
- lt?: number;
106
- lte?: number;
107
- source?: RuleSource;
108
- reason?: string;
109
- }
110
- declare function createInteractiveApprovalPolicy(options?: ApprovalPolicyPresetOptions): ApprovalConfig;
111
- declare function createHeadlessDenyApprovalPolicy(options?: Omit<ApprovalPolicyPresetOptions, "onRequest">): ApprovalConfig;
112
- declare function createDangerouslyAllowAllApprovalPolicy(options?: Omit<ApprovalPolicyPresetOptions, "onRequest">): ApprovalConfig;
113
- declare function createRiskTierApprovalPolicy(options?: RiskTierApprovalPolicyOptions): ApprovalConfig;
114
- declare function createTrustedSessionApprovalPolicy(options: TrustedSessionApprovalPolicyOptions): ApprovalConfig;
115
- declare function createThresholdApprovalRule(options: ThresholdApprovalRuleOptions): ApprovalRule;
116
- declare function createApprovalPolicyPreset(name: ApprovalPolicyPresetName, options?: ApprovalPolicyPresetOptions | RiskTierApprovalPolicyOptions): ApprovalConfig;
117
-
118
- /**
119
- * Simple glob-style pattern matching.
120
- * Supports: `*` (any chars), `?` (single char)
121
- *
122
- * Uses an iterative two-pointer approach instead of regex
123
- * to avoid ReDoS risk from user-provided patterns.
124
- */
125
- declare function matchApprovalPattern(pattern: string, value: string): boolean;
126
- /**
127
- * Extract approval patterns from tool arguments for "remember" functionality.
128
- */
129
- declare function extractApprovalPatterns(tool: string, args: unknown): string[];
130
- /**
131
- * Generate a human-readable description of an operation.
132
- */
133
- declare function describeApprovalOperation(tool: string, args: unknown): string;
134
-
135
- export { ApprovalCascadePolicy, ApprovalConfig, ApprovalDecision, ApprovalDeniedError, type ApprovalPolicyPresetName, type ApprovalPolicyPresetOptions, ApprovalRememberScope, ApprovalRequest, ApprovalRule, type ApprovalRuleCondition, ApprovalRuleContext, ApprovalTimeoutError, RiskLevel, type RiskTierApprovalPolicyOptions, RuleSource, type ThresholdApprovalRuleOptions, type TrustedSessionApprovalPolicyOptions, allApprovalConditions, anyApprovalConditions, approvalRequestsOverlap, buildApprovalRuleContext, createApprovalCorrection, createApprovalPolicyPreset, createConditionalApprovalRule, createDangerouslyAllowAllApprovalPolicy, createHeadlessDenyApprovalPolicy, createInteractiveApprovalPolicy, createRememberedApprovalRules, createRiskTierApprovalPolicy, createThresholdApprovalRule, createTrustedSessionApprovalPolicy, describeApprovalOperation, extractApprovalPatterns, formatApprovalDeniedReason, getToolRisk, matchApprovalArgValue, matchApprovalNumericArg, matchApprovalPattern, matchApprovalRisks, matchApprovalSessions, matchApprovalStringPrefixes, normalizeApprovalCascadePolicy, normalizeRememberScopes, selectRememberScope, shouldCascadeApprovalDecision };
4
+ * Approval handler, risk classification, pattern matching.
5
+ */
6
+ export type { ApprovalAction, ApprovalCascadeMode, ApprovalCascadePolicy, ApprovalCorrection, ApprovalConfig, ApprovalDecision, ApprovalEventContext, ApprovalEvaluation, ApprovalLifecycleEvent, ApprovalRememberScope, ApprovalRequest, ApprovalResolution, ApprovalRule, ApprovalRuleContext, RiskLevel, RuleSource, } from "./types.js";
7
+ export { getToolRisk } from "./risk.js";
8
+ export { ApprovalDeniedError, ApprovalTimeoutError } from "./errors.js";
9
+ export { createApprovalHandler, type ApprovalHandler } from "./handler.js";
10
+ export { allApprovalConditions, anyApprovalConditions, approvalRequestsOverlap, buildApprovalRuleContext, createApprovalCorrection, createConditionalApprovalRule, createRememberedApprovalRules, formatApprovalDeniedReason, matchApprovalArgValue, matchApprovalNumericArg, matchApprovalRisks, matchApprovalSessions, matchApprovalStringPrefixes, normalizeApprovalCascadePolicy, normalizeRememberScopes, selectRememberScope, shouldCascadeApprovalDecision, type ApprovalRuleCondition, } from "./policy.js";
11
+ export { createApprovalPolicyPreset, createDangerouslyAllowAllApprovalPolicy, createHeadlessDenyApprovalPolicy, createInteractiveApprovalPolicy, createRiskTierApprovalPolicy, createThresholdApprovalRule, createTrustedSessionApprovalPolicy, type ApprovalPolicyPresetName, type ApprovalPolicyPresetOptions, type RiskTierApprovalPolicyOptions, type ThresholdApprovalRuleOptions, type TrustedSessionApprovalPolicyOptions, } from "./presets.js";
12
+ export { describeApprovalOperation, extractApprovalPatterns, matchApprovalPattern, } from "./patterns.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/safety/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,6BAA6B,EAC7B,6BAA6B,EAC7B,0BAA0B,EAC1B,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,8BAA8B,EAC9B,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,KAAK,qBAAqB,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,0BAA0B,EAC1B,uCAAuC,EACvC,gCAAgC,EAChC,+BAA+B,EAC/B,4BAA4B,EAC5B,2BAA2B,EAC3B,kCAAkC,EAClC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,mCAAmC,GACzC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Simple glob-style pattern matching.
3
+ * Supports: `*` (any chars), `?` (single char)
4
+ *
5
+ * Uses an iterative two-pointer approach instead of regex
6
+ * to avoid ReDoS risk from user-provided patterns.
7
+ */
8
+ export declare function matchApprovalPattern(pattern: string, value: string): boolean;
9
+ /**
10
+ * Extract approval patterns from tool arguments for "remember" functionality.
11
+ */
12
+ export declare function extractApprovalPatterns(tool: string, args: unknown): string[];
13
+ /**
14
+ * Generate a human-readable description of an operation.
15
+ */
16
+ export declare function describeApprovalOperation(tool: string, args: unknown): string;
17
+ //# sourceMappingURL=patterns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../../src/safety/patterns.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAkC5E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,CA0B7E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAoC7E"}
@@ -0,0 +1,31 @@
1
+ import type { ApprovalCascadePolicy, ApprovalDecision, ApprovalRememberScope, ApprovalRequest, ApprovalRule, ApprovalRuleContext, RiskLevel, RuleSource } from "./types.js";
2
+ export type ApprovalRuleCondition = NonNullable<ApprovalRule["when"]>;
3
+ export declare function createConditionalApprovalRule(rule: Omit<ApprovalRule, "when">, when: ApprovalRuleCondition): ApprovalRule;
4
+ export declare function allApprovalConditions(...conditions: ApprovalRuleCondition[]): ApprovalRuleCondition;
5
+ export declare function anyApprovalConditions(...conditions: ApprovalRuleCondition[]): ApprovalRuleCondition;
6
+ export declare function matchApprovalSessions(...sessionIds: string[]): ApprovalRuleCondition;
7
+ export declare function matchApprovalRisks(...risks: RiskLevel[]): ApprovalRuleCondition;
8
+ export declare function matchApprovalArgValue(path: string, predicate: (value: unknown, context: ApprovalRuleContext) => boolean): ApprovalRuleCondition;
9
+ export interface ApprovalNumericThresholdOptions {
10
+ gt?: number;
11
+ gte?: number;
12
+ lt?: number;
13
+ lte?: number;
14
+ }
15
+ export declare function matchApprovalNumericArg(path: string, thresholds: ApprovalNumericThresholdOptions): ApprovalRuleCondition;
16
+ export declare function matchApprovalStringPrefixes(path: string, ...prefixes: string[]): ApprovalRuleCondition;
17
+ export declare function normalizeApprovalCascadePolicy(input?: ApprovalCascadePolicy): Required<ApprovalCascadePolicy>;
18
+ export declare function normalizeRememberScopes(scopes?: readonly ApprovalRememberScope[]): ApprovalRememberScope[];
19
+ export declare function selectRememberScope(decision: ApprovalDecision, request: ApprovalRequest, fallback?: ApprovalRememberScope): ApprovalRememberScope;
20
+ export declare function createRememberedApprovalRules(request: ApprovalRequest, source?: RuleSource): ApprovalRule[];
21
+ export declare function approvalRequestsOverlap(left: ApprovalRequest, right: ApprovalRequest): boolean;
22
+ export declare function shouldCascadeApprovalDecision(resolved: ApprovalRequest, candidate: ApprovalRequest, decision: ApprovalDecision): boolean;
23
+ export declare function formatApprovalDeniedReason(tool: string, detail?: string): string;
24
+ export declare function createApprovalCorrection(tool: string, detail?: string): {
25
+ kind: "approval-denied";
26
+ tool: string;
27
+ reason: string;
28
+ feedback?: string;
29
+ };
30
+ export declare function buildApprovalRuleContext(sessionId: string, tool: string, args: unknown, risk: RiskLevel, patternExtractor?: (input: unknown) => string[]): ApprovalRuleContext;
31
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/safety/policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;AAStE,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,EAChC,IAAI,EAAE,qBAAqB,GAC1B,YAAY,CAKd;AAED,wBAAgB,qBAAqB,CACnC,GAAG,UAAU,EAAE,qBAAqB,EAAE,GACrC,qBAAqB,CAEvB;AAED,wBAAgB,qBAAqB,CACnC,GAAG,UAAU,EAAE,qBAAqB,EAAE,GACrC,qBAAqB,CAEvB;AAED,wBAAgB,qBAAqB,CACnC,GAAG,UAAU,EAAE,MAAM,EAAE,GACtB,qBAAqB,CAKvB;AAED,wBAAgB,kBAAkB,CAChC,GAAG,KAAK,EAAE,SAAS,EAAE,GACpB,qBAAqB,CAGvB;AAiBD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,KAAK,OAAO,GACnE,qBAAqB,CAEvB;AAED,MAAM,WAAW,+BAA+B;IAC9C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,+BAA+B,GAC1C,qBAAqB,CAmBvB;AAED,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,GAAG,QAAQ,EAAE,MAAM,EAAE,GACpB,qBAAqB,CASvB;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,CAAC,EAAE,qBAAqB,GAC5B,QAAQ,CAAC,qBAAqB,CAAC,CAKjC;AAED,wBAAgB,uBAAuB,CACrC,MAAM,CAAC,EAAE,SAAS,qBAAqB,EAAE,GACxC,qBAAqB,EAAE,CAYzB;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,eAAe,EACxB,QAAQ,GAAE,qBAA8C,GACvD,qBAAqB,CAOvB;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,eAAe,EACxB,MAAM,GAAE,UAAmE,GAC1E,YAAY,EAAE,CAUhB;AAeD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,eAAe,GACrB,OAAO,CAQT;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,eAAe,EAC1B,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAeT;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAKR;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,GACd;IACD,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CASA;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,SAAS,EACf,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,EAAE,GAC9C,mBAAmB,CAUrB"}
@@ -0,0 +1,43 @@
1
+ import type { ApprovalConfig, ApprovalRememberScope, ApprovalRule, RiskLevel, RuleSource } from "./types.js";
2
+ export type ApprovalPolicyPresetName = "interactive" | "headless-deny" | "dangerously-allow-all" | "risk-tier";
3
+ export interface ApprovalPolicyPresetOptions {
4
+ onRequest?: ApprovalConfig["onRequest"];
5
+ rules?: ApprovalRule[];
6
+ timeout?: number;
7
+ rememberScope?: ApprovalRememberScope;
8
+ allowedRememberScopes?: ApprovalConfig["allowedRememberScopes"];
9
+ cascade?: ApprovalConfig["cascade"];
10
+ }
11
+ export interface RiskTierApprovalPolicyOptions extends ApprovalPolicyPresetOptions {
12
+ safe?: ApprovalConfig["defaultAction"];
13
+ moderate?: ApprovalConfig["defaultAction"];
14
+ dangerous?: ApprovalConfig["defaultAction"];
15
+ source?: RuleSource;
16
+ }
17
+ export interface TrustedSessionApprovalPolicyOptions extends ApprovalPolicyPresetOptions {
18
+ sessionIds: string[];
19
+ tools?: string[];
20
+ patterns?: string[];
21
+ risks?: RiskLevel[];
22
+ source?: RuleSource;
23
+ }
24
+ export interface ThresholdApprovalRuleOptions {
25
+ tool: string;
26
+ pattern?: string;
27
+ action: "allow" | "deny";
28
+ argPath: string;
29
+ gt?: number;
30
+ gte?: number;
31
+ lt?: number;
32
+ lte?: number;
33
+ source?: RuleSource;
34
+ reason?: string;
35
+ }
36
+ export declare function createInteractiveApprovalPolicy(options?: ApprovalPolicyPresetOptions): ApprovalConfig;
37
+ export declare function createHeadlessDenyApprovalPolicy(options?: Omit<ApprovalPolicyPresetOptions, "onRequest">): ApprovalConfig;
38
+ export declare function createDangerouslyAllowAllApprovalPolicy(options?: Omit<ApprovalPolicyPresetOptions, "onRequest">): ApprovalConfig;
39
+ export declare function createRiskTierApprovalPolicy(options?: RiskTierApprovalPolicyOptions): ApprovalConfig;
40
+ export declare function createTrustedSessionApprovalPolicy(options: TrustedSessionApprovalPolicyOptions): ApprovalConfig;
41
+ export declare function createThresholdApprovalRule(options: ThresholdApprovalRuleOptions): ApprovalRule;
42
+ export declare function createApprovalPolicyPreset(name: ApprovalPolicyPresetName, options?: ApprovalPolicyPresetOptions | RiskTierApprovalPolicyOptions): ApprovalConfig;
43
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/safety/presets.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,YAAY,EAEZ,SAAS,EACT,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,wBAAwB,GAChC,aAAa,GACb,eAAe,GACf,uBAAuB,GACvB,WAAW,CAAC;AAEhB,MAAM,WAAW,2BAA2B;IAC1C,SAAS,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,qBAAqB,CAAC,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAC;IAChE,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,6BAA8B,SAAQ,2BAA2B;IAChF,IAAI,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAC5C,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,mCAAoC,SAAQ,2BAA2B;IACtF,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmBD,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE,2BAAgC,GACxC,cAAc,CAEhB;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,GAAE,IAAI,CAAC,2BAA2B,EAAE,WAAW,CAAM,GAC3D,cAAc,CAEhB;AAED,wBAAgB,uCAAuC,CACrD,OAAO,GAAE,IAAI,CAAC,2BAA2B,EAAE,WAAW,CAAM,GAC3D,cAAc,CAEhB;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,cAAc,CAoChB;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,mCAAmC,GAC3C,cAAc,CAkChB;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,4BAA4B,GACpC,YAAY,CAoBd;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,wBAAwB,EAC9B,OAAO,GAAE,2BAA2B,GAAG,6BAAkC,GACxE,cAAc,CAahB"}
@@ -0,0 +1,14 @@
1
+ import type { RiskLevel } from "./types.js";
2
+ /**
3
+ * Get the risk level for a tool.
4
+ *
5
+ * Resolution order (first match wins):
6
+ * 1. Caller-supplied `customRisks` map (e.g. from ApprovalMiddlewareConfig)
7
+ * 2. Tool-declared `riskLevel` from capabilities (set via Tool.define)
8
+ * 3. Built-in `DEFAULT_TOOL_RISKS` map
9
+ * 4. Fallback: `"moderate"`
10
+ */
11
+ export declare function getToolRisk(tool: string, customRisks?: Record<string, RiskLevel>,
12
+ /** Risk level declared by the tool's own capabilities. */
13
+ declaredRisk?: RiskLevel): RiskLevel;
14
+ //# sourceMappingURL=risk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"risk.d.ts","sourceRoot":"","sources":["../../src/safety/risk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA0B5C;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;AACvC,0DAA0D;AAC1D,YAAY,CAAC,EAAE,SAAS,GACvB,SAAS,CAWX"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Risk level for operations.
3
+ */
4
+ export type RiskLevel = "safe" | "moderate" | "dangerous";
5
+ /**
6
+ * User response to an approval request.
7
+ */
8
+ export type ApprovalAction = "allow" | "deny" | "remember";
9
+ export type ApprovalRememberScope = "session" | "project" | "user";
10
+ export type ApprovalCascadeMode = "none" | "matching-pending";
11
+ export interface ApprovalCascadePolicy {
12
+ remember?: ApprovalCascadeMode;
13
+ deny?: ApprovalCascadeMode;
14
+ }
15
+ export interface ApprovalCorrection {
16
+ kind: "approval-denied";
17
+ tool: string;
18
+ reason: string;
19
+ feedback?: string;
20
+ }
21
+ /**
22
+ * Structured approval decision.
23
+ *
24
+ * `feedback` is primarily useful for denials, where the user wants to tell the
25
+ * agent why the action was rejected.
26
+ */
27
+ export interface ApprovalDecision {
28
+ action: ApprovalAction;
29
+ feedback?: string;
30
+ rememberScope?: ApprovalRememberScope;
31
+ }
32
+ /**
33
+ * Approval response accepted by handlers.
34
+ *
35
+ * Callers may return either the simple string action or the structured object.
36
+ */
37
+ export type ApprovalResolution = ApprovalAction | ApprovalDecision;
38
+ export type ApprovalLifecycleEvent = {
39
+ type: "status";
40
+ status: "waiting-approval" | "processing";
41
+ } | {
42
+ type: "approval-request";
43
+ request: ApprovalRequest;
44
+ } | {
45
+ type: "approval-resolved";
46
+ id: string;
47
+ action: ApprovalDecision["action"];
48
+ feedback?: string;
49
+ rememberScope?: ApprovalRememberScope;
50
+ };
51
+ export interface ApprovalEventContext {
52
+ emitEvent?: (event: ApprovalLifecycleEvent) => void | Promise<void>;
53
+ }
54
+ /**
55
+ * Where a rule came from — used for debugging and selective clearing.
56
+ *
57
+ * Priority order (highest wins): `"cli"` > `"session"` > `"project"` > `"user"`.
58
+ * Within the same source, `"deny"` beats `"allow"`.
59
+ */
60
+ export type RuleSource = "user" | "project" | "session" | "cli";
61
+ /**
62
+ * Approval request sent to the UI/handler.
63
+ */
64
+ export interface ApprovalRequest {
65
+ /** Unique request ID */
66
+ id: string;
67
+ /** Session ID */
68
+ sessionId: string;
69
+ /** Tool name */
70
+ tool: string;
71
+ /** Tool arguments */
72
+ args: unknown;
73
+ /** Human-readable description */
74
+ description: string;
75
+ /** Risk level */
76
+ risk: RiskLevel;
77
+ /** Patterns that would be remembered if "remember" is chosen */
78
+ patterns: string[];
79
+ /** Allowed scopes when the user chooses "remember". */
80
+ rememberScopes?: ApprovalRememberScope[];
81
+ /** Default scope applied when the client does not specify one. */
82
+ defaultRememberScope?: ApprovalRememberScope;
83
+ /** How matching pending approval requests should cascade. */
84
+ cascade?: ApprovalCascadePolicy;
85
+ /** Timestamp */
86
+ timestamp: number;
87
+ }
88
+ /**
89
+ * Context available when evaluating dynamic approval rules.
90
+ */
91
+ export interface ApprovalRuleContext {
92
+ sessionId: string;
93
+ tool: string;
94
+ args: unknown;
95
+ risk: RiskLevel;
96
+ patterns: string[];
97
+ }
98
+ export type ApprovalEvaluation = {
99
+ action: "allow";
100
+ } | {
101
+ action: "deny";
102
+ reason: string;
103
+ } | {
104
+ action: "request";
105
+ request: ApprovalRequest;
106
+ };
107
+ /**
108
+ * Rule for auto-approving/denying operations.
109
+ */
110
+ export interface ApprovalRule {
111
+ /** Pattern to match (glob-style) */
112
+ pattern: string;
113
+ /** Tool to match (`*` for all) */
114
+ tool: string;
115
+ /** Action to take */
116
+ action: "allow" | "deny";
117
+ /** Optional explanation used when a deny rule matches. */
118
+ reason?: string;
119
+ /**
120
+ * Optional predicate for dynamic conditions.
121
+ *
122
+ * Lets hosts express rules like "ask for bash only when command includes curl"
123
+ * or "allow edits under this threshold". When omitted, the rule is purely
124
+ * pattern-based.
125
+ */
126
+ when?: (context: ApprovalRuleContext) => boolean;
127
+ /**
128
+ * Where this rule came from.
129
+ *
130
+ * Rules from higher-priority sources override lower ones when both
131
+ * match the same tool+pattern. Within the same source, `"deny"` wins.
132
+ *
133
+ * Omit for "flat" rules with no source tracking.
134
+ */
135
+ source?: RuleSource;
136
+ }
137
+ /**
138
+ * Configuration for the approval handler.
139
+ */
140
+ export interface ApprovalConfig {
141
+ /** Default action when no rule matches (default: "ask") */
142
+ defaultAction?: "allow" | "deny" | "ask";
143
+ /** Pre-configured rules */
144
+ rules?: ApprovalRule[];
145
+ /** Handler for approval requests */
146
+ onRequest?: (request: ApprovalRequest) => Promise<ApprovalResolution>;
147
+ /** Timeout for approval requests in ms (default: 5 minutes) */
148
+ timeout?: number;
149
+ /** Default scope for remembered approvals (default: "session"). */
150
+ rememberScope?: ApprovalRememberScope;
151
+ /**
152
+ * Allowed scopes for remembered approvals.
153
+ * Defaults to `["session"]`.
154
+ */
155
+ allowedRememberScopes?: ApprovalRememberScope[];
156
+ /**
157
+ * Cascade behavior for matching pending approvals.
158
+ *
159
+ * Defaults to:
160
+ * - `remember: "matching-pending"`
161
+ * - `deny: "matching-pending"`
162
+ */
163
+ cascade?: ApprovalCascadePolicy;
164
+ }
165
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/safety/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;AAE3D,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnE,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,kBAAkB,CAAC;AAE9D,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,qBAAqB,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAEnE,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE,GACtD;IACE,IAAI,EAAE,mBAAmB,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,qBAAqB,CAAC;CACvC,CAAC;AAEN,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrE;AAED;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,uDAAuD;IACvD,cAAc,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACzC,kEAAkE;IAClE,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAC7C,6DAA6D;IAC7D,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC;IACjD;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;IACzC,2BAA2B;IAC3B,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,oCAAoC;IACpC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACtE,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAChD;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,qBAAqB,CAAC;CACjC"}
@@ -1,81 +1,2 @@
1
- import { T as ToolHost } from '../types-C_LCeYNg.js';
2
-
3
- /**
4
- * Preview endpoint exposed by a managed sandbox environment.
5
- */
6
- interface SandboxPreview {
7
- /** The internal port inside the environment. */
8
- port: number;
9
- /** Publicly reachable URL for the preview. */
10
- url: string;
11
- /** Optional user-facing label. */
12
- label?: string;
13
- }
14
- /**
15
- * Snapshot handle returned by a sandbox implementation.
16
- */
17
- interface SandboxSnapshotResult {
18
- /** Provider-specific snapshot identifier. */
19
- id: string;
20
- /** Optional display label or description. */
21
- label?: string;
22
- /** Provider-specific metadata for later restore flows. */
23
- metadata?: Record<string, unknown>;
24
- }
25
- /**
26
- * Metadata describing a managed sandbox session.
27
- */
28
- interface SandboxSessionMetadata {
29
- /** Implementation kind such as "docker", "local", or "cloud". */
30
- kind?: string;
31
- /** Human-readable label for logs or dashboards. */
32
- label?: string;
33
- /** Working directory exposed through the embedded ToolHost. */
34
- workingDirectory?: string;
35
- /** Extra environment details suitable for prompts or UI surfaces. */
36
- environmentDetails?: string;
37
- /** Preview endpoints exposed by the environment. */
38
- previews?: readonly SandboxPreview[];
39
- /** Session expiration timestamp when managed by a lease/timeout system. */
40
- expiresAt?: number;
41
- /** Initial timeout/lease duration in milliseconds. */
42
- timeoutMs?: number;
43
- /** Provider-specific metadata. */
44
- [key: string]: unknown;
45
- }
46
- /**
47
- * Managed execution environment used by host-backed tools.
48
- *
49
- * A SandboxSession owns environment lifecycle concerns such as start/stop,
50
- * snapshots, timeout extension, and preview URLs, while exposing a `ToolHost`
51
- * for the actual file/shell operations tools perform.
52
- */
53
- interface SandboxSession {
54
- /** Stable identifier for the environment session. */
55
- readonly id: string;
56
- /** Tool execution surface exposed by the environment. */
57
- readonly host: ToolHost;
58
- /** Optional metadata about the environment. */
59
- readonly metadata?: SandboxSessionMetadata;
60
- /** Stop and clean up the environment. */
61
- stop(): Promise<void>;
62
- /** Create a restorable snapshot when supported by the provider. */
63
- snapshot?(): Promise<SandboxSnapshotResult>;
64
- /** Extend the environment lease/timeout when supported. */
65
- extendTimeout?(additionalMs: number): Promise<{
66
- expiresAt: number;
67
- } | void>;
68
- /** Return a preview URL for an exposed port when supported. */
69
- getPreviewUrl?(port: number): string | undefined;
70
- }
71
- /**
72
- * Factory/connector surface for sandbox implementations.
73
- *
74
- * Providers may support only `connect`, only `create`, or both.
75
- */
76
- interface SandboxProvider<TConnectOptions = unknown, TCreateOptions = TConnectOptions> {
77
- connect?(options: TConnectOptions): Promise<SandboxSession>;
78
- create?(options: TCreateOptions): Promise<SandboxSession>;
79
- }
80
-
81
- export type { SandboxPreview, SandboxProvider, SandboxSession, SandboxSessionMetadata, SandboxSnapshotResult };
1
+ export type { SandboxPreview, SandboxProvider, SandboxSession, SandboxSessionMetadata, SandboxSnapshotResult, } from "./types.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,cAAc,EACd,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,YAAY,CAAC"}