@anthropic-ai/sdk 0.124.0 → 0.126.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (921) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/client.d.mts +2 -4
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +2 -4
  5. package/client.d.ts.map +1 -1
  6. package/client.js +846 -851
  7. package/client.js.map +1 -1
  8. package/client.mjs +846 -845
  9. package/client.mjs.map +1 -1
  10. package/core/api-promise.d.mts.map +1 -1
  11. package/core/api-promise.d.ts.map +1 -1
  12. package/core/api-promise.js +71 -69
  13. package/core/api-promise.js.map +1 -1
  14. package/core/api-promise.mjs +71 -65
  15. package/core/api-promise.mjs.map +1 -1
  16. package/core/error.d.mts.map +1 -1
  17. package/core/error.d.ts.map +1 -1
  18. package/core/error.js +5 -3
  19. package/core/error.js.map +1 -1
  20. package/core/error.mjs +5 -3
  21. package/core/error.mjs.map +1 -1
  22. package/core/pagination.d.mts.map +1 -1
  23. package/core/pagination.d.ts.map +1 -1
  24. package/core/pagination.js +56 -51
  25. package/core/pagination.js.map +1 -1
  26. package/core/pagination.mjs +56 -42
  27. package/core/pagination.mjs.map +1 -1
  28. package/core/resource.d.mts.map +1 -1
  29. package/core/resource.d.ts.map +1 -1
  30. package/core/resource.js +0 -1
  31. package/core/resource.js.map +1 -1
  32. package/core/resource.mjs +0 -1
  33. package/core/resource.mjs.map +1 -1
  34. package/core/streaming.js +212 -209
  35. package/core/streaming.js.map +1 -1
  36. package/core/streaming.mjs +212 -209
  37. package/core/streaming.mjs.map +1 -1
  38. package/helpers/beta/mcp.js +14 -19
  39. package/helpers/beta/mcp.js.map +1 -1
  40. package/helpers/beta/mcp.mjs +14 -13
  41. package/helpers/beta/mcp.mjs.map +1 -1
  42. package/index.d.mts.map +1 -1
  43. package/index.d.ts.map +1 -1
  44. package/index.js +0 -1
  45. package/index.js.map +1 -1
  46. package/index.mjs +0 -1
  47. package/index.mjs.map +1 -1
  48. package/internal/builtin-types.d.mts.map +1 -1
  49. package/internal/builtin-types.d.ts.map +1 -1
  50. package/internal/builtin-types.js +0 -1
  51. package/internal/builtin-types.js.map +1 -1
  52. package/internal/builtin-types.mjs +0 -1
  53. package/internal/builtin-types.mjs.map +1 -1
  54. package/internal/constants.js +1 -1
  55. package/internal/constants.js.map +1 -1
  56. package/internal/decoders/jsonl.js +27 -24
  57. package/internal/decoders/jsonl.js.map +1 -1
  58. package/internal/decoders/jsonl.mjs +27 -24
  59. package/internal/decoders/jsonl.mjs.map +1 -1
  60. package/internal/decoders/line.js +52 -49
  61. package/internal/decoders/line.js.map +1 -1
  62. package/internal/decoders/line.mjs +52 -43
  63. package/internal/decoders/line.mjs.map +1 -1
  64. package/internal/detect-platform.d.mts.map +1 -1
  65. package/internal/detect-platform.d.ts.map +1 -1
  66. package/internal/detect-platform.js +0 -1
  67. package/internal/detect-platform.js.map +1 -1
  68. package/internal/detect-platform.mjs +0 -1
  69. package/internal/detect-platform.mjs.map +1 -1
  70. package/internal/errors.d.mts.map +1 -1
  71. package/internal/errors.d.ts.map +1 -1
  72. package/internal/errors.js +0 -1
  73. package/internal/errors.js.map +1 -1
  74. package/internal/errors.mjs +0 -1
  75. package/internal/errors.mjs.map +1 -1
  76. package/internal/file-store.js +256 -258
  77. package/internal/file-store.js.map +1 -1
  78. package/internal/file-store.mjs +256 -243
  79. package/internal/file-store.mjs.map +1 -1
  80. package/internal/headers.d.mts.map +1 -1
  81. package/internal/headers.d.ts.map +1 -1
  82. package/internal/headers.js +0 -1
  83. package/internal/headers.js.map +1 -1
  84. package/internal/headers.mjs +0 -1
  85. package/internal/headers.mjs.map +1 -1
  86. package/internal/node.browser.d.mts.map +1 -1
  87. package/internal/node.browser.d.ts.map +1 -1
  88. package/internal/node.browser.js.map +1 -1
  89. package/internal/node.browser.mjs +7 -7
  90. package/internal/node.browser.mjs.map +1 -1
  91. package/internal/parse.d.mts.map +1 -1
  92. package/internal/parse.d.ts.map +1 -1
  93. package/internal/parse.js +0 -1
  94. package/internal/parse.js.map +1 -1
  95. package/internal/parse.mjs +0 -1
  96. package/internal/parse.mjs.map +1 -1
  97. package/internal/request-options.d.mts +1 -1
  98. package/internal/request-options.d.mts.map +1 -1
  99. package/internal/request-options.d.ts +1 -1
  100. package/internal/request-options.d.ts.map +1 -1
  101. package/internal/request-options.js +0 -1
  102. package/internal/request-options.js.map +1 -1
  103. package/internal/request-options.mjs +0 -1
  104. package/internal/request-options.mjs.map +1 -1
  105. package/internal/shim-types.d.mts.map +1 -1
  106. package/internal/shim-types.d.ts.map +1 -1
  107. package/internal/shim-types.js +0 -1
  108. package/internal/shim-types.js.map +1 -1
  109. package/internal/shim-types.mjs +0 -1
  110. package/internal/shim-types.mjs.map +1 -1
  111. package/internal/shims.d.mts.map +1 -1
  112. package/internal/shims.d.ts.map +1 -1
  113. package/internal/shims.js +0 -1
  114. package/internal/shims.js.map +1 -1
  115. package/internal/shims.mjs +0 -1
  116. package/internal/shims.mjs.map +1 -1
  117. package/internal/stainless-helper-header.js +6 -6
  118. package/internal/stainless-helper-header.js.map +1 -1
  119. package/internal/types.d.mts.map +1 -1
  120. package/internal/types.d.ts.map +1 -1
  121. package/internal/types.js +0 -1
  122. package/internal/types.js.map +1 -1
  123. package/internal/types.mjs +0 -1
  124. package/internal/types.mjs.map +1 -1
  125. package/internal/utils/async-queue.js +66 -63
  126. package/internal/utils/async-queue.js.map +1 -1
  127. package/internal/utils/async-queue.mjs +66 -56
  128. package/internal/utils/async-queue.mjs.map +1 -1
  129. package/internal/utils/base64.d.mts.map +1 -1
  130. package/internal/utils/base64.d.ts.map +1 -1
  131. package/internal/utils/base64.js +0 -1
  132. package/internal/utils/base64.js.map +1 -1
  133. package/internal/utils/base64.mjs +0 -1
  134. package/internal/utils/base64.mjs.map +1 -1
  135. package/internal/utils/bytes.d.mts +1 -1
  136. package/internal/utils/bytes.d.mts.map +1 -1
  137. package/internal/utils/bytes.d.ts +1 -1
  138. package/internal/utils/bytes.d.ts.map +1 -1
  139. package/internal/utils/env.d.mts.map +1 -1
  140. package/internal/utils/env.d.ts.map +1 -1
  141. package/internal/utils/env.js +0 -1
  142. package/internal/utils/env.js.map +1 -1
  143. package/internal/utils/env.mjs +0 -1
  144. package/internal/utils/env.mjs.map +1 -1
  145. package/internal/utils/log.d.mts.map +1 -1
  146. package/internal/utils/log.d.ts.map +1 -1
  147. package/internal/utils/log.js +0 -1
  148. package/internal/utils/log.js.map +1 -1
  149. package/internal/utils/log.mjs +0 -1
  150. package/internal/utils/log.mjs.map +1 -1
  151. package/internal/utils/query.d.mts.map +1 -1
  152. package/internal/utils/query.d.ts.map +1 -1
  153. package/internal/utils/query.js +0 -1
  154. package/internal/utils/query.js.map +1 -1
  155. package/internal/utils/query.mjs +0 -1
  156. package/internal/utils/query.mjs.map +1 -1
  157. package/internal/utils/uuid.d.mts.map +1 -1
  158. package/internal/utils/uuid.d.ts.map +1 -1
  159. package/internal/utils/uuid.js +0 -1
  160. package/internal/utils/uuid.js.map +1 -1
  161. package/internal/utils/uuid.mjs +0 -1
  162. package/internal/utils/uuid.mjs.map +1 -1
  163. package/internal/utils/values.d.mts.map +1 -1
  164. package/internal/utils/values.d.ts.map +1 -1
  165. package/internal/utils/values.js +0 -1
  166. package/internal/utils/values.js.map +1 -1
  167. package/internal/utils/values.mjs +0 -1
  168. package/internal/utils/values.mjs.map +1 -1
  169. package/internal/utils.d.mts.map +1 -1
  170. package/internal/utils.d.ts.map +1 -1
  171. package/internal/utils.js +0 -1
  172. package/internal/utils.js.map +1 -1
  173. package/internal/utils.mjs +0 -1
  174. package/internal/utils.mjs.map +1 -1
  175. package/lib/BetaMessageStream.js +593 -590
  176. package/lib/BetaMessageStream.js.map +1 -1
  177. package/lib/BetaMessageStream.mjs +593 -590
  178. package/lib/BetaMessageStream.mjs.map +1 -1
  179. package/lib/MessageStream.js +544 -541
  180. package/lib/MessageStream.js.map +1 -1
  181. package/lib/MessageStream.mjs +544 -541
  182. package/lib/MessageStream.mjs.map +1 -1
  183. package/lib/environments/poller.js +180 -174
  184. package/lib/environments/poller.js.map +1 -1
  185. package/lib/environments/poller.mjs +180 -153
  186. package/lib/environments/poller.mjs.map +1 -1
  187. package/lib/environments/worker.d.mts +14 -8
  188. package/lib/environments/worker.d.mts.map +1 -1
  189. package/lib/environments/worker.d.ts +14 -8
  190. package/lib/environments/worker.d.ts.map +1 -1
  191. package/lib/environments/worker.js +375 -359
  192. package/lib/environments/worker.js.map +1 -1
  193. package/lib/environments/worker.mjs +374 -319
  194. package/lib/environments/worker.mjs.map +1 -1
  195. package/lib/tools/BetaToolRunner.js +316 -313
  196. package/lib/tools/BetaToolRunner.js.map +1 -1
  197. package/lib/tools/BetaToolRunner.mjs +315 -306
  198. package/lib/tools/BetaToolRunner.mjs.map +1 -1
  199. package/lib/tools/SessionToolRunner.js +241 -235
  200. package/lib/tools/SessionToolRunner.js.map +1 -1
  201. package/lib/tools/SessionToolRunner.mjs +241 -192
  202. package/lib/tools/SessionToolRunner.mjs.map +1 -1
  203. package/lib/tools/ToolError.js +39 -36
  204. package/lib/tools/ToolError.js.map +1 -1
  205. package/lib/tools/ToolError.mjs +39 -13
  206. package/lib/tools/ToolError.mjs.map +1 -1
  207. package/package.json +3 -3
  208. package/resources/beta/agents/agents.d.mts +32 -23
  209. package/resources/beta/agents/agents.d.mts.map +1 -1
  210. package/resources/beta/agents/agents.d.ts +32 -23
  211. package/resources/beta/agents/agents.d.ts.map +1 -1
  212. package/resources/beta/agents/agents.js +135 -133
  213. package/resources/beta/agents/agents.js.map +1 -1
  214. package/resources/beta/agents/agents.mjs +135 -133
  215. package/resources/beta/agents/agents.mjs.map +1 -1
  216. package/resources/beta/agents/index.d.mts +1 -1
  217. package/resources/beta/agents/index.d.mts.map +1 -1
  218. package/resources/beta/agents/index.d.ts +1 -1
  219. package/resources/beta/agents/index.d.ts.map +1 -1
  220. package/resources/beta/agents/index.js +0 -1
  221. package/resources/beta/agents/index.js.map +1 -1
  222. package/resources/beta/agents/index.mjs +0 -1
  223. package/resources/beta/agents/index.mjs.map +1 -1
  224. package/resources/beta/agents/versions.d.mts.map +1 -1
  225. package/resources/beta/agents/versions.d.ts.map +1 -1
  226. package/resources/beta/agents/versions.js +0 -1
  227. package/resources/beta/agents/versions.js.map +1 -1
  228. package/resources/beta/agents/versions.mjs +0 -1
  229. package/resources/beta/agents/versions.mjs.map +1 -1
  230. package/resources/beta/agents.d.mts.map +1 -1
  231. package/resources/beta/agents.d.ts.map +1 -1
  232. package/resources/beta/agents.js +0 -1
  233. package/resources/beta/agents.js.map +1 -1
  234. package/resources/beta/agents.mjs +0 -1
  235. package/resources/beta/agents.mjs.map +1 -1
  236. package/resources/beta/beta.d.mts +9 -9
  237. package/resources/beta/beta.d.mts.map +1 -1
  238. package/resources/beta/beta.d.ts +9 -9
  239. package/resources/beta/beta.d.ts.map +1 -1
  240. package/resources/beta/beta.js +39 -37
  241. package/resources/beta/beta.js.map +1 -1
  242. package/resources/beta/beta.mjs +39 -37
  243. package/resources/beta/beta.mjs.map +1 -1
  244. package/resources/beta/deployment-runs.d.mts.map +1 -1
  245. package/resources/beta/deployment-runs.d.ts.map +1 -1
  246. package/resources/beta/deployment-runs.js +0 -1
  247. package/resources/beta/deployment-runs.js.map +1 -1
  248. package/resources/beta/deployment-runs.mjs +0 -1
  249. package/resources/beta/deployment-runs.mjs.map +1 -1
  250. package/resources/beta/deployments.d.mts.map +1 -1
  251. package/resources/beta/deployments.d.ts.map +1 -1
  252. package/resources/beta/deployments.js +0 -1
  253. package/resources/beta/deployments.js.map +1 -1
  254. package/resources/beta/deployments.mjs +0 -1
  255. package/resources/beta/deployments.mjs.map +1 -1
  256. package/resources/beta/dreams.d.mts +2 -28
  257. package/resources/beta/dreams.d.mts.map +1 -1
  258. package/resources/beta/dreams.d.ts +2 -28
  259. package/resources/beta/dreams.d.ts.map +1 -1
  260. package/resources/beta/dreams.js +0 -1
  261. package/resources/beta/dreams.js.map +1 -1
  262. package/resources/beta/dreams.mjs +0 -1
  263. package/resources/beta/dreams.mjs.map +1 -1
  264. package/resources/beta/environments/environments.d.mts +2 -2
  265. package/resources/beta/environments/environments.d.mts.map +1 -1
  266. package/resources/beta/environments/environments.d.ts +2 -2
  267. package/resources/beta/environments/environments.d.ts.map +1 -1
  268. package/resources/beta/environments/environments.js +157 -155
  269. package/resources/beta/environments/environments.js.map +1 -1
  270. package/resources/beta/environments/environments.mjs +157 -155
  271. package/resources/beta/environments/environments.mjs.map +1 -1
  272. package/resources/beta/environments/index.d.mts.map +1 -1
  273. package/resources/beta/environments/index.d.ts.map +1 -1
  274. package/resources/beta/environments/index.js +0 -1
  275. package/resources/beta/environments/index.js.map +1 -1
  276. package/resources/beta/environments/index.mjs +0 -1
  277. package/resources/beta/environments/index.mjs.map +1 -1
  278. package/resources/beta/environments/work.d.mts.map +1 -1
  279. package/resources/beta/environments/work.d.ts.map +1 -1
  280. package/resources/beta/environments/work.js +255 -253
  281. package/resources/beta/environments/work.js.map +1 -1
  282. package/resources/beta/environments/work.mjs +255 -253
  283. package/resources/beta/environments/work.mjs.map +1 -1
  284. package/resources/beta/environments.d.mts.map +1 -1
  285. package/resources/beta/environments.d.ts.map +1 -1
  286. package/resources/beta/environments.js +0 -1
  287. package/resources/beta/environments.js.map +1 -1
  288. package/resources/beta/environments.mjs +0 -1
  289. package/resources/beta/environments.mjs.map +1 -1
  290. package/resources/beta/files.d.mts.map +1 -1
  291. package/resources/beta/files.d.ts.map +1 -1
  292. package/resources/beta/files.js +0 -1
  293. package/resources/beta/files.js.map +1 -1
  294. package/resources/beta/files.mjs +0 -1
  295. package/resources/beta/files.mjs.map +1 -1
  296. package/resources/beta/index.d.mts +4 -4
  297. package/resources/beta/index.d.mts.map +1 -1
  298. package/resources/beta/index.d.ts +4 -4
  299. package/resources/beta/index.d.ts.map +1 -1
  300. package/resources/beta/index.js +0 -1
  301. package/resources/beta/index.js.map +1 -1
  302. package/resources/beta/index.mjs +0 -1
  303. package/resources/beta/index.mjs.map +1 -1
  304. package/resources/beta/memory-stores/index.d.mts.map +1 -1
  305. package/resources/beta/memory-stores/index.d.ts.map +1 -1
  306. package/resources/beta/memory-stores/index.js +0 -1
  307. package/resources/beta/memory-stores/index.js.map +1 -1
  308. package/resources/beta/memory-stores/index.mjs +0 -1
  309. package/resources/beta/memory-stores/index.mjs.map +1 -1
  310. package/resources/beta/memory-stores/memories.d.mts.map +1 -1
  311. package/resources/beta/memory-stores/memories.d.ts.map +1 -1
  312. package/resources/beta/memory-stores/memories.js +0 -1
  313. package/resources/beta/memory-stores/memories.js.map +1 -1
  314. package/resources/beta/memory-stores/memories.mjs +0 -1
  315. package/resources/beta/memory-stores/memories.mjs.map +1 -1
  316. package/resources/beta/memory-stores/memory-stores.d.mts.map +1 -1
  317. package/resources/beta/memory-stores/memory-stores.d.ts.map +1 -1
  318. package/resources/beta/memory-stores/memory-stores.js +150 -148
  319. package/resources/beta/memory-stores/memory-stores.js.map +1 -1
  320. package/resources/beta/memory-stores/memory-stores.mjs +150 -148
  321. package/resources/beta/memory-stores/memory-stores.mjs.map +1 -1
  322. package/resources/beta/memory-stores/memory-versions.d.mts.map +1 -1
  323. package/resources/beta/memory-stores/memory-versions.d.ts.map +1 -1
  324. package/resources/beta/memory-stores/memory-versions.js +0 -1
  325. package/resources/beta/memory-stores/memory-versions.js.map +1 -1
  326. package/resources/beta/memory-stores/memory-versions.mjs +0 -1
  327. package/resources/beta/memory-stores/memory-versions.mjs.map +1 -1
  328. package/resources/beta/memory-stores.d.mts.map +1 -1
  329. package/resources/beta/memory-stores.d.ts.map +1 -1
  330. package/resources/beta/memory-stores.js +0 -1
  331. package/resources/beta/memory-stores.js.map +1 -1
  332. package/resources/beta/memory-stores.mjs +0 -1
  333. package/resources/beta/memory-stores.mjs.map +1 -1
  334. package/resources/beta/messages/batches.d.mts +12 -1
  335. package/resources/beta/messages/batches.d.mts.map +1 -1
  336. package/resources/beta/messages/batches.d.ts +12 -1
  337. package/resources/beta/messages/batches.d.ts.map +1 -1
  338. package/resources/beta/messages/batches.js +0 -1
  339. package/resources/beta/messages/batches.js.map +1 -1
  340. package/resources/beta/messages/batches.mjs +0 -1
  341. package/resources/beta/messages/batches.mjs.map +1 -1
  342. package/resources/beta/messages/index.d.mts +1 -1
  343. package/resources/beta/messages/index.d.mts.map +1 -1
  344. package/resources/beta/messages/index.d.ts +1 -1
  345. package/resources/beta/messages/index.d.ts.map +1 -1
  346. package/resources/beta/messages/index.js +0 -1
  347. package/resources/beta/messages/index.js.map +1 -1
  348. package/resources/beta/messages/index.mjs +0 -1
  349. package/resources/beta/messages/index.mjs.map +1 -1
  350. package/resources/beta/messages/messages.d.mts +239 -101
  351. package/resources/beta/messages/messages.d.mts.map +1 -1
  352. package/resources/beta/messages/messages.d.ts +239 -101
  353. package/resources/beta/messages/messages.d.ts.map +1 -1
  354. package/resources/beta/messages/messages.js +113 -111
  355. package/resources/beta/messages/messages.js.map +1 -1
  356. package/resources/beta/messages/messages.mjs +113 -111
  357. package/resources/beta/messages/messages.mjs.map +1 -1
  358. package/resources/beta/messages.d.mts.map +1 -1
  359. package/resources/beta/messages.d.ts.map +1 -1
  360. package/resources/beta/messages.js +0 -1
  361. package/resources/beta/messages.js.map +1 -1
  362. package/resources/beta/messages.mjs +0 -1
  363. package/resources/beta/messages.mjs.map +1 -1
  364. package/resources/beta/models.d.mts +22 -1
  365. package/resources/beta/models.d.mts.map +1 -1
  366. package/resources/beta/models.d.ts +22 -1
  367. package/resources/beta/models.d.ts.map +1 -1
  368. package/resources/beta/models.js +0 -1
  369. package/resources/beta/models.js.map +1 -1
  370. package/resources/beta/models.mjs +0 -1
  371. package/resources/beta/models.mjs.map +1 -1
  372. package/resources/beta/organization/api-keys.d.mts.map +1 -1
  373. package/resources/beta/organization/api-keys.d.ts.map +1 -1
  374. package/resources/beta/organization/api-keys.js +0 -1
  375. package/resources/beta/organization/api-keys.js.map +1 -1
  376. package/resources/beta/organization/api-keys.mjs +0 -1
  377. package/resources/beta/organization/api-keys.mjs.map +1 -1
  378. package/resources/beta/organization/compliance-settings.d.mts.map +1 -1
  379. package/resources/beta/organization/compliance-settings.d.ts.map +1 -1
  380. package/resources/beta/organization/compliance-settings.js +0 -1
  381. package/resources/beta/organization/compliance-settings.js.map +1 -1
  382. package/resources/beta/organization/compliance-settings.mjs +0 -1
  383. package/resources/beta/organization/compliance-settings.mjs.map +1 -1
  384. package/resources/beta/organization/external-keys.d.mts.map +1 -1
  385. package/resources/beta/organization/external-keys.d.ts.map +1 -1
  386. package/resources/beta/organization/external-keys.js +0 -1
  387. package/resources/beta/organization/external-keys.js.map +1 -1
  388. package/resources/beta/organization/external-keys.mjs +0 -1
  389. package/resources/beta/organization/external-keys.mjs.map +1 -1
  390. package/resources/beta/organization/federation/federation.d.mts.map +1 -1
  391. package/resources/beta/organization/federation/federation.d.ts.map +1 -1
  392. package/resources/beta/organization/federation/federation.js +11 -9
  393. package/resources/beta/organization/federation/federation.js.map +1 -1
  394. package/resources/beta/organization/federation/federation.mjs +11 -9
  395. package/resources/beta/organization/federation/federation.mjs.map +1 -1
  396. package/resources/beta/organization/federation/index.d.mts.map +1 -1
  397. package/resources/beta/organization/federation/index.d.ts.map +1 -1
  398. package/resources/beta/organization/federation/index.js +0 -1
  399. package/resources/beta/organization/federation/index.js.map +1 -1
  400. package/resources/beta/organization/federation/index.mjs +0 -1
  401. package/resources/beta/organization/federation/index.mjs.map +1 -1
  402. package/resources/beta/organization/federation/issuers.d.mts.map +1 -1
  403. package/resources/beta/organization/federation/issuers.d.ts.map +1 -1
  404. package/resources/beta/organization/federation/issuers.js +0 -1
  405. package/resources/beta/organization/federation/issuers.js.map +1 -1
  406. package/resources/beta/organization/federation/issuers.mjs +0 -1
  407. package/resources/beta/organization/federation/issuers.mjs.map +1 -1
  408. package/resources/beta/organization/federation/rules/index.d.mts.map +1 -1
  409. package/resources/beta/organization/federation/rules/index.d.ts.map +1 -1
  410. package/resources/beta/organization/federation/rules/index.js +0 -1
  411. package/resources/beta/organization/federation/rules/index.js.map +1 -1
  412. package/resources/beta/organization/federation/rules/index.mjs +0 -1
  413. package/resources/beta/organization/federation/rules/index.mjs.map +1 -1
  414. package/resources/beta/organization/federation/rules/rules.d.mts.map +1 -1
  415. package/resources/beta/organization/federation/rules/rules.d.ts.map +1 -1
  416. package/resources/beta/organization/federation/rules/rules.js +187 -185
  417. package/resources/beta/organization/federation/rules/rules.js.map +1 -1
  418. package/resources/beta/organization/federation/rules/rules.mjs +187 -185
  419. package/resources/beta/organization/federation/rules/rules.mjs.map +1 -1
  420. package/resources/beta/organization/federation/rules/workspaces.d.mts.map +1 -1
  421. package/resources/beta/organization/federation/rules/workspaces.d.ts.map +1 -1
  422. package/resources/beta/organization/federation/rules/workspaces.js +0 -1
  423. package/resources/beta/organization/federation/rules/workspaces.js.map +1 -1
  424. package/resources/beta/organization/federation/rules/workspaces.mjs +0 -1
  425. package/resources/beta/organization/federation/rules/workspaces.mjs.map +1 -1
  426. package/resources/beta/organization/federation/rules.d.mts.map +1 -1
  427. package/resources/beta/organization/federation/rules.d.ts.map +1 -1
  428. package/resources/beta/organization/federation/rules.js +0 -1
  429. package/resources/beta/organization/federation/rules.js.map +1 -1
  430. package/resources/beta/organization/federation/rules.mjs +0 -1
  431. package/resources/beta/organization/federation/rules.mjs.map +1 -1
  432. package/resources/beta/organization/federation.d.mts.map +1 -1
  433. package/resources/beta/organization/federation.d.ts.map +1 -1
  434. package/resources/beta/organization/federation.js +0 -1
  435. package/resources/beta/organization/federation.js.map +1 -1
  436. package/resources/beta/organization/federation.mjs +0 -1
  437. package/resources/beta/organization/federation.mjs.map +1 -1
  438. package/resources/beta/organization/index.d.mts.map +1 -1
  439. package/resources/beta/organization/index.d.ts.map +1 -1
  440. package/resources/beta/organization/index.js +0 -1
  441. package/resources/beta/organization/index.js.map +1 -1
  442. package/resources/beta/organization/index.mjs +0 -1
  443. package/resources/beta/organization/index.mjs.map +1 -1
  444. package/resources/beta/organization/invites.d.mts.map +1 -1
  445. package/resources/beta/organization/invites.d.ts.map +1 -1
  446. package/resources/beta/organization/invites.js +0 -1
  447. package/resources/beta/organization/invites.js.map +1 -1
  448. package/resources/beta/organization/invites.mjs +0 -1
  449. package/resources/beta/organization/invites.mjs.map +1 -1
  450. package/resources/beta/organization/organization.d.mts.map +1 -1
  451. package/resources/beta/organization/organization.d.ts.map +1 -1
  452. package/resources/beta/organization/organization.js +38 -36
  453. package/resources/beta/organization/organization.js.map +1 -1
  454. package/resources/beta/organization/organization.mjs +38 -36
  455. package/resources/beta/organization/organization.mjs.map +1 -1
  456. package/resources/beta/organization/rate-limits.d.mts.map +1 -1
  457. package/resources/beta/organization/rate-limits.d.ts.map +1 -1
  458. package/resources/beta/organization/rate-limits.js +0 -1
  459. package/resources/beta/organization/rate-limits.js.map +1 -1
  460. package/resources/beta/organization/rate-limits.mjs +0 -1
  461. package/resources/beta/organization/rate-limits.mjs.map +1 -1
  462. package/resources/beta/organization/service-accounts/index.d.mts.map +1 -1
  463. package/resources/beta/organization/service-accounts/index.d.ts.map +1 -1
  464. package/resources/beta/organization/service-accounts/index.js +0 -1
  465. package/resources/beta/organization/service-accounts/index.js.map +1 -1
  466. package/resources/beta/organization/service-accounts/index.mjs +0 -1
  467. package/resources/beta/organization/service-accounts/index.mjs.map +1 -1
  468. package/resources/beta/organization/service-accounts/service-accounts.d.mts.map +1 -1
  469. package/resources/beta/organization/service-accounts/service-accounts.d.ts.map +1 -1
  470. package/resources/beta/organization/service-accounts/service-accounts.js +163 -161
  471. package/resources/beta/organization/service-accounts/service-accounts.js.map +1 -1
  472. package/resources/beta/organization/service-accounts/service-accounts.mjs +163 -161
  473. package/resources/beta/organization/service-accounts/service-accounts.mjs.map +1 -1
  474. package/resources/beta/organization/service-accounts/workspaces.d.mts.map +1 -1
  475. package/resources/beta/organization/service-accounts/workspaces.d.ts.map +1 -1
  476. package/resources/beta/organization/service-accounts/workspaces.js +0 -1
  477. package/resources/beta/organization/service-accounts/workspaces.js.map +1 -1
  478. package/resources/beta/organization/service-accounts/workspaces.mjs +0 -1
  479. package/resources/beta/organization/service-accounts/workspaces.mjs.map +1 -1
  480. package/resources/beta/organization/service-accounts.d.mts.map +1 -1
  481. package/resources/beta/organization/service-accounts.d.ts.map +1 -1
  482. package/resources/beta/organization/service-accounts.js +0 -1
  483. package/resources/beta/organization/service-accounts.js.map +1 -1
  484. package/resources/beta/organization/service-accounts.mjs +0 -1
  485. package/resources/beta/organization/service-accounts.mjs.map +1 -1
  486. package/resources/beta/organization/users.d.mts.map +1 -1
  487. package/resources/beta/organization/users.d.ts.map +1 -1
  488. package/resources/beta/organization/users.js +0 -1
  489. package/resources/beta/organization/users.js.map +1 -1
  490. package/resources/beta/organization/users.mjs +0 -1
  491. package/resources/beta/organization/users.mjs.map +1 -1
  492. package/resources/beta/organization/workspaces/index.d.mts.map +1 -1
  493. package/resources/beta/organization/workspaces/index.d.ts.map +1 -1
  494. package/resources/beta/organization/workspaces/index.js +0 -1
  495. package/resources/beta/organization/workspaces/index.js.map +1 -1
  496. package/resources/beta/organization/workspaces/index.mjs +0 -1
  497. package/resources/beta/organization/workspaces/index.mjs.map +1 -1
  498. package/resources/beta/organization/workspaces/members.d.mts.map +1 -1
  499. package/resources/beta/organization/workspaces/members.d.ts.map +1 -1
  500. package/resources/beta/organization/workspaces/members.js +0 -1
  501. package/resources/beta/organization/workspaces/members.js.map +1 -1
  502. package/resources/beta/organization/workspaces/members.mjs +0 -1
  503. package/resources/beta/organization/workspaces/members.mjs.map +1 -1
  504. package/resources/beta/organization/workspaces/rate-limits.d.mts.map +1 -1
  505. package/resources/beta/organization/workspaces/rate-limits.d.ts.map +1 -1
  506. package/resources/beta/organization/workspaces/rate-limits.js +0 -1
  507. package/resources/beta/organization/workspaces/rate-limits.js.map +1 -1
  508. package/resources/beta/organization/workspaces/rate-limits.mjs +0 -1
  509. package/resources/beta/organization/workspaces/rate-limits.mjs.map +1 -1
  510. package/resources/beta/organization/workspaces/service-accounts.d.mts.map +1 -1
  511. package/resources/beta/organization/workspaces/service-accounts.d.ts.map +1 -1
  512. package/resources/beta/organization/workspaces/service-accounts.js +0 -1
  513. package/resources/beta/organization/workspaces/service-accounts.js.map +1 -1
  514. package/resources/beta/organization/workspaces/service-accounts.mjs +0 -1
  515. package/resources/beta/organization/workspaces/service-accounts.mjs.map +1 -1
  516. package/resources/beta/organization/workspaces/workspaces.d.mts +3 -3
  517. package/resources/beta/organization/workspaces/workspaces.d.mts.map +1 -1
  518. package/resources/beta/organization/workspaces/workspaces.d.ts +3 -3
  519. package/resources/beta/organization/workspaces/workspaces.d.ts.map +1 -1
  520. package/resources/beta/organization/workspaces/workspaces.js +97 -95
  521. package/resources/beta/organization/workspaces/workspaces.js.map +1 -1
  522. package/resources/beta/organization/workspaces/workspaces.mjs +97 -95
  523. package/resources/beta/organization/workspaces/workspaces.mjs.map +1 -1
  524. package/resources/beta/organization/workspaces.d.mts.map +1 -1
  525. package/resources/beta/organization/workspaces.d.ts.map +1 -1
  526. package/resources/beta/organization/workspaces.js +0 -1
  527. package/resources/beta/organization/workspaces.js.map +1 -1
  528. package/resources/beta/organization/workspaces.mjs +0 -1
  529. package/resources/beta/organization/workspaces.mjs.map +1 -1
  530. package/resources/beta/organization.d.mts.map +1 -1
  531. package/resources/beta/organization.d.ts.map +1 -1
  532. package/resources/beta/organization.js +0 -1
  533. package/resources/beta/organization.js.map +1 -1
  534. package/resources/beta/organization.mjs +0 -1
  535. package/resources/beta/organization.mjs.map +1 -1
  536. package/resources/beta/sessions/events.d.mts +95 -22
  537. package/resources/beta/sessions/events.d.mts.map +1 -1
  538. package/resources/beta/sessions/events.d.ts +95 -22
  539. package/resources/beta/sessions/events.d.ts.map +1 -1
  540. package/resources/beta/sessions/events.js +118 -116
  541. package/resources/beta/sessions/events.js.map +1 -1
  542. package/resources/beta/sessions/events.mjs +118 -116
  543. package/resources/beta/sessions/events.mjs.map +1 -1
  544. package/resources/beta/sessions/index.d.mts +1 -1
  545. package/resources/beta/sessions/index.d.mts.map +1 -1
  546. package/resources/beta/sessions/index.d.ts +1 -1
  547. package/resources/beta/sessions/index.d.ts.map +1 -1
  548. package/resources/beta/sessions/index.js +0 -1
  549. package/resources/beta/sessions/index.js.map +1 -1
  550. package/resources/beta/sessions/index.mjs +0 -1
  551. package/resources/beta/sessions/index.mjs.map +1 -1
  552. package/resources/beta/sessions/resources.d.mts +0 -3
  553. package/resources/beta/sessions/resources.d.mts.map +1 -1
  554. package/resources/beta/sessions/resources.d.ts +0 -3
  555. package/resources/beta/sessions/resources.d.ts.map +1 -1
  556. package/resources/beta/sessions/resources.js +0 -1
  557. package/resources/beta/sessions/resources.js.map +1 -1
  558. package/resources/beta/sessions/resources.mjs +0 -1
  559. package/resources/beta/sessions/resources.mjs.map +1 -1
  560. package/resources/beta/sessions/sessions.d.mts +9 -8
  561. package/resources/beta/sessions/sessions.d.mts.map +1 -1
  562. package/resources/beta/sessions/sessions.d.ts +9 -8
  563. package/resources/beta/sessions/sessions.d.ts.map +1 -1
  564. package/resources/beta/sessions/sessions.js +161 -159
  565. package/resources/beta/sessions/sessions.js.map +1 -1
  566. package/resources/beta/sessions/sessions.mjs +161 -159
  567. package/resources/beta/sessions/sessions.mjs.map +1 -1
  568. package/resources/beta/sessions/threads/events.d.mts.map +1 -1
  569. package/resources/beta/sessions/threads/events.d.ts.map +1 -1
  570. package/resources/beta/sessions/threads/events.js +0 -1
  571. package/resources/beta/sessions/threads/events.js.map +1 -1
  572. package/resources/beta/sessions/threads/events.mjs +0 -1
  573. package/resources/beta/sessions/threads/events.mjs.map +1 -1
  574. package/resources/beta/sessions/threads/index.d.mts.map +1 -1
  575. package/resources/beta/sessions/threads/index.d.ts.map +1 -1
  576. package/resources/beta/sessions/threads/index.js +0 -1
  577. package/resources/beta/sessions/threads/index.js.map +1 -1
  578. package/resources/beta/sessions/threads/index.mjs +0 -1
  579. package/resources/beta/sessions/threads/index.mjs.map +1 -1
  580. package/resources/beta/sessions/threads/threads.d.mts.map +1 -1
  581. package/resources/beta/sessions/threads/threads.d.ts.map +1 -1
  582. package/resources/beta/sessions/threads/threads.js +86 -84
  583. package/resources/beta/sessions/threads/threads.js.map +1 -1
  584. package/resources/beta/sessions/threads/threads.mjs +86 -84
  585. package/resources/beta/sessions/threads/threads.mjs.map +1 -1
  586. package/resources/beta/sessions/threads.d.mts.map +1 -1
  587. package/resources/beta/sessions/threads.d.ts.map +1 -1
  588. package/resources/beta/sessions/threads.js +0 -1
  589. package/resources/beta/sessions/threads.js.map +1 -1
  590. package/resources/beta/sessions/threads.mjs +0 -1
  591. package/resources/beta/sessions/threads.mjs.map +1 -1
  592. package/resources/beta/sessions.d.mts.map +1 -1
  593. package/resources/beta/sessions.d.ts.map +1 -1
  594. package/resources/beta/sessions.js +0 -1
  595. package/resources/beta/sessions.js.map +1 -1
  596. package/resources/beta/sessions.mjs +0 -1
  597. package/resources/beta/sessions.mjs.map +1 -1
  598. package/resources/beta/skills/index.d.mts.map +1 -1
  599. package/resources/beta/skills/index.d.ts.map +1 -1
  600. package/resources/beta/skills/index.js +0 -1
  601. package/resources/beta/skills/index.js.map +1 -1
  602. package/resources/beta/skills/index.mjs +0 -1
  603. package/resources/beta/skills/index.mjs.map +1 -1
  604. package/resources/beta/skills/skills.d.mts.map +1 -1
  605. package/resources/beta/skills/skills.d.ts.map +1 -1
  606. package/resources/beta/skills/skills.js +104 -102
  607. package/resources/beta/skills/skills.js.map +1 -1
  608. package/resources/beta/skills/skills.mjs +104 -102
  609. package/resources/beta/skills/skills.mjs.map +1 -1
  610. package/resources/beta/skills/versions.d.mts.map +1 -1
  611. package/resources/beta/skills/versions.d.ts.map +1 -1
  612. package/resources/beta/skills/versions.js +0 -1
  613. package/resources/beta/skills/versions.js.map +1 -1
  614. package/resources/beta/skills/versions.mjs +0 -1
  615. package/resources/beta/skills/versions.mjs.map +1 -1
  616. package/resources/beta/skills.d.mts.map +1 -1
  617. package/resources/beta/skills.d.ts.map +1 -1
  618. package/resources/beta/skills.js +0 -1
  619. package/resources/beta/skills.js.map +1 -1
  620. package/resources/beta/skills.mjs +0 -1
  621. package/resources/beta/skills.mjs.map +1 -1
  622. package/resources/beta/tunnels/certificates.d.mts.map +1 -1
  623. package/resources/beta/tunnels/certificates.d.ts.map +1 -1
  624. package/resources/beta/tunnels/certificates.js +0 -1
  625. package/resources/beta/tunnels/certificates.js.map +1 -1
  626. package/resources/beta/tunnels/certificates.mjs +0 -1
  627. package/resources/beta/tunnels/certificates.mjs.map +1 -1
  628. package/resources/beta/tunnels/index.d.mts.map +1 -1
  629. package/resources/beta/tunnels/index.d.ts.map +1 -1
  630. package/resources/beta/tunnels/index.js +0 -1
  631. package/resources/beta/tunnels/index.js.map +1 -1
  632. package/resources/beta/tunnels/index.mjs +0 -1
  633. package/resources/beta/tunnels/index.mjs.map +1 -1
  634. package/resources/beta/tunnels/tunnels.d.mts.map +1 -1
  635. package/resources/beta/tunnels/tunnels.d.ts.map +1 -1
  636. package/resources/beta/tunnels/tunnels.js +188 -186
  637. package/resources/beta/tunnels/tunnels.js.map +1 -1
  638. package/resources/beta/tunnels/tunnels.mjs +188 -186
  639. package/resources/beta/tunnels/tunnels.mjs.map +1 -1
  640. package/resources/beta/tunnels.d.mts.map +1 -1
  641. package/resources/beta/tunnels.d.ts.map +1 -1
  642. package/resources/beta/tunnels.js +0 -1
  643. package/resources/beta/tunnels.js.map +1 -1
  644. package/resources/beta/tunnels.mjs +0 -1
  645. package/resources/beta/tunnels.mjs.map +1 -1
  646. package/resources/beta/user-profiles.d.mts +160 -4
  647. package/resources/beta/user-profiles.d.mts.map +1 -1
  648. package/resources/beta/user-profiles.d.ts +160 -4
  649. package/resources/beta/user-profiles.d.ts.map +1 -1
  650. package/resources/beta/user-profiles.js +25 -11
  651. package/resources/beta/user-profiles.js.map +1 -1
  652. package/resources/beta/user-profiles.mjs +25 -11
  653. package/resources/beta/user-profiles.mjs.map +1 -1
  654. package/resources/beta/vaults/credentials.d.mts +0 -14
  655. package/resources/beta/vaults/credentials.d.mts.map +1 -1
  656. package/resources/beta/vaults/credentials.d.ts +0 -14
  657. package/resources/beta/vaults/credentials.d.ts.map +1 -1
  658. package/resources/beta/vaults/credentials.js +0 -1
  659. package/resources/beta/vaults/credentials.js.map +1 -1
  660. package/resources/beta/vaults/credentials.mjs +0 -1
  661. package/resources/beta/vaults/credentials.mjs.map +1 -1
  662. package/resources/beta/vaults/index.d.mts.map +1 -1
  663. package/resources/beta/vaults/index.d.ts.map +1 -1
  664. package/resources/beta/vaults/index.js +0 -1
  665. package/resources/beta/vaults/index.js.map +1 -1
  666. package/resources/beta/vaults/index.mjs +0 -1
  667. package/resources/beta/vaults/index.mjs.map +1 -1
  668. package/resources/beta/vaults/vaults.d.mts.map +1 -1
  669. package/resources/beta/vaults/vaults.d.ts.map +1 -1
  670. package/resources/beta/vaults/vaults.js +156 -154
  671. package/resources/beta/vaults/vaults.js.map +1 -1
  672. package/resources/beta/vaults/vaults.mjs +156 -154
  673. package/resources/beta/vaults/vaults.mjs.map +1 -1
  674. package/resources/beta/vaults.d.mts.map +1 -1
  675. package/resources/beta/vaults.d.ts.map +1 -1
  676. package/resources/beta/vaults.js +0 -1
  677. package/resources/beta/vaults.js.map +1 -1
  678. package/resources/beta/vaults.mjs +0 -1
  679. package/resources/beta/vaults.mjs.map +1 -1
  680. package/resources/beta/webhooks.d.mts.map +1 -1
  681. package/resources/beta/webhooks.d.ts.map +1 -1
  682. package/resources/beta/webhooks.js +0 -1
  683. package/resources/beta/webhooks.js.map +1 -1
  684. package/resources/beta/webhooks.mjs +0 -1
  685. package/resources/beta/webhooks.mjs.map +1 -1
  686. package/resources/beta.d.mts.map +1 -1
  687. package/resources/beta.d.ts.map +1 -1
  688. package/resources/beta.js +0 -1
  689. package/resources/beta.js.map +1 -1
  690. package/resources/beta.mjs +0 -1
  691. package/resources/beta.mjs.map +1 -1
  692. package/resources/completions.d.mts +1 -1
  693. package/resources/completions.d.mts.map +1 -1
  694. package/resources/completions.d.ts +1 -1
  695. package/resources/completions.d.ts.map +1 -1
  696. package/resources/completions.js +0 -1
  697. package/resources/completions.js.map +1 -1
  698. package/resources/completions.mjs +0 -1
  699. package/resources/completions.mjs.map +1 -1
  700. package/resources/files.d.mts.map +1 -1
  701. package/resources/files.d.ts.map +1 -1
  702. package/resources/files.js +0 -1
  703. package/resources/files.js.map +1 -1
  704. package/resources/files.mjs +0 -1
  705. package/resources/files.mjs.map +1 -1
  706. package/resources/index.d.mts +1 -1
  707. package/resources/index.d.mts.map +1 -1
  708. package/resources/index.d.ts +1 -1
  709. package/resources/index.d.ts.map +1 -1
  710. package/resources/index.js +0 -1
  711. package/resources/index.js.map +1 -1
  712. package/resources/index.mjs +0 -1
  713. package/resources/index.mjs.map +1 -1
  714. package/resources/messages/batches.d.mts.map +1 -1
  715. package/resources/messages/batches.d.ts.map +1 -1
  716. package/resources/messages/batches.js +0 -1
  717. package/resources/messages/batches.js.map +1 -1
  718. package/resources/messages/batches.mjs +0 -1
  719. package/resources/messages/batches.mjs.map +1 -1
  720. package/resources/messages/index.d.mts +1 -1
  721. package/resources/messages/index.d.mts.map +1 -1
  722. package/resources/messages/index.d.ts +1 -1
  723. package/resources/messages/index.d.ts.map +1 -1
  724. package/resources/messages/index.js +0 -1
  725. package/resources/messages/index.js.map +1 -1
  726. package/resources/messages/index.mjs +0 -1
  727. package/resources/messages/index.mjs.map +1 -1
  728. package/resources/messages/messages.d.mts +101 -64
  729. package/resources/messages/messages.d.mts.map +1 -1
  730. package/resources/messages/messages.d.ts +101 -64
  731. package/resources/messages/messages.d.ts.map +1 -1
  732. package/resources/messages/messages.js +115 -113
  733. package/resources/messages/messages.js.map +1 -1
  734. package/resources/messages/messages.mjs +115 -113
  735. package/resources/messages/messages.mjs.map +1 -1
  736. package/resources/messages.d.mts.map +1 -1
  737. package/resources/messages.d.ts.map +1 -1
  738. package/resources/messages.js +0 -1
  739. package/resources/messages.js.map +1 -1
  740. package/resources/messages.mjs +0 -1
  741. package/resources/messages.mjs.map +1 -1
  742. package/resources/models.d.mts.map +1 -1
  743. package/resources/models.d.ts.map +1 -1
  744. package/resources/models.js +0 -1
  745. package/resources/models.js.map +1 -1
  746. package/resources/models.mjs +0 -1
  747. package/resources/models.mjs.map +1 -1
  748. package/resources/shared.d.mts.map +1 -1
  749. package/resources/shared.d.ts.map +1 -1
  750. package/resources/shared.js +0 -1
  751. package/resources/shared.js.map +1 -1
  752. package/resources/shared.mjs +0 -1
  753. package/resources/shared.mjs.map +1 -1
  754. package/resources/skills/index.d.mts.map +1 -1
  755. package/resources/skills/index.d.ts.map +1 -1
  756. package/resources/skills/index.js +0 -1
  757. package/resources/skills/index.js.map +1 -1
  758. package/resources/skills/index.mjs +0 -1
  759. package/resources/skills/index.mjs.map +1 -1
  760. package/resources/skills/skills.d.mts.map +1 -1
  761. package/resources/skills/skills.d.ts.map +1 -1
  762. package/resources/skills/skills.js +88 -86
  763. package/resources/skills/skills.js.map +1 -1
  764. package/resources/skills/skills.mjs +88 -86
  765. package/resources/skills/skills.mjs.map +1 -1
  766. package/resources/skills/versions.d.mts.map +1 -1
  767. package/resources/skills/versions.d.ts.map +1 -1
  768. package/resources/skills/versions.js +0 -1
  769. package/resources/skills/versions.js.map +1 -1
  770. package/resources/skills/versions.mjs +0 -1
  771. package/resources/skills/versions.mjs.map +1 -1
  772. package/resources/skills.d.mts.map +1 -1
  773. package/resources/skills.d.ts.map +1 -1
  774. package/resources/skills.js +0 -1
  775. package/resources/skills.js.map +1 -1
  776. package/resources/skills.mjs +0 -1
  777. package/resources/skills.mjs.map +1 -1
  778. package/resources/top-level.js +0 -1
  779. package/resources/top-level.js.map +1 -1
  780. package/resources/top-level.mjs +0 -1
  781. package/resources/top-level.mjs.map +1 -1
  782. package/src/client.ts +19 -21
  783. package/src/core/api-promise.ts +0 -2
  784. package/src/core/error.ts +0 -2
  785. package/src/core/pagination.ts +0 -2
  786. package/src/core/resource.ts +0 -2
  787. package/src/index.ts +0 -2
  788. package/src/internal/builtin-types.ts +0 -2
  789. package/src/internal/detect-platform.ts +0 -2
  790. package/src/internal/errors.ts +0 -2
  791. package/src/internal/headers.ts +0 -2
  792. package/src/internal/node.browser.ts +7 -7
  793. package/src/internal/parse.ts +0 -2
  794. package/src/internal/request-options.ts +1 -3
  795. package/src/internal/shim-types.ts +0 -2
  796. package/src/internal/shims.ts +0 -2
  797. package/src/internal/types.ts +0 -2
  798. package/src/internal/utils/base64.ts +0 -2
  799. package/src/internal/utils/bytes.ts +1 -1
  800. package/src/internal/utils/env.ts +0 -2
  801. package/src/internal/utils/log.ts +0 -2
  802. package/src/internal/utils/query.ts +0 -2
  803. package/src/internal/utils/uuid.ts +0 -2
  804. package/src/internal/utils/values.ts +0 -2
  805. package/src/internal/utils.ts +0 -2
  806. package/src/lib/.keep +0 -2
  807. package/src/lib/environments/worker.ts +29 -15
  808. package/src/resources/beta/agents/agents.ts +110 -24
  809. package/src/resources/beta/agents/index.ts +1 -2
  810. package/src/resources/beta/agents/versions.ts +0 -2
  811. package/src/resources/beta/agents.ts +0 -2
  812. package/src/resources/beta/beta.ts +31 -3
  813. package/src/resources/beta/deployment-runs.ts +0 -2
  814. package/src/resources/beta/deployments.ts +0 -2
  815. package/src/resources/beta/dreams.ts +2 -30
  816. package/src/resources/beta/environments/environments.ts +2 -4
  817. package/src/resources/beta/environments/index.ts +0 -2
  818. package/src/resources/beta/environments/work.ts +0 -2
  819. package/src/resources/beta/environments.ts +0 -2
  820. package/src/resources/beta/files.ts +0 -2
  821. package/src/resources/beta/index.ts +14 -2
  822. package/src/resources/beta/memory-stores/index.ts +0 -2
  823. package/src/resources/beta/memory-stores/memories.ts +0 -2
  824. package/src/resources/beta/memory-stores/memory-stores.ts +0 -2
  825. package/src/resources/beta/memory-stores/memory-versions.ts +0 -2
  826. package/src/resources/beta/memory-stores.ts +0 -2
  827. package/src/resources/beta/messages/batches.ts +13 -3
  828. package/src/resources/beta/messages/index.ts +10 -2
  829. package/src/resources/beta/messages/messages.ts +290 -102
  830. package/src/resources/beta/messages.ts +0 -2
  831. package/src/resources/beta/models.ts +25 -2
  832. package/src/resources/beta/organization/api-keys.ts +0 -2
  833. package/src/resources/beta/organization/compliance-settings.ts +0 -2
  834. package/src/resources/beta/organization/external-keys.ts +0 -2
  835. package/src/resources/beta/organization/federation/federation.ts +0 -2
  836. package/src/resources/beta/organization/federation/index.ts +0 -2
  837. package/src/resources/beta/organization/federation/issuers.ts +0 -2
  838. package/src/resources/beta/organization/federation/rules/index.ts +0 -2
  839. package/src/resources/beta/organization/federation/rules/rules.ts +0 -2
  840. package/src/resources/beta/organization/federation/rules/workspaces.ts +0 -2
  841. package/src/resources/beta/organization/federation/rules.ts +0 -2
  842. package/src/resources/beta/organization/federation.ts +0 -2
  843. package/src/resources/beta/organization/index.ts +0 -2
  844. package/src/resources/beta/organization/invites.ts +0 -2
  845. package/src/resources/beta/organization/organization.ts +0 -2
  846. package/src/resources/beta/organization/rate-limits.ts +0 -2
  847. package/src/resources/beta/organization/service-accounts/index.ts +0 -2
  848. package/src/resources/beta/organization/service-accounts/service-accounts.ts +0 -2
  849. package/src/resources/beta/organization/service-accounts/workspaces.ts +0 -2
  850. package/src/resources/beta/organization/service-accounts.ts +0 -2
  851. package/src/resources/beta/organization/users.ts +0 -2
  852. package/src/resources/beta/organization/workspaces/index.ts +0 -2
  853. package/src/resources/beta/organization/workspaces/members.ts +0 -2
  854. package/src/resources/beta/organization/workspaces/rate-limits.ts +0 -2
  855. package/src/resources/beta/organization/workspaces/service-accounts.ts +0 -2
  856. package/src/resources/beta/organization/workspaces/workspaces.ts +3 -5
  857. package/src/resources/beta/organization/workspaces.ts +0 -2
  858. package/src/resources/beta/organization.ts +0 -2
  859. package/src/resources/beta/sessions/events.ts +121 -23
  860. package/src/resources/beta/sessions/index.ts +8 -2
  861. package/src/resources/beta/sessions/resources.ts +0 -5
  862. package/src/resources/beta/sessions/sessions.ts +24 -9
  863. package/src/resources/beta/sessions/threads/events.ts +0 -2
  864. package/src/resources/beta/sessions/threads/index.ts +0 -2
  865. package/src/resources/beta/sessions/threads/threads.ts +0 -2
  866. package/src/resources/beta/sessions/threads.ts +0 -2
  867. package/src/resources/beta/sessions.ts +0 -2
  868. package/src/resources/beta/skills/index.ts +0 -2
  869. package/src/resources/beta/skills/skills.ts +0 -2
  870. package/src/resources/beta/skills/versions.ts +0 -2
  871. package/src/resources/beta/skills.ts +0 -2
  872. package/src/resources/beta/tunnels/certificates.ts +0 -2
  873. package/src/resources/beta/tunnels/index.ts +0 -2
  874. package/src/resources/beta/tunnels/tunnels.ts +0 -2
  875. package/src/resources/beta/tunnels.ts +0 -2
  876. package/src/resources/beta/user-profiles.ts +208 -15
  877. package/src/resources/beta/vaults/credentials.ts +0 -16
  878. package/src/resources/beta/vaults/index.ts +0 -2
  879. package/src/resources/beta/vaults/vaults.ts +0 -2
  880. package/src/resources/beta/vaults.ts +0 -2
  881. package/src/resources/beta/webhooks.ts +0 -2
  882. package/src/resources/beta.ts +0 -2
  883. package/src/resources/completions.ts +1 -3
  884. package/src/resources/files.ts +0 -2
  885. package/src/resources/index.ts +6 -2
  886. package/src/resources/messages/batches.ts +0 -2
  887. package/src/resources/messages/index.ts +6 -2
  888. package/src/resources/messages/messages.ts +130 -65
  889. package/src/resources/messages.ts +0 -2
  890. package/src/resources/models.ts +0 -2
  891. package/src/resources/shared.ts +0 -2
  892. package/src/resources/skills/index.ts +0 -2
  893. package/src/resources/skills/skills.ts +0 -2
  894. package/src/resources/skills/versions.ts +0 -2
  895. package/src/resources/skills.ts +0 -2
  896. package/src/tsconfig.json +13 -3
  897. package/src/version.ts +1 -1
  898. package/tools/agent-toolset/fs-util.js +0 -6
  899. package/tools/agent-toolset/fs-util.js.map +1 -1
  900. package/tools/agent-toolset/fs-util.mjs +0 -6
  901. package/tools/agent-toolset/fs-util.mjs.map +1 -1
  902. package/tools/agent-toolset/memories.js +4 -4
  903. package/tools/agent-toolset/memories.js.map +1 -1
  904. package/tools/agent-toolset/memories.mjs +2 -2
  905. package/tools/agent-toolset/memories.mjs.map +1 -1
  906. package/tools/agent-toolset/node.browser.js +12 -12
  907. package/tools/agent-toolset/node.browser.js.map +1 -1
  908. package/tools/agent-toolset/node.js +142 -139
  909. package/tools/agent-toolset/node.js.map +1 -1
  910. package/tools/agent-toolset/node.mjs +132 -125
  911. package/tools/agent-toolset/node.mjs.map +1 -1
  912. package/tools/agent-toolset/skills.js +5 -5
  913. package/tools/agent-toolset/skills.js.map +1 -1
  914. package/tools/agent-toolset/sync-interval.js +3 -3
  915. package/tools/agent-toolset/sync-interval.js.map +1 -1
  916. package/tools/memory/node.browser.js +2 -2
  917. package/tools/memory/node.browser.js.map +1 -1
  918. package/version.d.mts +1 -1
  919. package/version.d.ts +1 -1
  920. package/version.js +1 -1
  921. package/version.mjs +1 -1
@@ -92,322 +92,374 @@ export function sessionsTokenFromSecret(secret) {
92
92
  * await client.beta.environments.work.worker({ workdir: '/workspace' }).handleItem();
93
93
  * ```
94
94
  */
95
- export class EnvironmentWorker {
96
- constructor(opts) {
97
- _EnvironmentWorker_instances.add(this);
98
- _EnvironmentWorker_signal.set(this, void 0);
99
- if (opts.unrestrictedPaths !== undefined) {
100
- throw new AnthropicError('The `unrestrictedPaths` option you passed to EnvironmentWorker (or ' +
101
- 'client.beta.environments.work.worker()) is no longer supported. ' +
102
- "The worker's file tools (read, write, edit, glob, grep) are now always confined to `workdir` " +
103
- "plus the session's memory folders. Remove `unrestrictedPaths` from your options; to let the " +
104
- 'file tools reach any other directory, add it to `AgentToolContext.allowedRoots` from a ' +
105
- '`tools` factory.');
106
- }
107
- this.client = opts.client;
108
- this.environmentId = opts.environmentId;
109
- this.environmentKey = opts.environmentKey;
110
- this.tools = opts.tools;
111
- this.workdir = opts.workdir ?? process.cwd();
112
- this.maxFileBytes = opts.maxFileBytes;
113
- this.maxIdleMs = opts.maxIdleMs;
114
- if (opts.memorySyncIntervalMs != null) {
115
- checkMemorySyncInterval(opts.memorySyncIntervalMs, 'memorySyncIntervalMs');
116
- }
117
- this.memorySyncIntervalMs = opts.memorySyncIntervalMs;
118
- this.memorySyncDeletions = opts.memorySyncDeletions ?? 'enabled';
119
- this.workerId = opts.workerId;
120
- this.requestOptions = opts.requestOptions;
121
- __classPrivateFieldSet(this, _EnvironmentWorker_signal, opts.signal, "f");
122
- }
95
+ export var EnvironmentWorker = /* @__PURE__ */ (() => {
123
96
  /**
124
- * Poll the environment and service each claimed session until the supplied
125
- * signal (or the one passed to the constructor) aborts. Throws if
126
- * `environmentId` / `environmentKey` were not provided to the constructor.
97
+ * The self-hosted environment runner, composed from the control-plane
98
+ * {@link WorkPoller} and the per-session {@link SessionToolRunner}.
99
+ *
100
+ * For each claimed `session` work item it: builds the per-session
101
+ * {@link AgentToolContext}, downloads the session agent's skills
102
+ * (`setupSkills`), then runs a {@link SessionToolRunner} for the session
103
+ * while heartbeating the work-item lease on the same event loop; on exit it
104
+ * force-stops the work item (unless the lease was lost, in which case the item
105
+ * is left to whoever holds it now), cleans up the downloaded skills, and loops
106
+ * to the next one. The lease heartbeat reports `state === "stopping"` / a lost
107
+ * lease back into the run by aborting the session runner.
108
+ *
109
+ * The `environmentKey` is the worker's standing credential. When a claimed
110
+ * work item carries a per-item `secret` (a short-lived payload the poll
111
+ * response may populate), the sessions token extracted from it is preferred
112
+ * over the environment key for that item's heartbeat / force-stop /
113
+ * skill-download / session calls; polling itself always uses the environment
114
+ * key, and items without a usable secret fall back to it entirely.
115
+ *
116
+ * Use {@link EnvironmentWorker.handleItem} if you already hold a claimed work
117
+ * item (e.g. a `worker poll --on-work` script handed one to a fresh process) and
118
+ * just want the per-item flow without the poll loop — with no arguments it reads
119
+ * the `ANTHROPIC_*` env vars that command sets.
120
+ *
121
+ * Construct it via `client.beta.environments.work.worker({ ... })` (or
122
+ * `new EnvironmentWorker({ client, ... })` directly).
123
+ *
124
+ * @example
125
+ * ```ts
126
+ * // Long-running daemon: poll for work, serve each session, loop.
127
+ * await client.beta.environments.work
128
+ * .worker({ environmentId, environmentKey, workdir: '/workspace' })
129
+ * .run(AbortSignal.timeout(60 * 60_000));
130
+ *
131
+ * // Already-claimed item (e.g. inside `ant worker poll --on-work ...`):
132
+ * await client.beta.environments.work.worker({ workdir: '/workspace' }).handleItem();
133
+ * ```
127
134
  */
128
- async run(signal) {
129
- const { environmentId, environmentKey } = this;
130
- if (environmentId === undefined || environmentKey === undefined) {
131
- throw new AnthropicError('EnvironmentWorker.run: environmentId and environmentKey are required to poll for work');
135
+ class EnvironmentWorker {
136
+ constructor(opts) {
137
+ _EnvironmentWorker_instances.add(this);
138
+ _EnvironmentWorker_signal.set(this, void 0);
139
+ if (opts.unrestrictedPaths !== undefined) {
140
+ throw new AnthropicError('The `unrestrictedPaths` option you passed to EnvironmentWorker (or ' +
141
+ 'client.beta.environments.work.worker()) is no longer supported. ' +
142
+ "The worker's file tools (read, write, edit, glob, grep) are now always confined to `workdir` " +
143
+ "plus the session's memory folders. Remove `unrestrictedPaths` from your options; to let the " +
144
+ 'file tools reach any other directory, add it to `AgentToolContext.allowedRoots` from a ' +
145
+ '`tools` factory.');
146
+ }
147
+ this.client = opts.client;
148
+ this.environmentId = opts.environmentId;
149
+ this.environmentKey = opts.environmentKey;
150
+ this.tools = opts.tools;
151
+ this.workdir = opts.workdir ?? process.cwd();
152
+ this.maxFileBytes = opts.maxFileBytes;
153
+ this.maxIdleMs = opts.maxIdleMs;
154
+ if (opts.memorySyncIntervalMs != null) {
155
+ checkMemorySyncInterval(opts.memorySyncIntervalMs, 'memorySyncIntervalMs');
156
+ }
157
+ this.memorySyncIntervalMs = opts.memorySyncIntervalMs;
158
+ this.memorySyncDeletions = opts.memorySyncDeletions ?? 'enabled';
159
+ this.workerId = opts.workerId;
160
+ this.requestOptions = opts.requestOptions;
161
+ __classPrivateFieldSet(this, _EnvironmentWorker_signal, opts.signal, "f");
132
162
  }
133
- const externalSignal = signal ?? __classPrivateFieldGet(this, _EnvironmentWorker_signal, "f");
134
- const poller = new WorkPoller({
135
- client: this.client,
136
- environmentId,
137
- environmentKey,
138
- ...(this.workerId !== undefined ? { workerId: this.workerId } : {}),
139
- ...(externalSignal ? { signal: externalSignal } : {}),
140
- ...(this.requestOptions !== undefined ? { requestOptions: this.requestOptions } : {}),
141
- // The per-item handler stops or releases every work item on exit; let it
142
- // be the single owner of `work.stop` rather than double-posting from the
143
- // poller.
144
- autoStop: false,
145
- });
146
- for await (const work of poller) {
147
- try {
148
- await __classPrivateFieldGet(this, _EnvironmentWorker_instances, "m", _EnvironmentWorker_handleItem).call(this, work, environmentKey, poller.signal);
163
+ /**
164
+ * Poll the environment and service each claimed session until the supplied
165
+ * signal (or the one passed to the constructor) aborts. Throws if
166
+ * `environmentId` / `environmentKey` were not provided to the constructor.
167
+ */
168
+ async run(signal) {
169
+ const { environmentId, environmentKey } = this;
170
+ if (environmentId === undefined || environmentKey === undefined) {
171
+ throw new AnthropicError('EnvironmentWorker.run: environmentId and environmentKey are required to poll for work');
149
172
  }
150
- catch (e) {
151
- // One bad item fails that item, not the worker: the handler's teardown
152
- // already stopped or released it, so the next poll claims the next
153
- // item. A store directory left behind by a killed worker would
154
- // otherwise crashloop this process forever.
155
- if (poller.signal?.aborted)
156
- throw e;
157
- loggerFor(this.client).error('work item failed', { work_id: work.id, error: String(e) });
173
+ const externalSignal = signal ?? __classPrivateFieldGet(this, _EnvironmentWorker_signal, "f");
174
+ const poller = new WorkPoller({
175
+ client: this.client,
176
+ environmentId,
177
+ environmentKey,
178
+ ...(this.workerId !== undefined ? { workerId: this.workerId } : {}),
179
+ ...(externalSignal ? { signal: externalSignal } : {}),
180
+ ...(this.requestOptions !== undefined ? { requestOptions: this.requestOptions } : {}),
181
+ // The per-item handler stops or releases every work item on exit; let it
182
+ // be the single owner of `work.stop` rather than double-posting from the
183
+ // poller.
184
+ autoStop: false,
185
+ });
186
+ for await (const work of poller) {
187
+ try {
188
+ await __classPrivateFieldGet(this, _EnvironmentWorker_instances, "m", _EnvironmentWorker_handleItem).call(this, work, environmentKey, poller.signal);
189
+ }
190
+ catch (e) {
191
+ // One bad item fails that item, not the worker: the handler's teardown
192
+ // already stopped or released it, so the next poll claims the next
193
+ // item. A store directory left behind by a killed worker would
194
+ // otherwise crashloop this process forever.
195
+ if (poller.signal?.aborted)
196
+ throw e;
197
+ loggerFor(this.client).error('work item failed', { work_id: work.id, error: String(e) });
198
+ }
199
+ }
200
+ }
201
+ /**
202
+ * Service a single, already-claimed work item without the poll loop: build the
203
+ * per-session {@link AgentToolContext} (workdir from this worker's options),
204
+ * download the session agent's skills (`setupSkills`), run a
205
+ * {@link SessionToolRunner} for the session while heartbeating the work-item
206
+ * lease, and force-stop the work item on exit (whether the runner finishes
207
+ * normally, throws, or the control plane signals shutdown). The one
208
+ * exception is a lost lease: the item then belongs to the queue or another
209
+ * worker and is left alone.
210
+ *
211
+ * Use this when something else does the claiming — e.g. a `worker poll
212
+ * --on-work` script that hands an already-claimed item to a fresh process. The
213
+ * work id / environment id / session id each fall back to `ANTHROPIC_WORK_ID` /
214
+ * `ANTHROPIC_ENVIRONMENT_ID` / `ANTHROPIC_SESSION_ID` (the env vars that
215
+ * command sets) when not passed; the environment key resolves from this
216
+ * option, then the worker's own `environmentKey`, then
217
+ * `ANTHROPIC_ENVIRONMENT_KEY`, and is needed only when the work item's
218
+ * `secret` yields no sessions token — a host that receives only the
219
+ * per-item secret runs without ever holding the key. With no arguments
220
+ * inside that command it just works. Throws a clear error naming the first
221
+ * required value still missing after resolution, and — rather than ever
222
+ * running unauthenticated — when neither a sessions token nor an
223
+ * environment key resolved. Throws `SessionMemoryError` when the
224
+ * session has memory stores attached but they cannot be mounted — the work
225
+ * item carried no sessions token (unless `memorySyncIntervalMs` turned
226
+ * memory off), or a store failed to download.
227
+ *
228
+ * `workSecret` is the work item's per-item `secret` payload from the poll
229
+ * response, falling back to `ANTHROPIC_WORK_SECRET`; unlike the others it is
230
+ * optional — when present, the sessions token extracted from it is preferred
231
+ * as the Bearer credential for this item's heartbeat / force-stop / session
232
+ * calls; when absent (or undecodable) those calls use the environment key.
233
+ */
234
+ async handleItem(opts) {
235
+ const workId = opts?.workId ?? readEnv('ANTHROPIC_WORK_ID');
236
+ const environmentId = opts?.environmentId ?? readEnv('ANTHROPIC_ENVIRONMENT_ID');
237
+ const sessionId = opts?.sessionId ?? readEnv('ANTHROPIC_SESSION_ID');
238
+ // Trailing `|| undefined` / `||` between fallbacks so an empty value reads
239
+ // as absent (matching how `readEnv` treats empty values).
240
+ const environmentKey = (opts?.environmentKey ?? this.environmentKey ?? readEnv('ANTHROPIC_ENVIRONMENT_KEY')) || undefined;
241
+ const workSecret = opts?.workSecret || readEnv('ANTHROPIC_WORK_SECRET') || null;
242
+ if (!workId) {
243
+ throw new AnthropicError('handleItem: workId is required — pass it or set ANTHROPIC_WORK_ID');
244
+ }
245
+ if (!environmentId) {
246
+ throw new AnthropicError('handleItem: environmentId is required — pass it or set ANTHROPIC_ENVIRONMENT_ID');
247
+ }
248
+ if (!sessionId) {
249
+ throw new AnthropicError('handleItem: sessionId is required — pass it or set ANTHROPIC_SESSION_ID');
158
250
  }
251
+ if (!environmentKey && !workSecret) {
252
+ throw new AnthropicError('handleItem: environmentKey is required when there is no work secret — pass it, construct the worker with it, or set ANTHROPIC_ENVIRONMENT_KEY');
253
+ }
254
+ const work = {
255
+ id: workId,
256
+ environment_id: environmentId,
257
+ secret: workSecret,
258
+ data: { type: 'session', id: sessionId },
259
+ };
260
+ await __classPrivateFieldGet(this, _EnvironmentWorker_instances, "m", _EnvironmentWorker_handleItem).call(this, work, environmentKey, opts?.signal ?? __classPrivateFieldGet(this, _EnvironmentWorker_signal, "f"));
159
261
  }
160
262
  }
263
+ _EnvironmentWorker_signal = new WeakMap(), _EnvironmentWorker_instances = new WeakSet(), _EnvironmentWorker_handleItem =
161
264
  /**
162
- * Service a single, already-claimed work item without the poll loop: build the
163
- * per-session {@link AgentToolContext} (workdir from this worker's options),
164
- * download the session agent's skills (`setupSkills`), run a
165
- * {@link SessionToolRunner} for the session while heartbeating the work-item
166
- * lease, and force-stop the work item on exit (whether the runner finishes
167
- * normally, throws, or the control plane signals shutdown). The one
168
- * exception is a lost lease: the item then belongs to the queue or another
169
- * worker and is left alone.
170
- *
171
- * Use this when something else does the claiming — e.g. a `worker poll
172
- * --on-work` script that hands an already-claimed item to a fresh process. The
173
- * work id / environment id / session id each fall back to `ANTHROPIC_WORK_ID` /
174
- * `ANTHROPIC_ENVIRONMENT_ID` / `ANTHROPIC_SESSION_ID` (the env vars that
175
- * command sets) when not passed; the environment key resolves from this
176
- * option, then the worker's own `environmentKey`, then
177
- * `ANTHROPIC_ENVIRONMENT_KEY`. With no arguments inside that command it just
178
- * works. Throws a clear error naming the first of the four required values
179
- * still missing after resolution. Throws `SessionMemoryError` when the
180
- * session has memory stores attached but they cannot be mounted — the work
181
- * item carried no sessions token (unless `memorySyncIntervalMs` turned
182
- * memory off), or a store failed to download.
265
+ * The per-item body shared by {@link EnvironmentWorker.run}'s poll loop and
266
+ * {@link EnvironmentWorker.handleItem}: run a {@link SessionToolRunner} for the
267
+ * work item's session while heartbeating its lease, force-stopping on exit
268
+ * unless the lease was lost. Non-session work items are ignored.
183
269
  *
184
- * `workSecret` is the work item's per-item `secret` payload from the poll
185
- * response, falling back to `ANTHROPIC_WORK_SECRET`; unlike the others it is
186
- * optional when present, the sessions token extracted from it is preferred
187
- * as the Bearer credential for this item's heartbeat / force-stop / session
188
- * calls; when absent (or undecodable) those calls use the environment key.
270
+ * When the poll response carried a per-item `secret` (a short-lived payload
271
+ * scoped to this work item), the sessions token extracted from it is
272
+ * preferred over `environmentKey` as the Bearer credential for those
273
+ * per-item calls; a missing/undecodable secret falls back to
274
+ * `environmentKey` unchanged.
189
275
  */
190
- async handleItem(opts) {
191
- const workId = opts?.workId ?? readEnv('ANTHROPIC_WORK_ID');
192
- const environmentId = opts?.environmentId ?? readEnv('ANTHROPIC_ENVIRONMENT_ID');
193
- const sessionId = opts?.sessionId ?? readEnv('ANTHROPIC_SESSION_ID');
194
- const environmentKey = opts?.environmentKey ?? this.environmentKey ?? readEnv('ANTHROPIC_ENVIRONMENT_KEY');
195
- // `||` rather than `??` so an empty option still falls through to the env
196
- // var and then to null (matching how `readEnv` treats empty values).
197
- const workSecret = opts?.workSecret || readEnv('ANTHROPIC_WORK_SECRET') || null;
198
- if (!workId) {
199
- throw new AnthropicError('handleItem: workId is required pass it or set ANTHROPIC_WORK_ID');
200
- }
201
- if (!environmentId) {
202
- throw new AnthropicError('handleItem: environmentId is required — pass it or set ANTHROPIC_ENVIRONMENT_ID');
203
- }
204
- if (!sessionId) {
205
- throw new AnthropicError('handleItem: sessionId is required — pass it or set ANTHROPIC_SESSION_ID');
206
- }
207
- if (!environmentKey) {
208
- throw new AnthropicError('handleItem: environmentKey is required — pass it, construct the worker with it, or set ANTHROPIC_ENVIRONMENT_KEY');
209
- }
210
- const work = {
211
- id: workId,
212
- environment_id: environmentId,
213
- secret: workSecret,
214
- data: { type: 'session', id: sessionId },
215
- };
216
- await __classPrivateFieldGet(this, _EnvironmentWorker_instances, "m", _EnvironmentWorker_handleItem).call(this, work, environmentKey, opts?.signal ?? __classPrivateFieldGet(this, _EnvironmentWorker_signal, "f"));
217
- }
218
- }
219
- _EnvironmentWorker_signal = new WeakMap(), _EnvironmentWorker_instances = new WeakSet(), _EnvironmentWorker_handleItem =
220
- /**
221
- * The per-item body shared by {@link EnvironmentWorker.run}'s poll loop and
222
- * {@link EnvironmentWorker.handleItem}: run a {@link SessionToolRunner} for the
223
- * work item's session while heartbeating its lease, force-stopping on exit
224
- * unless the lease was lost. Non-session work items are ignored.
225
- *
226
- * When the poll response carried a per-item `secret` (a short-lived payload
227
- * scoped to this work item), the sessions token extracted from it is
228
- * preferred over `environmentKey` as the Bearer credential for those
229
- * per-item calls; a missing/undecodable secret falls back to
230
- * `environmentKey` unchanged.
231
- */
232
- async function _EnvironmentWorker_handleItem(work, environmentKey, externalSignal) {
233
- const log = loggerFor(this.client);
234
- // The per-item credential: the sessions token carried inside the work
235
- // item's secret payload when the server issued one, otherwise the
236
- // environment key. Never log this value.
237
- const sessionsToken = sessionsTokenFromSecret(work.secret);
238
- if (work.secret && sessionsToken === null) {
239
- log.warn('work item carried a secret payload but no sessions token could be extracted; ' +
240
- 'falling back to the environment key', { work_id: work.id });
241
- }
242
- const itemCredential = sessionsToken ?? environmentKey;
243
- // Every per-session call — the SessionToolRunner event stream/list/send, the
244
- // lease heartbeat, the skill download, and the work force-stop —
245
- // authenticates with the per-item credential. Scope a client to it once and
246
- // thread that through. `copyClientForHelper` also clears the parent's
247
- // `apiKey`, so the sub-client emits *only* the bearer credential on the
248
- // wire (a plain `withOptions({authToken})` would leave `X-Api-Key` set as
249
- // well).
250
- const sessionClient = copyClientForHelper(this.client, {
251
- authToken: itemCredential,
252
- helper: 'environments-worker',
253
- });
254
- // The poller runs with `autoStop: false`, so the per-item handler is the
255
- // single owner of `work.stop` for every claimed item.
256
- const sessionId = work.data.id;
257
- // A per-session controller: aborts when the supplied signal aborts, when the
258
- // session runner finishes, or when the lease heartbeat says to stop.
259
- const ctrl = new AbortController();
260
- const detachExternal = linkAbort(externalSignal, ctrl);
261
- const lease = new Lease(ctrl);
262
- // Lazily load the Node-only toolset module — see the import note at the top.
263
- const agentToolset = await import("../../tools/agent-toolset/node.mjs");
264
- // Start the lease heartbeat BEFORE the session fetch and the skill /
265
- // memory downloads: those can take longer than the lease TTL, and an
266
- // unheartbeated lease lapsing mid-download would let another worker
267
- // reclaim the item and serve the same session (split-brain).
268
- //
269
- // Each heartbeat reports the lease TTL the server is enforcing; it becomes
270
- // the runner's tool-result send retry window so a send keeps retrying
271
- // exactly as long as the lease could still be live. The runner is only
272
- // built after the downloads, so hold the latest TTL until then.
273
- let leaseTtlMs;
274
- let runner;
275
- const heartbeatPromise = heartbeatLoop(sessionClient, work, lease, log, this.requestOptions, (ttlMs) => {
276
- leaseTtlMs = ttlMs;
277
- runner?._setSendRetryWindow(ttlMs);
278
- }).catch((e) => {
279
- if (!ctrl.signal.aborted)
280
- log.error('heartbeat loop failed', { work_id: work.id, error: String(e) });
281
- ctrl.abort();
282
- });
283
- let cleanupSkills = async () => { };
284
- let stores;
285
- let cleanEnd = false;
286
- try {
287
- if (work.data.type !== 'session') {
288
- log.debug('skipping non-session work item', { work_id: work.id, type: work.data.type });
289
- return;
290
- }
291
- // One session fetch, shared by the skills download and the memory-store
292
- // download — two fetches could disagree about the attached resources.
293
- // A failed fetch fails the work item (the teardown below still stops
294
- // or releases it).
295
- const session = await sessionClient.beta.sessions.retrieve(sessionId);
296
- // Only with the session in hand can we tell one that simply has no
297
- // memory from one whose memory we cannot mount. Turning memory off
298
- // with the interval knob is a deliberate opt-out and stays quiet.
299
- if (sessionsToken === null && this.memorySyncIntervalMs !== null && hasMemoryStore(session)) {
300
- throw new agentToolset.SessionMemoryError(`cannot mount the session's memories: the work item carried no sessions token ` +
301
- `(work_id=${work.id}, session_id=${sessionId}); ` +
302
- 'the memory endpoints reject the environment key, so the poller must issue a per-item ' +
303
- '`secret` carrying `sessions_token`, or set `memorySyncIntervalMs: null` to run without memory');
304
- }
305
- const ctx = {
306
- workdir: this.workdir,
307
- // The scoped sub-client, not the parent: the skill download
308
- // `setupSkills` performs for this session rides the same per-item
309
- // credential as every other per-item call.
310
- client: sessionClient,
311
- session,
312
- ...(this.maxFileBytes !== undefined ? { maxFileBytes: this.maxFileBytes } : {}),
313
- };
314
- try {
315
- cleanupSkills = await agentToolset.setupSkills(ctx);
316
- }
317
- catch (e) {
318
- log.warn('skill setup failed', { session_id: sessionId, work_id: work.id, error: String(e) });
319
- }
320
- // Memory stores: the memory_stores endpoints accept the per-item sessions
321
- // token but reject the environment key, so download and sync only run when
322
- // the item carried a usable secret (and the interval is set).
323
- // `sessionClient` is already scoped to that token then, so the memory
324
- // calls ride the same sub-client. A store that cannot be materialised
325
- // throws `SessionMemoryError` out of `download` and fails the item.
326
- if (sessionsToken !== null && this.memorySyncIntervalMs !== null) {
327
- stores = new agentToolset.SessionMemoryStores(sessionClient, {
328
- workdir: this.workdir,
329
- ...(this.memorySyncIntervalMs !== undefined ? { syncIntervalMs: this.memorySyncIntervalMs } : {}),
330
- syncDeletions: this.memorySyncDeletions,
331
- });
332
- await stores.download(session);
333
- // A store mounted outside the workdir must stay reachable by the file
334
- // tools; read-only stores still refuse writes.
335
- ctx.allowedRoots = stores.roots;
336
- ctx.readOnlyRoots = stores.readOnlyRoots;
276
+ async function _EnvironmentWorker_handleItem(work, environmentKey, externalSignal) {
277
+ const log = loggerFor(this.client);
278
+ // The per-item credential: the sessions token carried inside the work
279
+ // item's secret payload when the server issued one, otherwise the
280
+ // environment key. Never log this value.
281
+ const sessionsToken = sessionsTokenFromSecret(work.secret);
282
+ const itemCredential = sessionsToken ?? environmentKey;
283
+ if (itemCredential === undefined) {
284
+ throw new AnthropicError('handleItem: the work item carried a secret payload but no sessions token could be extracted, ' +
285
+ 'and there is no environment key to fall back to; the poller must issue a secret whose ' +
286
+ 'payload carries `sessions_token`, or provide the environment key (pass it, construct the ' +
287
+ 'worker with it, or set ANTHROPIC_ENVIRONMENT_KEY)');
337
288
  }
338
- else {
339
- log.debug('memory stores disabled for this item', { work_id: work.id });
289
+ if (work.secret && sessionsToken === null) {
290
+ log.warn('work item carried a secret payload but no sessions token could be extracted; ' +
291
+ 'falling back to the environment key', { work_id: work.id });
340
292
  }
341
- const tools = typeof this.tools === 'function' ?
342
- this.tools(ctx)
343
- : this.tools ?? agentToolset.betaAgentToolset20260401(ctx);
344
- runner = new SessionToolRunner(sessionId, {
345
- client: sessionClient,
346
- tools,
347
- ...(this.maxIdleMs !== undefined ? { maxIdleMs: this.maxIdleMs } : {}),
348
- ...(this.requestOptions !== undefined ? { requestOptions: this.requestOptions } : {}),
349
- signal: ctrl.signal,
293
+ // Every per-session call the SessionToolRunner event stream/list/send, the
294
+ // lease heartbeat, the skill download, and the work force-stop —
295
+ // authenticates with the per-item credential. Scope a client to it once and
296
+ // thread that through. `copyClientForHelper` also clears the parent's
297
+ // `apiKey`, so the sub-client emits *only* the bearer credential on the
298
+ // wire (a plain `withOptions({authToken})` would leave `X-Api-Key` set as
299
+ // well).
300
+ const sessionClient = copyClientForHelper(this.client, {
301
+ authToken: itemCredential,
302
+ helper: 'environments-worker',
350
303
  });
351
- if (leaseTtlMs !== undefined)
352
- runner._setSendRetryWindow(leaseTtlMs);
353
- for await (const _ of runner) {
354
- // Drive the runner to completion; per-call observability is not part
355
- // of this composition's surface use `SessionToolRunner` directly
356
- // (via `client.beta.sessions.events.toolRunner`) if you want it.
357
- if (stores)
358
- await stores.syncIfDue();
359
- }
360
- // Only a clean stream end earns the last full sync; it runs in the
361
- // teardown below.
362
- cleanEnd = !ctrl.signal.aborted;
363
- }
364
- finally {
365
- // The heartbeat keeps the lease alive until this teardown is done.
304
+ // The poller runs with `autoStop: false`, so the per-item handler is the
305
+ // single owner of `work.stop` for every claimed item.
306
+ const sessionId = work.data.id;
307
+ // A per-session controller: aborts when the supplied signal aborts, when the
308
+ // session runner finishes, or when the lease heartbeat says to stop.
309
+ const ctrl = new AbortController();
310
+ const detachExternal = linkAbort(externalSignal, ctrl);
311
+ const lease = new Lease(ctrl);
312
+ // Lazily load the Node-only toolset module — see the import note at the top.
313
+ const agentToolset = await import("../../tools/agent-toolset/node.mjs");
314
+ // Start the lease heartbeat BEFORE the session fetch and the skill /
315
+ // memory downloads: those can take longer than the lease TTL, and an
316
+ // unheartbeated lease lapsing mid-download would let another worker
317
+ // reclaim the item and serve the same session (split-brain).
318
+ //
319
+ // Each heartbeat reports the lease TTL the server is enforcing; it becomes
320
+ // the runner's tool-result send retry window so a send keeps retrying
321
+ // exactly as long as the lease could still be live. The runner is only
322
+ // built after the downloads, so hold the latest TTL until then.
323
+ let leaseTtlMs;
324
+ let runner;
325
+ const heartbeatPromise = heartbeatLoop(sessionClient, work, lease, log, this.requestOptions, (ttlMs) => {
326
+ leaseTtlMs = ttlMs;
327
+ runner?._setSendRetryWindow(ttlMs);
328
+ }).catch((e) => {
329
+ if (!ctrl.signal.aborted)
330
+ log.error('heartbeat loop failed', { work_id: work.id, error: String(e) });
331
+ ctrl.abort();
332
+ });
333
+ let cleanupSkills = async () => { };
334
+ let stores;
335
+ let cleanEnd = false;
366
336
  try {
367
- // cleanupSkills first, so its failure cannot skip the memory flush.
368
- await cleanupSkills().catch((e) => {
369
- log.warn('skill cleanup failed', { session_id: sessionId, work_id: work.id, error: String(e) });
337
+ if (work.data.type !== 'session') {
338
+ log.debug('skipping non-session work item', { work_id: work.id, type: work.data.type });
339
+ return;
340
+ }
341
+ // One session fetch, shared by the skills download and the memory-store
342
+ // download — two fetches could disagree about the attached resources.
343
+ // A failed fetch fails the work item (the teardown below still stops
344
+ // or releases it).
345
+ const session = await sessionClient.beta.sessions.retrieve(sessionId);
346
+ // Only with the session in hand can we tell one that simply has no
347
+ // memory from one whose memory we cannot mount. Turning memory off
348
+ // with the interval knob is a deliberate opt-out and stays quiet.
349
+ if (sessionsToken === null && this.memorySyncIntervalMs !== null && hasMemoryStore(session)) {
350
+ throw new agentToolset.SessionMemoryError(`cannot mount the session's memories: the work item carried no sessions token ` +
351
+ `(work_id=${work.id}, session_id=${sessionId}); ` +
352
+ 'the memory endpoints reject the environment key, so the poller must issue a per-item ' +
353
+ '`secret` carrying `sessions_token`, or set `memorySyncIntervalMs: null` to run without memory');
354
+ }
355
+ const ctx = {
356
+ workdir: this.workdir,
357
+ // The scoped sub-client, not the parent: the skill download
358
+ // `setupSkills` performs for this session rides the same per-item
359
+ // credential as every other per-item call.
360
+ client: sessionClient,
361
+ session,
362
+ ...(this.maxFileBytes !== undefined ? { maxFileBytes: this.maxFileBytes } : {}),
363
+ };
364
+ try {
365
+ cleanupSkills = await agentToolset.setupSkills(ctx);
366
+ }
367
+ catch (e) {
368
+ log.warn('skill setup failed', { session_id: sessionId, work_id: work.id, error: String(e) });
369
+ }
370
+ // Memory stores: the memory_stores endpoints accept the per-item sessions
371
+ // token but reject the environment key, so download and sync only run when
372
+ // the item carried a usable secret (and the interval is set).
373
+ // `sessionClient` is already scoped to that token then, so the memory
374
+ // calls ride the same sub-client. A store that cannot be materialised
375
+ // throws `SessionMemoryError` out of `download` and fails the item.
376
+ if (sessionsToken !== null && this.memorySyncIntervalMs !== null) {
377
+ stores = new agentToolset.SessionMemoryStores(sessionClient, {
378
+ workdir: this.workdir,
379
+ ...(this.memorySyncIntervalMs !== undefined ? { syncIntervalMs: this.memorySyncIntervalMs } : {}),
380
+ syncDeletions: this.memorySyncDeletions,
381
+ });
382
+ await stores.download(session);
383
+ // A store mounted outside the workdir must stay reachable by the file
384
+ // tools; read-only stores still refuse writes.
385
+ ctx.allowedRoots = stores.roots;
386
+ ctx.readOnlyRoots = stores.readOnlyRoots;
387
+ }
388
+ else {
389
+ log.debug('memory stores disabled for this item', { work_id: work.id });
390
+ }
391
+ const tools = typeof this.tools === 'function' ?
392
+ this.tools(ctx)
393
+ : this.tools ?? agentToolset.betaAgentToolset20260401(ctx);
394
+ runner = new SessionToolRunner(sessionId, {
395
+ client: sessionClient,
396
+ tools,
397
+ ...(this.maxIdleMs !== undefined ? { maxIdleMs: this.maxIdleMs } : {}),
398
+ ...(this.requestOptions !== undefined ? { requestOptions: this.requestOptions } : {}),
399
+ signal: ctrl.signal,
370
400
  });
401
+ if (leaseTtlMs !== undefined)
402
+ runner._setSendRetryWindow(leaseTtlMs);
403
+ for await (const _ of runner) {
404
+ // Drive the runner to completion; per-call observability is not part
405
+ // of this composition's surface — use `SessionToolRunner` directly
406
+ // (via `client.beta.sessions.events.toolRunner`) if you want it.
407
+ if (stores)
408
+ await stores.syncIfDue();
409
+ }
410
+ // Only a clean stream end earns the last full sync; it runs in the
411
+ // teardown below.
412
+ cleanEnd = !ctrl.signal.aborted;
371
413
  }
372
414
  finally {
373
- if (stores) {
374
- const boundMs = agentToolset.MEMORY_FLUSH_TIMEOUT_MS;
375
- if (cleanEnd) {
376
- const finishCutOff = await withTimeout(stores.finish(), boundMs);
377
- if (finishCutOff) {
378
- log.warn(`final memory sync cut off after ${boundMs}ms; the flush that follows still uploads changed files`, { session_id: sessionId, work_id: work.id });
415
+ // The heartbeat keeps the lease alive until this teardown is done.
416
+ try {
417
+ // cleanupSkills first, so its failure cannot skip the memory flush.
418
+ await cleanupSkills().catch((e) => {
419
+ log.warn('skill cleanup failed', { session_id: sessionId, work_id: work.id, error: String(e) });
420
+ });
421
+ }
422
+ finally {
423
+ if (stores) {
424
+ const boundMs = agentToolset.MEMORY_FLUSH_TIMEOUT_MS;
425
+ if (cleanEnd) {
426
+ const finishCutOff = await withTimeout(stores.finish(), boundMs);
427
+ if (finishCutOff) {
428
+ log.warn(`final memory sync cut off after ${boundMs}ms; the flush that follows still uploads changed files`, { session_id: sessionId, work_id: work.id });
429
+ }
379
430
  }
380
- }
381
- // Also after finish(): it swallows its own failures, and a
382
- // clean flush is a no-op.
383
- const flushBound = new AbortController();
384
- const flushCutOff = await withTimeout(stores.flushWrites(flushBound.signal), boundMs);
385
- if (flushCutOff) {
386
- flushBound.abort();
387
- log.warn(`memory flush cut off after ${boundMs}ms; changed files it had not uploaded yet are not saved`, { session_id: sessionId, work_id: work.id });
388
- }
389
- await stores.dispose().catch((e) => {
390
- log.warn('memory store cleanup failed', {
391
- session_id: sessionId,
392
- work_id: work.id,
393
- error: String(e),
431
+ // Also after finish(): it swallows its own failures, and a
432
+ // clean flush is a no-op.
433
+ const flushBound = new AbortController();
434
+ const flushCutOff = await withTimeout(stores.flushWrites(flushBound.signal), boundMs);
435
+ if (flushCutOff) {
436
+ flushBound.abort();
437
+ log.warn(`memory flush cut off after ${boundMs}ms; changed files it had not uploaded yet are not saved`, { session_id: sessionId, work_id: work.id });
438
+ }
439
+ await stores.dispose().catch((e) => {
440
+ log.warn('memory store cleanup failed', {
441
+ session_id: sessionId,
442
+ work_id: work.id,
443
+ error: String(e),
444
+ });
394
445
  });
395
- });
446
+ }
447
+ }
448
+ lease.finish('runner_done');
449
+ detachExternal();
450
+ await heartbeatPromise;
451
+ // Stop only an item this worker still holds — after a lost lease it
452
+ // belongs to the queue or another worker.
453
+ if (lease.lost) {
454
+ log.info('lease lost; released without stopping it', { session_id: sessionId, work_id: work.id });
455
+ }
456
+ else {
457
+ await forceStop(sessionClient, work, log, this.requestOptions);
396
458
  }
397
459
  }
398
- lease.finish('runner_done');
399
- detachExternal();
400
- await heartbeatPromise;
401
- // Stop only an item this worker still holds — after a lost lease it
402
- // belongs to the queue or another worker.
403
- if (lease.lost) {
404
- log.info('lease lost; released without stopping it', { session_id: sessionId, work_id: work.id });
405
- }
406
- else {
407
- await forceStop(sessionClient, work, log, this.requestOptions);
408
- }
409
- }
410
- };
460
+ };
461
+ return EnvironmentWorker;
462
+ })();
411
463
  /**
412
464
  * Resolve when `p` settles or `ms` elapses — `true` when `ms` elapsed
413
465
  * first. A timed-out `p` keeps running — JS cannot cancel a promise.
@@ -442,31 +494,34 @@ async function forceStop(client, work, log, requestOptions) {
442
494
  }
443
495
  }
444
496
  }
445
- /**
446
- * This worker's view of one work-item lease: the per-item abort signal plus
447
- * why heartbeating ended. The first recorded reason wins, so a run aborted
448
- * *because* the lease was lost still reads as lost afterwards; an abort with
449
- * no recorded reason (the external signal) is not lost.
450
- */
451
- class Lease {
452
- constructor(ctrl) {
453
- _Lease_ctrl.set(this, void 0);
454
- _Lease_endReason.set(this, void 0);
455
- __classPrivateFieldSet(this, _Lease_ctrl, ctrl, "f");
456
- }
457
- get signal() {
458
- return __classPrivateFieldGet(this, _Lease_ctrl, "f").signal;
459
- }
460
- finish(reason) {
461
- __classPrivateFieldSet(this, _Lease_endReason, __classPrivateFieldGet(this, _Lease_endReason, "f") ?? reason, "f");
462
- __classPrivateFieldGet(this, _Lease_ctrl, "f").abort();
463
- }
464
- /** True once the item belongs to the queue or another worker. */
465
- get lost() {
466
- return __classPrivateFieldGet(this, _Lease_endReason, "f") === 'lease_lost' || __classPrivateFieldGet(this, _Lease_endReason, "f") === 'assumed_lost';
497
+ var Lease = /* @__PURE__ */ (() => {
498
+ /**
499
+ * This worker's view of one work-item lease: the per-item abort signal plus
500
+ * why heartbeating ended. The first recorded reason wins, so a run aborted
501
+ * *because* the lease was lost still reads as lost afterwards; an abort with
502
+ * no recorded reason (the external signal) is not lost.
503
+ */
504
+ class Lease {
505
+ constructor(ctrl) {
506
+ _Lease_ctrl.set(this, void 0);
507
+ _Lease_endReason.set(this, void 0);
508
+ __classPrivateFieldSet(this, _Lease_ctrl, ctrl, "f");
509
+ }
510
+ get signal() {
511
+ return __classPrivateFieldGet(this, _Lease_ctrl, "f").signal;
512
+ }
513
+ finish(reason) {
514
+ __classPrivateFieldSet(this, _Lease_endReason, __classPrivateFieldGet(this, _Lease_endReason, "f") ?? reason, "f");
515
+ __classPrivateFieldGet(this, _Lease_ctrl, "f").abort();
516
+ }
517
+ /** True once the item belongs to the queue or another worker. */
518
+ get lost() {
519
+ return __classPrivateFieldGet(this, _Lease_endReason, "f") === 'lease_lost' || __classPrivateFieldGet(this, _Lease_endReason, "f") === 'assumed_lost';
520
+ }
467
521
  }
468
- }
469
- _Lease_ctrl = new WeakMap(), _Lease_endReason = new WeakMap();
522
+ _Lease_ctrl = new WeakMap(), _Lease_endReason = new WeakMap();
523
+ return Lease;
524
+ })();
470
525
  /** The server's view of the lease carried by a 412 heartbeat response, or empty if absent. */
471
526
  function serverLeaseState(e) {
472
527
  let node = e instanceof APIError ? e.error : undefined;