@code-yeongyu/senpi 2026.9.3 → 2026.9.4-3

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 (1151) hide show
  1. package/CHANGELOG.md +164 -0
  2. package/README.md +5 -4
  3. package/dist/cli/startup-ui.d.ts.map +1 -1
  4. package/dist/cli/startup-ui.js +2 -1
  5. package/dist/cli/startup-ui.js.map +1 -1
  6. package/dist/core/agent-session-runtime.js +2 -2
  7. package/dist/core/agent-session-runtime.js.map +1 -1
  8. package/dist/core/agent-session.d.ts +2 -5
  9. package/dist/core/agent-session.d.ts.map +1 -1
  10. package/dist/core/agent-session.js +56 -30
  11. package/dist/core/agent-session.js.map +1 -1
  12. package/dist/core/auth-storage.d.ts.map +1 -1
  13. package/dist/core/auth-storage.js +31 -41
  14. package/dist/core/auth-storage.js.map +1 -1
  15. package/dist/core/compaction/compaction.d.ts.map +1 -1
  16. package/dist/core/compaction/compaction.js +16 -7
  17. package/dist/core/compaction/compaction.js.map +1 -1
  18. package/dist/core/credential-pool/state-store.d.ts +1 -0
  19. package/dist/core/credential-pool/state-store.d.ts.map +1 -1
  20. package/dist/core/credential-pool/state-store.js +22 -2
  21. package/dist/core/credential-pool/state-store.js.map +1 -1
  22. package/dist/core/dynamic-prompt/style.js +1 -1
  23. package/dist/core/dynamic-prompt/style.js.map +1 -1
  24. package/dist/core/dynamic-prompt/working-task.js +1 -1
  25. package/dist/core/dynamic-prompt/working-task.js.map +1 -1
  26. package/dist/core/extensions/builtin/bash-timeout/index.d.ts +1 -1
  27. package/dist/core/extensions/builtin/bash-timeout/index.d.ts.map +1 -1
  28. package/dist/core/extensions/builtin/bash-timeout/index.js +3 -1
  29. package/dist/core/extensions/builtin/bash-timeout/index.js.map +1 -1
  30. package/dist/core/extensions/builtin/bash-timeout/timeout.d.ts +9 -7
  31. package/dist/core/extensions/builtin/bash-timeout/timeout.d.ts.map +1 -1
  32. package/dist/core/extensions/builtin/bash-timeout/timeout.js +4 -9
  33. package/dist/core/extensions/builtin/bash-timeout/timeout.js.map +1 -1
  34. package/dist/core/extensions/builtin/claude-sdk-oauth/auth-lane.d.ts.map +1 -1
  35. package/dist/core/extensions/builtin/claude-sdk-oauth/auth-lane.js +15 -18
  36. package/dist/core/extensions/builtin/claude-sdk-oauth/auth-lane.js.map +1 -1
  37. package/dist/core/extensions/builtin/claude-sdk-oauth/content-blocks.d.ts +3 -0
  38. package/dist/core/extensions/builtin/claude-sdk-oauth/content-blocks.d.ts.map +1 -0
  39. package/dist/core/extensions/builtin/claude-sdk-oauth/content-blocks.js +80 -0
  40. package/dist/core/extensions/builtin/claude-sdk-oauth/content-blocks.js.map +1 -0
  41. package/dist/core/extensions/builtin/claude-sdk-oauth/errors.d.ts +18 -1
  42. package/dist/core/extensions/builtin/claude-sdk-oauth/errors.d.ts.map +1 -1
  43. package/dist/core/extensions/builtin/claude-sdk-oauth/errors.js +57 -1
  44. package/dist/core/extensions/builtin/claude-sdk-oauth/errors.js.map +1 -1
  45. package/dist/core/extensions/builtin/claude-sdk-oauth/guidance.d.ts +1 -0
  46. package/dist/core/extensions/builtin/claude-sdk-oauth/guidance.d.ts.map +1 -1
  47. package/dist/core/extensions/builtin/claude-sdk-oauth/guidance.js +13 -0
  48. package/dist/core/extensions/builtin/claude-sdk-oauth/guidance.js.map +1 -1
  49. package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.d.ts.map +1 -1
  50. package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.js +6 -1
  51. package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.js.map +1 -1
  52. package/dist/core/extensions/builtin/claude-sdk-oauth/prompt-bridge.d.ts.map +1 -1
  53. package/dist/core/extensions/builtin/claude-sdk-oauth/prompt-bridge.js +2 -23
  54. package/dist/core/extensions/builtin/claude-sdk-oauth/prompt-bridge.js.map +1 -1
  55. package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.d.ts +2 -2
  56. package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.d.ts.map +1 -1
  57. package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.js +30 -24
  58. package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.js.map +1 -1
  59. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.d.ts +2 -0
  60. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.d.ts.map +1 -1
  61. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.js +15 -1
  62. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.js.map +1 -1
  63. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.d.ts +1 -1
  64. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.d.ts.map +1 -1
  65. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.js +1 -0
  66. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.js.map +1 -1
  67. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.d.ts +6 -1
  68. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.d.ts.map +1 -1
  69. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.js +1 -0
  70. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.js.map +1 -1
  71. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-pump.d.ts.map +1 -1
  72. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-pump.js +19 -3
  73. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-pump.js.map +1 -1
  74. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.d.ts.map +1 -1
  75. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.js +31 -13
  76. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.js.map +1 -1
  77. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry.d.ts +1 -0
  78. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry.d.ts.map +1 -1
  79. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry.js +1 -0
  80. package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry.js.map +1 -1
  81. package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.d.ts.map +1 -1
  82. package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.js +8 -14
  83. package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.js.map +1 -1
  84. package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.d.ts.map +1 -1
  85. package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.js +23 -6
  86. package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.js.map +1 -1
  87. package/dist/core/extensions/builtin/claude-sdk-oauth/stream-guidance.d.ts.map +1 -1
  88. package/dist/core/extensions/builtin/claude-sdk-oauth/stream-guidance.js +4 -2
  89. package/dist/core/extensions/builtin/claude-sdk-oauth/stream-guidance.js.map +1 -1
  90. package/dist/core/extensions/builtin/claude-sdk-oauth/stream-protocol.d.ts +1 -1
  91. package/dist/core/extensions/builtin/claude-sdk-oauth/stream-protocol.d.ts.map +1 -1
  92. package/dist/core/extensions/builtin/claude-sdk-oauth/stream.d.ts.map +1 -1
  93. package/dist/core/extensions/builtin/claude-sdk-oauth/stream.js +13 -6
  94. package/dist/core/extensions/builtin/claude-sdk-oauth/stream.js.map +1 -1
  95. package/dist/core/extensions/builtin/claude-sdk-oauth/tools.d.ts +11 -3
  96. package/dist/core/extensions/builtin/claude-sdk-oauth/tools.d.ts.map +1 -1
  97. package/dist/core/extensions/builtin/claude-sdk-oauth/tools.js +12 -3
  98. package/dist/core/extensions/builtin/claude-sdk-oauth/tools.js.map +1 -1
  99. package/dist/core/extensions/builtin/eval-only-routing.d.ts +10 -0
  100. package/dist/core/extensions/builtin/eval-only-routing.d.ts.map +1 -0
  101. package/dist/core/extensions/builtin/eval-only-routing.js +16 -0
  102. package/dist/core/extensions/builtin/eval-only-routing.js.map +1 -0
  103. package/dist/core/extensions/builtin/goal/prompt.d.ts.map +1 -1
  104. package/dist/core/extensions/builtin/goal/prompt.js +1 -3
  105. package/dist/core/extensions/builtin/goal/prompt.js.map +1 -1
  106. package/dist/core/extensions/builtin/goal/store.d.ts.map +1 -1
  107. package/dist/core/extensions/builtin/goal/store.js +8 -20
  108. package/dist/core/extensions/builtin/goal/store.js.map +1 -1
  109. package/dist/core/extensions/builtin/goal/tool-registration.js +1 -1
  110. package/dist/core/extensions/builtin/goal/tool-registration.js.map +1 -1
  111. package/dist/core/extensions/builtin/gpt-account.d.ts +3 -0
  112. package/dist/core/extensions/builtin/gpt-account.d.ts.map +1 -0
  113. package/dist/core/extensions/builtin/gpt-account.js +115 -0
  114. package/dist/core/extensions/builtin/gpt-account.js.map +1 -0
  115. package/dist/core/extensions/builtin/hooks/trust-storage.d.ts.map +1 -1
  116. package/dist/core/extensions/builtin/hooks/trust-storage.js +3 -1
  117. package/dist/core/extensions/builtin/hooks/trust-storage.js.map +1 -1
  118. package/dist/core/extensions/builtin/imagegen/auth.d.ts.map +1 -1
  119. package/dist/core/extensions/builtin/imagegen/auth.js +10 -2
  120. package/dist/core/extensions/builtin/imagegen/auth.js.map +1 -1
  121. package/dist/core/extensions/builtin/index.d.ts.map +1 -1
  122. package/dist/core/extensions/builtin/index.js +2 -0
  123. package/dist/core/extensions/builtin/index.js.map +1 -1
  124. package/dist/core/extensions/builtin/loop/index.d.ts.map +1 -1
  125. package/dist/core/extensions/builtin/loop/index.js +20 -1
  126. package/dist/core/extensions/builtin/loop/index.js.map +1 -1
  127. package/dist/core/extensions/builtin/loop/store.d.ts +8 -6
  128. package/dist/core/extensions/builtin/loop/store.d.ts.map +1 -1
  129. package/dist/core/extensions/builtin/loop/store.js +54 -88
  130. package/dist/core/extensions/builtin/loop/store.js.map +1 -1
  131. package/dist/core/extensions/builtin/loop/tools.d.ts +6 -1
  132. package/dist/core/extensions/builtin/loop/tools.d.ts.map +1 -1
  133. package/dist/core/extensions/builtin/loop/tools.js +8 -1
  134. package/dist/core/extensions/builtin/loop/tools.js.map +1 -1
  135. package/dist/core/extensions/builtin/monitor-state-event.d.ts +2 -0
  136. package/dist/core/extensions/builtin/monitor-state-event.d.ts.map +1 -1
  137. package/dist/core/extensions/builtin/monitor-state-event.js.map +1 -1
  138. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.d.ts.map +1 -1
  139. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.js +1 -3
  140. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.js.map +1 -1
  141. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.d.ts.map +1 -1
  142. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.js +1 -11
  143. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.js.map +1 -1
  144. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.js +2 -2
  145. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.js.map +1 -1
  146. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-8.js +3 -3
  147. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-8.js.map +1 -1
  148. package/dist/core/extensions/builtin/prompt-preset/claude-opus-5.d.ts.map +1 -1
  149. package/dist/core/extensions/builtin/prompt-preset/claude-opus-5.js +56 -43
  150. package/dist/core/extensions/builtin/prompt-preset/claude-opus-5.js.map +1 -1
  151. package/dist/core/extensions/builtin/prompt-preset/execution-tooling.d.ts +4 -15
  152. package/dist/core/extensions/builtin/prompt-preset/execution-tooling.d.ts.map +1 -1
  153. package/dist/core/extensions/builtin/prompt-preset/execution-tooling.js +12 -21
  154. package/dist/core/extensions/builtin/prompt-preset/execution-tooling.js.map +1 -1
  155. package/dist/core/extensions/builtin/prompt-preset/glm-5-2.d.ts +1 -1
  156. package/dist/core/extensions/builtin/prompt-preset/glm-5-2.d.ts.map +1 -1
  157. package/dist/core/extensions/builtin/prompt-preset/glm-5-2.js +2 -11
  158. package/dist/core/extensions/builtin/prompt-preset/glm-5-2.js.map +1 -1
  159. package/dist/core/extensions/builtin/prompt-preset/glm-5-3.d.ts +1 -1
  160. package/dist/core/extensions/builtin/prompt-preset/glm-5-3.d.ts.map +1 -1
  161. package/dist/core/extensions/builtin/prompt-preset/glm-5-3.js +2 -11
  162. package/dist/core/extensions/builtin/prompt-preset/glm-5-3.js.map +1 -1
  163. package/dist/core/extensions/builtin/prompt-preset/glm-5.d.ts +4 -0
  164. package/dist/core/extensions/builtin/prompt-preset/glm-5.d.ts.map +1 -0
  165. package/dist/core/extensions/builtin/prompt-preset/glm-5.js +16 -0
  166. package/dist/core/extensions/builtin/prompt-preset/glm-5.js.map +1 -0
  167. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.d.ts +1 -5
  168. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.d.ts.map +1 -1
  169. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js +1 -6
  170. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js.map +1 -1
  171. package/dist/core/extensions/builtin/prompt-preset/gpt-6-astra.d.ts +123 -0
  172. package/dist/core/extensions/builtin/prompt-preset/gpt-6-astra.d.ts.map +1 -0
  173. package/dist/core/extensions/builtin/prompt-preset/gpt-6-astra.js +202 -0
  174. package/dist/core/extensions/builtin/prompt-preset/gpt-6-astra.js.map +1 -0
  175. package/dist/core/extensions/builtin/prompt-preset/gpt-eval-routing.d.ts.map +1 -1
  176. package/dist/core/extensions/builtin/prompt-preset/gpt-eval-routing.js +1 -2
  177. package/dist/core/extensions/builtin/prompt-preset/gpt-eval-routing.js.map +1 -1
  178. package/dist/core/extensions/builtin/prompt-preset/kimi-k3.d.ts.map +1 -1
  179. package/dist/core/extensions/builtin/prompt-preset/kimi-k3.js +60 -76
  180. package/dist/core/extensions/builtin/prompt-preset/kimi-k3.js.map +1 -1
  181. package/dist/core/extensions/builtin/prompt-preset/presets.d.ts.map +1 -1
  182. package/dist/core/extensions/builtin/prompt-preset/presets.js +17 -0
  183. package/dist/core/extensions/builtin/prompt-preset/presets.js.map +1 -1
  184. package/dist/core/extensions/builtin/prompt-preset/settings.d.ts +1 -1
  185. package/dist/core/extensions/builtin/prompt-preset/settings.d.ts.map +1 -1
  186. package/dist/core/extensions/builtin/prompt-preset/settings.js +1 -0
  187. package/dist/core/extensions/builtin/prompt-preset/settings.js.map +1 -1
  188. package/dist/core/extensions/builtin/terminal/extension.d.ts.map +1 -1
  189. package/dist/core/extensions/builtin/terminal/extension.js +186 -5
  190. package/dist/core/extensions/builtin/terminal/extension.js.map +1 -1
  191. package/dist/core/extensions/builtin/terminal/manager.d.ts +10 -0
  192. package/dist/core/extensions/builtin/terminal/manager.d.ts.map +1 -1
  193. package/dist/core/extensions/builtin/terminal/manager.js +21 -0
  194. package/dist/core/extensions/builtin/terminal/manager.js.map +1 -1
  195. package/dist/core/extensions/builtin/terminal/manifest-lease.d.ts +24 -0
  196. package/dist/core/extensions/builtin/terminal/manifest-lease.d.ts.map +1 -0
  197. package/dist/core/extensions/builtin/terminal/manifest-lease.js +105 -0
  198. package/dist/core/extensions/builtin/terminal/manifest-lease.js.map +1 -0
  199. package/dist/core/extensions/builtin/terminal/monitor-registry.d.ts +13 -2
  200. package/dist/core/extensions/builtin/terminal/monitor-registry.d.ts.map +1 -1
  201. package/dist/core/extensions/builtin/terminal/monitor-registry.js +24 -2
  202. package/dist/core/extensions/builtin/terminal/monitor-registry.js.map +1 -1
  203. package/dist/core/extensions/builtin/terminal/prompt.d.ts +13 -2
  204. package/dist/core/extensions/builtin/terminal/prompt.d.ts.map +1 -1
  205. package/dist/core/extensions/builtin/terminal/prompt.js +18 -7
  206. package/dist/core/extensions/builtin/terminal/prompt.js.map +1 -1
  207. package/dist/core/extensions/builtin/terminal/restore.d.ts +43 -0
  208. package/dist/core/extensions/builtin/terminal/restore.d.ts.map +1 -0
  209. package/dist/core/extensions/builtin/terminal/restore.js +149 -0
  210. package/dist/core/extensions/builtin/terminal/restore.js.map +1 -0
  211. package/dist/core/extensions/builtin/terminal/terminal-manifest.d.ts +110 -0
  212. package/dist/core/extensions/builtin/terminal/terminal-manifest.d.ts.map +1 -0
  213. package/dist/core/extensions/builtin/terminal/terminal-manifest.js +158 -0
  214. package/dist/core/extensions/builtin/terminal/terminal-manifest.js.map +1 -0
  215. package/dist/core/extensions/builtin/terminal/tools/bash-input.d.ts.map +1 -1
  216. package/dist/core/extensions/builtin/terminal/tools/bash-input.js +3 -2
  217. package/dist/core/extensions/builtin/terminal/tools/bash-input.js.map +1 -1
  218. package/dist/core/extensions/builtin/terminal/tools/bash-output.d.ts.map +1 -1
  219. package/dist/core/extensions/builtin/terminal/tools/bash-output.js +5 -4
  220. package/dist/core/extensions/builtin/terminal/tools/bash-output.js.map +1 -1
  221. package/dist/core/extensions/builtin/terminal/tools/bash-resize.d.ts.map +1 -1
  222. package/dist/core/extensions/builtin/terminal/tools/bash-resize.js +3 -2
  223. package/dist/core/extensions/builtin/terminal/tools/bash-resize.js.map +1 -1
  224. package/dist/core/extensions/builtin/terminal/tools/context.d.ts +8 -0
  225. package/dist/core/extensions/builtin/terminal/tools/context.d.ts.map +1 -1
  226. package/dist/core/extensions/builtin/terminal/tools/context.js +10 -0
  227. package/dist/core/extensions/builtin/terminal/tools/context.js.map +1 -1
  228. package/dist/core/extensions/builtin/terminal/tools/kill-bash.d.ts.map +1 -1
  229. package/dist/core/extensions/builtin/terminal/tools/kill-bash.js +5 -4
  230. package/dist/core/extensions/builtin/terminal/tools/kill-bash.js.map +1 -1
  231. package/dist/core/extensions/builtin/terminal/tools/monitor.d.ts +4 -1
  232. package/dist/core/extensions/builtin/terminal/tools/monitor.d.ts.map +1 -1
  233. package/dist/core/extensions/builtin/terminal/tools/monitor.js +58 -14
  234. package/dist/core/extensions/builtin/terminal/tools/monitor.js.map +1 -1
  235. package/dist/core/extensions/builtin/todotools/prompt.d.ts +2 -2
  236. package/dist/core/extensions/builtin/todotools/prompt.d.ts.map +1 -1
  237. package/dist/core/extensions/builtin/todotools/prompt.js +3 -6
  238. package/dist/core/extensions/builtin/todotools/prompt.js.map +1 -1
  239. package/dist/core/extensions/builtin/tool-search/index.d.ts.map +1 -1
  240. package/dist/core/extensions/builtin/tool-search/index.js +1 -1
  241. package/dist/core/extensions/builtin/tool-search/index.js.map +1 -1
  242. package/dist/core/extensions/builtin/tool-search/native-search.d.ts +10 -5
  243. package/dist/core/extensions/builtin/tool-search/native-search.d.ts.map +1 -1
  244. package/dist/core/extensions/builtin/tool-search/native-search.js +12 -7
  245. package/dist/core/extensions/builtin/tool-search/native-search.js.map +1 -1
  246. package/dist/core/extensions/builtin/tool-search/native-support.d.ts +13 -0
  247. package/dist/core/extensions/builtin/tool-search/native-support.d.ts.map +1 -0
  248. package/dist/core/extensions/builtin/tool-search/native-support.js +45 -0
  249. package/dist/core/extensions/builtin/tool-search/native-support.js.map +1 -0
  250. package/dist/core/extensions/builtin/ttsr/detectors/collapse-paragraphs.d.ts +34 -0
  251. package/dist/core/extensions/builtin/ttsr/detectors/collapse-paragraphs.d.ts.map +1 -0
  252. package/dist/core/extensions/builtin/ttsr/detectors/collapse-paragraphs.js +121 -0
  253. package/dist/core/extensions/builtin/ttsr/detectors/collapse-paragraphs.js.map +1 -0
  254. package/dist/core/extensions/builtin/ttsr/detectors/collapse.d.ts +2 -0
  255. package/dist/core/extensions/builtin/ttsr/detectors/collapse.d.ts.map +1 -1
  256. package/dist/core/extensions/builtin/ttsr/detectors/collapse.js +6 -2
  257. package/dist/core/extensions/builtin/ttsr/detectors/collapse.js.map +1 -1
  258. package/dist/core/extensions/index.d.ts +1 -1
  259. package/dist/core/extensions/index.d.ts.map +1 -1
  260. package/dist/core/extensions/index.js.map +1 -1
  261. package/dist/core/extensions/runner.d.ts +5 -0
  262. package/dist/core/extensions/runner.d.ts.map +1 -1
  263. package/dist/core/extensions/runner.js +44 -1
  264. package/dist/core/extensions/runner.js.map +1 -1
  265. package/dist/core/extensions/types.d.ts +26 -3
  266. package/dist/core/extensions/types.d.ts.map +1 -1
  267. package/dist/core/extensions/types.js.map +1 -1
  268. package/dist/core/http-dispatcher.d.ts.map +1 -1
  269. package/dist/core/http-dispatcher.js +2 -0
  270. package/dist/core/http-dispatcher.js.map +1 -1
  271. package/dist/core/lockfile-policy.d.ts +11 -0
  272. package/dist/core/lockfile-policy.d.ts.map +1 -1
  273. package/dist/core/lockfile-policy.js +19 -0
  274. package/dist/core/lockfile-policy.js.map +1 -1
  275. package/dist/core/manual-continue.d.ts +13 -0
  276. package/dist/core/manual-continue.d.ts.map +1 -0
  277. package/dist/core/manual-continue.js +19 -0
  278. package/dist/core/manual-continue.js.map +1 -0
  279. package/dist/core/messages.d.ts.map +1 -1
  280. package/dist/core/messages.js +8 -2
  281. package/dist/core/messages.js.map +1 -1
  282. package/dist/core/model-config.d.ts.map +1 -1
  283. package/dist/core/model-config.js +3 -0
  284. package/dist/core/model-config.js.map +1 -1
  285. package/dist/core/provider-composer.d.ts.map +1 -1
  286. package/dist/core/provider-composer.js +13 -2
  287. package/dist/core/provider-composer.js.map +1 -1
  288. package/dist/core/session-manager.d.ts.map +1 -1
  289. package/dist/core/session-manager.js +28 -4
  290. package/dist/core/session-manager.js.map +1 -1
  291. package/dist/core/session-sidecar-store.d.ts +62 -0
  292. package/dist/core/session-sidecar-store.d.ts.map +1 -0
  293. package/dist/core/session-sidecar-store.js +149 -0
  294. package/dist/core/session-sidecar-store.js.map +1 -0
  295. package/dist/core/settings-manager.d.ts +5 -5
  296. package/dist/core/settings-manager.d.ts.map +1 -1
  297. package/dist/core/settings-manager.js +45 -21
  298. package/dist/core/settings-manager.js.map +1 -1
  299. package/dist/core/skills.d.ts.map +1 -1
  300. package/dist/core/skills.js +19 -2
  301. package/dist/core/skills.js.map +1 -1
  302. package/dist/core/terminal-settings.d.ts +3 -0
  303. package/dist/core/terminal-settings.d.ts.map +1 -1
  304. package/dist/core/terminal-settings.js.map +1 -1
  305. package/dist/core/tools/bash.d.ts.map +1 -1
  306. package/dist/core/tools/bash.js +1 -1
  307. package/dist/core/tools/bash.js.map +1 -1
  308. package/dist/core/tools/edit.d.ts.map +1 -1
  309. package/dist/core/tools/edit.js +2 -2
  310. package/dist/core/tools/edit.js.map +1 -1
  311. package/dist/core/tools/find.d.ts.map +1 -1
  312. package/dist/core/tools/find.js +2 -2
  313. package/dist/core/tools/find.js.map +1 -1
  314. package/dist/core/tools/grep.d.ts.map +1 -1
  315. package/dist/core/tools/grep.js +2 -2
  316. package/dist/core/tools/grep.js.map +1 -1
  317. package/dist/core/tools/ls.d.ts.map +1 -1
  318. package/dist/core/tools/ls.js +2 -2
  319. package/dist/core/tools/ls.js.map +1 -1
  320. package/dist/core/tools/read.d.ts.map +1 -1
  321. package/dist/core/tools/read.js +1 -1
  322. package/dist/core/tools/read.js.map +1 -1
  323. package/dist/core/tools/write.d.ts.map +1 -1
  324. package/dist/core/tools/write.js +3 -3
  325. package/dist/core/tools/write.js.map +1 -1
  326. package/dist/index.d.ts +1 -1
  327. package/dist/index.d.ts.map +1 -1
  328. package/dist/index.js.map +1 -1
  329. package/dist/main.d.ts.map +1 -1
  330. package/dist/main.js +2 -0
  331. package/dist/main.js.map +1 -1
  332. package/dist/modes/app-server/daemon/process.d.ts +33 -3
  333. package/dist/modes/app-server/daemon/process.d.ts.map +1 -1
  334. package/dist/modes/app-server/daemon/process.js +57 -6
  335. package/dist/modes/app-server/daemon/process.js.map +1 -1
  336. package/dist/modes/app-server/daemon.js +9 -1
  337. package/dist/modes/app-server/daemon.js.map +1 -1
  338. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  339. package/dist/modes/interactive/components/scoped-models-selector.js +5 -11
  340. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  341. package/dist/modes/interactive/components/settings-selector.d.ts +2 -0
  342. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  343. package/dist/modes/interactive/components/settings-selector.js +21 -8
  344. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  345. package/dist/modes/interactive/components/thinking-selector.js +2 -2
  346. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  347. package/dist/modes/interactive/components/trust-selector.js +2 -2
  348. package/dist/modes/interactive/components/trust-selector.js.map +1 -1
  349. package/dist/modes/interactive/grok/welcome-card.d.ts.map +1 -1
  350. package/dist/modes/interactive/grok/welcome-card.js +5 -2
  351. package/dist/modes/interactive/grok/welcome-card.js.map +1 -1
  352. package/dist/modes/interactive/interactive-mode.d.ts +3 -0
  353. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  354. package/dist/modes/interactive/interactive-mode.js +74 -14
  355. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  356. package/dist/modes/interactive/version-label.d.ts +7 -0
  357. package/dist/modes/interactive/version-label.d.ts.map +1 -0
  358. package/dist/modes/interactive/version-label.js +9 -0
  359. package/dist/modes/interactive/version-label.js.map +1 -0
  360. package/dist/modes/print-mode.d.ts.map +1 -1
  361. package/dist/modes/print-mode.js +9 -0
  362. package/dist/modes/print-mode.js.map +1 -1
  363. package/dist/modes/rpc/connection-handler.d.ts +2 -0
  364. package/dist/modes/rpc/connection-handler.d.ts.map +1 -1
  365. package/dist/modes/rpc/connection-handler.js +71 -12
  366. package/dist/modes/rpc/connection-handler.js.map +1 -1
  367. package/dist/modes/rpc/custom-capability.d.ts +5 -0
  368. package/dist/modes/rpc/custom-capability.d.ts.map +1 -1
  369. package/dist/modes/rpc/custom-capability.js +5 -0
  370. package/dist/modes/rpc/custom-capability.js.map +1 -1
  371. package/dist/modes/rpc/host-ensure.d.ts +2 -0
  372. package/dist/modes/rpc/host-ensure.d.ts.map +1 -1
  373. package/dist/modes/rpc/host-ensure.js +77 -18
  374. package/dist/modes/rpc/host-ensure.js.map +1 -1
  375. package/dist/modes/rpc/login-prompts.d.ts +24 -0
  376. package/dist/modes/rpc/login-prompts.d.ts.map +1 -0
  377. package/dist/modes/rpc/login-prompts.js +44 -0
  378. package/dist/modes/rpc/login-prompts.js.map +1 -0
  379. package/dist/modes/rpc/media-placeholders.d.ts +49 -0
  380. package/dist/modes/rpc/media-placeholders.d.ts.map +1 -0
  381. package/dist/modes/rpc/media-placeholders.js +151 -0
  382. package/dist/modes/rpc/media-placeholders.js.map +1 -0
  383. package/dist/modes/rpc/multi-session-host.js +3 -0
  384. package/dist/modes/rpc/multi-session-host.js.map +1 -1
  385. package/dist/modes/rpc/rpc-client.d.ts +8 -0
  386. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  387. package/dist/modes/rpc/rpc-client.js +11 -0
  388. package/dist/modes/rpc/rpc-client.js.map +1 -1
  389. package/dist/modes/rpc/rpc-types.d.ts +23 -1
  390. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  391. package/dist/modes/rpc/rpc-types.js +1 -0
  392. package/dist/modes/rpc/rpc-types.js.map +1 -1
  393. package/dist/modes/rpc/session-command-router.d.ts.map +1 -1
  394. package/dist/modes/rpc/session-command-router.js +2 -1
  395. package/dist/modes/rpc/session-command-router.js.map +1 -1
  396. package/dist/modes/rpc/session-event-fanout.d.ts +13 -2
  397. package/dist/modes/rpc/session-event-fanout.d.ts.map +1 -1
  398. package/dist/modes/rpc/session-event-fanout.js +36 -12
  399. package/dist/modes/rpc/session-event-fanout.js.map +1 -1
  400. package/dist/modes/rpc/session-event-writer.d.ts +3 -1
  401. package/dist/modes/rpc/session-event-writer.d.ts.map +1 -1
  402. package/dist/modes/rpc/session-event-writer.js +23 -13
  403. package/dist/modes/rpc/session-event-writer.js.map +1 -1
  404. package/dist/modes/rpc/socket-event-fanout.d.ts +8 -1
  405. package/dist/modes/rpc/socket-event-fanout.d.ts.map +1 -1
  406. package/dist/modes/rpc/socket-event-fanout.js +32 -9
  407. package/dist/modes/rpc/socket-event-fanout.js.map +1 -1
  408. package/dist/utils/version-check.d.ts.map +1 -1
  409. package/dist/utils/version-check.js +3 -4
  410. package/dist/utils/version-check.js.map +1 -1
  411. package/docs/compaction.md +2 -0
  412. package/docs/environment-variables.md +5 -0
  413. package/docs/extensions.md +22 -2
  414. package/docs/keybindings.md +1 -1
  415. package/docs/models.md +3 -0
  416. package/docs/quickstart.md +1 -1
  417. package/docs/rpc.md +105 -1
  418. package/docs/settings.md +17 -32
  419. package/docs/terminal-setup.md +27 -0
  420. package/docs/usage.md +5 -3
  421. package/docs/windows.md +1 -1
  422. package/node_modules/@anthropic-ai/claude-agent-sdk/bridge.d.ts +18 -1
  423. package/node_modules/@anthropic-ai/claude-agent-sdk/bridge.mjs +155 -106
  424. package/node_modules/@anthropic-ai/claude-agent-sdk/browser-sdk.js +144 -83
  425. package/node_modules/@anthropic-ai/claude-agent-sdk/manifest.json +21 -32
  426. package/node_modules/@anthropic-ai/claude-agent-sdk/manifest.zst.json +25 -36
  427. package/node_modules/@anthropic-ai/claude-agent-sdk/package.json +2 -2
  428. package/node_modules/@anthropic-ai/claude-agent-sdk/sdk-tools.d.ts +93 -31
  429. package/node_modules/@anthropic-ai/claude-agent-sdk/sdk.d.ts +473 -31
  430. package/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs +140 -93
  431. package/node_modules/@anthropic-ai/sdk/CHANGELOG.md +96 -0
  432. package/node_modules/@anthropic-ai/sdk/README.md +1 -1
  433. package/node_modules/@anthropic-ai/sdk/core/credentials.d.mts.map +1 -1
  434. package/node_modules/@anthropic-ai/sdk/core/credentials.d.ts.map +1 -1
  435. package/node_modules/@anthropic-ai/sdk/core/credentials.js +5 -7
  436. package/node_modules/@anthropic-ai/sdk/core/credentials.js.map +1 -1
  437. package/node_modules/@anthropic-ai/sdk/core/credentials.mjs +5 -7
  438. package/node_modules/@anthropic-ai/sdk/core/credentials.mjs.map +1 -1
  439. package/node_modules/@anthropic-ai/sdk/core/middleware.d.mts.map +1 -1
  440. package/node_modules/@anthropic-ai/sdk/core/middleware.d.ts.map +1 -1
  441. package/node_modules/@anthropic-ai/sdk/core/middleware.js +4 -4
  442. package/node_modules/@anthropic-ai/sdk/core/middleware.js.map +1 -1
  443. package/node_modules/@anthropic-ai/sdk/core/middleware.mjs +4 -4
  444. package/node_modules/@anthropic-ai/sdk/core/middleware.mjs.map +1 -1
  445. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.d.mts +45 -0
  446. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.d.mts.map +1 -0
  447. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.d.ts +45 -0
  448. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.d.ts.map +1 -0
  449. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.js +58 -0
  450. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.js.map +1 -0
  451. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.mjs +54 -0
  452. package/node_modules/@anthropic-ai/sdk/helpers/beta/standard-schema.mjs.map +1 -0
  453. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.js +1 -1
  454. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.js.map +1 -1
  455. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs +1 -1
  456. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs.map +1 -1
  457. package/node_modules/@anthropic-ai/sdk/internal/errors.d.mts.map +1 -1
  458. package/node_modules/@anthropic-ai/sdk/internal/errors.d.ts.map +1 -1
  459. package/node_modules/@anthropic-ai/sdk/internal/errors.js +3 -1
  460. package/node_modules/@anthropic-ai/sdk/internal/errors.js.map +1 -1
  461. package/node_modules/@anthropic-ai/sdk/internal/errors.mjs +3 -1
  462. package/node_modules/@anthropic-ai/sdk/internal/errors.mjs.map +1 -1
  463. package/node_modules/@anthropic-ai/sdk/internal/file-store.d.mts.map +1 -1
  464. package/node_modules/@anthropic-ai/sdk/internal/file-store.d.ts.map +1 -1
  465. package/node_modules/@anthropic-ai/sdk/internal/file-store.js +23 -25
  466. package/node_modules/@anthropic-ai/sdk/internal/file-store.js.map +1 -1
  467. package/node_modules/@anthropic-ai/sdk/internal/file-store.mjs +5 -6
  468. package/node_modules/@anthropic-ai/sdk/internal/file-store.mjs.map +1 -1
  469. package/node_modules/@anthropic-ai/sdk/internal/node.browser.d.mts +9 -0
  470. package/node_modules/@anthropic-ai/sdk/internal/node.browser.d.mts.map +1 -0
  471. package/node_modules/@anthropic-ai/sdk/internal/node.browser.d.ts +9 -0
  472. package/node_modules/@anthropic-ai/sdk/internal/node.browser.d.ts.map +1 -0
  473. package/node_modules/@anthropic-ai/sdk/internal/node.browser.js +22 -0
  474. package/node_modules/@anthropic-ai/sdk/internal/node.browser.js.map +1 -0
  475. package/node_modules/@anthropic-ai/sdk/internal/node.browser.mjs +19 -0
  476. package/node_modules/@anthropic-ai/sdk/internal/node.browser.mjs.map +1 -0
  477. package/node_modules/@anthropic-ai/sdk/internal/node.d.mts +14 -0
  478. package/node_modules/@anthropic-ai/sdk/internal/node.d.mts.map +1 -0
  479. package/node_modules/@anthropic-ai/sdk/internal/node.d.ts +14 -0
  480. package/node_modules/@anthropic-ai/sdk/internal/node.d.ts.map +1 -0
  481. package/node_modules/@anthropic-ai/sdk/internal/node.js +24 -0
  482. package/node_modules/@anthropic-ai/sdk/internal/node.js.map +1 -0
  483. package/node_modules/@anthropic-ai/sdk/internal/node.mjs +14 -0
  484. package/node_modules/@anthropic-ai/sdk/internal/node.mjs.map +1 -0
  485. package/node_modules/@anthropic-ai/sdk/internal/parse.js +1 -1
  486. package/node_modules/@anthropic-ai/sdk/internal/parse.js.map +1 -1
  487. package/node_modules/@anthropic-ai/sdk/internal/parse.mjs +1 -1
  488. package/node_modules/@anthropic-ai/sdk/internal/parse.mjs.map +1 -1
  489. package/node_modules/@anthropic-ai/sdk/internal/uploads.js +10 -6
  490. package/node_modules/@anthropic-ai/sdk/internal/uploads.js.map +1 -1
  491. package/node_modules/@anthropic-ai/sdk/internal/uploads.mjs +10 -6
  492. package/node_modules/@anthropic-ai/sdk/internal/uploads.mjs.map +1 -1
  493. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.mts +6 -0
  494. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.mts.map +1 -1
  495. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.ts +6 -0
  496. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.ts.map +1 -1
  497. package/node_modules/@anthropic-ai/sdk/internal/utils/values.js +7 -0
  498. package/node_modules/@anthropic-ai/sdk/internal/utils/values.js.map +1 -1
  499. package/node_modules/@anthropic-ai/sdk/internal/utils/values.mjs +6 -0
  500. package/node_modules/@anthropic-ai/sdk/internal/utils/values.mjs.map +1 -1
  501. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.mts.map +1 -1
  502. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.ts.map +1 -1
  503. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.js +6 -4
  504. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.js.map +1 -1
  505. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.mjs +4 -2
  506. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.mjs.map +1 -1
  507. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.d.mts.map +1 -1
  508. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.d.ts.map +1 -1
  509. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.js +3 -4
  510. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.js.map +1 -1
  511. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.mjs +1 -2
  512. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.mjs.map +1 -1
  513. package/node_modules/@anthropic-ai/sdk/lib/credentials/credential-chain.js +1 -1
  514. package/node_modules/@anthropic-ai/sdk/lib/credentials/credential-chain.js.map +1 -1
  515. package/node_modules/@anthropic-ai/sdk/lib/credentials/credential-chain.mjs +1 -1
  516. package/node_modules/@anthropic-ai/sdk/lib/credentials/credential-chain.mjs.map +1 -1
  517. package/node_modules/@anthropic-ai/sdk/lib/credentials/identity-token.js +1 -1
  518. package/node_modules/@anthropic-ai/sdk/lib/credentials/identity-token.js.map +1 -1
  519. package/node_modules/@anthropic-ai/sdk/lib/credentials/identity-token.mjs +1 -1
  520. package/node_modules/@anthropic-ai/sdk/lib/credentials/identity-token.mjs.map +1 -1
  521. package/node_modules/@anthropic-ai/sdk/lib/credentials/types.d.mts.map +1 -1
  522. package/node_modules/@anthropic-ai/sdk/lib/credentials/types.d.ts.map +1 -1
  523. package/node_modules/@anthropic-ai/sdk/lib/credentials/types.js +2 -3
  524. package/node_modules/@anthropic-ai/sdk/lib/credentials/types.js.map +1 -1
  525. package/node_modules/@anthropic-ai/sdk/lib/credentials/types.mjs +2 -3
  526. package/node_modules/@anthropic-ai/sdk/lib/credentials/types.mjs.map +1 -1
  527. package/node_modules/@anthropic-ai/sdk/lib/credentials/user-oauth.js +1 -1
  528. package/node_modules/@anthropic-ai/sdk/lib/credentials/user-oauth.js.map +1 -1
  529. package/node_modules/@anthropic-ai/sdk/lib/credentials/user-oauth.mjs +1 -1
  530. package/node_modules/@anthropic-ai/sdk/lib/credentials/user-oauth.mjs.map +1 -1
  531. package/node_modules/@anthropic-ai/sdk/lib/middleware.d.mts.map +1 -1
  532. package/node_modules/@anthropic-ai/sdk/lib/middleware.d.ts.map +1 -1
  533. package/node_modules/@anthropic-ai/sdk/lib/middleware.js +30 -7
  534. package/node_modules/@anthropic-ai/sdk/lib/middleware.js.map +1 -1
  535. package/node_modules/@anthropic-ai/sdk/lib/middleware.mjs +30 -7
  536. package/node_modules/@anthropic-ai/sdk/lib/middleware.mjs.map +1 -1
  537. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.d.mts +3 -2
  538. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.d.mts.map +1 -1
  539. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.d.ts +3 -2
  540. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.d.ts.map +1 -1
  541. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.js +3 -46
  542. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.js.map +1 -1
  543. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.mjs +3 -46
  544. package/node_modules/@anthropic-ai/sdk/lib/sessions/accumulate.mjs.map +1 -1
  545. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.d.mts +131 -0
  546. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.d.mts.map +1 -0
  547. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.d.ts +131 -0
  548. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.d.ts.map +1 -0
  549. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.js +45 -0
  550. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.js.map +1 -0
  551. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.mjs +41 -0
  552. package/node_modules/@anthropic-ai/sdk/lib/standard-schema.mjs.map +1 -0
  553. package/node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.d.mts.map +1 -1
  554. package/node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.d.ts.map +1 -1
  555. package/node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.js +35 -6
  556. package/node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.js.map +1 -1
  557. package/node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.mjs +35 -6
  558. package/node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.mjs.map +1 -1
  559. package/node_modules/@anthropic-ai/sdk/package.json +4 -11
  560. package/node_modules/@anthropic-ai/sdk/resources/beta/agents/agents.d.mts +1 -1
  561. package/node_modules/@anthropic-ai/sdk/resources/beta/agents/agents.d.mts.map +1 -1
  562. package/node_modules/@anthropic-ai/sdk/resources/beta/agents/agents.d.ts +1 -1
  563. package/node_modules/@anthropic-ai/sdk/resources/beta/agents/agents.d.ts.map +1 -1
  564. package/node_modules/@anthropic-ai/sdk/resources/beta/agents/agents.js.map +1 -1
  565. package/node_modules/@anthropic-ai/sdk/resources/beta/agents/agents.mjs.map +1 -1
  566. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.mts +13 -9
  567. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.mts.map +1 -1
  568. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.ts +13 -9
  569. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.ts.map +1 -1
  570. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.js +4 -0
  571. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.js.map +1 -1
  572. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.mjs +4 -0
  573. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.mjs.map +1 -1
  574. package/node_modules/@anthropic-ai/sdk/resources/beta/deployment-runs.d.mts +6 -6
  575. package/node_modules/@anthropic-ai/sdk/resources/beta/deployment-runs.d.ts +6 -6
  576. package/node_modules/@anthropic-ai/sdk/resources/beta/deployments.d.mts +3 -2
  577. package/node_modules/@anthropic-ai/sdk/resources/beta/deployments.d.mts.map +1 -1
  578. package/node_modules/@anthropic-ai/sdk/resources/beta/deployments.d.ts +3 -2
  579. package/node_modules/@anthropic-ai/sdk/resources/beta/deployments.d.ts.map +1 -1
  580. package/node_modules/@anthropic-ai/sdk/resources/beta/dreams.d.mts +28 -1
  581. package/node_modules/@anthropic-ai/sdk/resources/beta/dreams.d.mts.map +1 -1
  582. package/node_modules/@anthropic-ai/sdk/resources/beta/dreams.d.ts +28 -1
  583. package/node_modules/@anthropic-ai/sdk/resources/beta/dreams.d.ts.map +1 -1
  584. package/node_modules/@anthropic-ai/sdk/resources/beta/environments/environments.d.mts +8 -1
  585. package/node_modules/@anthropic-ai/sdk/resources/beta/environments/environments.d.mts.map +1 -1
  586. package/node_modules/@anthropic-ai/sdk/resources/beta/environments/environments.d.ts +8 -1
  587. package/node_modules/@anthropic-ai/sdk/resources/beta/environments/environments.d.ts.map +1 -1
  588. package/node_modules/@anthropic-ai/sdk/resources/beta/environments/environments.js.map +1 -1
  589. package/node_modules/@anthropic-ai/sdk/resources/beta/environments/environments.mjs.map +1 -1
  590. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.mts +25 -5
  591. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.mts.map +1 -1
  592. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.ts +25 -5
  593. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.ts.map +1 -1
  594. package/node_modules/@anthropic-ai/sdk/resources/beta/files.js +6 -6
  595. package/node_modules/@anthropic-ai/sdk/resources/beta/files.js.map +1 -1
  596. package/node_modules/@anthropic-ai/sdk/resources/beta/files.mjs +7 -7
  597. package/node_modules/@anthropic-ai/sdk/resources/beta/files.mjs.map +1 -1
  598. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.mts +5 -4
  599. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.mts.map +1 -1
  600. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.ts +5 -4
  601. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.ts.map +1 -1
  602. package/node_modules/@anthropic-ai/sdk/resources/beta/index.js +11 -9
  603. package/node_modules/@anthropic-ai/sdk/resources/beta/index.js.map +1 -1
  604. package/node_modules/@anthropic-ai/sdk/resources/beta/index.mjs +1 -0
  605. package/node_modules/@anthropic-ai/sdk/resources/beta/index.mjs.map +1 -1
  606. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memories.d.mts +12 -9
  607. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memories.d.mts.map +1 -1
  608. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memories.d.ts +12 -9
  609. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memories.d.ts.map +1 -1
  610. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memory-versions.d.mts +8 -5
  611. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memory-versions.d.mts.map +1 -1
  612. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memory-versions.d.ts +8 -5
  613. package/node_modules/@anthropic-ai/sdk/resources/beta/memory-stores/memory-versions.d.ts.map +1 -1
  614. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.mts +1 -1
  615. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.mts.map +1 -1
  616. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.ts +1 -1
  617. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.ts.map +1 -1
  618. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.js.map +1 -1
  619. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.mjs.map +1 -1
  620. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.mts +198 -29
  621. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.mts.map +1 -1
  622. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.ts +198 -29
  623. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.ts.map +1 -1
  624. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.js.map +1 -1
  625. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.mjs.map +1 -1
  626. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.d.mts +177 -0
  627. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.d.mts.map +1 -0
  628. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.d.ts +177 -0
  629. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.d.ts.map +1 -0
  630. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.js +56 -0
  631. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.js.map +1 -0
  632. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.mjs +52 -0
  633. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/api-keys.mjs.map +1 -0
  634. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.d.mts +74 -0
  635. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.d.mts.map +1 -0
  636. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.d.ts +74 -0
  637. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.d.ts.map +1 -0
  638. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.js +52 -0
  639. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.js.map +1 -0
  640. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.mjs +48 -0
  641. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/compliance-settings.mjs.map +1 -0
  642. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.d.mts +272 -0
  643. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.d.mts.map +1 -0
  644. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.d.ts +272 -0
  645. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.d.ts.map +1 -0
  646. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.js +119 -0
  647. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.js.map +1 -0
  648. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.mjs +115 -0
  649. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/external-keys.mjs.map +1 -0
  650. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.d.mts +14 -0
  651. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.d.mts.map +1 -0
  652. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.d.ts +14 -0
  653. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.d.ts.map +1 -0
  654. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.js +21 -0
  655. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.js.map +1 -0
  656. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.mjs +16 -0
  657. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/federation.mjs.map +1 -0
  658. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.d.mts +4 -0
  659. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.d.mts.map +1 -0
  660. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.d.ts +4 -0
  661. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.d.ts.map +1 -0
  662. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.js +11 -0
  663. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.js.map +1 -0
  664. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.mjs +5 -0
  665. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/index.mjs.map +1 -0
  666. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.d.mts +353 -0
  667. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.d.mts.map +1 -0
  668. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.d.ts +353 -0
  669. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.d.ts.map +1 -0
  670. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.js +169 -0
  671. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.js.map +1 -0
  672. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.mjs +165 -0
  673. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/issuers.mjs.map +1 -0
  674. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.d.mts +3 -0
  675. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.d.mts.map +1 -0
  676. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.d.ts +3 -0
  677. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.d.ts.map +1 -0
  678. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.js +9 -0
  679. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.js.map +1 -0
  680. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.mjs +4 -0
  681. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/index.mjs.map +1 -0
  682. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.d.mts +468 -0
  683. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.d.mts.map +1 -0
  684. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.d.ts +468 -0
  685. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.d.ts.map +1 -0
  686. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.js +198 -0
  687. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.js.map +1 -0
  688. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.mjs +193 -0
  689. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/rules.mjs.map +1 -0
  690. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.d.mts +124 -0
  691. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.d.mts.map +1 -0
  692. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.d.ts +124 -0
  693. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.d.ts.map +1 -0
  694. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.js +114 -0
  695. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.js.map +1 -0
  696. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.mjs +110 -0
  697. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules/workspaces.mjs.map +1 -0
  698. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.d.mts +2 -0
  699. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.d.mts.map +1 -0
  700. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.d.ts +2 -0
  701. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.d.ts.map +1 -0
  702. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.js +6 -0
  703. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.js.map +1 -0
  704. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.mjs +3 -0
  705. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation/rules.mjs.map +1 -0
  706. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.d.mts +2 -0
  707. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.d.mts.map +1 -0
  708. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.d.ts +2 -0
  709. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.d.ts.map +1 -0
  710. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.js +6 -0
  711. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.js.map +1 -0
  712. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.mjs +3 -0
  713. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/federation.mjs.map +1 -0
  714. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.d.mts +11 -0
  715. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.d.mts.map +1 -0
  716. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.d.ts +11 -0
  717. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.d.ts.map +1 -0
  718. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.js +25 -0
  719. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.js.map +1 -0
  720. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.mjs +12 -0
  721. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/index.mjs.map +1 -0
  722. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.d.mts +162 -0
  723. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.d.mts.map +1 -0
  724. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.d.ts +162 -0
  725. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.d.ts.map +1 -0
  726. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.js +76 -0
  727. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.js.map +1 -0
  728. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.mjs +72 -0
  729. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/invites.mjs.map +1 -0
  730. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.d.mts +73 -0
  731. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.d.mts.map +1 -0
  732. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.d.ts +73 -0
  733. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.d.ts.map +1 -0
  734. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.js +62 -0
  735. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.js.map +1 -0
  736. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.mjs +57 -0
  737. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/organization.mjs.map +1 -0
  738. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.d.mts +77 -0
  739. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.d.mts.map +1 -0
  740. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.d.ts +77 -0
  741. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.d.ts.map +1 -0
  742. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.js +31 -0
  743. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.js.map +1 -0
  744. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.mjs +27 -0
  745. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/rate-limits.mjs.map +1 -0
  746. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.d.mts +3 -0
  747. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.d.mts.map +1 -0
  748. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.d.ts +3 -0
  749. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.d.ts.map +1 -0
  750. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.js +9 -0
  751. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.js.map +1 -0
  752. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.mjs +4 -0
  753. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/index.mjs.map +1 -0
  754. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.d.mts +258 -0
  755. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.d.mts.map +1 -0
  756. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.d.ts +258 -0
  757. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.d.ts.map +1 -0
  758. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.js +174 -0
  759. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.js.map +1 -0
  760. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.mjs +169 -0
  761. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/service-accounts.mjs.map +1 -0
  762. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.d.mts +141 -0
  763. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.d.mts.map +1 -0
  764. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.d.ts +141 -0
  765. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.d.ts.map +1 -0
  766. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.js +125 -0
  767. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.js.map +1 -0
  768. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.mjs +121 -0
  769. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts/workspaces.mjs.map +1 -0
  770. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.d.mts +2 -0
  771. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.d.mts.map +1 -0
  772. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.d.ts +2 -0
  773. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.d.ts.map +1 -0
  774. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.js +6 -0
  775. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.js.map +1 -0
  776. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.mjs +3 -0
  777. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/service-accounts.mjs.map +1 -0
  778. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.d.mts +124 -0
  779. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.d.mts.map +1 -0
  780. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.d.ts +124 -0
  781. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.d.ts.map +1 -0
  782. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.js +67 -0
  783. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.js.map +1 -0
  784. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.mjs +63 -0
  785. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/users.mjs.map +1 -0
  786. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.d.mts +5 -0
  787. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.d.mts.map +1 -0
  788. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.d.ts +5 -0
  789. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.d.ts.map +1 -0
  790. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.js +13 -0
  791. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.js.map +1 -0
  792. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.mjs +6 -0
  793. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/index.mjs.map +1 -0
  794. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.d.mts +135 -0
  795. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.d.mts.map +1 -0
  796. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.d.ts +135 -0
  797. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.d.ts.map +1 -0
  798. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.js +102 -0
  799. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.js.map +1 -0
  800. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.mjs +98 -0
  801. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/members.mjs.map +1 -0
  802. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.d.mts +83 -0
  803. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.d.mts.map +1 -0
  804. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.d.ts +83 -0
  805. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.d.ts.map +1 -0
  806. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.js +34 -0
  807. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.js.map +1 -0
  808. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.mjs +30 -0
  809. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/rate-limits.mjs.map +1 -0
  810. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.d.mts +210 -0
  811. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.d.mts.map +1 -0
  812. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.d.ts +210 -0
  813. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.d.ts.map +1 -0
  814. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.js +189 -0
  815. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.js.map +1 -0
  816. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.mjs +185 -0
  817. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/service-accounts.mjs.map +1 -0
  818. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.d.mts +303 -0
  819. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.d.mts.map +1 -0
  820. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.d.ts +303 -0
  821. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.d.ts.map +1 -0
  822. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.js +112 -0
  823. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.js.map +1 -0
  824. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.mjs +107 -0
  825. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces/workspaces.mjs.map +1 -0
  826. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.d.mts +2 -0
  827. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.d.mts.map +1 -0
  828. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.d.ts +2 -0
  829. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.d.ts.map +1 -0
  830. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.js +6 -0
  831. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.js.map +1 -0
  832. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.mjs +3 -0
  833. package/node_modules/@anthropic-ai/sdk/resources/beta/organization/workspaces.mjs.map +1 -0
  834. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.d.mts +2 -0
  835. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.d.mts.map +1 -0
  836. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.d.ts +2 -0
  837. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.d.ts.map +1 -0
  838. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.js +6 -0
  839. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.js.map +1 -0
  840. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.mjs +3 -0
  841. package/node_modules/@anthropic-ai/sdk/resources/beta/organization.mjs.map +1 -0
  842. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/events.d.mts +1 -1
  843. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/events.d.ts +1 -1
  844. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/sessions.d.mts +10 -10
  845. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/sessions.d.ts +10 -10
  846. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/threads/threads.d.mts +2 -1
  847. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/threads/threads.d.mts.map +1 -1
  848. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/threads/threads.d.ts +2 -1
  849. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/threads/threads.d.ts.map +1 -1
  850. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/threads/threads.js.map +1 -1
  851. package/node_modules/@anthropic-ai/sdk/resources/beta/sessions/threads/threads.mjs.map +1 -1
  852. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/index.d.mts +2 -2
  853. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/index.d.mts.map +1 -1
  854. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/index.d.ts +2 -2
  855. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/index.d.ts.map +1 -1
  856. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/index.js.map +1 -1
  857. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/index.mjs.map +1 -1
  858. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.d.mts +48 -120
  859. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.d.mts.map +1 -1
  860. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.d.ts +48 -120
  861. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.d.ts.map +1 -1
  862. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.js +12 -8
  863. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.js.map +1 -1
  864. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.mjs +12 -8
  865. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/skills.mjs.map +1 -1
  866. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.d.mts +35 -138
  867. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.d.mts.map +1 -1
  868. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.d.ts +35 -138
  869. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.d.ts.map +1 -1
  870. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.js +18 -18
  871. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.js.map +1 -1
  872. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.mjs +18 -18
  873. package/node_modules/@anthropic-ai/sdk/resources/beta/skills/versions.mjs.map +1 -1
  874. package/node_modules/@anthropic-ai/sdk/resources/beta/user-profiles.d.mts +21 -25
  875. package/node_modules/@anthropic-ai/sdk/resources/beta/user-profiles.d.mts.map +1 -1
  876. package/node_modules/@anthropic-ai/sdk/resources/beta/user-profiles.d.ts +21 -25
  877. package/node_modules/@anthropic-ai/sdk/resources/beta/user-profiles.d.ts.map +1 -1
  878. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.d.mts +16 -17
  879. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.d.mts.map +1 -1
  880. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.d.ts +16 -17
  881. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.d.ts.map +1 -1
  882. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.js +21 -8
  883. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.js.map +1 -1
  884. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.mjs +21 -8
  885. package/node_modules/@anthropic-ai/sdk/resources/beta/webhooks.mjs.map +1 -1
  886. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.mts +1 -3
  887. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.mts.map +1 -1
  888. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.ts +1 -3
  889. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.ts.map +1 -1
  890. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.js.map +1 -1
  891. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.mjs.map +1 -1
  892. package/node_modules/@anthropic-ai/sdk/src/core/credentials.ts +5 -7
  893. package/node_modules/@anthropic-ai/sdk/src/core/middleware.ts +4 -3
  894. package/node_modules/@anthropic-ai/sdk/src/helpers/beta/standard-schema.ts +99 -0
  895. package/node_modules/@anthropic-ai/sdk/src/internal/detect-platform.ts +1 -1
  896. package/node_modules/@anthropic-ai/sdk/src/internal/errors.ts +3 -1
  897. package/node_modules/@anthropic-ai/sdk/src/internal/file-store.ts +11 -10
  898. package/node_modules/@anthropic-ai/sdk/src/internal/node.browser.ts +22 -0
  899. package/node_modules/@anthropic-ai/sdk/src/internal/node.ts +14 -0
  900. package/node_modules/@anthropic-ai/sdk/src/internal/parse.ts +1 -1
  901. package/node_modules/@anthropic-ai/sdk/src/internal/uploads.ts +10 -7
  902. package/node_modules/@anthropic-ai/sdk/src/internal/utils/values.ts +7 -0
  903. package/node_modules/@anthropic-ai/sdk/src/lib/BetaMessageStream.ts +5 -3
  904. package/node_modules/@anthropic-ai/sdk/src/lib/MessageStream.ts +1 -3
  905. package/node_modules/@anthropic-ai/sdk/src/lib/credentials/credential-chain.ts +1 -1
  906. package/node_modules/@anthropic-ai/sdk/src/lib/credentials/identity-token.ts +1 -1
  907. package/node_modules/@anthropic-ai/sdk/src/lib/credentials/types.ts +2 -3
  908. package/node_modules/@anthropic-ai/sdk/src/lib/credentials/user-oauth.ts +1 -1
  909. package/node_modules/@anthropic-ai/sdk/src/lib/middleware.ts +33 -9
  910. package/node_modules/@anthropic-ai/sdk/src/lib/sessions/accumulate.ts +7 -49
  911. package/node_modules/@anthropic-ai/sdk/src/lib/standard-schema.ts +209 -0
  912. package/node_modules/@anthropic-ai/sdk/src/lib/tools/BetaToolRunner.ts +38 -6
  913. package/node_modules/@anthropic-ai/sdk/src/resources/beta/agents/agents.ts +1 -0
  914. package/node_modules/@anthropic-ai/sdk/src/resources/beta/beta.ts +45 -15
  915. package/node_modules/@anthropic-ai/sdk/src/resources/beta/deployment-runs.ts +6 -6
  916. package/node_modules/@anthropic-ai/sdk/src/resources/beta/deployments.ts +3 -2
  917. package/node_modules/@anthropic-ai/sdk/src/resources/beta/dreams.ts +42 -0
  918. package/node_modules/@anthropic-ai/sdk/src/resources/beta/environments/environments.ts +8 -1
  919. package/node_modules/@anthropic-ai/sdk/src/resources/beta/files.ts +34 -11
  920. package/node_modules/@anthropic-ai/sdk/src/resources/beta/index.ts +13 -7
  921. package/node_modules/@anthropic-ai/sdk/src/resources/beta/memory-stores/memories.ts +12 -9
  922. package/node_modules/@anthropic-ai/sdk/src/resources/beta/memory-stores/memory-versions.ts +8 -5
  923. package/node_modules/@anthropic-ai/sdk/src/resources/beta/messages/index.ts +5 -1
  924. package/node_modules/@anthropic-ai/sdk/src/resources/beta/messages/messages.ts +221 -38
  925. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/api-keys.ts +231 -0
  926. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/compliance-settings.ts +96 -0
  927. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/external-keys.ts +365 -0
  928. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/federation.ts +71 -0
  929. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/index.ts +31 -0
  930. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/issuers.ts +486 -0
  931. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/rules/index.ts +23 -0
  932. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/rules/rules.ts +624 -0
  933. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/rules/workspaces.ts +196 -0
  934. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation/rules.ts +3 -0
  935. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/federation.ts +3 -0
  936. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/index.ts +92 -0
  937. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/invites.ts +207 -0
  938. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/organization.ts +269 -0
  939. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/rate-limits.ts +104 -0
  940. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/service-accounts/index.ts +21 -0
  941. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/service-accounts/service-accounts.ts +389 -0
  942. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/service-accounts/workspaces.ts +217 -0
  943. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/service-accounts.ts +3 -0
  944. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/users.ts +163 -0
  945. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/workspaces/index.ts +43 -0
  946. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/workspaces/members.ts +209 -0
  947. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/workspaces/rate-limits.ts +113 -0
  948. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/workspaces/service-accounts.ts +325 -0
  949. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/workspaces/workspaces.ts +450 -0
  950. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization/workspaces.ts +3 -0
  951. package/node_modules/@anthropic-ai/sdk/src/resources/beta/organization.ts +3 -0
  952. package/node_modules/@anthropic-ai/sdk/src/resources/beta/sessions/events.ts +1 -1
  953. package/node_modules/@anthropic-ai/sdk/src/resources/beta/sessions/sessions.ts +10 -10
  954. package/node_modules/@anthropic-ai/sdk/src/resources/beta/sessions/threads/threads.ts +2 -1
  955. package/node_modules/@anthropic-ai/sdk/src/resources/beta/skills/index.ts +7 -10
  956. package/node_modules/@anthropic-ai/sdk/src/resources/beta/skills/skills.ts +60 -150
  957. package/node_modules/@anthropic-ai/sdk/src/resources/beta/skills/versions.ts +43 -166
  958. package/node_modules/@anthropic-ai/sdk/src/resources/beta/user-profiles.ts +24 -27
  959. package/node_modules/@anthropic-ai/sdk/src/resources/beta/webhooks.ts +25 -29
  960. package/node_modules/@anthropic-ai/sdk/src/resources/messages/messages.ts +2 -8
  961. package/node_modules/@anthropic-ai/sdk/src/tools/agent-toolset/fs-util.ts +6 -5
  962. package/node_modules/@anthropic-ai/sdk/src/tools/agent-toolset/memories.ts +5 -3
  963. package/node_modules/@anthropic-ai/sdk/src/tools/agent-toolset/node.browser.ts +1 -5
  964. package/node_modules/@anthropic-ai/sdk/src/tools/agent-toolset/node.ts +122 -17
  965. package/node_modules/@anthropic-ai/sdk/src/tools/agent-toolset/skills.ts +10 -43
  966. package/node_modules/@anthropic-ai/sdk/src/version.ts +1 -1
  967. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/fs-util.d.mts.map +1 -1
  968. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/fs-util.d.ts.map +1 -1
  969. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/fs-util.js +13 -15
  970. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/fs-util.js.map +1 -1
  971. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/fs-util.mjs +3 -4
  972. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/fs-util.mjs.map +1 -1
  973. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/memories.d.mts.map +1 -1
  974. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/memories.d.ts.map +1 -1
  975. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/memories.js +6 -4
  976. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/memories.js.map +1 -1
  977. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/memories.mjs +5 -3
  978. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/memories.mjs.map +1 -1
  979. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.d.mts +1 -2
  980. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.d.mts.map +1 -1
  981. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.d.ts +1 -2
  982. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.d.ts.map +1 -1
  983. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.js +0 -4
  984. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.js.map +1 -1
  985. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.mjs +0 -3
  986. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.browser.mjs.map +1 -1
  987. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.d.mts +11 -9
  988. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.d.mts.map +1 -1
  989. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.d.ts +11 -9
  990. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.d.ts.map +1 -1
  991. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.js +96 -8
  992. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.js.map +1 -1
  993. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.mjs +96 -7
  994. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/node.mjs.map +1 -1
  995. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.d.mts +0 -8
  996. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.d.mts.map +1 -1
  997. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.d.ts +0 -8
  998. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.d.ts.map +1 -1
  999. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.js +20 -46
  1000. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.js.map +1 -1
  1001. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.mjs +9 -33
  1002. package/node_modules/@anthropic-ai/sdk/tools/agent-toolset/skills.mjs.map +1 -1
  1003. package/node_modules/@anthropic-ai/sdk/version.d.mts +1 -1
  1004. package/node_modules/@anthropic-ai/sdk/version.d.ts +1 -1
  1005. package/node_modules/@anthropic-ai/sdk/version.js +1 -1
  1006. package/node_modules/@anthropic-ai/sdk/version.mjs +1 -1
  1007. package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +71 -0
  1008. package/node_modules/@code-yeongyu/senpi-codemode/README.md +2 -0
  1009. package/node_modules/@code-yeongyu/senpi-codemode/package.json +5 -5
  1010. package/node_modules/@code-yeongyu/senpi-codemode/src/config/settings.ts +29 -0
  1011. package/node_modules/@code-yeongyu/senpi-codemode/src/index.ts +20 -1
  1012. package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/worker-runtime.js +6 -0
  1013. package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/worker-shell-capture.d.ts +10 -0
  1014. package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/worker-shell-capture.js +126 -0
  1015. package/node_modules/@code-yeongyu/senpi-codemode/src/prompt/eval-prompt.ts +34 -92
  1016. package/node_modules/@code-yeongyu/senpi-codemode/src/tool/cell-execution.ts +7 -0
  1017. package/node_modules/@code-yeongyu/senpi-codemode/src/tool/eval-tool-options.ts +8 -0
  1018. package/node_modules/@code-yeongyu/senpi-codemode/src/tool/eval-tool.ts +15 -2
  1019. package/node_modules/@code-yeongyu/senpi-codemode/src/tool/types.ts +10 -5
  1020. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  1021. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +58 -64
  1022. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  1023. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts.map +1 -1
  1024. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js +16 -6
  1025. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js.map +1 -1
  1026. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.d.ts +1 -1
  1027. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.d.ts.map +1 -1
  1028. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.js +6 -1
  1029. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.js.map +1 -1
  1030. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/write.js +1 -1
  1031. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/write.js.map +1 -1
  1032. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts +2 -0
  1033. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts.map +1 -1
  1034. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js +40 -10
  1035. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js.map +1 -1
  1036. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +6 -2
  1037. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
  1038. package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
  1039. package/node_modules/@earendil-works/pi-agent-core/package.json +3 -3
  1040. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts +1 -1
  1041. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
  1042. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +130 -15
  1043. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
  1044. package/node_modules/@earendil-works/pi-ai/dist/api/context-room.d.ts +20 -0
  1045. package/node_modules/@earendil-works/pi-ai/dist/api/context-room.d.ts.map +1 -0
  1046. package/node_modules/@earendil-works/pi-ai/dist/api/context-room.js +40 -0
  1047. package/node_modules/@earendil-works/pi-ai/dist/api/context-room.js.map +1 -0
  1048. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.js +4 -4
  1049. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.js.map +1 -1
  1050. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js +1 -1
  1051. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js.map +1 -1
  1052. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
  1053. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +16 -1
  1054. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
  1055. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
  1056. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +2 -1
  1057. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
  1058. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts +2 -0
  1059. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts.map +1 -1
  1060. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js +6 -0
  1061. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js.map +1 -1
  1062. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts +1 -3
  1063. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
  1064. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +2 -16
  1065. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
  1066. package/node_modules/@earendil-works/pi-ai/dist/api/warm-prompt-cache.js +1 -1
  1067. package/node_modules/@earendil-works/pi-ai/dist/api/warm-prompt-cache.js.map +1 -1
  1068. package/node_modules/@earendil-works/pi-ai/dist/auth/pool/slots.d.ts +16 -3
  1069. package/node_modules/@earendil-works/pi-ai/dist/auth/pool/slots.d.ts.map +1 -1
  1070. package/node_modules/@earendil-works/pi-ai/dist/auth/pool/slots.js +40 -6
  1071. package/node_modules/@earendil-works/pi-ai/dist/auth/pool/slots.js.map +1 -1
  1072. package/node_modules/@earendil-works/pi-ai/dist/compat/extension-oauth-types.d.ts +8 -0
  1073. package/node_modules/@earendil-works/pi-ai/dist/compat/extension-oauth-types.d.ts.map +1 -1
  1074. package/node_modules/@earendil-works/pi-ai/dist/compat/extension-oauth-types.js.map +1 -1
  1075. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +1 -0
  1076. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
  1077. package/node_modules/@earendil-works/pi-ai/dist/index.js +1 -0
  1078. package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
  1079. package/node_modules/@earendil-works/pi-ai/dist/models.d.ts.map +1 -1
  1080. package/node_modules/@earendil-works/pi-ai/dist/models.js +3 -2
  1081. package/node_modules/@earendil-works/pi-ai/dist/models.js.map +1 -1
  1082. package/node_modules/@earendil-works/pi-ai/dist/openai-responses-compat.d.ts +2 -0
  1083. package/node_modules/@earendil-works/pi-ai/dist/openai-responses-compat.d.ts.map +1 -1
  1084. package/node_modules/@earendil-works/pi-ai/dist/openai-responses-compat.js.map +1 -1
  1085. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  1086. package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
  1087. package/node_modules/@earendil-works/pi-ai/dist/providers/data/azure-openai-responses.json +1 -1
  1088. package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
  1089. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  1090. package/node_modules/@earendil-works/pi-ai/dist/providers/data/fireworks.json +1 -1
  1091. package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
  1092. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  1093. package/node_modules/@earendil-works/pi-ai/dist/providers/data/nvidia.json +1 -1
  1094. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -1
  1095. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
  1096. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
  1097. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  1098. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  1099. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.d.ts +1 -1
  1100. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.d.ts.map +1 -1
  1101. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.js +8 -1
  1102. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.js.map +1 -1
  1103. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +14 -1
  1104. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  1105. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  1106. package/node_modules/@earendil-works/pi-ai/dist/utils/drop-failed-assistant-turns.d.ts +23 -0
  1107. package/node_modules/@earendil-works/pi-ai/dist/utils/drop-failed-assistant-turns.d.ts.map +1 -0
  1108. package/node_modules/@earendil-works/pi-ai/dist/utils/drop-failed-assistant-turns.js +58 -0
  1109. package/node_modules/@earendil-works/pi-ai/dist/utils/drop-failed-assistant-turns.js.map +1 -0
  1110. package/node_modules/@earendil-works/pi-ai/dist/utils/node-http-proxy.d.ts.map +1 -1
  1111. package/node_modules/@earendil-works/pi-ai/dist/utils/node-http-proxy.js +53 -12
  1112. package/node_modules/@earendil-works/pi-ai/dist/utils/node-http-proxy.js.map +1 -1
  1113. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  1114. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +2 -0
  1115. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  1116. package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.d.ts +4 -2
  1117. package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.d.ts.map +1 -1
  1118. package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.js +3 -0
  1119. package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.js.map +1 -1
  1120. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.d.ts.map +1 -1
  1121. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.js +3 -0
  1122. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.js.map +1 -1
  1123. package/node_modules/@earendil-works/pi-ai/package.json +3 -3
  1124. package/node_modules/@earendil-works/pi-pty/package.json +1 -1
  1125. package/node_modules/@earendil-works/pi-telemetry/package.json +1 -1
  1126. package/node_modules/@earendil-works/pi-tui/README.md +1 -1
  1127. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts +1 -0
  1128. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +1 -1
  1129. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js +36 -3
  1130. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +1 -1
  1131. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -1
  1132. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  1133. package/node_modules/@earendil-works/pi-tui/dist/index.js +1 -1
  1134. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  1135. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +2 -0
  1136. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
  1137. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +106 -6
  1138. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
  1139. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts +6 -0
  1140. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  1141. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +17 -4
  1142. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  1143. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts +11 -0
  1144. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts.map +1 -1
  1145. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js +57 -15
  1146. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js.map +1 -1
  1147. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +1 -1
  1148. package/node_modules/@earendil-works/pi-tui/dist/tui.js +22 -7
  1149. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +1 -1
  1150. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  1151. package/package.json +17 -17
@@ -0,0 +1,151 @@
1
+ /**
2
+ * The `media_placeholders` transform (one choke point, not five).
3
+ *
4
+ * A client that advertised `MEDIA_PLACEHOLDERS_CAPABILITY` must never receive
5
+ * `{type:"image", data:<base64>}` inside a tool result — four inline images once
6
+ * overflowed a 4 MiB socket queue and froze the desktop. Rather than patching each
7
+ * wire path that can carry a tool result (`message_start`/`message_end`,
8
+ * `turn_end.toolResults`, `agent_end`, `entry_appended`, and the `get_messages`,
9
+ * `get_entries`, `get_tree`, `get_state`, `open_session` responses — a list that has
10
+ * already been wrong once), every record is funnelled through this pure transform at
11
+ * `SessionEventWriter.enqueue`.
12
+ *
13
+ * Two hard rules:
14
+ * - Type-gate FIRST. `message_update` is the hot path (one record per token) and must
15
+ * never be walked.
16
+ * - Copy-on-write. Responses hand out live agent state by reference
17
+ * (`success(id, "get_messages", { messages: session.messages })`), so the input graph
18
+ * is never mutated and unchanged sub-trees keep their identity. When nothing changed
19
+ * the SAME record reference comes back, which lets the caller reuse the line it
20
+ * already serialized.
21
+ *
22
+ * User-authored images (`prompt.images`) stay intact: they are bounded by the client
23
+ * that sent them; the fan-out hazard is tool output.
24
+ */
25
+ /** Record types that can carry a tool result somewhere in their payload. */
26
+ const MEDIA_BEARING_RECORD_TYPES = new Set([
27
+ "tool_execution_end",
28
+ "message_start",
29
+ "message_end",
30
+ "turn_end",
31
+ "agent_end",
32
+ "entry_appended",
33
+ ]);
34
+ /** Response commands whose payload can carry a tool result. */
35
+ const MEDIA_BEARING_RESPONSE_COMMANDS = new Set([
36
+ "get_messages",
37
+ "get_entries",
38
+ "get_tree",
39
+ "get_state",
40
+ "open_session",
41
+ ]);
42
+ /**
43
+ * Decoded byte length of a base64 string, derived from its length alone.
44
+ *
45
+ * Decoding a multi-MiB payload just to report its size would defeat the purpose of
46
+ * omitting it.
47
+ */
48
+ export function base64ByteLength(data) {
49
+ const padding = data.endsWith("==") ? 2 : data.endsWith("=") ? 1 : 0;
50
+ return Math.max(0, Math.floor((data.length * 3) / 4) - padding);
51
+ }
52
+ function isPlainObject(value) {
53
+ return typeof value === "object" && value !== null && !Array.isArray(value);
54
+ }
55
+ function isInlineImage(value) {
56
+ return isPlainObject(value) && value.type === "image" && typeof value.data === "string";
57
+ }
58
+ /** Replace inline images in one tool-result content array; same reference when none. */
59
+ function omitContentImages(content, toolCallId) {
60
+ let replaced;
61
+ for (let index = 0; index < content.length; index++) {
62
+ const block = content[index];
63
+ if (!isInlineImage(block))
64
+ continue;
65
+ replaced ??= [...content];
66
+ replaced[index] = {
67
+ type: "image_ref",
68
+ mimeType: typeof block.mimeType === "string" ? block.mimeType : "application/octet-stream",
69
+ byteLength: base64ByteLength(block.data),
70
+ ref: { toolCallId, contentIndex: index },
71
+ };
72
+ }
73
+ return replaced ?? content;
74
+ }
75
+ /** A toolResult message whose content array carries images, rebuilt without them. */
76
+ function omitToolResultImages(message) {
77
+ const content = message.content;
78
+ const toolCallId = typeof message.toolCallId === "string" ? message.toolCallId : "";
79
+ if (!Array.isArray(content))
80
+ return message;
81
+ const omitted = omitContentImages(content, toolCallId);
82
+ return omitted === content ? message : { ...message, content: omitted };
83
+ }
84
+ /**
85
+ * Copy-on-write walk. Every object with `role:"toolResult"` has its content array
86
+ * scrubbed, wherever it sits (message arrays, `turn_end.toolResults`, session entries,
87
+ * tree nodes, `state.entries`). Unchanged sub-trees are returned by reference.
88
+ */
89
+ function walk(value) {
90
+ if (Array.isArray(value)) {
91
+ let replaced;
92
+ for (let index = 0; index < value.length; index++) {
93
+ const next = walk(value[index]);
94
+ if (next === value[index])
95
+ continue;
96
+ replaced ??= [...value];
97
+ replaced[index] = next;
98
+ }
99
+ return replaced ?? value;
100
+ }
101
+ if (!isPlainObject(value))
102
+ return value;
103
+ const scrubbed = value.role === "toolResult" ? omitToolResultImages(value) : value;
104
+ let replaced = scrubbed === value ? undefined : { ...scrubbed };
105
+ for (const [key, child] of Object.entries(scrubbed)) {
106
+ if (key === "content" && scrubbed !== value)
107
+ continue;
108
+ if (!isPlainObject(child) && !Array.isArray(child))
109
+ continue;
110
+ const next = walk(child);
111
+ if (next === child)
112
+ continue;
113
+ replaced ??= { ...scrubbed };
114
+ replaced[key] = next;
115
+ }
116
+ return replaced ?? value;
117
+ }
118
+ /** `tool_execution_end.result.content` is not a toolResult message; scrub it explicitly. */
119
+ function omitToolExecutionEndImages(record) {
120
+ const result = record.result;
121
+ if (!isPlainObject(result) || !Array.isArray(result.content))
122
+ return record;
123
+ const toolCallId = typeof record.toolCallId === "string" ? record.toolCallId : "";
124
+ const omitted = omitContentImages(result.content, toolCallId);
125
+ return omitted === result.content ? record : { ...record, result: { ...result, content: omitted } };
126
+ }
127
+ /** True when this record type can carry a tool result at all (cheap gate). */
128
+ function carriesMedia(record) {
129
+ if (typeof record.type !== "string")
130
+ return false;
131
+ if (MEDIA_BEARING_RECORD_TYPES.has(record.type))
132
+ return true;
133
+ return record.type === "response" && typeof record.command === "string"
134
+ ? MEDIA_BEARING_RESPONSE_COMMANDS.has(record.command)
135
+ : false;
136
+ }
137
+ /**
138
+ * Replace inline tool-result images with `image_ref` placeholders.
139
+ *
140
+ * Returns the SAME reference when nothing changed, so the caller can skip the second
141
+ * serialization entirely.
142
+ */
143
+ export function omitInlineMedia(record) {
144
+ const typed = record;
145
+ if (!carriesMedia(typed))
146
+ return record;
147
+ const scrubbed = typed.type === "tool_execution_end" ? omitToolExecutionEndImages(typed) : typed;
148
+ const walked = walk(scrubbed);
149
+ return (walked === typed ? record : walked);
150
+ }
151
+ //# sourceMappingURL=media-placeholders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media-placeholders.js","sourceRoot":"","sources":["../../../src/modes/rpc/media-placeholders.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * The `media_placeholders` transform (one choke point, not five).\n *\n * A client that advertised `MEDIA_PLACEHOLDERS_CAPABILITY` must never receive\n * `{type:\"image\", data:<base64>}` inside a tool result — four inline images once\n * overflowed a 4 MiB socket queue and froze the desktop. Rather than patching each\n * wire path that can carry a tool result (`message_start`/`message_end`,\n * `turn_end.toolResults`, `agent_end`, `entry_appended`, and the `get_messages`,\n * `get_entries`, `get_tree`, `get_state`, `open_session` responses — a list that has\n * already been wrong once), every record is funnelled through this pure transform at\n * `SessionEventWriter.enqueue`.\n *\n * Two hard rules:\n * - Type-gate FIRST. `message_update` is the hot path (one record per token) and must\n * never be walked.\n * - Copy-on-write. Responses hand out live agent state by reference\n * (`success(id, \"get_messages\", { messages: session.messages })`), so the input graph\n * is never mutated and unchanged sub-trees keep their identity. When nothing changed\n * the SAME record reference comes back, which lets the caller reuse the line it\n * already serialized.\n *\n * User-authored images (`prompt.images`) stay intact: they are bounded by the client\n * that sent them; the fan-out hazard is tool output.\n */\n\ntype RpcRecord = Record<string, unknown>;\n\n/** Record types that can carry a tool result somewhere in their payload. */\nconst MEDIA_BEARING_RECORD_TYPES = new Set([\n\t\"tool_execution_end\",\n\t\"message_start\",\n\t\"message_end\",\n\t\"turn_end\",\n\t\"agent_end\",\n\t\"entry_appended\",\n]);\n\n/** Response commands whose payload can carry a tool result. */\nconst MEDIA_BEARING_RESPONSE_COMMANDS = new Set([\n\t\"get_messages\",\n\t\"get_entries\",\n\t\"get_tree\",\n\t\"get_state\",\n\t\"open_session\",\n]);\n\n/** The block a capable client receives in place of inline image bytes. */\nexport interface ImageRefBlock {\n\treadonly type: \"image_ref\";\n\treadonly mimeType: string;\n\treadonly byteLength: number;\n\treadonly ref: { readonly toolCallId: string; readonly contentIndex: number };\n}\n\n/**\n * Decoded byte length of a base64 string, derived from its length alone.\n *\n * Decoding a multi-MiB payload just to report its size would defeat the purpose of\n * omitting it.\n */\nexport function base64ByteLength(data: string): number {\n\tconst padding = data.endsWith(\"==\") ? 2 : data.endsWith(\"=\") ? 1 : 0;\n\treturn Math.max(0, Math.floor((data.length * 3) / 4) - padding);\n}\n\nfunction isPlainObject(value: unknown): value is RpcRecord {\n\treturn typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction isInlineImage(value: unknown): value is { type: \"image\"; data: string; mimeType?: string } {\n\treturn isPlainObject(value) && value.type === \"image\" && typeof value.data === \"string\";\n}\n\n/** Replace inline images in one tool-result content array; same reference when none. */\nfunction omitContentImages(content: readonly unknown[], toolCallId: string): readonly unknown[] {\n\tlet replaced: unknown[] | undefined;\n\tfor (let index = 0; index < content.length; index++) {\n\t\tconst block = content[index];\n\t\tif (!isInlineImage(block)) continue;\n\t\treplaced ??= [...content];\n\t\treplaced[index] = {\n\t\t\ttype: \"image_ref\",\n\t\t\tmimeType: typeof block.mimeType === \"string\" ? block.mimeType : \"application/octet-stream\",\n\t\t\tbyteLength: base64ByteLength(block.data),\n\t\t\tref: { toolCallId, contentIndex: index },\n\t\t} satisfies ImageRefBlock;\n\t}\n\treturn replaced ?? content;\n}\n\n/** A toolResult message whose content array carries images, rebuilt without them. */\nfunction omitToolResultImages(message: RpcRecord): RpcRecord {\n\tconst content = message.content;\n\tconst toolCallId = typeof message.toolCallId === \"string\" ? message.toolCallId : \"\";\n\tif (!Array.isArray(content)) return message;\n\tconst omitted = omitContentImages(content, toolCallId);\n\treturn omitted === content ? message : { ...message, content: omitted };\n}\n\n/**\n * Copy-on-write walk. Every object with `role:\"toolResult\"` has its content array\n * scrubbed, wherever it sits (message arrays, `turn_end.toolResults`, session entries,\n * tree nodes, `state.entries`). Unchanged sub-trees are returned by reference.\n */\nfunction walk(value: unknown): unknown {\n\tif (Array.isArray(value)) {\n\t\tlet replaced: unknown[] | undefined;\n\t\tfor (let index = 0; index < value.length; index++) {\n\t\t\tconst next = walk(value[index]);\n\t\t\tif (next === value[index]) continue;\n\t\t\treplaced ??= [...value];\n\t\t\treplaced[index] = next;\n\t\t}\n\t\treturn replaced ?? value;\n\t}\n\tif (!isPlainObject(value)) return value;\n\n\tconst scrubbed = value.role === \"toolResult\" ? omitToolResultImages(value) : value;\n\tlet replaced: RpcRecord | undefined = scrubbed === value ? undefined : { ...scrubbed };\n\tfor (const [key, child] of Object.entries(scrubbed)) {\n\t\tif (key === \"content\" && scrubbed !== value) continue;\n\t\tif (!isPlainObject(child) && !Array.isArray(child)) continue;\n\t\tconst next = walk(child);\n\t\tif (next === child) continue;\n\t\treplaced ??= { ...scrubbed };\n\t\treplaced[key] = next;\n\t}\n\treturn replaced ?? value;\n}\n\n/** `tool_execution_end.result.content` is not a toolResult message; scrub it explicitly. */\nfunction omitToolExecutionEndImages(record: RpcRecord): RpcRecord {\n\tconst result = record.result;\n\tif (!isPlainObject(result) || !Array.isArray(result.content)) return record;\n\tconst toolCallId = typeof record.toolCallId === \"string\" ? record.toolCallId : \"\";\n\tconst omitted = omitContentImages(result.content, toolCallId);\n\treturn omitted === result.content ? record : { ...record, result: { ...result, content: omitted } };\n}\n\n/** True when this record type can carry a tool result at all (cheap gate). */\nfunction carriesMedia(record: RpcRecord): boolean {\n\tif (typeof record.type !== \"string\") return false;\n\tif (MEDIA_BEARING_RECORD_TYPES.has(record.type)) return true;\n\treturn record.type === \"response\" && typeof record.command === \"string\"\n\t\t? MEDIA_BEARING_RESPONSE_COMMANDS.has(record.command)\n\t\t: false;\n}\n\n/**\n * Replace inline tool-result images with `image_ref` placeholders.\n *\n * Returns the SAME reference when nothing changed, so the caller can skip the second\n * serialization entirely.\n */\nexport function omitInlineMedia<T extends object>(record: T): T {\n\tconst typed = record as unknown as RpcRecord;\n\tif (!carriesMedia(typed)) return record;\n\tconst scrubbed = typed.type === \"tool_execution_end\" ? omitToolExecutionEndImages(typed) : typed;\n\tconst walked = walk(scrubbed);\n\treturn (walked === typed ? record : walked) as T;\n}\n"]}
@@ -272,6 +272,9 @@ function socketSink(socket) {
272
272
  if (!socket.destroyed)
273
273
  needsDrain = !socket.write(chunk);
274
274
  },
275
+ close() {
276
+ socket.destroy();
277
+ },
275
278
  waitForBackpressure() {
276
279
  if (socket.destroyed || !needsDrain)
277
280
  return Promise.resolve();
@@ -1 +1 @@
1
- {"version":3,"file":"multi-session-host.js","sourceRoot":"","sources":["../../../src/modes/rpc/multi-session-host.ts"],"names":[],"mappings":"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","sourcesContent":["import { access, chmod, mkdir, unlink } from \"node:fs/promises\";\nimport { createConnection, createServer, type Server, type Socket } from \"node:net\";\nimport { dirname, join } from \"node:path\";\nimport type { CreateAgentSessionRuntimeFactory } from \"../../core/agent-session-runtime.ts\";\nimport { envValue } from \"../../core/brand.ts\";\nimport {\n\tflushRawStdout,\n\ttakeOverStdout,\n\twaitForRawStdoutBackpressure,\n\twriteRawStdout,\n} from \"../../core/output-guard.ts\";\nimport { killTrackedDetachedChildren } from \"../../utils/shell.ts\";\nimport type { RpcConnectionSink } from \"./connection-handler.ts\";\nimport { parseClientCapabilities } from \"./custom-capability.ts\";\nimport { parseIdleExitMs } from \"./host-lifecycle.ts\";\nimport { armHostWatchdog, readHostWatchdogConfigFromBrandEnv } from \"./host-watchdog.ts\";\nimport { attachJsonlLineReader, MAX_RPC_LINE_CHARACTERS } from \"./jsonl.ts\";\nimport { rpcCommandShapeError } from \"./rpc-input-validation.ts\";\nimport type { RpcCommand, RpcResponse } from \"./rpc-types.ts\";\nimport { type RpcBindingFactory, SessionCommandRouter } from \"./session-command-router.ts\";\nimport { SessionEventWriter } from \"./session-event-writer.ts\";\nimport { RpcSessionRegistry } from \"./session-registry.ts\";\nimport {\n\tauthenticateSocket,\n\tensureSocketSecret,\n\tresolveSocketTransportAddress,\n\tSOCKET_SECRET_FILE_ENV,\n\tsocketSecretPath,\n} from \"./socket-transport.ts\";\n\nexport interface MultiSessionHostOptions {\n\tagentDir: string;\n\tcreateRuntime: CreateAgentSessionRuntimeFactory;\n\tcwd: string;\n\tpermissionPreset?: string;\n\tcreationModel?: { provider: string; modelId: string };\n\tinitialThinkingLevel?: string;\n\tlisten?: string;\n\t/** Test seam: defaults to the real shared-session binding. */\n\tcreateBinding?: RpcBindingFactory;\n}\n\n/** Environment override for the idle-session eviction window, in milliseconds. */\nexport const RPC_SESSION_IDLE_EVICTION_MS_ENV = \"SENPI_RPC_SESSION_IDLE_EVICTION_MS\";\n/** Environment override for the concurrent open-session cap. */\nexport const RPC_MAX_SESSIONS_ENV = \"SENPI_RPC_MAX_SESSIONS\";\n/** Environment override for the empty-host exit window, in milliseconds. */\nexport const RPC_HOST_EMPTY_EXIT_MS_ENV = \"SENPI_RPC_HOST_EMPTY_EXIT_MS\";\n/** Environment override for the graceful close_session teardown window, in milliseconds. */\nexport const RPC_CLOSE_GRACE_MS_ENV = \"SENPI_RPC_CLOSE_GRACE_MS\";\n/** Default idle-eviction window: 30 minutes after a session's last routed command or settled turn. */\nexport const DEFAULT_SESSION_IDLE_EVICTION_MS = 30 * 60_000;\n/** Default session cap: an idle session holds a full runtime (~340-510 MB RSS measured). */\nexport const DEFAULT_MAX_SESSIONS = 8;\n/** Default empty-host exit: 15 minutes with zero open sessions, matching the supervisor's idle window. */\nexport const DEFAULT_HOST_EMPTY_EXIT_MS = 15 * 60_000;\n/** Win32 named-pipe close can leave libuv's server callback pending after handles are destroyed. */\nconst WINDOWS_SHUTDOWN_HARD_EXIT_MS = 2_000;\n\n/** Explicit occupancy-policy overrides for createHostCore; tests inject clocks and hooks here. */\nexport interface HostIdleOverrides {\n\tnow?: () => number;\n\tidleEvictionMs?: number;\n\temptyExitMs?: number;\n\tmaxSessions?: number;\n\tcloseGraceMs?: number;\n\t/** Shutdown hook the empty-exit window invokes; hosts pass their exit path. */\n\tonEmptyExit?: () => void;\n\t/** Gate consulted before the empty-exit window advances (connected clients block it). */\n\tcanExitWhenEmpty?: () => boolean;\n}\n\nfunction parseSessionCap(value: string | undefined): number | undefined {\n\tif (value === undefined || !/^\\d+$/.test(value.trim())) return undefined;\n\tconst parsed = Number(value.trim());\n\treturn Number.isFinite(parsed) && parsed > 0 ? parsed : undefined;\n}\n\n/** Precedence: explicit overrides beat environment variables beat documented defaults. */\nexport function resolveHostIdlePolicy(\n\tenv: Readonly<Record<string, string | undefined>>,\n\toverrides: HostIdleOverrides = {},\n): { now: () => number; idleEvictionMs: number; emptyExitMs: number; maxSessions: number } {\n\treturn {\n\t\tnow: overrides.now ?? Date.now,\n\t\tidleEvictionMs:\n\t\t\toverrides.idleEvictionMs ??\n\t\t\tparseIdleExitMs(env[RPC_SESSION_IDLE_EVICTION_MS_ENV]) ??\n\t\t\tDEFAULT_SESSION_IDLE_EVICTION_MS,\n\t\temptyExitMs:\n\t\t\toverrides.emptyExitMs ?? parseIdleExitMs(env[RPC_HOST_EMPTY_EXIT_MS_ENV]) ?? DEFAULT_HOST_EMPTY_EXIT_MS,\n\t\tmaxSessions: overrides.maxSessions ?? parseSessionCap(env[RPC_MAX_SESSIONS_ENV]) ?? DEFAULT_MAX_SESSIONS,\n\t};\n}\n\ninterface Connection {\n\treadonly id: string;\n\treadonly sink: RpcConnectionSink;\n\treadonly detach: () => void;\n\treadonly close: () => void;\n}\n\n/**\n * Socket agent events are delivered only to connections attached to their\n * session, tagged with its routing sessionId. Content-free session lifecycle\n * events remain visible to every connection. Responses and extension UI\n * requests remain requester-only; foreign observation uses attach-on-open.\n */\nexport async function runMultiSessionHost(options: MultiSessionHostOptions): Promise<never> {\n\tif (options.listen === undefined || options.listen === \"stdio://\") return runStdioHost(options);\n\treturn runSocketHost(options, resolveSocketPath(options.listen, options.agentDir));\n}\n\nexport function createHostCore(\n\toptions: MultiSessionHostOptions,\n\twriter: SessionEventWriter,\n\tcapabilities = parseClientCapabilities(envValue(\"RPC_CLIENT_CAPABILITIES\")),\n\tidle: HostIdleOverrides = {},\n) {\n\tconst policy = resolveHostIdlePolicy(process.env, idle);\n\tconst router = new SessionCommandRouter(\n\t\tnew RpcSessionRegistry({\n\t\t\tagentDir: options.agentDir,\n\t\t\tcreateRuntime: options.createRuntime,\n\t\t\tnow: policy.now,\n\t\t\tmaxSessions: policy.maxSessions,\n\t\t\tcloseGraceMs: idle.closeGraceMs ?? parseIdleExitMs(process.env[RPC_CLOSE_GRACE_MS_ENV]) ?? 10_000,\n\t\t}),\n\t\twriter,\n\t\toptions,\n\t\toptions.createBinding,\n\t\t{ capabilities },\n\t\t{\n\t\t\tnow: policy.now,\n\t\t\tidleEvictionMs: policy.idleEvictionMs,\n\t\t\temptyExitMs: policy.emptyExitMs,\n\t\t\tonEmptyExit: idle.onEmptyExit,\n\t\t\tcanExitWhenEmpty: idle.canExitWhenEmpty,\n\t\t},\n\t);\n\tconst handle = async (line: string): Promise<void> => {\n\t\tlet parsed: unknown;\n\t\ttry {\n\t\t\tparsed = JSON.parse(line);\n\t\t} catch (cause) {\n\t\t\tawait writer.enqueueControl(parseError(`Failed to parse command: ${errorMessage(cause)}`));\n\t\t\treturn;\n\t\t}\n\t\tconst shapeError = rpcCommandShapeError(parsed);\n\t\tif (shapeError) {\n\t\t\tawait writer.enqueueControl(parseError(shapeError));\n\t\t\treturn;\n\t\t}\n\t\tconst response = await router.handle(parsed as RpcCommand);\n\t\tif (response) await writer.enqueueControl(response);\n\t};\n\treturn { router, handle };\n}\n\n/** Plain-stdio host with no eagerly-created AgentSessionRuntime. */\nasync function runStdioHost(options: MultiSessionHostOptions): Promise<never> {\n\ttakeOverStdout();\n\tconst sink: RpcConnectionSink = { writeRaw: writeRawStdout, waitForBackpressure: waitForRawStdoutBackpressure };\n\tconst writer = new SessionEventWriter(sink.writeRaw, sink.waitForBackpressure);\n\t// An empty host (no session ever opened, or all closed) must not stay resident\n\t// forever: exit through the normal shutdown path once the window elapses.\n\tconst { router, handle } = createHostCore(options, writer, undefined, {\n\t\tonEmptyExit: () => void shutdown(0),\n\t});\n\tlet shuttingDown = false;\n\tconst shutdown = async (exitCode = 0): Promise<never> => {\n\t\tif (shuttingDown) process.exit(exitCode);\n\t\tshuttingDown = true;\n\t\tdetach();\n\t\tawait router.dispose();\n\t\tawait writer.flush();\n\t\tawait flushRawStdout();\n\t\tprocess.exit(exitCode);\n\t};\n\tconst onEnd = () => void shutdown();\n\tprocess.stdin.on(\"end\", onEnd);\n\tconst detachReader = attachJsonlLineReader(process.stdin, (line) => void handle(line), {\n\t\tmaxLineLength: MAX_RPC_LINE_CHARACTERS,\n\t\tonOversizedLine: () => void writer.enqueueControl(parseError(oversizedLineError())),\n\t});\n\tconst detach = () => {\n\t\tdetachReader();\n\t\tprocess.stdin.off(\"end\", onEnd);\n\t};\n\tregisterShutdownSignals(shutdown);\n\treturn new Promise(() => {});\n}\n\nasync function runSocketHost(options: MultiSessionHostOptions, socketPath: string): Promise<never> {\n\tawait prepareSocketPath(socketPath);\n\tconst writer = new SessionEventWriter(() => {});\n\tconst connections = new Map<string, Connection>();\n\tconst { router, handle } = createHostCore(\n\t\toptions,\n\t\twriter,\n\t\tparseClientCapabilities(envValue(\"RPC_CLIENT_CAPABILITIES\")).filter(\n\t\t\t(capability) => capability !== \"rendered_components\",\n\t\t),\n\t\t// Supervised hosts idle-exit via the supervisor, but a socket host that\n\t\t// outlives its supervisor (or is started bare) still self-exits when empty.\n\t\t// A connected client counts as occupancy even with no session open: exiting\n\t\t// under it would drop its socket and read as a crash to the supervisor.\n\t\t{ onEmptyExit: () => void shutdown(0), canExitWhenEmpty: () => connections.size === 0 },\n\t);\n\tlet nextConnection = 0;\n\tlet shuttingDown = false;\n\tconst secret =\n\t\tprocess.platform === \"win32\"\n\t\t\t? await ensureSocketSecret(process.env[SOCKET_SECRET_FILE_ENV] ?? socketSecretPath(socketPath))\n\t\t\t: undefined;\n\tconst server = createServer((socket) => {\n\t\tconst accept = (): void => {\n\t\t\tconst id = `socket-${++nextConnection}`;\n\t\t\tconst sink = socketSink(socket);\n\t\t\twriter.registerConnection(id, sink);\n\t\t\tconst detachReader = attachJsonlLineReader(\n\t\t\t\tsocket,\n\t\t\t\t(line) => {\n\t\t\t\t\t// Do not serialize awaited commands: extension_ui_response and other\n\t\t\t\t\t// re-entrant frames must be able to resolve a command already awaiting them.\n\t\t\t\t\tvoid writer\n\t\t\t\t\t\t.withConnection(id, () => handle(line))\n\t\t\t\t\t\t.catch((cause) => {\n\t\t\t\t\t\t\tprocess.stderr.write(`senpi rpc connection ${id} failed: ${errorMessage(cause)}\\n`);\n\t\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmaxLineLength: MAX_RPC_LINE_CHARACTERS,\n\t\t\t\t\tonOversizedLine: () => {\n\t\t\t\t\t\tvoid writer\n\t\t\t\t\t\t\t.withConnection(id, () => writer.enqueueControl(parseError(oversizedLineError())))\n\t\t\t\t\t\t\t.catch((cause) =>\n\t\t\t\t\t\t\t\tprocess.stderr.write(`senpi rpc connection ${id} failed: ${errorMessage(cause)}\\n`),\n\t\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t);\n\t\t\tlet detached = false;\n\t\t\tconst detach = () => {\n\t\t\t\tif (detached) return;\n\t\t\t\tdetached = true;\n\t\t\t\tdetachReader();\n\t\t\t\twriter.unregisterConnection(id);\n\t\t\t\tconnections.delete(id);\n\t\t\t\t// A socket that dies without close_session still owns its sessions' attachments\n\t\t\t\t// and path reservations. Release them on the command chain so this runs after any\n\t\t\t\t// in-flight command for this connection settles, otherwise the path stays pinned\n\t\t\t\t// by a runtime whose client is gone and later resumes attach to that orphan.\n\t\t\t\tvoid router.releaseConnection(id).catch((cause) => {\n\t\t\t\t\tprocess.stderr.write(`senpi rpc connection ${id} release failed: ${errorMessage(cause)}\\n`);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconnections.set(id, { id, sink, detach, close: () => socket.destroy() });\n\t\t\tsocket.once(\"close\", detach);\n\t\t\tsocket.once(\"error\", () => detach());\n\t\t};\n\t\tif (secret) authenticateSocket(socket, secret, accept);\n\t\telse accept();\n\t});\n\tserver.on(\"error\", (cause) => {\n\t\tif (!shuttingDown) process.stderr.write(`senpi rpc socket listener failed: ${errorMessage(cause)}\\n`);\n\t});\n\tconst shutdown = async (exitCode = 0, watchdogCleanup?: Promise<void>): Promise<never> => {\n\t\tif (shuttingDown) process.exit(exitCode);\n\t\tshuttingDown = true;\n\t\t// On Windows, destroying named-pipe sockets does not always make libuv's\n\t\t// server.close callback fire: connected pipe instances can remain in the\n\t\t// kernel after the JavaScript handles are destroyed. Keep the normal drain\n\t\t// path, but never let that platform-specific close stall orphan the host.\n\t\ttry {\n\t\t\tfor (const connection of connections.values()) {\n\t\t\t\tconnection.detach();\n\t\t\t\tconnection.close();\n\t\t\t}\n\t\t\tawait (process.platform === \"win32\"\n\t\t\t\t? Promise.race([closeServer(server), delay(WINDOWS_SHUTDOWN_HARD_EXIT_MS)])\n\t\t\t\t: closeServer(server));\n\t\t\tawait router.dispose();\n\t\t\tawait writer.flush();\n\t\t\tawait removeSocketPath(socketPath);\n\t\t\tif (watchdogCleanup) await watchdogCleanup;\n\t\t} finally {\n\t\t\t// Explicitly terminate after every shutdown trigger. Windows named-pipe\n\t\t\t// handles are not fully controllable from JS, and an unresolved cleanup\n\t\t\t// must not leave this daemon or its public endpoint alive.\n\t\t\tprocess.exit(exitCode);\n\t\t}\n\t};\n\tregisterShutdownSignals(shutdown);\n\t// Arm before listen: a supervisor death during the listen transition must\n\t// still close the child and clean its private endpoint.\n\tarmHostWatchdog(readHostWatchdogConfigFromBrandEnv(), (reason, cleanup) => {\n\t\tprocess.stderr.write(`senpi rpc host: ${reason}; shutting down\\n`);\n\t\t// Enter shutdown before killing session-owned child processes. The Windows\n\t\t// tree killer is synchronous, while the shutdown fallback must be armed\n\t\t// before any such cleanup can delay the event loop.\n\t\tvoid shutdown(0, cleanup);\n\t\tsetImmediate(killTrackedDetachedChildren);\n\t});\n\tawait listen(server, socketPath, secret);\n\tprocess.stderr.write(`senpi rpc listening on ${formatSocketAddress(socketPath)}\\n`);\n\n\t// Opt-in only: set by the lifecycle supervisor so this host can never outlive\n\t// it, including when the supervisor is SIGKILLed and runs no handler at all.\n\treturn new Promise(() => {});\n}\n\nfunction delay(ms: number): Promise<void> {\n\treturn new Promise((resolve) => setTimeout(resolve, ms));\n}\n\nfunction parseError(error: string): RpcResponse {\n\treturn { type: \"response\", command: \"parse\", success: false, error };\n}\n\nfunction oversizedLineError(): string {\n\treturn `RPC input line exceeds ${MAX_RPC_LINE_CHARACTERS} characters.`;\n}\n\nfunction errorMessage(cause: unknown): string {\n\treturn cause instanceof Error ? cause.message : String(cause);\n}\n\nfunction resolveSocketPath(value: string, agentDir: string): string {\n\tif (value === \"unix://\") return join(agentDir, \"rpc\", \"rpc.sock\");\n\tif (value.startsWith(\"unix://\")) {\n\t\tconst path = value.slice(\"unix://\".length);\n\t\tif (path.length === 0) return join(agentDir, \"rpc\", \"rpc.sock\");\n\t\tif (path.startsWith(\"@\") && process.platform === \"linux\") return `\\0${path.slice(1)}`;\n\t\treturn path;\n\t}\n\treturn value;\n}\n\nfunction formatSocketAddress(socketPath: string): string {\n\treturn socketPath.startsWith(\"\\0\") ? `unix://@${socketPath.slice(1)}` : `unix://${socketPath}`;\n}\n\nfunction socketSink(socket: Socket): RpcConnectionSink {\n\tlet needsDrain = false;\n\treturn {\n\t\twriteRaw(chunk) {\n\t\t\tif (!socket.destroyed) needsDrain = !socket.write(chunk);\n\t\t},\n\t\twaitForBackpressure() {\n\t\t\tif (socket.destroyed || !needsDrain) return Promise.resolve();\n\t\t\tneedsDrain = false;\n\t\t\treturn new Promise<void>((resolve) => {\n\t\t\t\tconst done = () => {\n\t\t\t\t\tsocket.off(\"drain\", done);\n\t\t\t\t\tsocket.off(\"close\", done);\n\t\t\t\t\tresolve();\n\t\t\t\t};\n\t\t\t\tsocket.once(\"drain\", done);\n\t\t\t\tsocket.once(\"close\", done);\n\t\t\t});\n\t\t},\n\t};\n}\n\nasync function prepareSocketPath(socketPath: string): Promise<void> {\n\tif (process.platform === \"win32\" || socketPath.startsWith(\"\\0\")) return;\n\tawait mkdir(dirname(socketPath), { recursive: true, mode: 0o700 });\n\ttry {\n\t\tawait access(socketPath);\n\t} catch (cause) {\n\t\tif (isNodeErrorCode(cause, \"ENOENT\")) return;\n\t\tthrow cause;\n\t}\n\tif (await probeSocket(socketPath)) throw new Error(`${socketPath}: address already in use by a live server.`);\n\tawait unlink(socketPath);\n}\n\nfunction probeSocket(socketPath: string): Promise<boolean> {\n\treturn new Promise((resolve) => {\n\t\tconst socket = createConnection(resolveSocketTransportAddress(socketPath, process.platform));\n\t\tconst settle = (live: boolean) => {\n\t\t\tsocket.destroy();\n\t\t\tresolve(live);\n\t\t};\n\t\tsocket.once(\"connect\", () => settle(true));\n\t\tsocket.once(\"error\", () => settle(false));\n\t\tsocket.setTimeout(1_000, () => settle(false));\n\t});\n}\n\nfunction listen(server: Server, socketPath: string, secret?: Uint8Array): Promise<void> {\n\treturn new Promise((resolve, reject) => {\n\t\tserver.once(\"error\", reject);\n\t\tserver.listen(resolveSocketTransportAddress(socketPath, process.platform, secret), async () => {\n\t\t\tserver.off(\"error\", reject);\n\t\t\ttry {\n\t\t\t\tif (process.platform !== \"win32\" && !socketPath.startsWith(\"\\0\")) await chmod(socketPath, 0o600);\n\t\t\t\tresolve();\n\t\t\t} catch (cause) {\n\t\t\t\treject(cause);\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction closeServer(server: Server): Promise<void> {\n\treturn new Promise((resolve, reject) => {\n\t\tserver.close((cause) => (cause ? reject(cause) : resolve()));\n\t});\n}\n\nasync function removeSocketPath(socketPath: string): Promise<void> {\n\tif (process.platform === \"win32\" || socketPath.startsWith(\"\\0\")) return;\n\ttry {\n\t\tawait unlink(socketPath);\n\t} catch (cause) {\n\t\tif (!isNodeErrorCode(cause, \"ENOENT\")) throw cause;\n\t}\n}\n\nfunction isNodeErrorCode(cause: unknown, code: string): boolean {\n\treturn cause instanceof Error && \"code\" in cause && cause.code === code;\n}\n\nfunction registerShutdownSignals(shutdown: (exitCode?: number) => Promise<never>): void {\n\tfor (const signal of process.platform === \"win32\" ? ([\"SIGTERM\"] as const) : ([\"SIGTERM\", \"SIGHUP\"] as const)) {\n\t\tprocess.on(signal, () => {\n\t\t\tkillTrackedDetachedChildren();\n\t\t\tvoid shutdown(signal === \"SIGHUP\" ? 129 : 143);\n\t\t});\n\t}\n}\n"]}
1
+ {"version":3,"file":"multi-session-host.js","sourceRoot":"","sources":["../../../src/modes/rpc/multi-session-host.ts"],"names":[],"mappings":"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","sourcesContent":["import { access, chmod, mkdir, unlink } from \"node:fs/promises\";\nimport { createConnection, createServer, type Server, type Socket } from \"node:net\";\nimport { dirname, join } from \"node:path\";\nimport type { CreateAgentSessionRuntimeFactory } from \"../../core/agent-session-runtime.ts\";\nimport { envValue } from \"../../core/brand.ts\";\nimport {\n\tflushRawStdout,\n\ttakeOverStdout,\n\twaitForRawStdoutBackpressure,\n\twriteRawStdout,\n} from \"../../core/output-guard.ts\";\nimport { killTrackedDetachedChildren } from \"../../utils/shell.ts\";\nimport type { RpcConnectionSink } from \"./connection-handler.ts\";\nimport { parseClientCapabilities } from \"./custom-capability.ts\";\nimport { parseIdleExitMs } from \"./host-lifecycle.ts\";\nimport { armHostWatchdog, readHostWatchdogConfigFromBrandEnv } from \"./host-watchdog.ts\";\nimport { attachJsonlLineReader, MAX_RPC_LINE_CHARACTERS } from \"./jsonl.ts\";\nimport { rpcCommandShapeError } from \"./rpc-input-validation.ts\";\nimport type { RpcCommand, RpcResponse } from \"./rpc-types.ts\";\nimport { type RpcBindingFactory, SessionCommandRouter } from \"./session-command-router.ts\";\nimport { SessionEventWriter } from \"./session-event-writer.ts\";\nimport { RpcSessionRegistry } from \"./session-registry.ts\";\nimport {\n\tauthenticateSocket,\n\tensureSocketSecret,\n\tresolveSocketTransportAddress,\n\tSOCKET_SECRET_FILE_ENV,\n\tsocketSecretPath,\n} from \"./socket-transport.ts\";\n\nexport interface MultiSessionHostOptions {\n\tagentDir: string;\n\tcreateRuntime: CreateAgentSessionRuntimeFactory;\n\tcwd: string;\n\tpermissionPreset?: string;\n\tcreationModel?: { provider: string; modelId: string };\n\tinitialThinkingLevel?: string;\n\tlisten?: string;\n\t/** Test seam: defaults to the real shared-session binding. */\n\tcreateBinding?: RpcBindingFactory;\n}\n\n/** Environment override for the idle-session eviction window, in milliseconds. */\nexport const RPC_SESSION_IDLE_EVICTION_MS_ENV = \"SENPI_RPC_SESSION_IDLE_EVICTION_MS\";\n/** Environment override for the concurrent open-session cap. */\nexport const RPC_MAX_SESSIONS_ENV = \"SENPI_RPC_MAX_SESSIONS\";\n/** Environment override for the empty-host exit window, in milliseconds. */\nexport const RPC_HOST_EMPTY_EXIT_MS_ENV = \"SENPI_RPC_HOST_EMPTY_EXIT_MS\";\n/** Environment override for the graceful close_session teardown window, in milliseconds. */\nexport const RPC_CLOSE_GRACE_MS_ENV = \"SENPI_RPC_CLOSE_GRACE_MS\";\n/** Default idle-eviction window: 30 minutes after a session's last routed command or settled turn. */\nexport const DEFAULT_SESSION_IDLE_EVICTION_MS = 30 * 60_000;\n/** Default session cap: an idle session holds a full runtime (~340-510 MB RSS measured). */\nexport const DEFAULT_MAX_SESSIONS = 8;\n/** Default empty-host exit: 15 minutes with zero open sessions, matching the supervisor's idle window. */\nexport const DEFAULT_HOST_EMPTY_EXIT_MS = 15 * 60_000;\n/** Win32 named-pipe close can leave libuv's server callback pending after handles are destroyed. */\nconst WINDOWS_SHUTDOWN_HARD_EXIT_MS = 2_000;\n\n/** Explicit occupancy-policy overrides for createHostCore; tests inject clocks and hooks here. */\nexport interface HostIdleOverrides {\n\tnow?: () => number;\n\tidleEvictionMs?: number;\n\temptyExitMs?: number;\n\tmaxSessions?: number;\n\tcloseGraceMs?: number;\n\t/** Shutdown hook the empty-exit window invokes; hosts pass their exit path. */\n\tonEmptyExit?: () => void;\n\t/** Gate consulted before the empty-exit window advances (connected clients block it). */\n\tcanExitWhenEmpty?: () => boolean;\n}\n\nfunction parseSessionCap(value: string | undefined): number | undefined {\n\tif (value === undefined || !/^\\d+$/.test(value.trim())) return undefined;\n\tconst parsed = Number(value.trim());\n\treturn Number.isFinite(parsed) && parsed > 0 ? parsed : undefined;\n}\n\n/** Precedence: explicit overrides beat environment variables beat documented defaults. */\nexport function resolveHostIdlePolicy(\n\tenv: Readonly<Record<string, string | undefined>>,\n\toverrides: HostIdleOverrides = {},\n): { now: () => number; idleEvictionMs: number; emptyExitMs: number; maxSessions: number } {\n\treturn {\n\t\tnow: overrides.now ?? Date.now,\n\t\tidleEvictionMs:\n\t\t\toverrides.idleEvictionMs ??\n\t\t\tparseIdleExitMs(env[RPC_SESSION_IDLE_EVICTION_MS_ENV]) ??\n\t\t\tDEFAULT_SESSION_IDLE_EVICTION_MS,\n\t\temptyExitMs:\n\t\t\toverrides.emptyExitMs ?? parseIdleExitMs(env[RPC_HOST_EMPTY_EXIT_MS_ENV]) ?? DEFAULT_HOST_EMPTY_EXIT_MS,\n\t\tmaxSessions: overrides.maxSessions ?? parseSessionCap(env[RPC_MAX_SESSIONS_ENV]) ?? DEFAULT_MAX_SESSIONS,\n\t};\n}\n\ninterface Connection {\n\treadonly id: string;\n\treadonly sink: RpcConnectionSink;\n\treadonly detach: () => void;\n\treadonly close: () => void;\n}\n\n/**\n * Socket agent events are delivered only to connections attached to their\n * session, tagged with its routing sessionId. Content-free session lifecycle\n * events remain visible to every connection. Responses and extension UI\n * requests remain requester-only; foreign observation uses attach-on-open.\n */\nexport async function runMultiSessionHost(options: MultiSessionHostOptions): Promise<never> {\n\tif (options.listen === undefined || options.listen === \"stdio://\") return runStdioHost(options);\n\treturn runSocketHost(options, resolveSocketPath(options.listen, options.agentDir));\n}\n\nexport function createHostCore(\n\toptions: MultiSessionHostOptions,\n\twriter: SessionEventWriter,\n\tcapabilities = parseClientCapabilities(envValue(\"RPC_CLIENT_CAPABILITIES\")),\n\tidle: HostIdleOverrides = {},\n) {\n\tconst policy = resolveHostIdlePolicy(process.env, idle);\n\tconst router = new SessionCommandRouter(\n\t\tnew RpcSessionRegistry({\n\t\t\tagentDir: options.agentDir,\n\t\t\tcreateRuntime: options.createRuntime,\n\t\t\tnow: policy.now,\n\t\t\tmaxSessions: policy.maxSessions,\n\t\t\tcloseGraceMs: idle.closeGraceMs ?? parseIdleExitMs(process.env[RPC_CLOSE_GRACE_MS_ENV]) ?? 10_000,\n\t\t}),\n\t\twriter,\n\t\toptions,\n\t\toptions.createBinding,\n\t\t{ capabilities },\n\t\t{\n\t\t\tnow: policy.now,\n\t\t\tidleEvictionMs: policy.idleEvictionMs,\n\t\t\temptyExitMs: policy.emptyExitMs,\n\t\t\tonEmptyExit: idle.onEmptyExit,\n\t\t\tcanExitWhenEmpty: idle.canExitWhenEmpty,\n\t\t},\n\t);\n\tconst handle = async (line: string): Promise<void> => {\n\t\tlet parsed: unknown;\n\t\ttry {\n\t\t\tparsed = JSON.parse(line);\n\t\t} catch (cause) {\n\t\t\tawait writer.enqueueControl(parseError(`Failed to parse command: ${errorMessage(cause)}`));\n\t\t\treturn;\n\t\t}\n\t\tconst shapeError = rpcCommandShapeError(parsed);\n\t\tif (shapeError) {\n\t\t\tawait writer.enqueueControl(parseError(shapeError));\n\t\t\treturn;\n\t\t}\n\t\tconst response = await router.handle(parsed as RpcCommand);\n\t\tif (response) await writer.enqueueControl(response);\n\t};\n\treturn { router, handle };\n}\n\n/** Plain-stdio host with no eagerly-created AgentSessionRuntime. */\nasync function runStdioHost(options: MultiSessionHostOptions): Promise<never> {\n\ttakeOverStdout();\n\tconst sink: RpcConnectionSink = { writeRaw: writeRawStdout, waitForBackpressure: waitForRawStdoutBackpressure };\n\tconst writer = new SessionEventWriter(sink.writeRaw, sink.waitForBackpressure);\n\t// An empty host (no session ever opened, or all closed) must not stay resident\n\t// forever: exit through the normal shutdown path once the window elapses.\n\tconst { router, handle } = createHostCore(options, writer, undefined, {\n\t\tonEmptyExit: () => void shutdown(0),\n\t});\n\tlet shuttingDown = false;\n\tconst shutdown = async (exitCode = 0): Promise<never> => {\n\t\tif (shuttingDown) process.exit(exitCode);\n\t\tshuttingDown = true;\n\t\tdetach();\n\t\tawait router.dispose();\n\t\tawait writer.flush();\n\t\tawait flushRawStdout();\n\t\tprocess.exit(exitCode);\n\t};\n\tconst onEnd = () => void shutdown();\n\tprocess.stdin.on(\"end\", onEnd);\n\tconst detachReader = attachJsonlLineReader(process.stdin, (line) => void handle(line), {\n\t\tmaxLineLength: MAX_RPC_LINE_CHARACTERS,\n\t\tonOversizedLine: () => void writer.enqueueControl(parseError(oversizedLineError())),\n\t});\n\tconst detach = () => {\n\t\tdetachReader();\n\t\tprocess.stdin.off(\"end\", onEnd);\n\t};\n\tregisterShutdownSignals(shutdown);\n\treturn new Promise(() => {});\n}\n\nasync function runSocketHost(options: MultiSessionHostOptions, socketPath: string): Promise<never> {\n\tawait prepareSocketPath(socketPath);\n\tconst writer = new SessionEventWriter(() => {});\n\tconst connections = new Map<string, Connection>();\n\tconst { router, handle } = createHostCore(\n\t\toptions,\n\t\twriter,\n\t\tparseClientCapabilities(envValue(\"RPC_CLIENT_CAPABILITIES\")).filter(\n\t\t\t(capability) => capability !== \"rendered_components\",\n\t\t),\n\t\t// Supervised hosts idle-exit via the supervisor, but a socket host that\n\t\t// outlives its supervisor (or is started bare) still self-exits when empty.\n\t\t// A connected client counts as occupancy even with no session open: exiting\n\t\t// under it would drop its socket and read as a crash to the supervisor.\n\t\t{ onEmptyExit: () => void shutdown(0), canExitWhenEmpty: () => connections.size === 0 },\n\t);\n\tlet nextConnection = 0;\n\tlet shuttingDown = false;\n\tconst secret =\n\t\tprocess.platform === \"win32\"\n\t\t\t? await ensureSocketSecret(process.env[SOCKET_SECRET_FILE_ENV] ?? socketSecretPath(socketPath))\n\t\t\t: undefined;\n\tconst server = createServer((socket) => {\n\t\tconst accept = (): void => {\n\t\t\tconst id = `socket-${++nextConnection}`;\n\t\t\tconst sink = socketSink(socket);\n\t\t\twriter.registerConnection(id, sink);\n\t\t\tconst detachReader = attachJsonlLineReader(\n\t\t\t\tsocket,\n\t\t\t\t(line) => {\n\t\t\t\t\t// Do not serialize awaited commands: extension_ui_response and other\n\t\t\t\t\t// re-entrant frames must be able to resolve a command already awaiting them.\n\t\t\t\t\tvoid writer\n\t\t\t\t\t\t.withConnection(id, () => handle(line))\n\t\t\t\t\t\t.catch((cause) => {\n\t\t\t\t\t\t\tprocess.stderr.write(`senpi rpc connection ${id} failed: ${errorMessage(cause)}\\n`);\n\t\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmaxLineLength: MAX_RPC_LINE_CHARACTERS,\n\t\t\t\t\tonOversizedLine: () => {\n\t\t\t\t\t\tvoid writer\n\t\t\t\t\t\t\t.withConnection(id, () => writer.enqueueControl(parseError(oversizedLineError())))\n\t\t\t\t\t\t\t.catch((cause) =>\n\t\t\t\t\t\t\t\tprocess.stderr.write(`senpi rpc connection ${id} failed: ${errorMessage(cause)}\\n`),\n\t\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t);\n\t\t\tlet detached = false;\n\t\t\tconst detach = () => {\n\t\t\t\tif (detached) return;\n\t\t\t\tdetached = true;\n\t\t\t\tdetachReader();\n\t\t\t\twriter.unregisterConnection(id);\n\t\t\t\tconnections.delete(id);\n\t\t\t\t// A socket that dies without close_session still owns its sessions' attachments\n\t\t\t\t// and path reservations. Release them on the command chain so this runs after any\n\t\t\t\t// in-flight command for this connection settles, otherwise the path stays pinned\n\t\t\t\t// by a runtime whose client is gone and later resumes attach to that orphan.\n\t\t\t\tvoid router.releaseConnection(id).catch((cause) => {\n\t\t\t\t\tprocess.stderr.write(`senpi rpc connection ${id} release failed: ${errorMessage(cause)}\\n`);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconnections.set(id, { id, sink, detach, close: () => socket.destroy() });\n\t\t\tsocket.once(\"close\", detach);\n\t\t\tsocket.once(\"error\", () => detach());\n\t\t};\n\t\tif (secret) authenticateSocket(socket, secret, accept);\n\t\telse accept();\n\t});\n\tserver.on(\"error\", (cause) => {\n\t\tif (!shuttingDown) process.stderr.write(`senpi rpc socket listener failed: ${errorMessage(cause)}\\n`);\n\t});\n\tconst shutdown = async (exitCode = 0, watchdogCleanup?: Promise<void>): Promise<never> => {\n\t\tif (shuttingDown) process.exit(exitCode);\n\t\tshuttingDown = true;\n\t\t// On Windows, destroying named-pipe sockets does not always make libuv's\n\t\t// server.close callback fire: connected pipe instances can remain in the\n\t\t// kernel after the JavaScript handles are destroyed. Keep the normal drain\n\t\t// path, but never let that platform-specific close stall orphan the host.\n\t\ttry {\n\t\t\tfor (const connection of connections.values()) {\n\t\t\t\tconnection.detach();\n\t\t\t\tconnection.close();\n\t\t\t}\n\t\t\tawait (process.platform === \"win32\"\n\t\t\t\t? Promise.race([closeServer(server), delay(WINDOWS_SHUTDOWN_HARD_EXIT_MS)])\n\t\t\t\t: closeServer(server));\n\t\t\tawait router.dispose();\n\t\t\tawait writer.flush();\n\t\t\tawait removeSocketPath(socketPath);\n\t\t\tif (watchdogCleanup) await watchdogCleanup;\n\t\t} finally {\n\t\t\t// Explicitly terminate after every shutdown trigger. Windows named-pipe\n\t\t\t// handles are not fully controllable from JS, and an unresolved cleanup\n\t\t\t// must not leave this daemon or its public endpoint alive.\n\t\t\tprocess.exit(exitCode);\n\t\t}\n\t};\n\tregisterShutdownSignals(shutdown);\n\t// Arm before listen: a supervisor death during the listen transition must\n\t// still close the child and clean its private endpoint.\n\tarmHostWatchdog(readHostWatchdogConfigFromBrandEnv(), (reason, cleanup) => {\n\t\tprocess.stderr.write(`senpi rpc host: ${reason}; shutting down\\n`);\n\t\t// Enter shutdown before killing session-owned child processes. The Windows\n\t\t// tree killer is synchronous, while the shutdown fallback must be armed\n\t\t// before any such cleanup can delay the event loop.\n\t\tvoid shutdown(0, cleanup);\n\t\tsetImmediate(killTrackedDetachedChildren);\n\t});\n\tawait listen(server, socketPath, secret);\n\tprocess.stderr.write(`senpi rpc listening on ${formatSocketAddress(socketPath)}\\n`);\n\n\t// Opt-in only: set by the lifecycle supervisor so this host can never outlive\n\t// it, including when the supervisor is SIGKILLed and runs no handler at all.\n\treturn new Promise(() => {});\n}\n\nfunction delay(ms: number): Promise<void> {\n\treturn new Promise((resolve) => setTimeout(resolve, ms));\n}\n\nfunction parseError(error: string): RpcResponse {\n\treturn { type: \"response\", command: \"parse\", success: false, error };\n}\n\nfunction oversizedLineError(): string {\n\treturn `RPC input line exceeds ${MAX_RPC_LINE_CHARACTERS} characters.`;\n}\n\nfunction errorMessage(cause: unknown): string {\n\treturn cause instanceof Error ? cause.message : String(cause);\n}\n\nfunction resolveSocketPath(value: string, agentDir: string): string {\n\tif (value === \"unix://\") return join(agentDir, \"rpc\", \"rpc.sock\");\n\tif (value.startsWith(\"unix://\")) {\n\t\tconst path = value.slice(\"unix://\".length);\n\t\tif (path.length === 0) return join(agentDir, \"rpc\", \"rpc.sock\");\n\t\tif (path.startsWith(\"@\") && process.platform === \"linux\") return `\\0${path.slice(1)}`;\n\t\treturn path;\n\t}\n\treturn value;\n}\n\nfunction formatSocketAddress(socketPath: string): string {\n\treturn socketPath.startsWith(\"\\0\") ? `unix://@${socketPath.slice(1)}` : `unix://${socketPath}`;\n}\n\nfunction socketSink(socket: Socket): RpcConnectionSink {\n\tlet needsDrain = false;\n\treturn {\n\t\twriteRaw(chunk) {\n\t\t\tif (!socket.destroyed) needsDrain = !socket.write(chunk);\n\t\t},\n\t\tclose() {\n\t\t\tsocket.destroy();\n\t\t},\n\t\twaitForBackpressure() {\n\t\t\tif (socket.destroyed || !needsDrain) return Promise.resolve();\n\t\t\tneedsDrain = false;\n\t\t\treturn new Promise<void>((resolve) => {\n\t\t\t\tconst done = () => {\n\t\t\t\t\tsocket.off(\"drain\", done);\n\t\t\t\t\tsocket.off(\"close\", done);\n\t\t\t\t\tresolve();\n\t\t\t\t};\n\t\t\t\tsocket.once(\"drain\", done);\n\t\t\t\tsocket.once(\"close\", done);\n\t\t\t});\n\t\t},\n\t};\n}\n\nasync function prepareSocketPath(socketPath: string): Promise<void> {\n\tif (process.platform === \"win32\" || socketPath.startsWith(\"\\0\")) return;\n\tawait mkdir(dirname(socketPath), { recursive: true, mode: 0o700 });\n\ttry {\n\t\tawait access(socketPath);\n\t} catch (cause) {\n\t\tif (isNodeErrorCode(cause, \"ENOENT\")) return;\n\t\tthrow cause;\n\t}\n\tif (await probeSocket(socketPath)) throw new Error(`${socketPath}: address already in use by a live server.`);\n\tawait unlink(socketPath);\n}\n\nfunction probeSocket(socketPath: string): Promise<boolean> {\n\treturn new Promise((resolve) => {\n\t\tconst socket = createConnection(resolveSocketTransportAddress(socketPath, process.platform));\n\t\tconst settle = (live: boolean) => {\n\t\t\tsocket.destroy();\n\t\t\tresolve(live);\n\t\t};\n\t\tsocket.once(\"connect\", () => settle(true));\n\t\tsocket.once(\"error\", () => settle(false));\n\t\tsocket.setTimeout(1_000, () => settle(false));\n\t});\n}\n\nfunction listen(server: Server, socketPath: string, secret?: Uint8Array): Promise<void> {\n\treturn new Promise((resolve, reject) => {\n\t\tserver.once(\"error\", reject);\n\t\tserver.listen(resolveSocketTransportAddress(socketPath, process.platform, secret), async () => {\n\t\t\tserver.off(\"error\", reject);\n\t\t\ttry {\n\t\t\t\tif (process.platform !== \"win32\" && !socketPath.startsWith(\"\\0\")) await chmod(socketPath, 0o600);\n\t\t\t\tresolve();\n\t\t\t} catch (cause) {\n\t\t\t\treject(cause);\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction closeServer(server: Server): Promise<void> {\n\treturn new Promise((resolve, reject) => {\n\t\tserver.close((cause) => (cause ? reject(cause) : resolve()));\n\t});\n}\n\nasync function removeSocketPath(socketPath: string): Promise<void> {\n\tif (process.platform === \"win32\" || socketPath.startsWith(\"\\0\")) return;\n\ttry {\n\t\tawait unlink(socketPath);\n\t} catch (cause) {\n\t\tif (!isNodeErrorCode(cause, \"ENOENT\")) throw cause;\n\t}\n}\n\nfunction isNodeErrorCode(cause: unknown, code: string): boolean {\n\treturn cause instanceof Error && \"code\" in cause && cause.code === code;\n}\n\nfunction registerShutdownSignals(shutdown: (exitCode?: number) => Promise<never>): void {\n\tfor (const signal of process.platform === \"win32\" ? ([\"SIGTERM\"] as const) : ([\"SIGTERM\", \"SIGHUP\"] as const)) {\n\t\tprocess.on(signal, () => {\n\t\t\tkillTrackedDetachedChildren();\n\t\t\tvoid shutdown(signal === \"SIGHUP\" ? 129 : 143);\n\t\t});\n\t}\n}\n"]}
@@ -385,6 +385,14 @@ export declare class RpcClient {
385
385
  * Get all messages in the session.
386
386
  */
387
387
  getMessages(): Promise<AgentMessage[]>;
388
+ /**
389
+ * Fetch one media block that arrived as an `image_ref` placeholder.
390
+ *
391
+ * `contentIndex` is the index inside the tool result's `content` array carried by
392
+ * the placeholder's `ref`. Rejects with `media_not_found` when the tool call is
393
+ * unknown or the index does not point at an image block.
394
+ */
395
+ getMedia(toolCallId: string, contentIndex: number): Promise<ImageContent>;
388
396
  /**
389
397
  * Get available commands (extension commands, prompt templates, skills).
390
398
  */
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-client.d.ts","sourceRoot":"","sources":["../../../src/modes/rpc/rpc-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc-client.d.ts","sourceRoot":"","sources":["../../../src/modes/rpc/rpc-client.ts"],"names":[],"mappings":"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"}
@@ -601,6 +601,17 @@ export class RpcClient {
601
601
  const response = await this.send({ type: "get_messages" });
602
602
  return this.getData(response).messages;
603
603
  }
604
+ /**
605
+ * Fetch one media block that arrived as an `image_ref` placeholder.
606
+ *
607
+ * `contentIndex` is the index inside the tool result's `content` array carried by
608
+ * the placeholder's `ref`. Rejects with `media_not_found` when the tool call is
609
+ * unknown or the index does not point at an image block.
610
+ */
611
+ async getMedia(toolCallId, contentIndex) {
612
+ const response = await this.send({ type: "get_media", toolCallId, contentIndex });
613
+ return this.getData(response).content;
614
+ }
604
615
  /**
605
616
  * Get available commands (extension commands, prompt templates, skills).
606
617
  */