effect-agent 0.1.0-beta.85 → 0.1.0-beta.87

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 (751) hide show
  1. package/dist/Agent-CN0EWRsR.d.mts +226 -0
  2. package/dist/Agent-RklVROrm.mjs +83 -0
  3. package/dist/Agent-RklVROrm.mjs.map +1 -0
  4. package/dist/AgentError-CggcAQ7V.d.mts +101 -0
  5. package/dist/AgentPolicy-CetmQrf3.d.mts +96 -0
  6. package/dist/AgentRuntime-BLyETCPo.mjs +4562 -0
  7. package/dist/AgentRuntime-BLyETCPo.mjs.map +1 -0
  8. package/dist/AgentRuntime-uxR_a4VM.d.mts +346 -0
  9. package/dist/AgentUpdates-DMJ-_xow.d.mts +53 -0
  10. package/dist/ContextCompactor-Dxu5zhOL.d.mts +161 -0
  11. package/dist/ContextWindow-DRQ5Mbm2.d.mts +58 -0
  12. package/dist/DurableAgentRuntime-uggeJpv3.mjs +6368 -0
  13. package/dist/DurableAgentRuntime-uggeJpv3.mjs.map +1 -0
  14. package/dist/DurableFailpoint-Oinuuedm.d.mts +41 -0
  15. package/dist/DurableStep-Cry_iol4.d.mts +103 -0
  16. package/dist/Ephemeral.d.mts +22 -0
  17. package/dist/Ephemeral.mjs +22 -0
  18. package/dist/Ephemeral.mjs.map +1 -0
  19. package/dist/EventSource-OqS_P9ug.d.mts +51 -0
  20. package/dist/Identifiers-CN2s30fF.d.mts +40 -0
  21. package/dist/MemoryNamespace-BbRW5p71.d.mts +36 -0
  22. package/dist/MemoryReference-B8Q3UJoJ.d.mts +79 -0
  23. package/dist/Messaging-CkcIdt4I.d.mts +490 -0
  24. package/dist/MessagingHost-CRk0kXzT.d.mts +246 -0
  25. package/dist/MessagingHost-CWi_PP3g.mjs +137 -0
  26. package/dist/MessagingHost-CWi_PP3g.mjs.map +1 -0
  27. package/dist/OperationAuthorizer-TzcQtpX5.d.mts +61 -0
  28. package/dist/Output-D6SkedVx.d.mts +25 -0
  29. package/dist/PageCapture-Df8Xwskw.d.mts +583 -0
  30. package/dist/PageScreenshot-BpgZKAxl.d.mts +48 -0
  31. package/dist/PreparedInputAdmission-C4HbjHgl.d.mts +38 -0
  32. package/dist/Receipt-BAHyigAF.d.mts +33 -0
  33. package/dist/Records-BAGkekt8.d.mts +3570 -0
  34. package/dist/RunEvent-DIrzkjLr.d.mts +460 -0
  35. package/dist/RunEventSink-D5aVhISG.d.mts +108 -0
  36. package/dist/RunJournal-Cgg1kNvc.mjs +825 -0
  37. package/dist/RunJournal-Cgg1kNvc.mjs.map +1 -0
  38. package/dist/RunOptions-g1aigcKI.d.mts +915 -0
  39. package/dist/RunPolicyUsage-ClZxyR46.d.mts +21 -0
  40. package/dist/Sandbox-CEsDWBLq.d.mts +173 -0
  41. package/dist/Schedule-H3SEYX9g.d.mts +842 -0
  42. package/dist/Scheduling-C9aIP8zT.mjs +691 -0
  43. package/dist/Scheduling-C9aIP8zT.mjs.map +1 -0
  44. package/dist/Subagent-Cy_hU1tv.mjs +1469 -0
  45. package/dist/Subagent-Cy_hU1tv.mjs.map +1 -0
  46. package/dist/Subagent-DyfzHNdv.d.mts +826 -0
  47. package/dist/SubagentContract-DdT7Cqe6.d.mts +116 -0
  48. package/dist/SubagentHost-CJUBQlcc.d.mts +140 -0
  49. package/dist/Subscription-BEP8oQO5.d.mts +921 -0
  50. package/dist/SubscriptionInput-vAAOBrK7.d.mts +41 -0
  51. package/dist/Thread-DOBQ0QUY.d.mts +96 -0
  52. package/dist/ThreadHistory-tS1KwxHR.d.mts +60 -0
  53. package/dist/ToolBroker-DWs4tZra.d.mts +133 -0
  54. package/dist/ToolExposure-9uF_Yo0T.mjs +10 -0
  55. package/dist/ToolExposure-9uF_Yo0T.mjs.map +1 -0
  56. package/dist/ToolExposure-C93U1sPu.mjs +30 -0
  57. package/dist/ToolExposure-C93U1sPu.mjs.map +1 -0
  58. package/dist/ToolExposure-UCN12eCd.d.mts +39 -0
  59. package/dist/ToolExposure-r2eOWk4F.d.mts +46 -0
  60. package/dist/ToolExposure.d.mts +6 -5
  61. package/dist/ToolExposure.mjs +17 -9
  62. package/dist/ToolExposure.mjs.map +1 -1
  63. package/dist/ToolReconciler-DQVaJfpE.d.mts +76 -0
  64. package/dist/ToolResult-DmmgoChv.d.mts +61 -0
  65. package/dist/Usage-Dx0aknfk.d.mts +121 -0
  66. package/dist/WakeScheduler-EjUF-GhC.d.mts +56 -0
  67. package/dist/Worker-CaPYykpe.d.mts +228 -0
  68. package/dist/agent-registration-CWDMOAZA.mjs +172 -0
  69. package/dist/agent-registration-CWDMOAZA.mjs.map +1 -0
  70. package/dist/capabilities/Approval.d.mts +114 -0
  71. package/dist/capabilities/Approval.mjs +226 -0
  72. package/dist/capabilities/Approval.mjs.map +1 -0
  73. package/dist/capabilities/Budget.d.mts +112 -0
  74. package/dist/capabilities/Budget.mjs +346 -0
  75. package/dist/capabilities/Budget.mjs.map +1 -0
  76. package/dist/capabilities/CodeMode.d.mts +157 -0
  77. package/dist/capabilities/CodeMode.mjs +522 -0
  78. package/dist/capabilities/CodeMode.mjs.map +1 -0
  79. package/dist/capabilities/Commands.d.mts +55 -0
  80. package/dist/capabilities/Commands.mjs +57 -0
  81. package/dist/capabilities/Commands.mjs.map +1 -0
  82. package/dist/capabilities/ContextTools.d.mts +321 -0
  83. package/dist/capabilities/ContextTools.mjs +126 -0
  84. package/dist/capabilities/ContextTools.mjs.map +1 -0
  85. package/dist/capabilities/Mcp.d.mts +108 -0
  86. package/dist/capabilities/Mcp.mjs +260 -0
  87. package/dist/capabilities/Mcp.mjs.map +1 -0
  88. package/dist/capabilities/McpClient.d.mts +115 -0
  89. package/dist/capabilities/McpClient.mjs +506 -0
  90. package/dist/capabilities/McpClient.mjs.map +1 -0
  91. package/dist/capabilities/MemoryNotes.d.mts +424 -0
  92. package/dist/capabilities/MemoryNotes.mjs +128 -0
  93. package/dist/capabilities/MemoryNotes.mjs.map +1 -0
  94. package/dist/capabilities/Messaging.d.mts +3 -0
  95. package/dist/capabilities/Messaging.mjs +151 -0
  96. package/dist/capabilities/Messaging.mjs.map +1 -0
  97. package/dist/capabilities/ModelContext.d.mts +89 -0
  98. package/dist/capabilities/ModelContext.mjs +168 -0
  99. package/dist/capabilities/ModelContext.mjs.map +1 -0
  100. package/dist/capabilities/Redaction.d.mts +37 -0
  101. package/dist/capabilities/Redaction.mjs +104 -0
  102. package/dist/capabilities/Redaction.mjs.map +1 -0
  103. package/dist/capabilities/Remembering.d.mts +434 -0
  104. package/dist/capabilities/Remembering.mjs +290 -0
  105. package/dist/capabilities/Remembering.mjs.map +1 -0
  106. package/dist/capabilities/RunHooks.d.mts +82 -0
  107. package/dist/capabilities/RunHooks.mjs +144 -0
  108. package/dist/capabilities/RunHooks.mjs.map +1 -0
  109. package/dist/capabilities/SemanticMemory.d.mts +431 -0
  110. package/dist/capabilities/SemanticMemory.mjs +315 -0
  111. package/dist/capabilities/SemanticMemory.mjs.map +1 -0
  112. package/dist/capabilities/Subagent.d.mts +4 -0
  113. package/dist/capabilities/Subagent.mjs +5 -0
  114. package/dist/capabilities/SubagentReservations.d.mts +186 -0
  115. package/dist/capabilities/SubagentReservations.mjs +479 -0
  116. package/dist/capabilities/SubagentReservations.mjs.map +1 -0
  117. package/dist/capabilities/ToolDiscovery.d.mts +109 -0
  118. package/dist/capabilities/ToolDiscovery.mjs +211 -0
  119. package/dist/capabilities/ToolDiscovery.mjs.map +1 -0
  120. package/dist/capabilities/WebCapture.d.mts +163 -0
  121. package/dist/capabilities/WebCapture.mjs +335 -0
  122. package/dist/capabilities/WebCapture.mjs.map +1 -0
  123. package/dist/capabilities/WebSearch.d.mts +71 -0
  124. package/dist/capabilities/WebSearch.mjs +112 -0
  125. package/dist/capabilities/WebSearch.mjs.map +1 -0
  126. package/dist/compaction-C2OTceKw.mjs +505 -0
  127. package/dist/compaction-C2OTceKw.mjs.map +1 -0
  128. package/dist/core/Agent.d.mts +2 -0
  129. package/dist/core/Agent.mjs +2 -0
  130. package/dist/core/AgentError.d.mts +2 -0
  131. package/dist/core/AgentError.mjs +117 -0
  132. package/dist/core/AgentError.mjs.map +1 -0
  133. package/dist/core/AgentPolicy.d.mts +2 -0
  134. package/dist/core/AgentPolicy.mjs +94 -0
  135. package/dist/core/AgentPolicy.mjs.map +1 -0
  136. package/dist/core/AgentUpdates.d.mts +2 -0
  137. package/dist/core/AgentUpdates.mjs +63 -0
  138. package/dist/core/AgentUpdates.mjs.map +1 -0
  139. package/dist/core/IdGenerator.d.mts +26 -0
  140. package/dist/core/IdGenerator.mjs +27 -0
  141. package/dist/core/IdGenerator.mjs.map +1 -0
  142. package/dist/core/Identifiers.d.mts +2 -0
  143. package/dist/core/Identifiers.mjs +43 -0
  144. package/dist/core/Identifiers.mjs.map +1 -0
  145. package/dist/core/Memory.d.mts +57 -0
  146. package/dist/core/Memory.mjs +203 -0
  147. package/dist/core/Memory.mjs.map +1 -0
  148. package/dist/core/MemoryNamespace.d.mts +2 -0
  149. package/dist/core/MemoryNamespace.mjs +116 -0
  150. package/dist/core/MemoryNamespace.mjs.map +1 -0
  151. package/dist/core/MemoryReference.d.mts +2 -0
  152. package/dist/core/MemoryReference.mjs +109 -0
  153. package/dist/core/MemoryReference.mjs.map +1 -0
  154. package/dist/core/MemoryRevalidation.d.mts +65 -0
  155. package/dist/core/MemoryRevalidation.mjs +126 -0
  156. package/dist/core/MemoryRevalidation.mjs.map +1 -0
  157. package/dist/core/MemoryStore.d.mts +186 -0
  158. package/dist/core/MemoryStore.mjs +243 -0
  159. package/dist/core/MemoryStore.mjs.map +1 -0
  160. package/dist/core/Receipt.d.mts +2 -0
  161. package/dist/core/Receipt.mjs +36 -0
  162. package/dist/core/Receipt.mjs.map +1 -0
  163. package/dist/core/RememberingStore.d.mts +1562 -0
  164. package/dist/core/RememberingStore.mjs +190 -0
  165. package/dist/core/RememberingStore.mjs.map +1 -0
  166. package/dist/core/RunEvent.d.mts +2 -0
  167. package/dist/core/RunEvent.mjs +337 -0
  168. package/dist/core/RunEvent.mjs.map +1 -0
  169. package/dist/core/RunPolicyUsage.d.mts +2 -0
  170. package/dist/core/RunPolicyUsage.mjs +21 -0
  171. package/dist/core/RunPolicyUsage.mjs.map +1 -0
  172. package/dist/core/SemanticMemoryIndex.d.mts +826 -0
  173. package/dist/core/SemanticMemoryIndex.mjs +185 -0
  174. package/dist/core/SemanticMemoryIndex.mjs.map +1 -0
  175. package/dist/core/SemanticMemoryRevalidation.d.mts +45 -0
  176. package/dist/core/SemanticMemoryRevalidation.mjs +191 -0
  177. package/dist/core/SemanticMemoryRevalidation.mjs.map +1 -0
  178. package/dist/core/SubagentContract.d.mts +2 -0
  179. package/dist/core/SubagentContract.mjs +148 -0
  180. package/dist/core/SubagentContract.mjs.map +1 -0
  181. package/dist/core/Thread.d.mts +2 -0
  182. package/dist/core/Thread.mjs +250 -0
  183. package/dist/core/Thread.mjs.map +1 -0
  184. package/dist/core/ToolResult.d.mts +2 -0
  185. package/dist/core/ToolResult.mjs +140 -0
  186. package/dist/core/ToolResult.mjs.map +1 -0
  187. package/dist/core/Usage.d.mts +2 -0
  188. package/dist/core/Usage.mjs +319 -0
  189. package/dist/core/Usage.mjs.map +1 -0
  190. package/dist/core/Worker.d.mts +3 -0
  191. package/dist/core/Worker.mjs +147 -0
  192. package/dist/core/Worker.mjs.map +1 -0
  193. package/dist/durable/ActivityStore.d.mts +116 -0
  194. package/dist/durable/ActivityStore.mjs +131 -0
  195. package/dist/durable/ActivityStore.mjs.map +1 -0
  196. package/dist/durable/Admin.d.mts +2 -0
  197. package/dist/durable/Admin.mjs +328 -0
  198. package/dist/durable/Admin.mjs.map +1 -0
  199. package/dist/durable/AgentRegistration.d.mts +2 -0
  200. package/dist/durable/AgentRegistration.mjs +14 -0
  201. package/dist/durable/AgentRegistration.mjs.map +1 -0
  202. package/dist/durable/Certification.d.mts +111 -0
  203. package/dist/durable/Certification.mjs +159 -0
  204. package/dist/durable/Certification.mjs.map +1 -0
  205. package/dist/durable/CommittedActivity.d.mts +62 -0
  206. package/dist/durable/CommittedActivity.mjs +159 -0
  207. package/dist/durable/CommittedActivity.mjs.map +1 -0
  208. package/dist/durable/Digest.d.mts +2 -0
  209. package/dist/durable/Digest.mjs +50 -0
  210. package/dist/durable/Digest.mjs.map +1 -0
  211. package/dist/durable/DurableAgentRuntime.d.mts +3 -0
  212. package/dist/durable/DurableAgentRuntime.mjs +3 -0
  213. package/dist/durable/DurableFailpoint.d.mts +2 -0
  214. package/dist/durable/DurableFailpoint.mjs +94 -0
  215. package/dist/durable/DurableFailpoint.mjs.map +1 -0
  216. package/dist/durable/DurableFailpointTestControl.d.mts +15 -0
  217. package/dist/durable/DurableFailpointTestControl.mjs +19 -0
  218. package/dist/durable/DurableFailpointTestControl.mjs.map +1 -0
  219. package/dist/durable/EventSource.d.mts +2 -0
  220. package/dist/durable/EventSource.mjs +65 -0
  221. package/dist/durable/EventSource.mjs.map +1 -0
  222. package/dist/durable/GitHubWorkflowSource.d.mts +144 -0
  223. package/dist/durable/GitHubWorkflowSource.mjs +209 -0
  224. package/dist/durable/GitHubWorkflowSource.mjs.map +1 -0
  225. package/dist/durable/MessageDelivery.d.mts +492 -0
  226. package/dist/durable/MessageDelivery.mjs +495 -0
  227. package/dist/durable/MessageDelivery.mjs.map +1 -0
  228. package/dist/durable/MessageDeliveryStoreConformance.d.mts +358 -0
  229. package/dist/durable/MessageDeliveryStoreConformance.mjs +243 -0
  230. package/dist/durable/MessageDeliveryStoreConformance.mjs.map +1 -0
  231. package/dist/durable/OperationAuthorizer.d.mts +2 -0
  232. package/dist/durable/OperationAuthorizer.mjs +70 -0
  233. package/dist/durable/OperationAuthorizer.mjs.map +1 -0
  234. package/dist/durable/PersistentHistory.d.mts +16 -0
  235. package/dist/durable/PersistentHistory.mjs +125 -0
  236. package/dist/durable/PersistentHistory.mjs.map +1 -0
  237. package/dist/durable/PreparedInputAdmission.d.mts +2 -0
  238. package/dist/durable/PreparedInputAdmission.mjs +34 -0
  239. package/dist/durable/PreparedInputAdmission.mjs.map +1 -0
  240. package/dist/durable/Records.d.mts +2 -0
  241. package/dist/durable/Records.mjs +795 -0
  242. package/dist/durable/Records.mjs.map +1 -0
  243. package/dist/durable/Recovery.d.mts +2 -0
  244. package/dist/durable/Recovery.mjs +739 -0
  245. package/dist/durable/Recovery.mjs.map +1 -0
  246. package/dist/durable/RunJournal.d.mts +2 -0
  247. package/dist/durable/RunJournal.mjs +2 -0
  248. package/dist/durable/Schedule.d.mts +2 -0
  249. package/dist/durable/Schedule.mjs +382 -0
  250. package/dist/durable/Schedule.mjs.map +1 -0
  251. package/dist/durable/ScheduleStoreConformance.d.mts +18 -0
  252. package/dist/durable/ScheduleStoreConformance.mjs +420 -0
  253. package/dist/durable/ScheduleStoreConformance.mjs.map +1 -0
  254. package/dist/durable/ScheduleTransition.d.mts +24 -0
  255. package/dist/durable/ScheduleTransition.mjs +180 -0
  256. package/dist/durable/ScheduleTransition.mjs.map +1 -0
  257. package/dist/durable/Scheduling.d.mts +54 -0
  258. package/dist/durable/Scheduling.mjs +2 -0
  259. package/dist/durable/SqlMemoryStore.d.mts +30 -0
  260. package/dist/durable/SqlMemoryStore.mjs +435 -0
  261. package/dist/durable/SqlMemoryStore.mjs.map +1 -0
  262. package/dist/durable/SqlMessageDeliveryStore.d.mts +40 -0
  263. package/dist/durable/SqlMessageDeliveryStore.mjs +167 -0
  264. package/dist/durable/SqlMessageDeliveryStore.mjs.map +1 -0
  265. package/dist/durable/SqlStorageV2Upgrade.d.mts +22 -0
  266. package/dist/durable/SqlStorageV2Upgrade.mjs +459 -0
  267. package/dist/durable/SqlStorageV2Upgrade.mjs.map +1 -0
  268. package/dist/durable/SqlSubscriptionStore.d.mts +63 -0
  269. package/dist/durable/SqlSubscriptionStore.mjs +751 -0
  270. package/dist/durable/SqlSubscriptionStore.mjs.map +1 -0
  271. package/dist/durable/SubmissionLedger.d.mts +3 -0
  272. package/dist/durable/SubmissionLedger.mjs +914 -0
  273. package/dist/durable/SubmissionLedger.mjs.map +1 -0
  274. package/dist/durable/SubmissionLedgerConformance.d.mts +30 -0
  275. package/dist/durable/SubmissionLedgerConformance.mjs +1986 -0
  276. package/dist/durable/SubmissionLedgerConformance.mjs.map +1 -0
  277. package/dist/durable/SubmissionStatus.d.mts +2 -0
  278. package/dist/durable/SubmissionStatus.mjs +18 -0
  279. package/dist/durable/SubmissionStatus.mjs.map +1 -0
  280. package/dist/durable/Subscription.d.mts +2 -0
  281. package/dist/durable/Subscription.mjs +360 -0
  282. package/dist/durable/Subscription.mjs.map +1 -0
  283. package/dist/durable/SubscriptionInput.d.mts +2 -0
  284. package/dist/durable/SubscriptionInput.mjs +52 -0
  285. package/dist/durable/SubscriptionInput.mjs.map +1 -0
  286. package/dist/durable/SubscriptionStoreConformance.d.mts +17 -0
  287. package/dist/durable/SubscriptionStoreConformance.mjs +625 -0
  288. package/dist/durable/SubscriptionStoreConformance.mjs.map +1 -0
  289. package/dist/durable/SubscriptionTools.d.mts +273 -0
  290. package/dist/durable/SubscriptionTools.mjs +190 -0
  291. package/dist/durable/SubscriptionTools.mjs.map +1 -0
  292. package/dist/durable/SubscriptionTransition.d.mts +21 -0
  293. package/dist/durable/SubscriptionTransition.mjs +148 -0
  294. package/dist/durable/SubscriptionTransition.mjs.map +1 -0
  295. package/dist/durable/Subscriptions.d.mts +73 -0
  296. package/dist/durable/Subscriptions.mjs +627 -0
  297. package/dist/durable/Subscriptions.mjs.map +1 -0
  298. package/dist/durable/ThreadContextHistory.d.mts +32 -0
  299. package/dist/durable/ThreadContextHistory.mjs +152 -0
  300. package/dist/durable/ThreadContextHistory.mjs.map +1 -0
  301. package/dist/durable/ThreadContextHistoryProjection.d.mts +60 -0
  302. package/dist/durable/ThreadContextHistoryProjection.mjs +149 -0
  303. package/dist/durable/ThreadContextHistoryProjection.mjs.map +1 -0
  304. package/dist/durable/ThreadInvariants.d.mts +74 -0
  305. package/dist/durable/ThreadInvariants.mjs +200 -0
  306. package/dist/durable/ThreadInvariants.mjs.map +1 -0
  307. package/dist/durable/ThreadProjection.d.mts +78 -0
  308. package/dist/durable/ThreadProjection.mjs +158 -0
  309. package/dist/durable/ThreadProjection.mjs.map +1 -0
  310. package/dist/durable/ThreadProjectionMaintenance.d.mts +49 -0
  311. package/dist/durable/ThreadProjectionMaintenance.mjs +33 -0
  312. package/dist/durable/ThreadProjectionMaintenance.mjs.map +1 -0
  313. package/dist/durable/ThreadStore.d.mts +2 -0
  314. package/dist/durable/ThreadStore.mjs +147 -0
  315. package/dist/durable/ThreadStore.mjs.map +1 -0
  316. package/dist/durable/ThreadStoreConformance.d.mts +29 -0
  317. package/dist/durable/ThreadStoreConformance.mjs +248 -0
  318. package/dist/durable/ThreadStoreConformance.mjs.map +1 -0
  319. package/dist/durable/ToolReconciler.d.mts +2 -0
  320. package/dist/durable/ToolReconciler.mjs +81 -0
  321. package/dist/durable/ToolReconciler.mjs.map +1 -0
  322. package/dist/durable/WakeScheduler.d.mts +2 -0
  323. package/dist/durable/WakeScheduler.mjs +85 -0
  324. package/dist/durable/WakeScheduler.mjs.map +1 -0
  325. package/dist/durable/WorkerHost.d.mts +129 -0
  326. package/dist/durable/WorkerHost.mjs +77 -0
  327. package/dist/durable/WorkerHost.mjs.map +1 -0
  328. package/dist/engine/AgentRuntime.d.mts +2 -0
  329. package/dist/engine/AgentRuntime.mjs +2 -0
  330. package/dist/engine/Compaction.d.mts +7 -0
  331. package/dist/engine/Compaction.mjs +16 -0
  332. package/dist/engine/Compaction.mjs.map +1 -0
  333. package/dist/engine/ContextCompactor.d.mts +2 -0
  334. package/dist/engine/ContextCompactor.mjs +119 -0
  335. package/dist/engine/ContextCompactor.mjs.map +1 -0
  336. package/dist/engine/ContextHistory.d.mts +65 -0
  337. package/dist/engine/ContextHistory.mjs +76 -0
  338. package/dist/engine/ContextHistory.mjs.map +1 -0
  339. package/dist/engine/ContextWindow.d.mts +2 -0
  340. package/dist/engine/ContextWindow.mjs +59 -0
  341. package/dist/engine/ContextWindow.mjs.map +1 -0
  342. package/dist/engine/DurableStep.d.mts +2 -0
  343. package/dist/engine/DurableStep.mjs +62 -0
  344. package/dist/engine/DurableStep.mjs.map +1 -0
  345. package/dist/engine/MessagingHost.d.mts +2 -0
  346. package/dist/engine/MessagingHost.mjs +2 -0
  347. package/dist/engine/Output.d.mts +2 -0
  348. package/dist/engine/Output.mjs +8 -0
  349. package/dist/engine/Output.mjs.map +1 -0
  350. package/dist/engine/RunEventSink.d.mts +2 -0
  351. package/dist/engine/RunEventSink.mjs +22 -0
  352. package/dist/engine/RunEventSink.mjs.map +1 -0
  353. package/dist/engine/RunOptions.d.mts +2 -0
  354. package/dist/engine/RunOptions.mjs +122 -0
  355. package/dist/engine/RunOptions.mjs.map +1 -0
  356. package/dist/engine/SubagentHost.d.mts +2 -0
  357. package/dist/engine/SubagentHost.mjs +72 -0
  358. package/dist/engine/SubagentHost.mjs.map +1 -0
  359. package/dist/engine/ThreadHistory.d.mts +2 -0
  360. package/dist/engine/ThreadHistory.mjs +67 -0
  361. package/dist/engine/ThreadHistory.mjs.map +1 -0
  362. package/dist/engine/ToolBroker.d.mts +2 -0
  363. package/dist/engine/ToolBroker.mjs +42 -0
  364. package/dist/engine/ToolBroker.mjs.map +1 -0
  365. package/dist/foreign-diagnostic-DBQ1XHKh.mjs +37 -0
  366. package/dist/foreign-diagnostic-DBQ1XHKh.mjs.map +1 -0
  367. package/dist/index.d.mts +88 -54
  368. package/dist/index.mjs +97 -54
  369. package/dist/output-contract-BC7tjlGw.mjs +84 -0
  370. package/dist/output-contract-BC7tjlGw.mjs.map +1 -0
  371. package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
  372. package/dist/sandbox/CodeExecutor.d.mts +194 -0
  373. package/dist/sandbox/CodeExecutor.mjs +278 -0
  374. package/dist/sandbox/CodeExecutor.mjs.map +1 -0
  375. package/dist/sandbox/InteractiveBrowser.d.mts +142 -0
  376. package/dist/sandbox/InteractiveBrowser.mjs +165 -0
  377. package/dist/sandbox/InteractiveBrowser.mjs.map +1 -0
  378. package/dist/sandbox/PageCapture.d.mts +2 -0
  379. package/dist/sandbox/PageCapture.mjs +450 -0
  380. package/dist/sandbox/PageCapture.mjs.map +1 -0
  381. package/dist/sandbox/PageCrawl.d.mts +88 -0
  382. package/dist/sandbox/PageCrawl.mjs +124 -0
  383. package/dist/sandbox/PageCrawl.mjs.map +1 -0
  384. package/dist/sandbox/PageScreenshot.d.mts +2 -0
  385. package/dist/sandbox/PageScreenshot.mjs +53 -0
  386. package/dist/sandbox/PageScreenshot.mjs.map +1 -0
  387. package/dist/sandbox/ProtectedBrowser.d.mts +252 -0
  388. package/dist/sandbox/ProtectedBrowser.mjs +270 -0
  389. package/dist/sandbox/ProtectedBrowser.mjs.map +1 -0
  390. package/dist/sandbox/Sandbox.d.mts +2 -0
  391. package/dist/sandbox/Sandbox.mjs +208 -0
  392. package/dist/sandbox/Sandbox.mjs.map +1 -0
  393. package/dist/utf8-BYfhEkcj.mjs +11 -0
  394. package/dist/utf8-BYfhEkcj.mjs.map +1 -0
  395. package/dist/utf8-DchGZRBd.mjs +23 -0
  396. package/dist/utf8-DchGZRBd.mjs.map +1 -0
  397. package/package.json +1 -1
  398. package/src/Ephemeral.ts +17 -0
  399. package/src/ToolExposure.ts +2 -2
  400. package/src/capabilities/Approval.ts +352 -0
  401. package/src/capabilities/Budget.ts +536 -0
  402. package/src/capabilities/CodeMode.ts +1090 -0
  403. package/src/capabilities/Commands.ts +86 -0
  404. package/src/capabilities/ContextTools.ts +184 -0
  405. package/src/capabilities/Mcp.ts +427 -0
  406. package/src/capabilities/McpClient.ts +967 -0
  407. package/src/capabilities/MemoryNotes.ts +174 -0
  408. package/src/capabilities/Messaging.ts +261 -0
  409. package/src/capabilities/ModelContext.ts +354 -0
  410. package/src/capabilities/Redaction.ts +157 -0
  411. package/src/capabilities/Remembering.ts +550 -0
  412. package/src/capabilities/RunHooks.ts +280 -0
  413. package/src/capabilities/SemanticMemory.ts +447 -0
  414. package/src/capabilities/Subagent.ts +2277 -0
  415. package/src/capabilities/SubagentReservations.ts +850 -0
  416. package/src/capabilities/ToolDiscovery.ts +339 -0
  417. package/src/capabilities/WebCapture.ts +722 -0
  418. package/src/capabilities/WebSearch.ts +184 -0
  419. package/src/capabilities/internal/subagent-background.ts +1106 -0
  420. package/src/capabilities/internal/subagent-contract.ts +142 -0
  421. package/src/capabilities/internal/subagent-policy.ts +235 -0
  422. package/src/capabilities/internal/subagent-reporting.ts +261 -0
  423. package/src/capabilities/internal/utf8.ts +10 -0
  424. package/src/core/Agent.ts +575 -0
  425. package/src/core/AgentError.ts +152 -0
  426. package/src/core/AgentPolicy.ts +153 -0
  427. package/src/core/AgentUpdates.ts +100 -0
  428. package/src/core/IdGenerator.ts +39 -0
  429. package/src/core/Identifiers.ts +48 -0
  430. package/src/core/Memory.ts +290 -0
  431. package/src/core/MemoryNamespace.ts +196 -0
  432. package/src/core/MemoryReference.ts +121 -0
  433. package/src/core/MemoryRevalidation.ts +185 -0
  434. package/src/core/MemoryStore.ts +368 -0
  435. package/src/core/Messaging.ts +90 -0
  436. package/src/core/Receipt.ts +42 -0
  437. package/src/core/RememberingStore.ts +300 -0
  438. package/src/core/RunEvent.ts +366 -0
  439. package/src/core/RunPolicyUsage.ts +17 -0
  440. package/src/core/SemanticMemoryIndex.ts +250 -0
  441. package/src/core/SemanticMemoryRevalidation.ts +254 -0
  442. package/src/core/SubagentContract.ts +196 -0
  443. package/src/core/Thread.ts +371 -0
  444. package/src/core/ToolExposure.ts +74 -0
  445. package/src/core/ToolResult.ts +170 -0
  446. package/src/core/Usage.ts +529 -0
  447. package/src/core/Worker.ts +173 -0
  448. package/src/core/internal/agent-updates.ts +32 -0
  449. package/src/core/internal/utf8.ts +23 -0
  450. package/src/durable/ActivityStore.ts +160 -0
  451. package/src/durable/Admin.ts +496 -0
  452. package/src/durable/AgentRegistration.ts +13 -0
  453. package/src/durable/Certification.ts +210 -0
  454. package/src/durable/CommittedActivity.ts +296 -0
  455. package/src/durable/Digest.ts +93 -0
  456. package/src/durable/DurableAgentRuntime.ts +10340 -0
  457. package/src/durable/DurableFailpoint.ts +103 -0
  458. package/src/durable/DurableFailpointTestControl.ts +39 -0
  459. package/src/durable/EventSource.ts +172 -0
  460. package/src/durable/GitHubWorkflowSource.ts +453 -0
  461. package/src/durable/MessageDelivery.ts +708 -0
  462. package/src/durable/MessageDeliveryStoreConformance.ts +363 -0
  463. package/src/durable/OperationAuthorizer.ts +85 -0
  464. package/src/durable/PersistentHistory.ts +260 -0
  465. package/src/durable/PreparedInputAdmission.ts +44 -0
  466. package/src/durable/Records.ts +1010 -0
  467. package/src/durable/Recovery.ts +1018 -0
  468. package/src/durable/RunJournal.ts +1479 -0
  469. package/src/durable/Schedule.ts +504 -0
  470. package/src/durable/ScheduleStoreConformance.ts +638 -0
  471. package/src/durable/ScheduleTransition.ts +265 -0
  472. package/src/durable/Scheduling.ts +1077 -0
  473. package/src/durable/SqlMemoryStore.ts +774 -0
  474. package/src/durable/SqlMessageDeliveryStore.ts +302 -0
  475. package/src/durable/SqlStorageV2Upgrade.ts +500 -0
  476. package/src/durable/SqlSubscriptionStore.ts +1440 -0
  477. package/src/durable/SubmissionLedger.ts +1201 -0
  478. package/src/durable/SubmissionLedgerConformance.ts +4579 -0
  479. package/src/durable/SubmissionStatus.ts +14 -0
  480. package/src/durable/Subscription.ts +544 -0
  481. package/src/durable/SubscriptionInput.ts +144 -0
  482. package/src/durable/SubscriptionStoreConformance.ts +945 -0
  483. package/src/durable/SubscriptionTools.ts +327 -0
  484. package/src/durable/SubscriptionTransition.ts +302 -0
  485. package/src/durable/Subscriptions.ts +1210 -0
  486. package/src/durable/ThreadContextHistory.ts +227 -0
  487. package/src/durable/ThreadContextHistoryProjection.ts +216 -0
  488. package/src/durable/ThreadInvariants.ts +442 -0
  489. package/src/durable/ThreadProjection.ts +269 -0
  490. package/src/durable/ThreadProjectionMaintenance.ts +67 -0
  491. package/src/durable/ThreadStore.ts +242 -0
  492. package/src/durable/ThreadStoreConformance.ts +710 -0
  493. package/src/durable/ToolReconciler.ts +105 -0
  494. package/src/durable/WakeScheduler.ts +134 -0
  495. package/src/durable/WorkerHost.ts +171 -0
  496. package/src/durable/internal/agent-registration.ts +525 -0
  497. package/src/durable/internal/agent-updates.ts +302 -0
  498. package/src/durable/internal/foreign-diagnostic.ts +47 -0
  499. package/src/durable/internal/journal-checkpoint.ts +104 -0
  500. package/src/durable/internal/journal-metadata.ts +107 -0
  501. package/src/durable/internal/messaging-host.ts +608 -0
  502. package/src/durable/internal/schedule-time.ts +303 -0
  503. package/src/durable/internal/storage-v2-layout.ts +163 -0
  504. package/src/durable/internal/storage-v2.ts +73 -0
  505. package/src/durable/internal/worker-host.ts +2467 -0
  506. package/src/durable/internal/worker-runtime.ts +9 -0
  507. package/src/engine/AgentRuntime.ts +37 -0
  508. package/src/engine/Compaction.ts +11 -0
  509. package/src/engine/ContextCompactor.ts +277 -0
  510. package/src/engine/ContextHistory.ts +73 -0
  511. package/src/engine/ContextWindow.ts +72 -0
  512. package/src/engine/DurableStep.ts +132 -0
  513. package/src/engine/MessagingHost.ts +110 -0
  514. package/src/engine/Output.ts +2 -0
  515. package/src/engine/RunEventSink.ts +132 -0
  516. package/src/engine/RunOptions.ts +1077 -0
  517. package/src/engine/SubagentHost.ts +181 -0
  518. package/src/engine/ThreadHistory.ts +120 -0
  519. package/src/engine/ToolBroker.ts +157 -0
  520. package/src/engine/ToolExposure.ts +48 -0
  521. package/src/engine/internal/agent-runtime.ts +10117 -0
  522. package/src/engine/internal/bounded-value.ts +315 -0
  523. package/src/engine/internal/compaction.ts +678 -0
  524. package/src/engine/internal/error-diagnostic.ts +39 -0
  525. package/src/engine/internal/output-contract.ts +173 -0
  526. package/src/engine/internal/primitive-delta.ts +80 -0
  527. package/src/engine/internal/provider-result-staging.ts +211 -0
  528. package/src/engine/internal/tool-derivative.ts +106 -0
  529. package/src/engine/internal/tool-exposure.ts +224 -0
  530. package/src/engine/internal/tool-telemetry.ts +484 -0
  531. package/src/index.ts +96 -53
  532. package/src/sandbox/CodeExecutor.ts +352 -0
  533. package/src/sandbox/InteractiveBrowser.ts +257 -0
  534. package/src/sandbox/PageCapture.ts +692 -0
  535. package/src/sandbox/PageCrawl.ts +148 -0
  536. package/src/sandbox/PageScreenshot.ts +81 -0
  537. package/src/sandbox/ProtectedBrowser.ts +413 -0
  538. package/src/sandbox/Sandbox.ts +241 -0
  539. package/dist/Agent.d.mts +0 -5
  540. package/dist/Agent.mjs +0 -10
  541. package/dist/Agent.mjs.map +0 -1
  542. package/dist/AgentError.d.mts +0 -5
  543. package/dist/AgentError.mjs +0 -10
  544. package/dist/AgentError.mjs.map +0 -1
  545. package/dist/AgentPolicy.d.mts +0 -5
  546. package/dist/AgentPolicy.mjs +0 -10
  547. package/dist/AgentPolicy.mjs.map +0 -1
  548. package/dist/AgentRuntime.d.mts +0 -5
  549. package/dist/AgentRuntime.mjs +0 -10
  550. package/dist/AgentRuntime.mjs.map +0 -1
  551. package/dist/AgentUpdates.d.mts +0 -5
  552. package/dist/AgentUpdates.mjs +0 -10
  553. package/dist/AgentUpdates.mjs.map +0 -1
  554. package/dist/Approval.d.mts +0 -5
  555. package/dist/Approval.mjs +0 -10
  556. package/dist/Approval.mjs.map +0 -1
  557. package/dist/Budget.d.mts +0 -5
  558. package/dist/Budget.mjs +0 -10
  559. package/dist/Budget.mjs.map +0 -1
  560. package/dist/CodeMode.d.mts +0 -5
  561. package/dist/CodeMode.mjs +0 -10
  562. package/dist/CodeMode.mjs.map +0 -1
  563. package/dist/Commands.d.mts +0 -5
  564. package/dist/Commands.mjs +0 -10
  565. package/dist/Commands.mjs.map +0 -1
  566. package/dist/Compaction.d.mts +0 -5
  567. package/dist/Compaction.mjs +0 -10
  568. package/dist/Compaction.mjs.map +0 -1
  569. package/dist/ContextCompactor.d.mts +0 -5
  570. package/dist/ContextCompactor.mjs +0 -10
  571. package/dist/ContextCompactor.mjs.map +0 -1
  572. package/dist/ContextHistory.d.mts +0 -5
  573. package/dist/ContextHistory.mjs +0 -10
  574. package/dist/ContextHistory.mjs.map +0 -1
  575. package/dist/ContextTools.d.mts +0 -5
  576. package/dist/ContextTools.mjs +0 -10
  577. package/dist/ContextTools.mjs.map +0 -1
  578. package/dist/ContextWindow.d.mts +0 -5
  579. package/dist/ContextWindow.mjs +0 -10
  580. package/dist/ContextWindow.mjs.map +0 -1
  581. package/dist/DurableStep.d.mts +0 -5
  582. package/dist/DurableStep.mjs +0 -10
  583. package/dist/DurableStep.mjs.map +0 -1
  584. package/dist/EphemeralThreads.d.mts +0 -5
  585. package/dist/EphemeralThreads.mjs +0 -10
  586. package/dist/EphemeralThreads.mjs.map +0 -1
  587. package/dist/IdGenerator.d.mts +0 -5
  588. package/dist/IdGenerator.mjs +0 -10
  589. package/dist/IdGenerator.mjs.map +0 -1
  590. package/dist/Identifiers.d.mts +0 -5
  591. package/dist/Identifiers.mjs +0 -10
  592. package/dist/Identifiers.mjs.map +0 -1
  593. package/dist/Mcp.d.mts +0 -5
  594. package/dist/Mcp.mjs +0 -10
  595. package/dist/Mcp.mjs.map +0 -1
  596. package/dist/McpClient.d.mts +0 -5
  597. package/dist/McpClient.mjs +0 -10
  598. package/dist/McpClient.mjs.map +0 -1
  599. package/dist/Memory.d.mts +0 -5
  600. package/dist/Memory.mjs +0 -10
  601. package/dist/Memory.mjs.map +0 -1
  602. package/dist/MemoryNamespace.d.mts +0 -5
  603. package/dist/MemoryNamespace.mjs +0 -10
  604. package/dist/MemoryNamespace.mjs.map +0 -1
  605. package/dist/MemoryNotes.d.mts +0 -5
  606. package/dist/MemoryNotes.mjs +0 -10
  607. package/dist/MemoryNotes.mjs.map +0 -1
  608. package/dist/MemoryReference.d.mts +0 -5
  609. package/dist/MemoryReference.mjs +0 -10
  610. package/dist/MemoryReference.mjs.map +0 -1
  611. package/dist/MemoryRevalidation.d.mts +0 -5
  612. package/dist/MemoryRevalidation.mjs +0 -10
  613. package/dist/MemoryRevalidation.mjs.map +0 -1
  614. package/dist/MemoryStore.d.mts +0 -5
  615. package/dist/MemoryStore.mjs +0 -10
  616. package/dist/MemoryStore.mjs.map +0 -1
  617. package/dist/Messaging.d.mts +0 -5
  618. package/dist/Messaging.mjs +0 -10
  619. package/dist/Messaging.mjs.map +0 -1
  620. package/dist/MessagingHost.d.mts +0 -5
  621. package/dist/MessagingHost.mjs +0 -10
  622. package/dist/MessagingHost.mjs.map +0 -1
  623. package/dist/ModelContext.d.mts +0 -5
  624. package/dist/ModelContext.mjs +0 -10
  625. package/dist/ModelContext.mjs.map +0 -1
  626. package/dist/Receipt.d.mts +0 -5
  627. package/dist/Receipt.mjs +0 -10
  628. package/dist/Receipt.mjs.map +0 -1
  629. package/dist/Redaction.d.mts +0 -5
  630. package/dist/Redaction.mjs +0 -10
  631. package/dist/Redaction.mjs.map +0 -1
  632. package/dist/Remembering.d.mts +0 -5
  633. package/dist/Remembering.mjs +0 -10
  634. package/dist/Remembering.mjs.map +0 -1
  635. package/dist/RememberingStore.d.mts +0 -5
  636. package/dist/RememberingStore.mjs +0 -10
  637. package/dist/RememberingStore.mjs.map +0 -1
  638. package/dist/RunEvent.d.mts +0 -5
  639. package/dist/RunEvent.mjs +0 -10
  640. package/dist/RunEvent.mjs.map +0 -1
  641. package/dist/RunEventSink.d.mts +0 -5
  642. package/dist/RunEventSink.mjs +0 -10
  643. package/dist/RunEventSink.mjs.map +0 -1
  644. package/dist/RunHooks.d.mts +0 -5
  645. package/dist/RunHooks.mjs +0 -10
  646. package/dist/RunHooks.mjs.map +0 -1
  647. package/dist/RunOptions.d.mts +0 -5
  648. package/dist/RunOptions.mjs +0 -10
  649. package/dist/RunOptions.mjs.map +0 -1
  650. package/dist/RunPolicyUsage.d.mts +0 -5
  651. package/dist/RunPolicyUsage.mjs +0 -10
  652. package/dist/RunPolicyUsage.mjs.map +0 -1
  653. package/dist/SemanticMemory.d.mts +0 -5
  654. package/dist/SemanticMemory.mjs +0 -10
  655. package/dist/SemanticMemory.mjs.map +0 -1
  656. package/dist/SemanticMemoryIndex.d.mts +0 -5
  657. package/dist/SemanticMemoryIndex.mjs +0 -10
  658. package/dist/SemanticMemoryIndex.mjs.map +0 -1
  659. package/dist/SemanticMemoryRevalidation.d.mts +0 -5
  660. package/dist/SemanticMemoryRevalidation.mjs +0 -10
  661. package/dist/SemanticMemoryRevalidation.mjs.map +0 -1
  662. package/dist/Subagent.d.mts +0 -5
  663. package/dist/Subagent.mjs +0 -10
  664. package/dist/Subagent.mjs.map +0 -1
  665. package/dist/SubagentContract.d.mts +0 -5
  666. package/dist/SubagentContract.mjs +0 -10
  667. package/dist/SubagentContract.mjs.map +0 -1
  668. package/dist/SubagentHost.d.mts +0 -5
  669. package/dist/SubagentHost.mjs +0 -10
  670. package/dist/SubagentHost.mjs.map +0 -1
  671. package/dist/SubagentReservations.d.mts +0 -5
  672. package/dist/SubagentReservations.mjs +0 -10
  673. package/dist/SubagentReservations.mjs.map +0 -1
  674. package/dist/ThreadHistory.d.mts +0 -5
  675. package/dist/ThreadHistory.mjs +0 -10
  676. package/dist/ThreadHistory.mjs.map +0 -1
  677. package/dist/ToolBroker.d.mts +0 -5
  678. package/dist/ToolBroker.mjs +0 -10
  679. package/dist/ToolBroker.mjs.map +0 -1
  680. package/dist/ToolDiscovery.d.mts +0 -5
  681. package/dist/ToolDiscovery.mjs +0 -10
  682. package/dist/ToolDiscovery.mjs.map +0 -1
  683. package/dist/ToolResult.d.mts +0 -5
  684. package/dist/ToolResult.mjs +0 -10
  685. package/dist/ToolResult.mjs.map +0 -1
  686. package/dist/Usage.d.mts +0 -5
  687. package/dist/Usage.mjs +0 -10
  688. package/dist/Usage.mjs.map +0 -1
  689. package/dist/WebCapture.d.mts +0 -5
  690. package/dist/WebCapture.mjs +0 -10
  691. package/dist/WebCapture.mjs.map +0 -1
  692. package/dist/WebSearch.d.mts +0 -5
  693. package/dist/WebSearch.mjs +0 -10
  694. package/dist/WebSearch.mjs.map +0 -1
  695. package/dist/Worker.d.mts +0 -5
  696. package/dist/Worker.mjs +0 -10
  697. package/dist/Worker.mjs.map +0 -1
  698. package/dist/rolldown-runtime-BBjsoOtd.mjs +0 -27
  699. package/src/Agent.ts +0 -1
  700. package/src/AgentError.ts +0 -1
  701. package/src/AgentPolicy.ts +0 -1
  702. package/src/AgentRuntime.ts +0 -1
  703. package/src/AgentUpdates.ts +0 -1
  704. package/src/Approval.ts +0 -1
  705. package/src/Budget.ts +0 -1
  706. package/src/CodeMode.ts +0 -1
  707. package/src/Commands.ts +0 -1
  708. package/src/Compaction.ts +0 -1
  709. package/src/ContextCompactor.ts +0 -1
  710. package/src/ContextHistory.ts +0 -1
  711. package/src/ContextTools.ts +0 -1
  712. package/src/ContextWindow.ts +0 -1
  713. package/src/DurableStep.ts +0 -1
  714. package/src/EphemeralThreads.ts +0 -1
  715. package/src/IdGenerator.ts +0 -1
  716. package/src/Identifiers.ts +0 -1
  717. package/src/Mcp.ts +0 -1
  718. package/src/McpClient.ts +0 -1
  719. package/src/Memory.ts +0 -1
  720. package/src/MemoryNamespace.ts +0 -1
  721. package/src/MemoryNotes.ts +0 -1
  722. package/src/MemoryReference.ts +0 -1
  723. package/src/MemoryRevalidation.ts +0 -1
  724. package/src/MemoryStore.ts +0 -1
  725. package/src/Messaging.ts +0 -1
  726. package/src/MessagingHost.ts +0 -1
  727. package/src/ModelContext.ts +0 -1
  728. package/src/Receipt.ts +0 -1
  729. package/src/Redaction.ts +0 -1
  730. package/src/Remembering.ts +0 -1
  731. package/src/RememberingStore.ts +0 -1
  732. package/src/RunEvent.ts +0 -1
  733. package/src/RunEventSink.ts +0 -1
  734. package/src/RunHooks.ts +0 -1
  735. package/src/RunOptions.ts +0 -1
  736. package/src/RunPolicyUsage.ts +0 -1
  737. package/src/SemanticMemory.ts +0 -1
  738. package/src/SemanticMemoryIndex.ts +0 -1
  739. package/src/SemanticMemoryRevalidation.ts +0 -1
  740. package/src/Subagent.ts +0 -1
  741. package/src/SubagentContract.ts +0 -1
  742. package/src/SubagentHost.ts +0 -1
  743. package/src/SubagentReservations.ts +0 -1
  744. package/src/ThreadHistory.ts +0 -1
  745. package/src/ToolBroker.ts +0 -1
  746. package/src/ToolDiscovery.ts +0 -1
  747. package/src/ToolResult.ts +0 -1
  748. package/src/Usage.ts +0 -1
  749. package/src/WebCapture.ts +0 -1
  750. package/src/WebSearch.ts +0 -1
  751. package/src/Worker.ts +0 -1
@@ -0,0 +1,450 @@
1
+ import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.mjs";
2
+ import { SANDBOX_DIAGNOSTIC_MAX_LENGTH, SandboxImplementation } from "./Sandbox.mjs";
3
+ import { Context, Encoding, Option, Predicate, Schema } from "effect";
4
+ //#region src/sandbox/PageCapture.ts
5
+ var PageCapture_exports = /* @__PURE__ */ __exportAll({
6
+ CapturePageContent: () => CapturePageContent,
7
+ CapturePageLinks: () => CapturePageLinks,
8
+ CapturePageMarkdown: () => CapturePageMarkdown,
9
+ CapturePageScrape: () => CapturePageScrape,
10
+ CapturePageStructured: () => CapturePageStructured,
11
+ PageCapture: () => PageCapture,
12
+ PageCaptureAction: () => PageCaptureAction,
13
+ PageCaptureEngine: () => PageCaptureEngine,
14
+ PageCaptureError: () => PageCaptureError,
15
+ PageCaptureInferencePolicyError: () => PageCaptureInferencePolicyError,
16
+ PageCaptureInferenceUse: () => PageCaptureInferenceUse,
17
+ PageCaptureLimits: () => PageCaptureLimits,
18
+ PageCaptureLinkUrl: () => PageCaptureLinkUrl,
19
+ PageCaptureNavigationError: () => PageCaptureNavigationError,
20
+ PageCaptureOutput: () => PageCaptureOutput,
21
+ PageCaptureOutputLimitError: () => PageCaptureOutputLimitError,
22
+ PageCaptureProtocolError: () => PageCaptureProtocolError,
23
+ PageCaptureRateLimitedError: () => PageCaptureRateLimitedError,
24
+ PageCaptureRequest: () => PageCaptureRequest,
25
+ PageCaptureResourceUse: () => PageCaptureResourceUse,
26
+ PageCaptureResponseFormat: () => PageCaptureResponseFormat,
27
+ PageCaptureResult: () => PageCaptureResult,
28
+ PageCaptureTarget: () => PageCaptureTarget,
29
+ PageCaptureTargetUrl: () => PageCaptureTargetUrl,
30
+ PageCaptureUnsupportedError: () => PageCaptureUnsupportedError,
31
+ PageContentCaptured: () => PageContentCaptured,
32
+ PageHtmlTarget: () => PageHtmlTarget,
33
+ PageLinksCaptured: () => PageLinksCaptured,
34
+ PageMarkdownCaptured: () => PageMarkdownCaptured,
35
+ PageNavigationOptions: () => PageNavigationOptions,
36
+ PageResourcePolicy: () => PageResourcePolicy,
37
+ PageScrapeAttribute: () => PageScrapeAttribute,
38
+ PageScrapeCaptured: () => PageScrapeCaptured,
39
+ PageScrapeElement: () => PageScrapeElement,
40
+ PageScrapeGroup: () => PageScrapeGroup,
41
+ PageSelectorWait: () => PageSelectorWait,
42
+ PageStructuredCaptured: () => PageStructuredCaptured,
43
+ PageUrlTarget: () => PageUrlTarget,
44
+ PageViewport: () => PageViewport
45
+ });
46
+ /**
47
+ * Page capture (capability spec §9.2): one stateless, schema-first rendering
48
+ * pass over a remote or supplied page — navigate (or load raw HTML), render
49
+ * with JavaScript, and return exactly one bounded output. It is a sibling of
50
+ * the command-shaped `Sandbox` and callback-shaped `CodeExecutor` ports: a
51
+ * browser is intrinsically an egress device, so it carries its own explicit
52
+ * capture contract instead of widening the sandbox network policy that every
53
+ * existing adapter rejects.
54
+ *
55
+ * Everything a capture returns is untrusted, attacker-influenced content
56
+ * (security spec §9). Stateful browser sessions, screenshots, PDFs, snapshot
57
+ * bundles, crawling, and accessibility trees are deliberately outside this
58
+ * port's first slice.
59
+ */
60
+ const MAX_OUTPUT_BYTES = 8388608;
61
+ const MAX_LINKS = 4096;
62
+ const MAX_SCRAPE_SELECTORS = 64;
63
+ const MAX_SCRAPE_ELEMENTS = 4096;
64
+ const MAX_SCRAPE_ATTRIBUTES = 64;
65
+ const MAX_RESPONSE_FORMAT_BYTES = 65536;
66
+ const MAX_RESPONSE_FORMAT_DEPTH = 32;
67
+ const MAX_RESPONSE_FORMAT_NODES = 4096;
68
+ const MAX_RESPONSE_FORMAT_COLLECTION_LENGTH = 256;
69
+ const BoundedOutputText = Schema.String.check(Schema.isMaxLength(MAX_OUTPUT_BYTES));
70
+ const BoundedUrl = Schema.NonEmptyString.check(Schema.isMaxLength(8192));
71
+ const BoundedHtml = Schema.NonEmptyString.check(Schema.isMaxLength(2097152));
72
+ const BoundedPrompt = Schema.NonEmptyString.check(Schema.isMaxLength(8192));
73
+ const BoundedSelector = Schema.NonEmptyString.check(Schema.isMaxLength(1024));
74
+ const BoundedAttributeName = Schema.NonEmptyString.check(Schema.isMaxLength(1024));
75
+ const BoundedAttributeValue = Schema.String.check(Schema.isMaxLength(65536));
76
+ const BoundedScrapeText = Schema.String.check(Schema.isMaxLength(1048576));
77
+ const BoundedScrapeHtml = Schema.String.check(Schema.isMaxLength(2097152));
78
+ const BoundedPattern = Schema.NonEmptyString.check(Schema.isMaxLength(1024));
79
+ const BoundedMessage = Schema.String.check(Schema.isMaxLength(SANDBOX_DIAGNOSTIC_MAX_LENGTH));
80
+ const BoundedInferenceProvider = Schema.NonEmptyString.check(Schema.isMaxLength(256));
81
+ const BoundedSchemaProperty = Schema.NonEmptyString.check(Schema.isMaxLength(256));
82
+ const BoundedSchemaText = Schema.String.check(Schema.isMaxLength(8192));
83
+ const BoundedSchemaReference = Schema.NonEmptyString.check(Schema.isMaxLength(8192));
84
+ const PositiveInt = Schema.Int.check(Schema.isGreaterThan(0));
85
+ /** Bounded by the platform's 60-second browser inactivity ceiling. */
86
+ const BoundedTimeoutMillis = PositiveInt.check(Schema.isLessThanOrEqualTo(6e4));
87
+ const decodeUrl = Schema.decodeUnknownOption(Schema.URLFromString);
88
+ const isCredentialFreeWebUrl = (value, allowHttp) => {
89
+ const parsed = decodeUrl(value);
90
+ if (Option.isNone(parsed)) return false;
91
+ const url = parsed.value;
92
+ return (url.protocol === "https:" || allowHttp && url.protocol === "http:") && url.hostname.length > 0 && url.username === "" && url.password === "";
93
+ };
94
+ /** Absolute, bounded HTTPS navigation URL that never carries embedded credentials. */
95
+ const PageCaptureTargetUrl = BoundedUrl.check(Schema.makeFilter((value) => isCredentialFreeWebUrl(value, false), { title: "an absolute HTTPS URL without embedded credentials" }));
96
+ /** Discovered HTTP(S) links are data, never navigation authority, and carry no credentials. */
97
+ const PageCaptureLinkUrl = BoundedUrl.check(Schema.makeFilter((value) => isCredentialFreeWebUrl(value, true), { title: "an absolute HTTP or HTTPS URL without embedded credentials" }));
98
+ const ResponseFormatPrimitive = Schema.Literals([
99
+ "string",
100
+ "number",
101
+ "boolean",
102
+ "array",
103
+ "object",
104
+ "null",
105
+ "integer"
106
+ ]);
107
+ const ResponseFormatPrimitiveList = Schema.Array(ResponseFormatPrimitive).check(Schema.isMinLength(1), Schema.isMaxLength(7), Schema.isUnique());
108
+ const ResponseFormatNode = Schema.suspend(() => Schema.Struct(responseFormatFields()).pipe(Schema.annotate({ parseOptions: { onExcessProperty: "error" } })));
109
+ const responseFormatFields = () => {
110
+ const boundedNodes = Schema.Array(ResponseFormatNode).check(Schema.isMinLength(1), Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH));
111
+ const boundedDefinitions = Schema.Record(BoundedSchemaProperty, ResponseFormatNode).check(Schema.isMaxProperties(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH));
112
+ const boundedRequired = Schema.Array(BoundedSchemaProperty).check(Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH), Schema.isUnique());
113
+ const subschema = Schema.Union([Schema.Boolean, ResponseFormatNode]);
114
+ return {
115
+ $schema: Schema.optionalKey(BoundedSchemaReference),
116
+ $id: Schema.optionalKey(BoundedSchemaReference),
117
+ $ref: Schema.optionalKey(BoundedSchemaReference),
118
+ $anchor: Schema.optionalKey(BoundedSchemaReference),
119
+ $dynamicRef: Schema.optionalKey(BoundedSchemaReference),
120
+ $dynamicAnchor: Schema.optionalKey(BoundedSchemaReference),
121
+ $comment: Schema.optionalKey(BoundedSchemaText),
122
+ title: Schema.optionalKey(BoundedSchemaText),
123
+ description: Schema.optionalKey(BoundedSchemaText),
124
+ default: Schema.optionalKey(Schema.Json),
125
+ deprecated: Schema.optionalKey(Schema.Boolean),
126
+ readOnly: Schema.optionalKey(Schema.Boolean),
127
+ writeOnly: Schema.optionalKey(Schema.Boolean),
128
+ examples: Schema.optionalKey(Schema.Array(Schema.Json).check(Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH))),
129
+ type: Schema.optionalKey(Schema.Union([ResponseFormatPrimitive, ResponseFormatPrimitiveList])),
130
+ enum: Schema.optionalKey(Schema.Array(Schema.Json).check(Schema.isMinLength(1), Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH), Schema.isUnique())),
131
+ const: Schema.optionalKey(Schema.Json),
132
+ multipleOf: Schema.optionalKey(Schema.Finite.check(Schema.isGreaterThan(0))),
133
+ maximum: Schema.optionalKey(Schema.Finite),
134
+ exclusiveMaximum: Schema.optionalKey(Schema.Finite),
135
+ minimum: Schema.optionalKey(Schema.Finite),
136
+ exclusiveMinimum: Schema.optionalKey(Schema.Finite),
137
+ maxLength: Schema.optionalKey(Schema.Natural),
138
+ minLength: Schema.optionalKey(Schema.Natural),
139
+ pattern: Schema.optionalKey(BoundedSchemaText),
140
+ format: Schema.optionalKey(BoundedSchemaText),
141
+ maxItems: Schema.optionalKey(Schema.Natural),
142
+ minItems: Schema.optionalKey(Schema.Natural),
143
+ uniqueItems: Schema.optionalKey(Schema.Boolean),
144
+ prefixItems: Schema.optionalKey(boundedNodes),
145
+ items: Schema.optionalKey(subschema),
146
+ additionalItems: Schema.optionalKey(subschema),
147
+ unevaluatedItems: Schema.optionalKey(subschema),
148
+ contains: Schema.optionalKey(subschema),
149
+ minContains: Schema.optionalKey(Schema.Natural),
150
+ maxContains: Schema.optionalKey(Schema.Natural),
151
+ properties: Schema.optionalKey(boundedDefinitions),
152
+ patternProperties: Schema.optionalKey(boundedDefinitions),
153
+ required: Schema.optionalKey(boundedRequired),
154
+ dependentRequired: Schema.optionalKey(Schema.Record(BoundedSchemaProperty, boundedRequired).check(Schema.isMaxProperties(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH))),
155
+ dependentSchemas: Schema.optionalKey(boundedDefinitions),
156
+ additionalProperties: Schema.optionalKey(subschema),
157
+ unevaluatedProperties: Schema.optionalKey(subschema),
158
+ propertyNames: Schema.optionalKey(subschema),
159
+ minProperties: Schema.optionalKey(Schema.Natural),
160
+ maxProperties: Schema.optionalKey(Schema.Natural),
161
+ anyOf: Schema.optionalKey(boundedNodes),
162
+ oneOf: Schema.optionalKey(boundedNodes),
163
+ allOf: Schema.optionalKey(boundedNodes),
164
+ not: Schema.optionalKey(subschema),
165
+ contentEncoding: Schema.optionalKey(BoundedSchemaText),
166
+ contentMediaType: Schema.optionalKey(BoundedSchemaText),
167
+ contentSchema: Schema.optionalKey(subschema),
168
+ $defs: Schema.optionalKey(boundedDefinitions),
169
+ definitions: Schema.optionalKey(boundedDefinitions)
170
+ };
171
+ };
172
+ const ResponseFormatDocument = Schema.Struct({
173
+ ...responseFormatFields(),
174
+ type: Schema.Literal("object")
175
+ }).pipe(Schema.annotate({ parseOptions: { onExcessProperty: "error" } }));
176
+ const isResponseFormatDocument = Schema.is(ResponseFormatDocument);
177
+ /** Preflight graph bounds before recursively decoding an untrusted JSON Schema. */
178
+ const isBoundedResponseFormat = (input) => {
179
+ if (!Predicate.isObject(input)) return false;
180
+ const pending = [{
181
+ value: input,
182
+ depth: 0
183
+ }];
184
+ const visited = /* @__PURE__ */ new WeakSet();
185
+ let nodes = 0;
186
+ let textUnits = 0;
187
+ try {
188
+ while (pending.length > 0) {
189
+ const current = pending.pop();
190
+ if (current === void 0 || current.depth > MAX_RESPONSE_FORMAT_DEPTH || ++nodes > MAX_RESPONSE_FORMAT_NODES) return false;
191
+ const value = current.value;
192
+ if (value === null || typeof value === "boolean") continue;
193
+ if (typeof value === "number") {
194
+ if (!Number.isFinite(value)) return false;
195
+ continue;
196
+ }
197
+ if (typeof value === "string") {
198
+ textUnits += value.length;
199
+ if (textUnits > MAX_RESPONSE_FORMAT_BYTES) return false;
200
+ continue;
201
+ }
202
+ if (!Predicate.isObjectOrArray(value) || visited.has(value)) return false;
203
+ visited.add(value);
204
+ const entries = Array.isArray(value) ? value.map((entry, index) => [index, entry]) : Object.entries(value);
205
+ if (entries.length > MAX_RESPONSE_FORMAT_COLLECTION_LENGTH) return false;
206
+ for (const [key, entry] of entries) {
207
+ textUnits += typeof key === "string" ? key.length : 0;
208
+ if (textUnits > MAX_RESPONSE_FORMAT_BYTES) return false;
209
+ pending.push({
210
+ value: entry,
211
+ depth: current.depth + 1
212
+ });
213
+ }
214
+ }
215
+ if (!isResponseFormatDocument(input)) return false;
216
+ const encoded = JSON.stringify(input);
217
+ return Encoding.encodeHex(encoded).length / 2 <= MAX_RESPONSE_FORMAT_BYTES;
218
+ } catch {
219
+ return false;
220
+ }
221
+ };
222
+ /** A platform-supported object JSON Schema with bounded depth, entries, nodes, and UTF-8 bytes. */
223
+ const PageCaptureResponseFormat = Schema.declare(isBoundedResponseFormat, {
224
+ identifier: "@effect-agent/sandbox/PageCaptureResponseFormat",
225
+ description: "An object JSON Schema bounded to 64 KiB, depth 32, and 4096 nodes"
226
+ });
227
+ /** Capture a URL after a full render, the common case. */
228
+ var PageUrlTarget = class extends Schema.TaggedClass()("PageUrlTarget", { url: PageCaptureTargetUrl }) {};
229
+ /** Render caller-supplied HTML instead of navigating. */
230
+ var PageHtmlTarget = class extends Schema.TaggedClass()("PageHtmlTarget", { html: BoundedHtml }) {};
231
+ /** What the pass renders: a navigated URL or raw HTML. */
232
+ const PageCaptureTarget = Schema.Union([PageUrlTarget, PageHtmlTarget]);
233
+ /**
234
+ * The rendering engine. `chromium` is the full headless browser; `kitesurf`
235
+ * is a lightweight stateless engine an adapter may support for lower-cost
236
+ * captures. An adapter that cannot honor the requested engine
237
+ * rejects it typed rather than silently substituting the other.
238
+ */
239
+ const PageCaptureEngine = Schema.Literals(["chromium", "kitesurf"]);
240
+ /** Return the fully rendered HTML document. */
241
+ var CapturePageContent = class extends Schema.TaggedClass()("CapturePageContent", {}) {};
242
+ /** Return the rendered page converted to Markdown. */
243
+ var CapturePageMarkdown = class extends Schema.TaggedClass()("CapturePageMarkdown", {}) {};
244
+ /** Return the hyperlinks discovered on the rendered page. */
245
+ var CapturePageLinks = class extends Schema.TaggedClass()("CapturePageLinks", { visibleLinksOnly: Schema.optionalKey(Schema.Boolean) }) {};
246
+ /** Return rendered element records grouped by their requested CSS selector. */
247
+ var CapturePageScrape = class extends Schema.TaggedClass()("CapturePageScrape", { selectors: Schema.Array(BoundedSelector).check(Schema.isMinLength(1), Schema.isMaxLength(MAX_SCRAPE_SELECTORS)) }) {};
248
+ /**
249
+ * Extract structured data from the rendered page. `responseFormat` is a
250
+ * bounded, object-shaped JSON Schema document, typically derived from an
251
+ * Effect Schema. The untrusted result must still be decoded by the caller
252
+ * through the original Effect Schema.
253
+ */
254
+ var CapturePageStructured = class extends Schema.TaggedClass()("CapturePageStructured", {
255
+ responseFormat: PageCaptureResponseFormat,
256
+ prompt: Schema.optionalKey(BoundedPrompt)
257
+ }) {};
258
+ /** Exactly one bounded output per pass. */
259
+ const PageCaptureAction = Schema.Union([
260
+ CapturePageContent,
261
+ CapturePageMarkdown,
262
+ CapturePageLinks,
263
+ CapturePageScrape,
264
+ CapturePageStructured
265
+ ]);
266
+ /** Wait for one CSS selector to appear before capturing. */
267
+ var PageSelectorWait = class extends Schema.Class("PageSelectorWait")({
268
+ selector: BoundedSelector,
269
+ timeoutMillis: Schema.optionalKey(BoundedTimeoutMillis)
270
+ }) {};
271
+ /** Navigation and readiness options applied before the capture. */
272
+ var PageNavigationOptions = class extends Schema.Class("PageNavigationOptions")({
273
+ waitUntil: Schema.optionalKey(Schema.Literals([
274
+ "load",
275
+ "domcontentloaded",
276
+ "networkidle0",
277
+ "networkidle2"
278
+ ])),
279
+ timeoutMillis: Schema.optionalKey(BoundedTimeoutMillis),
280
+ waitForSelector: Schema.optionalKey(PageSelectorWait)
281
+ }) {};
282
+ /** The rendered viewport. */
283
+ var PageViewport = class extends Schema.Class("PageViewport")({
284
+ width: PositiveInt.check(Schema.isLessThanOrEqualTo(7680)),
285
+ height: PositiveInt.check(Schema.isLessThanOrEqualTo(7680))
286
+ }) {};
287
+ /**
288
+ * Request egress policy for the render. Rejected resource types are never
289
+ * fetched; when request patterns are given, only matching navigation,
290
+ * redirect, and subresource requests are allowed. Calling capabilities own
291
+ * the capture-target allowlist and project it into this policy so rendered
292
+ * JavaScript cannot escape the same construction-time authority.
293
+ */
294
+ var PageResourcePolicy = class extends Schema.Class("PageResourcePolicy")({
295
+ rejectResourceTypes: Schema.optionalKey(Schema.Array(Schema.Literals([
296
+ "document",
297
+ "stylesheet",
298
+ "image",
299
+ "media",
300
+ "font",
301
+ "script",
302
+ "texttrack",
303
+ "xhr",
304
+ "fetch",
305
+ "eventsource",
306
+ "websocket",
307
+ "manifest",
308
+ "other"
309
+ ])).check(Schema.isMaxLength(16))),
310
+ allowRequestPatterns: Schema.optionalKey(Schema.Array(BoundedPattern).check(Schema.isMaxLength(64)))
311
+ }) {};
312
+ /** Limits an adapter must either enforce or reject. Bytes are UTF-8 encoded. */
313
+ var PageCaptureLimits = class extends Schema.Class("PageCaptureLimits")({ maxOutputBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(MAX_OUTPUT_BYTES)) }) {};
314
+ /** Schema-first page capture request: one target, one action, one output. */
315
+ var PageCaptureRequest = class extends Schema.Class("PageCaptureRequest")({
316
+ target: PageCaptureTarget,
317
+ action: PageCaptureAction,
318
+ engine: PageCaptureEngine,
319
+ limits: PageCaptureLimits,
320
+ navigation: Schema.optionalKey(PageNavigationOptions),
321
+ viewport: Schema.optionalKey(PageViewport),
322
+ resourcePolicy: Schema.optionalKey(PageResourcePolicy)
323
+ }) {};
324
+ /** The rendered HTML document. */
325
+ var PageContentCaptured = class extends Schema.TaggedClass()("PageContentCaptured", { html: BoundedOutputText }) {};
326
+ /** The rendered page as Markdown. */
327
+ var PageMarkdownCaptured = class extends Schema.TaggedClass()("PageMarkdownCaptured", { markdown: BoundedOutputText }) {};
328
+ /** The hyperlinks discovered on the rendered page. */
329
+ var PageLinksCaptured = class extends Schema.TaggedClass()("PageLinksCaptured", { links: Schema.Array(PageCaptureLinkUrl).check(Schema.isMaxLength(MAX_LINKS)) }) {};
330
+ /** The extracted structured value; untrusted until decoded by the caller. */
331
+ var PageStructuredCaptured = class extends Schema.TaggedClass()("PageStructuredCaptured", { value: Schema.Json }) {};
332
+ /** One bounded HTML attribute returned by a selector scrape. */
333
+ var PageScrapeAttribute = class extends Schema.Class("PageScrapeAttribute")({
334
+ name: BoundedAttributeName,
335
+ value: BoundedAttributeValue
336
+ }) {};
337
+ /** One rendered element returned by a selector scrape. */
338
+ var PageScrapeElement = class extends Schema.Class("PageScrapeElement")({
339
+ text: BoundedScrapeText,
340
+ html: BoundedScrapeHtml,
341
+ attributes: Schema.Array(PageScrapeAttribute).check(Schema.isMaxLength(MAX_SCRAPE_ATTRIBUTES)),
342
+ left: Schema.Finite,
343
+ top: Schema.Finite,
344
+ width: Schema.Finite,
345
+ height: Schema.Finite
346
+ }) {};
347
+ /** All rendered elements matched by one requested selector. */
348
+ var PageScrapeGroup = class extends Schema.Class("PageScrapeGroup")({
349
+ selector: BoundedSelector,
350
+ results: Schema.Array(PageScrapeElement).check(Schema.isMaxLength(MAX_SCRAPE_ELEMENTS))
351
+ }) {};
352
+ const PageScrapeGroups = Schema.Array(PageScrapeGroup).check(Schema.isMaxLength(MAX_SCRAPE_SELECTORS), Schema.makeFilter((groups) => groups.reduce((total, group) => total + group.results.length, 0) <= MAX_SCRAPE_ELEMENTS, { title: "at most 4096 aggregate scraped elements" }));
353
+ /** Bounded rendered element records, preserving selector grouping. */
354
+ var PageScrapeCaptured = class extends Schema.TaggedClass()("PageScrapeCaptured", { groups: PageScrapeGroups }) {};
355
+ /** Exactly one output kind per pass, matching the requested action. */
356
+ const PageCaptureOutput = Schema.Union([
357
+ PageContentCaptured,
358
+ PageMarkdownCaptured,
359
+ PageLinksCaptured,
360
+ PageScrapeCaptured,
361
+ PageStructuredCaptured
362
+ ]);
363
+ /** Explicit accounting for model inference performed by a capture adapter. */
364
+ var PageCaptureInferenceUse = class extends Schema.Class("PageCaptureInferenceUse")({
365
+ provider: BoundedInferenceProvider,
366
+ modelCalls: PositiveInt
367
+ }) {};
368
+ /** Accounting an adapter observed for one capture. */
369
+ var PageCaptureResourceUse = class extends Schema.Class("PageCaptureResourceUse")({
370
+ browserMillis: Schema.optionalKey(Schema.Natural),
371
+ inference: Schema.optionalKey(PageCaptureInferenceUse)
372
+ }) {};
373
+ /** The bounded outcome of one capture pass. */
374
+ var PageCaptureResult = class extends Schema.Class("PageCaptureResult")({
375
+ implementation: SandboxImplementation,
376
+ output: PageCaptureOutput,
377
+ resourceUse: PageCaptureResourceUse
378
+ }) {};
379
+ /**
380
+ * The platform refused the pass for rate or quota reasons. `retryAfterMillis`
381
+ * carries the platform's own backoff hint when one exists; retrying earlier
382
+ * only re-fails.
383
+ */
384
+ var PageCaptureRateLimitedError = class extends Schema.TaggedError()("PageCaptureRateLimitedError", {
385
+ implementation: SandboxImplementation,
386
+ reason: Schema.Literals(["rate", "quota"]),
387
+ retryAfterMillis: Schema.optionalKey(Schema.Natural),
388
+ message: BoundedMessage,
389
+ cause: Schema.optionalKey(Schema.Defect())
390
+ }) {};
391
+ /** Navigation, readiness, or capture of the target page failed. */
392
+ var PageCaptureNavigationError = class extends Schema.TaggedError()("PageCaptureNavigationError", {
393
+ implementation: SandboxImplementation,
394
+ message: BoundedMessage,
395
+ cause: Schema.optionalKey(Schema.Defect())
396
+ }) {};
397
+ /** Host authorization or accounting blocked provider inference before capture. */
398
+ var PageCaptureInferencePolicyError = class extends Schema.TaggedError()("PageCaptureInferencePolicyError", {
399
+ implementation: SandboxImplementation,
400
+ provider: BoundedInferenceProvider,
401
+ reason: Schema.Literals(["authorization", "accounting"]),
402
+ message: BoundedMessage,
403
+ cause: Schema.optionalKey(Schema.Defect())
404
+ }) {};
405
+ /** The adapter cannot honestly honor one requested feature (CAP-010 idiom). */
406
+ var PageCaptureUnsupportedError = class extends Schema.TaggedError()("PageCaptureUnsupportedError", {
407
+ implementation: SandboxImplementation,
408
+ feature: Schema.Literals([
409
+ "engine",
410
+ "action",
411
+ "target",
412
+ "navigation",
413
+ "viewport",
414
+ "resource-policy"
415
+ ]),
416
+ message: BoundedMessage
417
+ }) {};
418
+ /** The response exceeded the request's output byte budget. */
419
+ var PageCaptureOutputLimitError = class extends Schema.TaggedError()("PageCaptureOutputLimitError", {
420
+ implementation: SandboxImplementation,
421
+ limit: PositiveInt,
422
+ observed: Schema.Natural
423
+ }) {};
424
+ /** The platform or transport produced a value outside the capture protocol. */
425
+ var PageCaptureProtocolError = class extends Schema.TaggedError()("PageCaptureProtocolError", {
426
+ implementation: SandboxImplementation,
427
+ message: BoundedMessage,
428
+ cause: Schema.optionalKey(Schema.Defect())
429
+ }) {};
430
+ /** Expected capture failures. Interruption stays an Effect interruption. */
431
+ const PageCaptureError = Schema.Union([
432
+ PageCaptureRateLimitedError,
433
+ PageCaptureNavigationError,
434
+ PageCaptureInferencePolicyError,
435
+ PageCaptureUnsupportedError,
436
+ PageCaptureOutputLimitError,
437
+ PageCaptureProtocolError
438
+ ]);
439
+ /**
440
+ * Stateless page-capture port. One `capture` is one pass: the adapter owns no
441
+ * session, replay, approval, or Thread semantics, identifies its
442
+ * isolation posture honestly (CAP-010), enforces or rejects every requested
443
+ * limit and policy, and returns exactly one bounded output. Capture results
444
+ * are untrusted input to whatever reads them.
445
+ */
446
+ var PageCapture = class extends Context.Service()("@effect-agent/sandbox/PageCapture") {};
447
+ //#endregion
448
+ export { CapturePageContent, CapturePageLinks, CapturePageMarkdown, CapturePageScrape, CapturePageStructured, PageCapture, PageCaptureAction, PageCaptureEngine, PageCaptureError, PageCaptureInferencePolicyError, PageCaptureInferenceUse, PageCaptureLimits, PageCaptureLinkUrl, PageCaptureNavigationError, PageCaptureOutput, PageCaptureOutputLimitError, PageCaptureProtocolError, PageCaptureRateLimitedError, PageCaptureRequest, PageCaptureResourceUse, PageCaptureResponseFormat, PageCaptureResult, PageCaptureTarget, PageCaptureTargetUrl, PageCaptureUnsupportedError, PageContentCaptured, PageHtmlTarget, PageLinksCaptured, PageMarkdownCaptured, PageNavigationOptions, PageResourcePolicy, PageScrapeAttribute, PageScrapeCaptured, PageScrapeElement, PageScrapeGroup, PageSelectorWait, PageStructuredCaptured, PageUrlTarget, PageViewport, PageCapture_exports as t };
449
+
450
+ //# sourceMappingURL=PageCapture.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageCapture.mjs","names":[],"sources":["../../src/sandbox/PageCapture.ts"],"sourcesContent":["import { Context, Encoding, Option, Predicate, Schema, type Effect } from \"effect\";\n\nimport { SANDBOX_DIAGNOSTIC_MAX_LENGTH, SandboxImplementation } from \"./Sandbox.ts\";\n\n/**\n * Page capture (capability spec §9.2): one stateless, schema-first rendering\n * pass over a remote or supplied page — navigate (or load raw HTML), render\n * with JavaScript, and return exactly one bounded output. It is a sibling of\n * the command-shaped `Sandbox` and callback-shaped `CodeExecutor` ports: a\n * browser is intrinsically an egress device, so it carries its own explicit\n * capture contract instead of widening the sandbox network policy that every\n * existing adapter rejects.\n *\n * Everything a capture returns is untrusted, attacker-influenced content\n * (security spec §9). Stateful browser sessions, screenshots, PDFs, snapshot\n * bundles, crawling, and accessibility trees are deliberately outside this\n * port's first slice.\n */\n\nconst MAX_OUTPUT_BYTES = 8 * 1024 * 1024;\nconst MAX_LINKS = 4_096;\nconst MAX_SCRAPE_SELECTORS = 64;\nconst MAX_SCRAPE_ELEMENTS = 4_096;\nconst MAX_SCRAPE_ATTRIBUTES = 64;\nconst MAX_RESPONSE_FORMAT_BYTES = 64 * 1024;\nconst MAX_RESPONSE_FORMAT_DEPTH = 32;\nconst MAX_RESPONSE_FORMAT_NODES = 4_096;\nconst MAX_RESPONSE_FORMAT_COLLECTION_LENGTH = 256;\n// Schema `isMaxLength` counts UTF-16 elements: these are transport sanity\n// bounds. The authoritative byte budget is `PageCaptureLimits.maxOutputBytes`,\n// which adapters enforce on the UTF-8 encoded response.\nconst BoundedOutputText = Schema.String.check(Schema.isMaxLength(MAX_OUTPUT_BYTES));\nconst BoundedUrl = Schema.NonEmptyString.check(Schema.isMaxLength(8 * 1024));\nconst BoundedHtml = Schema.NonEmptyString.check(Schema.isMaxLength(2 * 1024 * 1024));\nconst BoundedPrompt = Schema.NonEmptyString.check(Schema.isMaxLength(8 * 1024));\nconst BoundedSelector = Schema.NonEmptyString.check(Schema.isMaxLength(1_024));\nconst BoundedAttributeName = Schema.NonEmptyString.check(Schema.isMaxLength(1_024));\nconst BoundedAttributeValue = Schema.String.check(Schema.isMaxLength(64 * 1_024));\nconst BoundedScrapeText = Schema.String.check(Schema.isMaxLength(1024 * 1_024));\nconst BoundedScrapeHtml = Schema.String.check(Schema.isMaxLength(2 * 1024 * 1_024));\nconst BoundedPattern = Schema.NonEmptyString.check(Schema.isMaxLength(1_024));\nconst BoundedMessage = Schema.String.check(Schema.isMaxLength(SANDBOX_DIAGNOSTIC_MAX_LENGTH));\nconst BoundedInferenceProvider = Schema.NonEmptyString.check(Schema.isMaxLength(256));\nconst BoundedSchemaProperty = Schema.NonEmptyString.check(Schema.isMaxLength(256));\nconst BoundedSchemaText = Schema.String.check(Schema.isMaxLength(8 * 1024));\nconst BoundedSchemaReference = Schema.NonEmptyString.check(Schema.isMaxLength(8 * 1024));\nconst PositiveInt = Schema.Int.check(Schema.isGreaterThan(0));\n/** Bounded by the platform's 60-second browser inactivity ceiling. */\nconst BoundedTimeoutMillis = PositiveInt.check(Schema.isLessThanOrEqualTo(60_000));\n\nconst decodeUrl = Schema.decodeUnknownOption(Schema.URLFromString);\n\nconst isCredentialFreeWebUrl = (value: string, allowHttp: boolean): boolean => {\n const parsed = decodeUrl(value);\n\n if (Option.isNone(parsed)) return false;\n const url = parsed.value;\n\n return (\n (url.protocol === \"https:\" || (allowHttp && url.protocol === \"http:\")) &&\n url.hostname.length > 0 &&\n url.username === \"\" &&\n url.password === \"\"\n );\n};\n\n/** Absolute, bounded HTTPS navigation URL that never carries embedded credentials. */\nexport const PageCaptureTargetUrl = BoundedUrl.check(\n Schema.makeFilter((value) => isCredentialFreeWebUrl(value, false), {\n title: \"an absolute HTTPS URL without embedded credentials\",\n }),\n);\n\nexport type PageCaptureTargetUrl = typeof PageCaptureTargetUrl.Type;\n\n/** Discovered HTTP(S) links are data, never navigation authority, and carry no credentials. */\nexport const PageCaptureLinkUrl = BoundedUrl.check(\n Schema.makeFilter((value) => isCredentialFreeWebUrl(value, true), {\n title: \"an absolute HTTP or HTTPS URL without embedded credentials\",\n }),\n);\n\nexport type PageCaptureLinkUrl = typeof PageCaptureLinkUrl.Type;\n\nconst ResponseFormatPrimitive = Schema.Literals([\n \"string\",\n \"number\",\n \"boolean\",\n \"array\",\n \"object\",\n \"null\",\n \"integer\",\n]);\n\nconst ResponseFormatPrimitiveList = Schema.Array(ResponseFormatPrimitive).check(\n Schema.isMinLength(1),\n Schema.isMaxLength(7),\n Schema.isUnique(),\n);\n\ntype ResponseFormatNode = Schema.JsonObject & {\n readonly $schema?: string | undefined;\n readonly $id?: string | undefined;\n readonly $ref?: string | undefined;\n readonly $anchor?: string | undefined;\n readonly $dynamicRef?: string | undefined;\n readonly $dynamicAnchor?: string | undefined;\n readonly $comment?: string | undefined;\n readonly title?: string | undefined;\n readonly description?: string | undefined;\n readonly default?: Schema.Json | undefined;\n readonly deprecated?: boolean | undefined;\n readonly readOnly?: boolean | undefined;\n readonly writeOnly?: boolean | undefined;\n readonly examples?: ReadonlyArray<Schema.Json> | undefined;\n readonly type?:\n | typeof ResponseFormatPrimitive.Type\n | typeof ResponseFormatPrimitiveList.Type\n | undefined;\n readonly enum?: ReadonlyArray<Schema.Json> | undefined;\n readonly const?: Schema.Json | undefined;\n readonly multipleOf?: number | undefined;\n readonly maximum?: number | undefined;\n readonly exclusiveMaximum?: number | undefined;\n readonly minimum?: number | undefined;\n readonly exclusiveMinimum?: number | undefined;\n readonly maxLength?: number | undefined;\n readonly minLength?: number | undefined;\n readonly pattern?: string | undefined;\n readonly format?: string | undefined;\n readonly maxItems?: number | undefined;\n readonly minItems?: number | undefined;\n readonly uniqueItems?: boolean | undefined;\n readonly prefixItems?: ReadonlyArray<ResponseFormatNode> | undefined;\n readonly properties?: Readonly<Record<string, ResponseFormatNode>> | undefined;\n readonly patternProperties?: Readonly<Record<string, ResponseFormatNode>> | undefined;\n readonly required?: ReadonlyArray<string> | undefined;\n readonly dependentRequired?: Readonly<Record<string, ReadonlyArray<string>>> | undefined;\n readonly dependentSchemas?: Readonly<Record<string, ResponseFormatNode>> | undefined;\n readonly items?: ResponseFormatNode | boolean | undefined;\n readonly additionalItems?: ResponseFormatNode | boolean | undefined;\n readonly unevaluatedItems?: ResponseFormatNode | boolean | undefined;\n readonly contains?: ResponseFormatNode | boolean | undefined;\n readonly minContains?: number | undefined;\n readonly maxContains?: number | undefined;\n readonly additionalProperties?: ResponseFormatNode | boolean | undefined;\n readonly unevaluatedProperties?: ResponseFormatNode | boolean | undefined;\n readonly propertyNames?: ResponseFormatNode | boolean | undefined;\n readonly minProperties?: number | undefined;\n readonly maxProperties?: number | undefined;\n readonly anyOf?: ReadonlyArray<ResponseFormatNode> | undefined;\n readonly oneOf?: ReadonlyArray<ResponseFormatNode> | undefined;\n readonly allOf?: ReadonlyArray<ResponseFormatNode> | undefined;\n readonly not?: ResponseFormatNode | boolean | undefined;\n readonly contentEncoding?: string | undefined;\n readonly contentMediaType?: string | undefined;\n readonly contentSchema?: ResponseFormatNode | boolean | undefined;\n readonly $defs?: Readonly<Record<string, ResponseFormatNode>> | undefined;\n readonly definitions?: Readonly<Record<string, ResponseFormatNode>> | undefined;\n};\n\nconst ResponseFormatNode: Schema.Codec<ResponseFormatNode> = Schema.suspend(\n (): Schema.Codec<ResponseFormatNode> =>\n Schema.Struct(responseFormatFields()).pipe(\n Schema.annotate({ parseOptions: { onExcessProperty: \"error\" } }),\n ),\n);\n\nconst responseFormatFields = () => {\n const boundedNodes = Schema.Array(ResponseFormatNode).check(\n Schema.isMinLength(1),\n Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH),\n );\n\n const boundedDefinitions = Schema.Record(BoundedSchemaProperty, ResponseFormatNode).check(\n Schema.isMaxProperties(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH),\n );\n\n const boundedRequired = Schema.Array(BoundedSchemaProperty).check(\n Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH),\n Schema.isUnique(),\n );\n\n const subschema = Schema.Union([Schema.Boolean, ResponseFormatNode]);\n\n return {\n $schema: Schema.optionalKey(BoundedSchemaReference),\n $id: Schema.optionalKey(BoundedSchemaReference),\n $ref: Schema.optionalKey(BoundedSchemaReference),\n $anchor: Schema.optionalKey(BoundedSchemaReference),\n $dynamicRef: Schema.optionalKey(BoundedSchemaReference),\n $dynamicAnchor: Schema.optionalKey(BoundedSchemaReference),\n $comment: Schema.optionalKey(BoundedSchemaText),\n title: Schema.optionalKey(BoundedSchemaText),\n description: Schema.optionalKey(BoundedSchemaText),\n default: Schema.optionalKey(Schema.Json),\n deprecated: Schema.optionalKey(Schema.Boolean),\n readOnly: Schema.optionalKey(Schema.Boolean),\n writeOnly: Schema.optionalKey(Schema.Boolean),\n examples: Schema.optionalKey(\n Schema.Array(Schema.Json).check(Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH)),\n ),\n type: Schema.optionalKey(Schema.Union([ResponseFormatPrimitive, ResponseFormatPrimitiveList])),\n enum: Schema.optionalKey(\n Schema.Array(Schema.Json).check(\n Schema.isMinLength(1),\n Schema.isMaxLength(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH),\n Schema.isUnique(),\n ),\n ),\n const: Schema.optionalKey(Schema.Json),\n multipleOf: Schema.optionalKey(Schema.Finite.check(Schema.isGreaterThan(0))),\n maximum: Schema.optionalKey(Schema.Finite),\n exclusiveMaximum: Schema.optionalKey(Schema.Finite),\n minimum: Schema.optionalKey(Schema.Finite),\n exclusiveMinimum: Schema.optionalKey(Schema.Finite),\n maxLength: Schema.optionalKey(Schema.Natural),\n minLength: Schema.optionalKey(Schema.Natural),\n pattern: Schema.optionalKey(BoundedSchemaText),\n format: Schema.optionalKey(BoundedSchemaText),\n maxItems: Schema.optionalKey(Schema.Natural),\n minItems: Schema.optionalKey(Schema.Natural),\n uniqueItems: Schema.optionalKey(Schema.Boolean),\n prefixItems: Schema.optionalKey(boundedNodes),\n items: Schema.optionalKey(subschema),\n additionalItems: Schema.optionalKey(subschema),\n unevaluatedItems: Schema.optionalKey(subschema),\n contains: Schema.optionalKey(subschema),\n minContains: Schema.optionalKey(Schema.Natural),\n maxContains: Schema.optionalKey(Schema.Natural),\n properties: Schema.optionalKey(boundedDefinitions),\n patternProperties: Schema.optionalKey(boundedDefinitions),\n required: Schema.optionalKey(boundedRequired),\n dependentRequired: Schema.optionalKey(\n Schema.Record(BoundedSchemaProperty, boundedRequired).check(\n Schema.isMaxProperties(MAX_RESPONSE_FORMAT_COLLECTION_LENGTH),\n ),\n ),\n dependentSchemas: Schema.optionalKey(boundedDefinitions),\n additionalProperties: Schema.optionalKey(subschema),\n unevaluatedProperties: Schema.optionalKey(subschema),\n propertyNames: Schema.optionalKey(subschema),\n minProperties: Schema.optionalKey(Schema.Natural),\n maxProperties: Schema.optionalKey(Schema.Natural),\n anyOf: Schema.optionalKey(boundedNodes),\n oneOf: Schema.optionalKey(boundedNodes),\n allOf: Schema.optionalKey(boundedNodes),\n not: Schema.optionalKey(subschema),\n contentEncoding: Schema.optionalKey(BoundedSchemaText),\n contentMediaType: Schema.optionalKey(BoundedSchemaText),\n contentSchema: Schema.optionalKey(subschema),\n $defs: Schema.optionalKey(boundedDefinitions),\n definitions: Schema.optionalKey(boundedDefinitions),\n };\n};\n\nconst ResponseFormatDocument = Schema.Struct({\n ...responseFormatFields(),\n type: Schema.Literal(\"object\"),\n}).pipe(Schema.annotate({ parseOptions: { onExcessProperty: \"error\" } }));\n\nconst isResponseFormatDocument = Schema.is(ResponseFormatDocument);\n\n/** Preflight graph bounds before recursively decoding an untrusted JSON Schema. */\nconst isBoundedResponseFormat = (input: unknown): input is typeof ResponseFormatDocument.Type => {\n if (!Predicate.isObject(input)) return false;\n\n const pending: Array<{ readonly value: unknown; readonly depth: number }> = [\n { value: input, depth: 0 },\n ];\n\n const visited = new WeakSet<object>();\n let nodes = 0;\n let textUnits = 0;\n\n try {\n while (pending.length > 0) {\n const current = pending.pop();\n\n if (\n current === undefined ||\n current.depth > MAX_RESPONSE_FORMAT_DEPTH ||\n ++nodes > MAX_RESPONSE_FORMAT_NODES\n ) {\n return false;\n }\n\n const value = current.value;\n\n if (value === null || typeof value === \"boolean\") continue;\n if (typeof value === \"number\") {\n if (!Number.isFinite(value)) return false;\n continue;\n }\n if (typeof value === \"string\") {\n textUnits += value.length;\n if (textUnits > MAX_RESPONSE_FORMAT_BYTES) return false;\n continue;\n }\n if (!Predicate.isObjectOrArray(value) || visited.has(value)) return false;\n visited.add(value);\n\n const entries = Array.isArray(value)\n ? value.map((entry, index) => [index, entry] as const)\n : Object.entries(value);\n\n if (entries.length > MAX_RESPONSE_FORMAT_COLLECTION_LENGTH) return false;\n\n for (const [key, entry] of entries) {\n textUnits += typeof key === \"string\" ? key.length : 0;\n if (textUnits > MAX_RESPONSE_FORMAT_BYTES) return false;\n pending.push({ value: entry, depth: current.depth + 1 });\n }\n }\n\n if (!isResponseFormatDocument(input)) return false;\n const encoded = JSON.stringify(input);\n\n return Encoding.encodeHex(encoded).length / 2 <= MAX_RESPONSE_FORMAT_BYTES;\n } catch {\n return false;\n }\n};\n\n/** A platform-supported object JSON Schema with bounded depth, entries, nodes, and UTF-8 bytes. */\nexport const PageCaptureResponseFormat = Schema.declare(isBoundedResponseFormat, {\n identifier: \"@effect-agent/sandbox/PageCaptureResponseFormat\",\n description: \"An object JSON Schema bounded to 64 KiB, depth 32, and 4096 nodes\",\n});\n\nexport type PageCaptureResponseFormat = typeof PageCaptureResponseFormat.Type;\n\n/** Capture a URL after a full render, the common case. */\nexport class PageUrlTarget extends Schema.TaggedClass<PageUrlTarget>()(\"PageUrlTarget\", {\n url: PageCaptureTargetUrl,\n}) {}\n\n/** Render caller-supplied HTML instead of navigating. */\nexport class PageHtmlTarget extends Schema.TaggedClass<PageHtmlTarget>()(\"PageHtmlTarget\", {\n html: BoundedHtml,\n}) {}\n\n/** What the pass renders: a navigated URL or raw HTML. */\nexport const PageCaptureTarget = Schema.Union([PageUrlTarget, PageHtmlTarget]);\nexport type PageCaptureTarget = typeof PageCaptureTarget.Type;\n\n/**\n * The rendering engine. `chromium` is the full headless browser; `kitesurf`\n * is a lightweight stateless engine an adapter may support for lower-cost\n * captures. An adapter that cannot honor the requested engine\n * rejects it typed rather than silently substituting the other.\n */\nexport const PageCaptureEngine = Schema.Literals([\"chromium\", \"kitesurf\"]);\nexport type PageCaptureEngine = typeof PageCaptureEngine.Type;\n\n/** Return the fully rendered HTML document. */\nexport class CapturePageContent extends Schema.TaggedClass<CapturePageContent>()(\n \"CapturePageContent\",\n {},\n) {}\n\n/** Return the rendered page converted to Markdown. */\nexport class CapturePageMarkdown extends Schema.TaggedClass<CapturePageMarkdown>()(\n \"CapturePageMarkdown\",\n {},\n) {}\n\n/** Return the hyperlinks discovered on the rendered page. */\nexport class CapturePageLinks extends Schema.TaggedClass<CapturePageLinks>()(\"CapturePageLinks\", {\n visibleLinksOnly: Schema.optionalKey(Schema.Boolean),\n}) {}\n\n/** Return rendered element records grouped by their requested CSS selector. */\nexport class CapturePageScrape extends Schema.TaggedClass<CapturePageScrape>()(\n \"CapturePageScrape\",\n {\n selectors: Schema.Array(BoundedSelector).check(\n Schema.isMinLength(1),\n Schema.isMaxLength(MAX_SCRAPE_SELECTORS),\n ),\n },\n) {}\n\n/**\n * Extract structured data from the rendered page. `responseFormat` is a\n * bounded, object-shaped JSON Schema document, typically derived from an\n * Effect Schema. The untrusted result must still be decoded by the caller\n * through the original Effect Schema.\n */\nexport class CapturePageStructured extends Schema.TaggedClass<CapturePageStructured>()(\n \"CapturePageStructured\",\n {\n responseFormat: PageCaptureResponseFormat,\n prompt: Schema.optionalKey(BoundedPrompt),\n },\n) {}\n\n/** Exactly one bounded output per pass. */\nexport const PageCaptureAction = Schema.Union([\n CapturePageContent,\n CapturePageMarkdown,\n CapturePageLinks,\n CapturePageScrape,\n CapturePageStructured,\n]);\n\nexport type PageCaptureAction = typeof PageCaptureAction.Type;\n\n/** Wait for one CSS selector to appear before capturing. */\nexport class PageSelectorWait extends Schema.Class<PageSelectorWait>(\"PageSelectorWait\")({\n selector: BoundedSelector,\n timeoutMillis: Schema.optionalKey(BoundedTimeoutMillis),\n}) {}\n\n/** Navigation and readiness options applied before the capture. */\nexport class PageNavigationOptions extends Schema.Class<PageNavigationOptions>(\n \"PageNavigationOptions\",\n)({\n waitUntil: Schema.optionalKey(\n Schema.Literals([\"load\", \"domcontentloaded\", \"networkidle0\", \"networkidle2\"]),\n ),\n timeoutMillis: Schema.optionalKey(BoundedTimeoutMillis),\n waitForSelector: Schema.optionalKey(PageSelectorWait),\n}) {}\n\n/** The rendered viewport. */\nexport class PageViewport extends Schema.Class<PageViewport>(\"PageViewport\")({\n width: PositiveInt.check(Schema.isLessThanOrEqualTo(7_680)),\n height: PositiveInt.check(Schema.isLessThanOrEqualTo(7_680)),\n}) {}\n\n/**\n * Request egress policy for the render. Rejected resource types are never\n * fetched; when request patterns are given, only matching navigation,\n * redirect, and subresource requests are allowed. Calling capabilities own\n * the capture-target allowlist and project it into this policy so rendered\n * JavaScript cannot escape the same construction-time authority.\n */\nexport class PageResourcePolicy extends Schema.Class<PageResourcePolicy>(\"PageResourcePolicy\")({\n rejectResourceTypes: Schema.optionalKey(\n Schema.Array(\n Schema.Literals([\n \"document\",\n \"stylesheet\",\n \"image\",\n \"media\",\n \"font\",\n \"script\",\n \"texttrack\",\n \"xhr\",\n \"fetch\",\n \"eventsource\",\n \"websocket\",\n \"manifest\",\n \"other\",\n ]),\n ).check(Schema.isMaxLength(16)),\n ),\n allowRequestPatterns: Schema.optionalKey(\n Schema.Array(BoundedPattern).check(Schema.isMaxLength(64)),\n ),\n}) {}\n\n/** Limits an adapter must either enforce or reject. Bytes are UTF-8 encoded. */\nexport class PageCaptureLimits extends Schema.Class<PageCaptureLimits>(\"PageCaptureLimits\")({\n maxOutputBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(MAX_OUTPUT_BYTES)),\n}) {}\n\n/** Schema-first page capture request: one target, one action, one output. */\nexport class PageCaptureRequest extends Schema.Class<PageCaptureRequest>(\"PageCaptureRequest\")({\n target: PageCaptureTarget,\n action: PageCaptureAction,\n engine: PageCaptureEngine,\n limits: PageCaptureLimits,\n navigation: Schema.optionalKey(PageNavigationOptions),\n viewport: Schema.optionalKey(PageViewport),\n resourcePolicy: Schema.optionalKey(PageResourcePolicy),\n}) {}\n\n/** The rendered HTML document. */\nexport class PageContentCaptured extends Schema.TaggedClass<PageContentCaptured>()(\n \"PageContentCaptured\",\n {\n html: BoundedOutputText,\n },\n) {}\n\n/** The rendered page as Markdown. */\nexport class PageMarkdownCaptured extends Schema.TaggedClass<PageMarkdownCaptured>()(\n \"PageMarkdownCaptured\",\n {\n markdown: BoundedOutputText,\n },\n) {}\n\n/** The hyperlinks discovered on the rendered page. */\nexport class PageLinksCaptured extends Schema.TaggedClass<PageLinksCaptured>()(\n \"PageLinksCaptured\",\n {\n links: Schema.Array(PageCaptureLinkUrl).check(Schema.isMaxLength(MAX_LINKS)),\n },\n) {}\n\n/** The extracted structured value; untrusted until decoded by the caller. */\nexport class PageStructuredCaptured extends Schema.TaggedClass<PageStructuredCaptured>()(\n \"PageStructuredCaptured\",\n {\n value: Schema.Json,\n },\n) {}\n\n/** One bounded HTML attribute returned by a selector scrape. */\nexport class PageScrapeAttribute extends Schema.Class<PageScrapeAttribute>(\"PageScrapeAttribute\")({\n name: BoundedAttributeName,\n value: BoundedAttributeValue,\n}) {}\n\n/** One rendered element returned by a selector scrape. */\nexport class PageScrapeElement extends Schema.Class<PageScrapeElement>(\"PageScrapeElement\")({\n text: BoundedScrapeText,\n html: BoundedScrapeHtml,\n attributes: Schema.Array(PageScrapeAttribute).check(Schema.isMaxLength(MAX_SCRAPE_ATTRIBUTES)),\n left: Schema.Finite,\n top: Schema.Finite,\n width: Schema.Finite,\n height: Schema.Finite,\n}) {}\n\n/** All rendered elements matched by one requested selector. */\nexport class PageScrapeGroup extends Schema.Class<PageScrapeGroup>(\"PageScrapeGroup\")({\n selector: BoundedSelector,\n results: Schema.Array(PageScrapeElement).check(Schema.isMaxLength(MAX_SCRAPE_ELEMENTS)),\n}) {}\n\nconst PageScrapeGroups = Schema.Array(PageScrapeGroup).check(\n Schema.isMaxLength(MAX_SCRAPE_SELECTORS),\n Schema.makeFilter(\n (groups) =>\n groups.reduce((total, group) => total + group.results.length, 0) <= MAX_SCRAPE_ELEMENTS,\n { title: \"at most 4096 aggregate scraped elements\" },\n ),\n);\n\n/** Bounded rendered element records, preserving selector grouping. */\nexport class PageScrapeCaptured extends Schema.TaggedClass<PageScrapeCaptured>()(\n \"PageScrapeCaptured\",\n {\n groups: PageScrapeGroups,\n },\n) {}\n\n/** Exactly one output kind per pass, matching the requested action. */\nexport const PageCaptureOutput = Schema.Union([\n PageContentCaptured,\n PageMarkdownCaptured,\n PageLinksCaptured,\n PageScrapeCaptured,\n PageStructuredCaptured,\n]);\n\nexport type PageCaptureOutput = typeof PageCaptureOutput.Type;\n\n/** Explicit accounting for model inference performed by a capture adapter. */\nexport class PageCaptureInferenceUse extends Schema.Class<PageCaptureInferenceUse>(\n \"PageCaptureInferenceUse\",\n)({\n provider: BoundedInferenceProvider,\n modelCalls: PositiveInt,\n}) {}\n\n/** Accounting an adapter observed for one capture. */\nexport class PageCaptureResourceUse extends Schema.Class<PageCaptureResourceUse>(\n \"PageCaptureResourceUse\",\n)({\n browserMillis: Schema.optionalKey(Schema.Natural),\n inference: Schema.optionalKey(PageCaptureInferenceUse),\n}) {}\n\n/** The bounded outcome of one capture pass. */\nexport class PageCaptureResult extends Schema.Class<PageCaptureResult>(\"PageCaptureResult\")({\n implementation: SandboxImplementation,\n output: PageCaptureOutput,\n resourceUse: PageCaptureResourceUse,\n}) {}\n\n/**\n * The platform refused the pass for rate or quota reasons. `retryAfterMillis`\n * carries the platform's own backoff hint when one exists; retrying earlier\n * only re-fails.\n */\nexport class PageCaptureRateLimitedError extends Schema.TaggedError<PageCaptureRateLimitedError>()(\n \"PageCaptureRateLimitedError\",\n {\n implementation: SandboxImplementation,\n reason: Schema.Literals([\"rate\", \"quota\"]),\n retryAfterMillis: Schema.optionalKey(Schema.Natural),\n message: BoundedMessage,\n cause: Schema.optionalKey(Schema.Defect()),\n },\n) {}\n\n/** Navigation, readiness, or capture of the target page failed. */\nexport class PageCaptureNavigationError extends Schema.TaggedError<PageCaptureNavigationError>()(\n \"PageCaptureNavigationError\",\n {\n implementation: SandboxImplementation,\n message: BoundedMessage,\n cause: Schema.optionalKey(Schema.Defect()),\n },\n) {}\n\n/** Host authorization or accounting blocked provider inference before capture. */\nexport class PageCaptureInferencePolicyError extends Schema.TaggedError<PageCaptureInferencePolicyError>()(\n \"PageCaptureInferencePolicyError\",\n {\n implementation: SandboxImplementation,\n provider: BoundedInferenceProvider,\n reason: Schema.Literals([\"authorization\", \"accounting\"]),\n message: BoundedMessage,\n cause: Schema.optionalKey(Schema.Defect()),\n },\n) {}\n\n/** The adapter cannot honestly honor one requested feature (CAP-010 idiom). */\nexport class PageCaptureUnsupportedError extends Schema.TaggedError<PageCaptureUnsupportedError>()(\n \"PageCaptureUnsupportedError\",\n {\n implementation: SandboxImplementation,\n feature: Schema.Literals([\n \"engine\",\n \"action\",\n \"target\",\n \"navigation\",\n \"viewport\",\n \"resource-policy\",\n ]),\n message: BoundedMessage,\n },\n) {}\n\n/** The response exceeded the request's output byte budget. */\nexport class PageCaptureOutputLimitError extends Schema.TaggedError<PageCaptureOutputLimitError>()(\n \"PageCaptureOutputLimitError\",\n {\n implementation: SandboxImplementation,\n limit: PositiveInt,\n observed: Schema.Natural,\n },\n) {}\n\n/** The platform or transport produced a value outside the capture protocol. */\nexport class PageCaptureProtocolError extends Schema.TaggedError<PageCaptureProtocolError>()(\n \"PageCaptureProtocolError\",\n {\n implementation: SandboxImplementation,\n message: BoundedMessage,\n cause: Schema.optionalKey(Schema.Defect()),\n },\n) {}\n\n/** Expected capture failures. Interruption stays an Effect interruption. */\nexport const PageCaptureError = Schema.Union([\n PageCaptureRateLimitedError,\n PageCaptureNavigationError,\n PageCaptureInferencePolicyError,\n PageCaptureUnsupportedError,\n PageCaptureOutputLimitError,\n PageCaptureProtocolError,\n]);\n\nexport type PageCaptureError = typeof PageCaptureError.Type;\n\n/**\n * Stateless page-capture port. One `capture` is one pass: the adapter owns no\n * session, replay, approval, or Thread semantics, identifies its\n * isolation posture honestly (CAP-010), enforces or rejects every requested\n * limit and policy, and returns exactly one bounded output. Capture results\n * are untrusted input to whatever reads them.\n */\nexport class PageCapture extends Context.Service<\n PageCapture,\n {\n readonly capture: (\n request: PageCaptureRequest,\n ) => Effect.Effect<PageCaptureResult, PageCaptureError>;\n }\n>()(\"@effect-agent/sandbox/PageCapture\") {}\n\n/** Type helper for implementations that preserve the public PageCapture contract. */\nexport type PageCaptureCapture = (\n request: PageCaptureRequest,\n) => Effect.Effect<PageCaptureResult, PageCaptureError>;\n"],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ import { p as SandboxImplementation } from "../Sandbox-CEsDWBLq.mjs";
2
+ import { Context, Schema, Scope, Stream } from "effect";
3
+ declare namespace PageCrawl_d_exports {
4
+ export { PageCrawl, PageCrawlCrawl, PageCrawlError, PageCrawlLimitError, PageCrawlLimits, PageCrawlProtocolError, PageCrawlPurpose, PageCrawlRateLimitedError, PageCrawlRecord, PageCrawlRecordMetadata, PageCrawlRecordStatus, PageCrawlRequest, PageCrawlStartUrl, PageCrawlTerminalError };
5
+ }
6
+ /** One credential-free HTTPS URL. The first adapter confines every record to its exact host. */
7
+ declare const PageCrawlStartUrl: Schema.NonEmptyString;
8
+ type PageCrawlStartUrl = typeof PageCrawlStartUrl.Type;
9
+ /** The declared uses Cloudflare evaluates against a site's Content Signals. */
10
+ declare const PageCrawlPurpose: Schema.Literals<readonly ["search", "ai-input", "ai-train"]>;
11
+ type PageCrawlPurpose = typeof PageCrawlPurpose.Type;
12
+ declare const PageCrawlLimits_base: Schema.Class<PageCrawlLimits, Schema.Struct<{
13
+ readonly maxPages: Schema.Int;
14
+ readonly maxDepth: Schema.Int;
15
+ readonly maxPageBytes: Schema.Int;
16
+ readonly maxTotalBytes: Schema.Int;
17
+ readonly deadlineMillis: Schema.Int;
18
+ }>, {}>;
19
+ /** Immutable caller limits for one scoped crawl. */
20
+ declare class PageCrawlLimits extends PageCrawlLimits_base {}
21
+ declare const PageCrawlRequest_base: Schema.Class<PageCrawlRequest, Schema.Struct<{
22
+ readonly startUrl: Schema.NonEmptyString;
23
+ readonly purposes: Schema.$Array<Schema.Literals<readonly ["search", "ai-input", "ai-train"]>>;
24
+ readonly limits: typeof PageCrawlLimits;
25
+ }>, {}>;
26
+ /** A rendered Markdown crawl rooted at one exact HTTPS host. */
27
+ declare class PageCrawlRequest extends PageCrawlRequest_base {}
28
+ /** Cloudflare's documented status for one discovered URL. */
29
+ declare const PageCrawlRecordStatus: Schema.Literals<readonly ["queued", "completed", "disallowed", "skipped", "errored", "cancelled"]>;
30
+ type PageCrawlRecordStatus = typeof PageCrawlRecordStatus.Type;
31
+ declare const PageCrawlRecordMetadata_base: Schema.Class<PageCrawlRecordMetadata, Schema.Struct<{
32
+ readonly status: Schema.Int;
33
+ readonly url: Schema.NonEmptyString;
34
+ readonly title: Schema.optionalKey<Schema.String>;
35
+ }>, {}>;
36
+ /** Bounded origin metadata when Cloudflare reached the URL. */
37
+ declare class PageCrawlRecordMetadata extends PageCrawlRecordMetadata_base {}
38
+ declare const PageCrawlRecord_base: Schema.Class<PageCrawlRecord, Schema.Struct<{
39
+ readonly url: Schema.NonEmptyString;
40
+ readonly status: Schema.Literals<readonly ["queued", "completed", "disallowed", "skipped", "errored", "cancelled"]>;
41
+ readonly markdown: Schema.optionalKey<Schema.String>;
42
+ readonly metadata: Schema.optionalKey<typeof PageCrawlRecordMetadata>;
43
+ }>, {}>;
44
+ /** One untrusted page record. Non-completed statuses may have no Markdown. */
45
+ declare class PageCrawlRecord extends PageCrawlRecord_base {}
46
+ declare const PageCrawlRateLimitedError_base: Schema.Class<PageCrawlRateLimitedError, Schema.TaggedStruct<"PageCrawlRateLimitedError", {
47
+ readonly implementation: typeof SandboxImplementation;
48
+ readonly reason: Schema.Literals<readonly ["rate", "quota"]>;
49
+ readonly retryAfterMillis: Schema.optionalKey<Schema.Natural>;
50
+ readonly message: Schema.String;
51
+ readonly cause: Schema.optionalKey<Schema.Defect>;
52
+ }>, import("effect/Cause").YieldableError>;
53
+ /** Cloudflare refused a request because of a request-rate or browser-quota limit. */
54
+ declare class PageCrawlRateLimitedError extends PageCrawlRateLimitedError_base {}
55
+ declare const PageCrawlProtocolError_base: Schema.Class<PageCrawlProtocolError, Schema.TaggedStruct<"PageCrawlProtocolError", {
56
+ readonly implementation: typeof SandboxImplementation;
57
+ readonly message: Schema.String;
58
+ readonly cause: Schema.optionalKey<Schema.Defect>;
59
+ }>, import("effect/Cause").YieldableError>;
60
+ /** The REST transport or provider response violated the crawl protocol. */
61
+ declare class PageCrawlProtocolError extends PageCrawlProtocolError_base {}
62
+ declare const PageCrawlLimitError_base: Schema.Class<PageCrawlLimitError, Schema.TaggedStruct<"PageCrawlLimitError", {
63
+ readonly implementation: typeof SandboxImplementation;
64
+ readonly limit: Schema.Literals<readonly ["pages", "page-bytes", "total-bytes", "deadline"]>;
65
+ readonly maximum: Schema.Int;
66
+ readonly observed: Schema.Natural;
67
+ readonly message: Schema.String;
68
+ }>, import("effect/Cause").YieldableError>;
69
+ /** The first record or operation that crossed one immutable caller limit. */
70
+ declare class PageCrawlLimitError extends PageCrawlLimitError_base {}
71
+ declare const PageCrawlTerminalError_base: Schema.Class<PageCrawlTerminalError, Schema.TaggedStruct<"PageCrawlTerminalError", {
72
+ readonly implementation: typeof SandboxImplementation;
73
+ readonly status: Schema.Literals<readonly ["errored", "cancelled_by_user", "cancelled_due_to_timeout", "cancelled_due_to_limits"]>;
74
+ readonly message: Schema.String;
75
+ }>, import("effect/Cause").YieldableError>;
76
+ /** A documented non-success terminal job status. */
77
+ declare class PageCrawlTerminalError extends PageCrawlTerminalError_base {}
78
+ declare const PageCrawlError: Schema.Union<readonly [typeof PageCrawlRateLimitedError, typeof PageCrawlProtocolError, typeof PageCrawlLimitError, typeof PageCrawlTerminalError]>;
79
+ type PageCrawlError = typeof PageCrawlError.Type;
80
+ declare const PageCrawl_base: Context.ServiceClass<PageCrawl, "@effect-agent/sandbox/PageCrawl", {
81
+ readonly crawl: (request: PageCrawlRequest) => Stream.Stream<PageCrawlRecord, PageCrawlError, Scope.Scope>;
82
+ }>;
83
+ /** Scoped exact-host crawl stream. Provider job identity and polling stay adapter-private. */
84
+ declare class PageCrawl extends PageCrawl_base {}
85
+ type PageCrawlCrawl = (request: PageCrawlRequest) => Stream.Stream<PageCrawlRecord, PageCrawlError, Scope.Scope>;
86
+ //#endregion
87
+ export { PageCrawl, PageCrawlCrawl, PageCrawlError, PageCrawlLimitError, PageCrawlLimits, PageCrawlProtocolError, PageCrawlPurpose, PageCrawlRateLimitedError, PageCrawlRecord, PageCrawlRecordMetadata, PageCrawlRecordStatus, PageCrawlRequest, PageCrawlStartUrl, PageCrawlTerminalError, PageCrawl_d_exports as t };
88
+ //# sourceMappingURL=PageCrawl.d.mts.map