@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
@@ -1,6 +1,7 @@
1
1
  import type { ToolSearchDocument } from "./engine/document.ts";
2
+ import { type AnthropicToolSearchTarget } from "./native-support.ts";
2
3
  export declare const ANTHROPIC_TOOL_SEARCH_TYPE = "tool_search_tool_bm25_20251119";
3
- export declare const ANTHROPIC_TOOL_SEARCH_NAME = "tool_search";
4
+ export declare const ANTHROPIC_TOOL_SEARCH_NAME = "tool_search_tool_bm25";
4
5
  /** Anthropic caps a request at 10k tools; beyond that native search is invalid. */
5
6
  export declare const ANTHROPIC_MAX_TOOLS = 10000;
6
7
  type McpNativeToolSearchGate = () => boolean;
@@ -27,11 +28,15 @@ export interface AnthropicNativeInjectionConfig {
27
28
  * local search tool, never combine defer_loading with cache_control, keep at
28
29
  * least one non-deferred tool, and skip entirely above the 10k tool cap.
29
30
  */
30
- export declare function addAnthropicNativeToolSearch(api: string | undefined, payload: unknown, config: AnthropicNativeInjectionConfig): unknown;
31
- /** `tool_reference` blocks emitted inside a tool_result so the API expands the referenced tools. */
31
+ export declare function addAnthropicNativeToolSearch(target: AnthropicToolSearchTarget, payload: unknown, config: AnthropicNativeInjectionConfig): unknown;
32
+ /**
33
+ * `tool_reference` blocks emitted inside a tool_result so the API expands the
34
+ * referenced tools. Anthropic names the target through `tool_name`; a block
35
+ * carrying `name` is rejected as a malformed content block.
36
+ */
32
37
  export declare function buildToolReferenceBlocks(names: readonly string[]): {
33
38
  type: "tool_reference";
34
- name: string;
39
+ tool_name: string;
35
40
  }[];
36
41
  export interface AnthropicNativeAdapterDeps extends AnthropicNativeInjectionConfig {
37
42
  /** Resolved provider/config gate. */
@@ -43,7 +48,7 @@ export interface AnthropicNativeAdapterDeps extends AnthropicNativeInjectionConf
43
48
  export declare class AnthropicNativeToolSearchAdapter {
44
49
  #private;
45
50
  constructor(deps: AnthropicNativeAdapterDeps);
46
- applyBeforeRequest(api: string | undefined, payload: unknown): unknown;
51
+ applyBeforeRequest(target: AnthropicToolSearchTarget, payload: unknown): unknown;
47
52
  noteResponseStatus(status: number): void;
48
53
  get disabled(): boolean;
49
54
  get fallbackReason(): string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"native-search.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/tool-search/native-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAM/D,eAAO,MAAM,0BAA0B,mCAAmC,CAAC;AAC3E,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,mFAAmF;AACnF,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,KAAK,uBAAuB,GAAG,MAAM,OAAO,CAAC;AAK7C,gGAAgG;AAChG,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI,CAGlF;AAED,wBAAgB,4BAA4B,IAAI,OAAO,CAEtD;AAED,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,8BAA8B;IAC9C,gFAAgF;IAChF,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,SAAS,kBAAkB,EAAE,CAAC;IAC1D,iFAAiF;IACjF,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,oBAAoB,GAAG,SAAS,CAAC;CACpF;AAMD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC3C,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,8BAA8B,GACpC,OAAO,CAYT;AAkCD,oGAAoG;AACpG,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAE7G;AAED,MAAM,WAAW,0BAA2B,SAAQ,8BAA8B;IACjF,qCAAqC;IACrC,OAAO,IAAI,OAAO,CAAC;IACnB,gEAAgE;IAChE,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,mFAAmF;AACnF,qBAAa,gCAAgC;;gBAMhC,IAAI,EAAE,0BAA0B;IAI5C,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAQtE,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQxC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,cAAc,IAAI,MAAM,GAAG,IAAI,CAElC;CACD"}
1
+ {"version":3,"file":"native-search.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/tool-search/native-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,KAAK,yBAAyB,EAAqC,MAAM,qBAAqB,CAAC;AAMxG,eAAO,MAAM,0BAA0B,mCAAmC,CAAC;AAC3E,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAClE,mFAAmF;AACnF,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,KAAK,uBAAuB,GAAG,MAAM,OAAO,CAAC;AAK7C,gGAAgG;AAChG,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI,CAGlF;AAED,wBAAgB,4BAA4B,IAAI,OAAO,CAEtD;AAED,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,8BAA8B;IAC9C,gFAAgF;IAChF,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,SAAS,kBAAkB,EAAE,CAAC;IAC1D,iFAAiF;IACjF,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,oBAAoB,GAAG,SAAS,CAAC;CACpF;AAMD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC3C,MAAM,EAAE,yBAAyB,EACjC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,8BAA8B,GACpC,OAAO,CAYT;AAkCD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,CAElH;AAED,MAAM,WAAW,0BAA2B,SAAQ,8BAA8B;IACjF,qCAAqC;IACrC,OAAO,IAAI,OAAO,CAAC;IACnB,gEAAgE;IAChE,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,mFAAmF;AACnF,qBAAa,gCAAgC;;gBAMhC,IAAI,EAAE,0BAA0B;IAI5C,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAQhF,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQxC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,cAAc,IAAI,MAAM,GAAG,IAAI,CAElC;CACD"}
@@ -1,9 +1,10 @@
1
1
  import { AsyncLocalStorage } from "node:async_hooks";
2
+ import { supportsAnthropicNativeToolSearch } from "./native-support.js";
2
3
  // Anthropic Messages supports native BM25 tool search through request payload
3
4
  // injection alone. OpenAI native client-mode search remains intentionally out of
4
5
  // scope because it requires a provider-layer seam.
5
6
  export const ANTHROPIC_TOOL_SEARCH_TYPE = "tool_search_tool_bm25_20251119";
6
- export const ANTHROPIC_TOOL_SEARCH_NAME = "tool_search";
7
+ export const ANTHROPIC_TOOL_SEARCH_NAME = "tool_search_tool_bm25";
7
8
  /** Anthropic caps a request at 10k tools; beyond that native search is invalid. */
8
9
  export const ANTHROPIC_MAX_TOOLS = 10000;
9
10
  const scopedMcpNativeToolSearchGate = new AsyncLocalStorage();
@@ -25,8 +26,8 @@ function isRecord(value) {
25
26
  * local search tool, never combine defer_loading with cache_control, keep at
26
27
  * least one non-deferred tool, and skip entirely above the 10k tool cap.
27
28
  */
28
- export function addAnthropicNativeToolSearch(api, payload, config) {
29
- if (api !== "anthropic-messages" || !isRecord(payload))
29
+ export function addAnthropicNativeToolSearch(target, payload, config) {
30
+ if (!supportsAnthropicNativeToolSearch(target) || !isRecord(payload))
30
31
  return payload;
31
32
  const tools = Array.isArray(payload.tools) ? payload.tools : [];
32
33
  const injected = injectInactiveCatalogTools(tools, config);
@@ -77,9 +78,13 @@ function maybeDefer(tool, config) {
77
78
  return tool;
78
79
  return { ...tool, defer_loading: true };
79
80
  }
80
- /** `tool_reference` blocks emitted inside a tool_result so the API expands the referenced tools. */
81
+ /**
82
+ * `tool_reference` blocks emitted inside a tool_result so the API expands the
83
+ * referenced tools. Anthropic names the target through `tool_name`; a block
84
+ * carrying `name` is rejected as a malformed content block.
85
+ */
81
86
  export function buildToolReferenceBlocks(names) {
82
- return names.map((name) => ({ type: "tool_reference", name }));
87
+ return names.map((name) => ({ type: "tool_reference", tool_name: name }));
83
88
  }
84
89
  /** Session-scoped request injector with permanent 400 fallback for the session. */
85
90
  export class AnthropicNativeToolSearchAdapter {
@@ -90,11 +95,11 @@ export class AnthropicNativeToolSearchAdapter {
90
95
  constructor(deps) {
91
96
  this.#deps = deps;
92
97
  }
93
- applyBeforeRequest(api, payload) {
98
+ applyBeforeRequest(target, payload) {
94
99
  this.#injectedLastRequest = false;
95
100
  if (this.#disabled || !this.#deps.enabled())
96
101
  return payload;
97
- const next = addAnthropicNativeToolSearch(api, payload, this.#deps);
102
+ const next = addAnthropicNativeToolSearch(target, payload, this.#deps);
98
103
  this.#injectedLastRequest = next !== payload;
99
104
  return next;
100
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"native-search.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/tool-search/native-search.ts"],"names":[],"mappings":"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","sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { ToolSearchDocument } from \"./engine/document.ts\";\n\n// Anthropic Messages supports native BM25 tool search through request payload\n// injection alone. OpenAI native client-mode search remains intentionally out of\n// scope because it requires a provider-layer seam.\n\nexport const ANTHROPIC_TOOL_SEARCH_TYPE = \"tool_search_tool_bm25_20251119\";\nexport const ANTHROPIC_TOOL_SEARCH_NAME = \"tool_search\";\n/** Anthropic caps a request at 10k tools; beyond that native search is invalid. */\nexport const ANTHROPIC_MAX_TOOLS = 10000;\n\ntype McpNativeToolSearchGate = () => boolean;\n\nconst scopedMcpNativeToolSearchGate = new AsyncLocalStorage<McpNativeToolSearchGate>();\nlet mcpNativeToolSearchGate: McpNativeToolSearchGate = () => false;\n\n/** Bind the MCP-owned user setting without moving MCP configuration into the shared builtin. */\nexport function installMcpNativeToolSearchGate(gate: McpNativeToolSearchGate): void {\n\tmcpNativeToolSearchGate = gate;\n\tscopedMcpNativeToolSearchGate.enterWith(gate);\n}\n\nexport function isMcpNativeToolSearchEnabled(): boolean {\n\treturn (scopedMcpNativeToolSearchGate.getStore() ?? mcpNativeToolSearchGate)();\n}\n\nexport interface NativeToolDefinition {\n\treadonly description?: string;\n\treadonly parameters?: unknown;\n}\n\nexport interface AnthropicNativeInjectionConfig {\n\t/** Never defer this tool (our custom tool_search), and it is non-deferrable. */\n\treadonly searchToolName?: string;\n\t/** True only for catalog tools eligible for native deferral in this request. */\n\treadonly isDeferrable: (toolName: string) => boolean;\n\t/** Current searchable catalog. Omit when only transforming resident tools. */\n\treadonly getCatalog?: () => readonly ToolSearchDocument[];\n\t/** Resolve the winning registered definition used to inject inactive schemas. */\n\treadonly getToolDefinition?: (toolName: string) => NativeToolDefinition | undefined;\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n\treturn typeof value === \"object\" && value !== null;\n}\n\n/**\n * Pure payload transform. Injects eligible inactive catalog schemas, adds exactly\n * one native search tool, and enforces Anthropic's HARD RULES: never defer the\n * local search tool, never combine defer_loading with cache_control, keep at\n * least one non-deferred tool, and skip entirely above the 10k tool cap.\n */\nexport function addAnthropicNativeToolSearch(\n\tapi: string | undefined,\n\tpayload: unknown,\n\tconfig: AnthropicNativeInjectionConfig,\n): unknown {\n\tif (api !== \"anthropic-messages\" || !isRecord(payload)) return payload;\n\tconst tools = Array.isArray(payload.tools) ? payload.tools : [];\n\tconst injected = injectInactiveCatalogTools(tools, config);\n\tif (injected.length > ANTHROPIC_MAX_TOOLS) return payload;\n\tconst deferred = injected.map((tool) => maybeDefer(tool, config));\n\tconst hasSearchTool = deferred.some((tool) => isRecord(tool) && tool.type === ANTHROPIC_TOOL_SEARCH_TYPE);\n\tconst nextTools = hasSearchTool\n\t\t? deferred\n\t\t: [...deferred, { type: ANTHROPIC_TOOL_SEARCH_TYPE, name: ANTHROPIC_TOOL_SEARCH_NAME }];\n\tif (nextTools.length > ANTHROPIC_MAX_TOOLS) return payload;\n\treturn { ...payload, tools: nextTools };\n}\n\nfunction injectInactiveCatalogTools(tools: readonly unknown[], config: AnthropicNativeInjectionConfig): unknown[] {\n\tconst catalog = config.getCatalog?.() ?? [];\n\tconst residentNames = new Set(\n\t\ttools.flatMap((tool) => (isRecord(tool) && typeof tool.name === \"string\" ? [tool.name] : [])),\n\t);\n\tconst injected: unknown[] = [...tools];\n\tfor (const doc of catalog) {\n\t\tif (doc.name === config.searchToolName || residentNames.has(doc.name) || !config.isDeferrable(doc.name)) continue;\n\t\tconst definition = config.getToolDefinition?.(doc.name);\n\t\tif (definition?.parameters === undefined) continue;\n\t\tinjected.push({\n\t\t\tname: doc.name,\n\t\t\tdescription: definition.description ?? doc.description ?? doc.label,\n\t\t\tinput_schema: definition.parameters,\n\t\t\tdefer_loading: true,\n\t\t});\n\t\tresidentNames.add(doc.name);\n\t}\n\treturn injected;\n}\n\nfunction maybeDefer(tool: unknown, config: AnthropicNativeInjectionConfig): unknown {\n\tif (!isRecord(tool)) return tool;\n\tconst name = typeof tool.name === \"string\" ? tool.name : undefined;\n\tif (name === undefined) return tool;\n\tif (name === config.searchToolName) return tool;\n\tif (!config.isDeferrable(name)) return tool;\n\tif (\"cache_control\" in tool) return tool;\n\tif (tool.defer_loading === true) return tool;\n\treturn { ...tool, defer_loading: true };\n}\n\n/** `tool_reference` blocks emitted inside a tool_result so the API expands the referenced tools. */\nexport function buildToolReferenceBlocks(names: readonly string[]): { type: \"tool_reference\"; name: string }[] {\n\treturn names.map((name) => ({ type: \"tool_reference\", name }));\n}\n\nexport interface AnthropicNativeAdapterDeps extends AnthropicNativeInjectionConfig {\n\t/** Resolved provider/config gate. */\n\tenabled(): boolean;\n\t/** Invoked once when a 400 forces the local-search fallback. */\n\tonFallback?(reason: string): void;\n}\n\n/** Session-scoped request injector with permanent 400 fallback for the session. */\nexport class AnthropicNativeToolSearchAdapter {\n\t#disabled = false;\n\t#injectedLastRequest = false;\n\t#fallbackReason: string | null = null;\n\treadonly #deps: AnthropicNativeAdapterDeps;\n\n\tconstructor(deps: AnthropicNativeAdapterDeps) {\n\t\tthis.#deps = deps;\n\t}\n\n\tapplyBeforeRequest(api: string | undefined, payload: unknown): unknown {\n\t\tthis.#injectedLastRequest = false;\n\t\tif (this.#disabled || !this.#deps.enabled()) return payload;\n\t\tconst next = addAnthropicNativeToolSearch(api, payload, this.#deps);\n\t\tthis.#injectedLastRequest = next !== payload;\n\t\treturn next;\n\t}\n\n\tnoteResponseStatus(status: number): void {\n\t\tif (status !== 400 || !this.#injectedLastRequest || this.#disabled) return;\n\t\tthis.#disabled = true;\n\t\tthis.#fallbackReason =\n\t\t\t\"Anthropic returned 400 for native tool-search; disabled it and fell back to local tool_search for this session.\";\n\t\tthis.#deps.onFallback?.(this.#fallbackReason);\n\t}\n\n\tget disabled(): boolean {\n\t\treturn this.#disabled;\n\t}\n\n\tget fallbackReason(): string | null {\n\t\treturn this.#fallbackReason;\n\t}\n}\n"]}
1
+ {"version":3,"file":"native-search.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/tool-search/native-search.ts"],"names":[],"mappings":"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","sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { ToolSearchDocument } from \"./engine/document.ts\";\nimport { type AnthropicToolSearchTarget, supportsAnthropicNativeToolSearch } from \"./native-support.ts\";\n\n// Anthropic Messages supports native BM25 tool search through request payload\n// injection alone. OpenAI native client-mode search remains intentionally out of\n// scope because it requires a provider-layer seam.\n\nexport const ANTHROPIC_TOOL_SEARCH_TYPE = \"tool_search_tool_bm25_20251119\";\nexport const ANTHROPIC_TOOL_SEARCH_NAME = \"tool_search_tool_bm25\";\n/** Anthropic caps a request at 10k tools; beyond that native search is invalid. */\nexport const ANTHROPIC_MAX_TOOLS = 10000;\n\ntype McpNativeToolSearchGate = () => boolean;\n\nconst scopedMcpNativeToolSearchGate = new AsyncLocalStorage<McpNativeToolSearchGate>();\nlet mcpNativeToolSearchGate: McpNativeToolSearchGate = () => false;\n\n/** Bind the MCP-owned user setting without moving MCP configuration into the shared builtin. */\nexport function installMcpNativeToolSearchGate(gate: McpNativeToolSearchGate): void {\n\tmcpNativeToolSearchGate = gate;\n\tscopedMcpNativeToolSearchGate.enterWith(gate);\n}\n\nexport function isMcpNativeToolSearchEnabled(): boolean {\n\treturn (scopedMcpNativeToolSearchGate.getStore() ?? mcpNativeToolSearchGate)();\n}\n\nexport interface NativeToolDefinition {\n\treadonly description?: string;\n\treadonly parameters?: unknown;\n}\n\nexport interface AnthropicNativeInjectionConfig {\n\t/** Never defer this tool (our custom tool_search), and it is non-deferrable. */\n\treadonly searchToolName?: string;\n\t/** True only for catalog tools eligible for native deferral in this request. */\n\treadonly isDeferrable: (toolName: string) => boolean;\n\t/** Current searchable catalog. Omit when only transforming resident tools. */\n\treadonly getCatalog?: () => readonly ToolSearchDocument[];\n\t/** Resolve the winning registered definition used to inject inactive schemas. */\n\treadonly getToolDefinition?: (toolName: string) => NativeToolDefinition | undefined;\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n\treturn typeof value === \"object\" && value !== null;\n}\n\n/**\n * Pure payload transform. Injects eligible inactive catalog schemas, adds exactly\n * one native search tool, and enforces Anthropic's HARD RULES: never defer the\n * local search tool, never combine defer_loading with cache_control, keep at\n * least one non-deferred tool, and skip entirely above the 10k tool cap.\n */\nexport function addAnthropicNativeToolSearch(\n\ttarget: AnthropicToolSearchTarget,\n\tpayload: unknown,\n\tconfig: AnthropicNativeInjectionConfig,\n): unknown {\n\tif (!supportsAnthropicNativeToolSearch(target) || !isRecord(payload)) return payload;\n\tconst tools = Array.isArray(payload.tools) ? payload.tools : [];\n\tconst injected = injectInactiveCatalogTools(tools, config);\n\tif (injected.length > ANTHROPIC_MAX_TOOLS) return payload;\n\tconst deferred = injected.map((tool) => maybeDefer(tool, config));\n\tconst hasSearchTool = deferred.some((tool) => isRecord(tool) && tool.type === ANTHROPIC_TOOL_SEARCH_TYPE);\n\tconst nextTools = hasSearchTool\n\t\t? deferred\n\t\t: [...deferred, { type: ANTHROPIC_TOOL_SEARCH_TYPE, name: ANTHROPIC_TOOL_SEARCH_NAME }];\n\tif (nextTools.length > ANTHROPIC_MAX_TOOLS) return payload;\n\treturn { ...payload, tools: nextTools };\n}\n\nfunction injectInactiveCatalogTools(tools: readonly unknown[], config: AnthropicNativeInjectionConfig): unknown[] {\n\tconst catalog = config.getCatalog?.() ?? [];\n\tconst residentNames = new Set(\n\t\ttools.flatMap((tool) => (isRecord(tool) && typeof tool.name === \"string\" ? [tool.name] : [])),\n\t);\n\tconst injected: unknown[] = [...tools];\n\tfor (const doc of catalog) {\n\t\tif (doc.name === config.searchToolName || residentNames.has(doc.name) || !config.isDeferrable(doc.name)) continue;\n\t\tconst definition = config.getToolDefinition?.(doc.name);\n\t\tif (definition?.parameters === undefined) continue;\n\t\tinjected.push({\n\t\t\tname: doc.name,\n\t\t\tdescription: definition.description ?? doc.description ?? doc.label,\n\t\t\tinput_schema: definition.parameters,\n\t\t\tdefer_loading: true,\n\t\t});\n\t\tresidentNames.add(doc.name);\n\t}\n\treturn injected;\n}\n\nfunction maybeDefer(tool: unknown, config: AnthropicNativeInjectionConfig): unknown {\n\tif (!isRecord(tool)) return tool;\n\tconst name = typeof tool.name === \"string\" ? tool.name : undefined;\n\tif (name === undefined) return tool;\n\tif (name === config.searchToolName) return tool;\n\tif (!config.isDeferrable(name)) return tool;\n\tif (\"cache_control\" in tool) return tool;\n\tif (tool.defer_loading === true) return tool;\n\treturn { ...tool, defer_loading: true };\n}\n\n/**\n * `tool_reference` blocks emitted inside a tool_result so the API expands the\n * referenced tools. Anthropic names the target through `tool_name`; a block\n * carrying `name` is rejected as a malformed content block.\n */\nexport function buildToolReferenceBlocks(names: readonly string[]): { type: \"tool_reference\"; tool_name: string }[] {\n\treturn names.map((name) => ({ type: \"tool_reference\", tool_name: name }));\n}\n\nexport interface AnthropicNativeAdapterDeps extends AnthropicNativeInjectionConfig {\n\t/** Resolved provider/config gate. */\n\tenabled(): boolean;\n\t/** Invoked once when a 400 forces the local-search fallback. */\n\tonFallback?(reason: string): void;\n}\n\n/** Session-scoped request injector with permanent 400 fallback for the session. */\nexport class AnthropicNativeToolSearchAdapter {\n\t#disabled = false;\n\t#injectedLastRequest = false;\n\t#fallbackReason: string | null = null;\n\treadonly #deps: AnthropicNativeAdapterDeps;\n\n\tconstructor(deps: AnthropicNativeAdapterDeps) {\n\t\tthis.#deps = deps;\n\t}\n\n\tapplyBeforeRequest(target: AnthropicToolSearchTarget, payload: unknown): unknown {\n\t\tthis.#injectedLastRequest = false;\n\t\tif (this.#disabled || !this.#deps.enabled()) return payload;\n\t\tconst next = addAnthropicNativeToolSearch(target, payload, this.#deps);\n\t\tthis.#injectedLastRequest = next !== payload;\n\t\treturn next;\n\t}\n\n\tnoteResponseStatus(status: number): void {\n\t\tif (status !== 400 || !this.#injectedLastRequest || this.#disabled) return;\n\t\tthis.#disabled = true;\n\t\tthis.#fallbackReason =\n\t\t\t\"Anthropic returned 400 for native tool-search; disabled it and fell back to local tool_search for this session.\";\n\t\tthis.#deps.onFallback?.(this.#fallbackReason);\n\t}\n\n\tget disabled(): boolean {\n\t\treturn this.#disabled;\n\t}\n\n\tget fallbackReason(): string | null {\n\t\treturn this.#fallbackReason;\n\t}\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import type { Api, Model } from "@earendil-works/pi-ai";
2
+ export type AnthropicToolSearchModel = Pick<Model<Api>, "api" | "id" | "provider"> & Partial<Pick<Model<Api>, "compat">>;
3
+ export type AnthropicToolSearchTarget = Api | AnthropicToolSearchModel | undefined;
4
+ /**
5
+ * Anthropic-compatible endpoints (gateways, kimi-coding, proxies) answer the
6
+ * same `anthropic-messages` api but reject the server tool, so the api alone is
7
+ * not a sufficient gate: injecting there 400s the request and disables native
8
+ * search for the rest of the session. A bare api string carries no model
9
+ * identity to gate on and stays supported, so the pure payload transform keeps
10
+ * its api-only contract.
11
+ */
12
+ export declare function supportsAnthropicNativeToolSearch(target: AnthropicToolSearchTarget): boolean;
13
+ //# sourceMappingURL=native-support.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-support.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/tool-search/native-support.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2B,GAAG,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEjF,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,UAAU,CAAC,GACjF,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;AACrC,MAAM,MAAM,yBAAyB,GAAG,GAAG,GAAG,wBAAwB,GAAG,SAAS,CAAC;AA8BnF;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAK5F"}
@@ -0,0 +1,45 @@
1
+ const CLAUDE_VERSIONED_MODEL_ID = /^claude-(?:opus|sonnet|fable)-(\d+)(?:-(\d+))?(?:-|$)/;
2
+ /** A trailing 8-digit group is a release date (claude-opus-4-5-20251101), not a minor version. */
3
+ const MODEL_ID_DATE_SUFFIX_LENGTH = 8;
4
+ function isSupportedModel(model) {
5
+ const compat = model.compat;
6
+ return compat?.supportsToolReferences ?? defaultSupportsToolSearch(model);
7
+ }
8
+ /**
9
+ * Byte-for-byte mirror of pi-ai's private
10
+ * `AnthropicMessagesCompat.supportsToolReferences` default; keep in lockstep
11
+ * with `packages/ai/src/utils/prompt-cache-ttl.ts`. Diverging would inject the
12
+ * server tool for a model whose deferred tools pi-ai refuses to defer, so the
13
+ * request would carry a search tool with nothing to find. Anthropic's table
14
+ * lists tool search on Opus/Sonnet 4.5+ and the Fable/Mythos line; Opus 4.1 and
15
+ * earlier reject the server tool and Haiku rejects `tool_reference` blocks.
16
+ */
17
+ function defaultSupportsToolSearch(model) {
18
+ if (model.provider !== "anthropic" || model.id.includes("haiku"))
19
+ return false;
20
+ const version = model.id.match(CLAUDE_VERSIONED_MODEL_ID);
21
+ if (!version)
22
+ return false;
23
+ const major = Number(version[1]);
24
+ const rawMinor = version[2];
25
+ const minor = rawMinor !== undefined && rawMinor.length < MODEL_ID_DATE_SUFFIX_LENGTH ? Number(rawMinor) : 0;
26
+ return major > 4 || (major === 4 && minor >= 5);
27
+ }
28
+ /**
29
+ * Anthropic-compatible endpoints (gateways, kimi-coding, proxies) answer the
30
+ * same `anthropic-messages` api but reject the server tool, so the api alone is
31
+ * not a sufficient gate: injecting there 400s the request and disables native
32
+ * search for the rest of the session. A bare api string carries no model
33
+ * identity to gate on and stays supported, so the pure payload transform keeps
34
+ * its api-only contract.
35
+ */
36
+ export function supportsAnthropicNativeToolSearch(target) {
37
+ if (target === undefined)
38
+ return false;
39
+ if (typeof target === "string")
40
+ return target === "anthropic-messages";
41
+ if (target.api !== "anthropic-messages")
42
+ return false;
43
+ return isSupportedModel(target);
44
+ }
45
+ //# sourceMappingURL=native-support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-support.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/tool-search/native-support.ts"],"names":[],"mappings":"AAMA,MAAM,yBAAyB,GAAG,uDAAuD,CAAC;AAC1F,kGAAkG;AAClG,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAEtC,SAAS,gBAAgB,CAAC,KAA+B;IACxD,MAAM,MAAM,GAAG,KAAK,CAAC,MAA6C,CAAC;IACnE,OAAO,MAAM,EAAE,sBAAsB,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,yBAAyB,CAAC,KAA+B;IACjE,IAAI,KAAK,CAAC,QAAQ,KAAK,WAAW,IAAI,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/E,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC1D,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,2BAA2B,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7G,OAAO,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iCAAiC,CAAC,MAAiC;IAClF,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,KAAK,oBAAoB,CAAC;IACvE,IAAI,MAAM,CAAC,GAAG,KAAK,oBAAoB;QAAE,OAAO,KAAK,CAAC;IACtD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC","sourcesContent":["import type { AnthropicMessagesCompat, Api, Model } from \"@earendil-works/pi-ai\";\n\nexport type AnthropicToolSearchModel = Pick<Model<Api>, \"api\" | \"id\" | \"provider\"> &\n\tPartial<Pick<Model<Api>, \"compat\">>;\nexport type AnthropicToolSearchTarget = Api | AnthropicToolSearchModel | undefined;\n\nconst CLAUDE_VERSIONED_MODEL_ID = /^claude-(?:opus|sonnet|fable)-(\\d+)(?:-(\\d+))?(?:-|$)/;\n/** A trailing 8-digit group is a release date (claude-opus-4-5-20251101), not a minor version. */\nconst MODEL_ID_DATE_SUFFIX_LENGTH = 8;\n\nfunction isSupportedModel(model: AnthropicToolSearchModel): boolean {\n\tconst compat = model.compat as AnthropicMessagesCompat | undefined;\n\treturn compat?.supportsToolReferences ?? defaultSupportsToolSearch(model);\n}\n\n/**\n * Byte-for-byte mirror of pi-ai's private\n * `AnthropicMessagesCompat.supportsToolReferences` default; keep in lockstep\n * with `packages/ai/src/utils/prompt-cache-ttl.ts`. Diverging would inject the\n * server tool for a model whose deferred tools pi-ai refuses to defer, so the\n * request would carry a search tool with nothing to find. Anthropic's table\n * lists tool search on Opus/Sonnet 4.5+ and the Fable/Mythos line; Opus 4.1 and\n * earlier reject the server tool and Haiku rejects `tool_reference` blocks.\n */\nfunction defaultSupportsToolSearch(model: AnthropicToolSearchModel): boolean {\n\tif (model.provider !== \"anthropic\" || model.id.includes(\"haiku\")) return false;\n\tconst version = model.id.match(CLAUDE_VERSIONED_MODEL_ID);\n\tif (!version) return false;\n\tconst major = Number(version[1]);\n\tconst rawMinor = version[2];\n\tconst minor = rawMinor !== undefined && rawMinor.length < MODEL_ID_DATE_SUFFIX_LENGTH ? Number(rawMinor) : 0;\n\treturn major > 4 || (major === 4 && minor >= 5);\n}\n\n/**\n * Anthropic-compatible endpoints (gateways, kimi-coding, proxies) answer the\n * same `anthropic-messages` api but reject the server tool, so the api alone is\n * not a sufficient gate: injecting there 400s the request and disables native\n * search for the rest of the session. A bare api string carries no model\n * identity to gate on and stays supported, so the pure payload transform keeps\n * its api-only contract.\n */\nexport function supportsAnthropicNativeToolSearch(target: AnthropicToolSearchTarget): boolean {\n\tif (target === undefined) return false;\n\tif (typeof target === \"string\") return target === \"anthropic-messages\";\n\tif (target.api !== \"anthropic-messages\") return false;\n\treturn isSupportedModel(target);\n}\n"]}
@@ -0,0 +1,34 @@
1
+ import { FixedRing, type ScalarEntry } from "../stream-utils.ts";
2
+ import type { DetectorMatch } from "../types.ts";
3
+ export declare const PARAGRAPH_MIN_CHARS = 64;
4
+ export declare const PARAGRAPH_MIN_WORD_CHARS = 24;
5
+ export declare const PARAGRAPH_REPEAT_THRESHOLD = 3;
6
+ export declare const PARAGRAPH_RING_CAPACITY = 64;
7
+ export declare const PARAGRAPH_TEXT_RETENTION_MAX = 512;
8
+ interface ParagraphEntry {
9
+ readonly hashA: number;
10
+ readonly hashB: number;
11
+ readonly utf16Length: number;
12
+ readonly startOffset: number;
13
+ readonly text: string | undefined;
14
+ }
15
+ export interface ParagraphRepeatState {
16
+ readonly ring: FixedRing<ParagraphEntry>;
17
+ lineHashA: number;
18
+ lineHashB: number;
19
+ lineLength: number;
20
+ lineWordChars: number;
21
+ lineHasContent: boolean;
22
+ lineStartOffset: number;
23
+ lineText: string;
24
+ hashA: number;
25
+ hashB: number;
26
+ length: number;
27
+ wordChars: number;
28
+ startOffset: number;
29
+ retained: string;
30
+ }
31
+ export declare function createParagraphRepeatState(): ParagraphRepeatState;
32
+ export declare function updateParagraphRepeats(state: ParagraphRepeatState, entry: ScalarEntry): DetectorMatch | null;
33
+ export {};
34
+ //# sourceMappingURL=collapse-paragraphs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapse-paragraphs.d.ts","sourceRoot":"","sources":["../../../../../../src/core/extensions/builtin/ttsr/detectors/collapse-paragraphs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAqB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAQhD,UAAU,cAAc;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAiBjE;AAiDD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,WAAW,GAAG,aAAa,GAAG,IAAI,CAiC5G"}
@@ -0,0 +1,121 @@
1
+ import { CharCode, FixedRing, isAsciiWhitespace } from "../stream-utils.js";
2
+ import { isAsciiAlphanumeric, isBoxDrawing } from "./collapse-scalars.js";
3
+ export const PARAGRAPH_MIN_CHARS = 64;
4
+ export const PARAGRAPH_MIN_WORD_CHARS = 24;
5
+ export const PARAGRAPH_REPEAT_THRESHOLD = 3;
6
+ export const PARAGRAPH_RING_CAPACITY = 64;
7
+ export const PARAGRAPH_TEXT_RETENTION_MAX = 512;
8
+ const SAMPLE_LENGTH = 80;
9
+ const HASH_A_OFFSET = 0x811c9dc5;
10
+ const HASH_A_PRIME = 0x01000193;
11
+ const HASH_B_OFFSET = 5381;
12
+ const HASH_B_MULTIPLIER = 31;
13
+ export function createParagraphRepeatState() {
14
+ return {
15
+ ring: new FixedRing(PARAGRAPH_RING_CAPACITY),
16
+ lineHashA: HASH_A_OFFSET,
17
+ lineHashB: HASH_B_OFFSET,
18
+ lineLength: 0,
19
+ lineWordChars: 0,
20
+ lineHasContent: false,
21
+ lineStartOffset: 0,
22
+ lineText: "",
23
+ hashA: HASH_A_OFFSET,
24
+ hashB: HASH_B_OFFSET,
25
+ length: 0,
26
+ wordChars: 0,
27
+ startOffset: 0,
28
+ retained: "",
29
+ };
30
+ }
31
+ function isSameParagraph(a, b) {
32
+ return a.hashA === b.hashA && a.hashB === b.hashB && a.utf16Length === b.utf16Length;
33
+ }
34
+ function completeParagraph(state) {
35
+ const paragraph = {
36
+ hashA: state.hashA,
37
+ hashB: state.hashB,
38
+ utf16Length: state.length,
39
+ startOffset: state.startOffset,
40
+ text: state.retained.length > 0 ? state.retained : undefined,
41
+ };
42
+ const eligible = state.length >= PARAGRAPH_MIN_CHARS && state.wordChars >= PARAGRAPH_MIN_WORD_CHARS;
43
+ state.hashA = HASH_A_OFFSET;
44
+ state.hashB = HASH_B_OFFSET;
45
+ state.length = 0;
46
+ state.wordChars = 0;
47
+ state.startOffset = 0;
48
+ state.retained = "";
49
+ if (!eligible)
50
+ return null;
51
+ // Oldest -> newest, so `first` is the earliest occurrence and `second` the first repeat.
52
+ let occurrences = 1;
53
+ let first;
54
+ let second;
55
+ for (let back = state.ring.size - 1; back >= 0; back--) {
56
+ const previous = state.ring.getBack(back);
57
+ if (previous === undefined || !isSameParagraph(previous, paragraph))
58
+ continue;
59
+ occurrences += 1;
60
+ if (first === undefined)
61
+ first = previous;
62
+ else if (second === undefined)
63
+ second = previous;
64
+ }
65
+ state.ring.push(paragraph);
66
+ if (occurrences < PARAGRAPH_REPEAT_THRESHOLD || first === undefined || second === undefined)
67
+ return null;
68
+ return {
69
+ rule: "collapse-repetition",
70
+ reason: `paragraph repeated ${occurrences} times within one message (${paragraph.utf16Length} chars)`,
71
+ anomalyStartOffset: first.startOffset,
72
+ garbageStartOffset: second.startOffset,
73
+ detail: {
74
+ mechanism: "paragraph-repeat",
75
+ occurrences,
76
+ paragraphChars: paragraph.utf16Length,
77
+ sample: (first.text ?? "").slice(0, SAMPLE_LENGTH),
78
+ },
79
+ };
80
+ }
81
+ export function updateParagraphRepeats(state, entry) {
82
+ if (entry.value.charCodeAt(0) === CharCode.LineFeed) {
83
+ let result = null;
84
+ if (state.lineHasContent) {
85
+ if (state.length === 0)
86
+ state.startOffset = state.lineStartOffset;
87
+ state.hashA = Math.imul(state.hashA ^ state.lineHashA, HASH_A_PRIME);
88
+ state.hashB = (Math.imul(state.hashB, HASH_B_MULTIPLIER) + state.lineHashB) | 0;
89
+ state.length += state.lineLength + 1;
90
+ state.wordChars += state.lineWordChars;
91
+ if (state.retained.length < PARAGRAPH_TEXT_RETENTION_MAX)
92
+ state.retained += `${state.lineText}\n`;
93
+ }
94
+ else if (state.length > 0) {
95
+ result = completeParagraph(state);
96
+ }
97
+ state.lineHashA = HASH_A_OFFSET;
98
+ state.lineHashB = HASH_B_OFFSET;
99
+ state.lineLength = 0;
100
+ state.lineWordChars = 0;
101
+ state.lineHasContent = false;
102
+ state.lineStartOffset = entry.startOffset + 1;
103
+ state.lineText = "";
104
+ return result;
105
+ }
106
+ for (let i = 0; i < entry.value.length; i++) {
107
+ const code = entry.value.charCodeAt(i);
108
+ state.lineHashA = Math.imul(state.lineHashA ^ code, HASH_A_PRIME);
109
+ state.lineHashB = (Math.imul(state.lineHashB, HASH_B_MULTIPLIER) + code) | 0;
110
+ }
111
+ const codePoint = entry.value.codePointAt(0) ?? 0;
112
+ if (!isAsciiWhitespace(codePoint))
113
+ state.lineHasContent = true;
114
+ if (isAsciiAlphanumeric(codePoint) || (codePoint > 0x7f && !isBoxDrawing(codePoint)))
115
+ state.lineWordChars += 1;
116
+ state.lineLength += entry.width;
117
+ if (state.lineText.length < PARAGRAPH_TEXT_RETENTION_MAX)
118
+ state.lineText += entry.value;
119
+ return null;
120
+ }
121
+ //# sourceMappingURL=collapse-paragraphs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapse-paragraphs.js","sourceRoot":"","sources":["../../../../../../src/core/extensions/builtin/ttsr/detectors/collapse-paragraphs.ts"],"names":[],"mappings":"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","sourcesContent":["import { CharCode, FixedRing, isAsciiWhitespace, type ScalarEntry } from \"../stream-utils.ts\";\nimport type { DetectorMatch } from \"../types.ts\";\nimport { isAsciiAlphanumeric, isBoxDrawing } from \"./collapse-scalars.ts\";\n\nexport const PARAGRAPH_MIN_CHARS = 64;\nexport const PARAGRAPH_MIN_WORD_CHARS = 24;\nexport const PARAGRAPH_REPEAT_THRESHOLD = 3;\nexport const PARAGRAPH_RING_CAPACITY = 64;\nexport const PARAGRAPH_TEXT_RETENTION_MAX = 512;\n\nconst SAMPLE_LENGTH = 80;\nconst HASH_A_OFFSET = 0x811c9dc5;\nconst HASH_A_PRIME = 0x01000193;\nconst HASH_B_OFFSET = 5381;\nconst HASH_B_MULTIPLIER = 31;\n\ninterface ParagraphEntry {\n\treadonly hashA: number;\n\treadonly hashB: number;\n\treadonly utf16Length: number;\n\treadonly startOffset: number;\n\treadonly text: string | undefined;\n}\n\nexport interface ParagraphRepeatState {\n\treadonly ring: FixedRing<ParagraphEntry>;\n\tlineHashA: number;\n\tlineHashB: number;\n\tlineLength: number;\n\tlineWordChars: number;\n\tlineHasContent: boolean;\n\tlineStartOffset: number;\n\tlineText: string;\n\thashA: number;\n\thashB: number;\n\tlength: number;\n\twordChars: number;\n\tstartOffset: number;\n\tretained: string;\n}\n\nexport function createParagraphRepeatState(): ParagraphRepeatState {\n\treturn {\n\t\tring: new FixedRing<ParagraphEntry>(PARAGRAPH_RING_CAPACITY),\n\t\tlineHashA: HASH_A_OFFSET,\n\t\tlineHashB: HASH_B_OFFSET,\n\t\tlineLength: 0,\n\t\tlineWordChars: 0,\n\t\tlineHasContent: false,\n\t\tlineStartOffset: 0,\n\t\tlineText: \"\",\n\t\thashA: HASH_A_OFFSET,\n\t\thashB: HASH_B_OFFSET,\n\t\tlength: 0,\n\t\twordChars: 0,\n\t\tstartOffset: 0,\n\t\tretained: \"\",\n\t};\n}\n\nfunction isSameParagraph(a: ParagraphEntry, b: ParagraphEntry): boolean {\n\treturn a.hashA === b.hashA && a.hashB === b.hashB && a.utf16Length === b.utf16Length;\n}\n\nfunction completeParagraph(state: ParagraphRepeatState): DetectorMatch | null {\n\tconst paragraph: ParagraphEntry = {\n\t\thashA: state.hashA,\n\t\thashB: state.hashB,\n\t\tutf16Length: state.length,\n\t\tstartOffset: state.startOffset,\n\t\ttext: state.retained.length > 0 ? state.retained : undefined,\n\t};\n\tconst eligible = state.length >= PARAGRAPH_MIN_CHARS && state.wordChars >= PARAGRAPH_MIN_WORD_CHARS;\n\tstate.hashA = HASH_A_OFFSET;\n\tstate.hashB = HASH_B_OFFSET;\n\tstate.length = 0;\n\tstate.wordChars = 0;\n\tstate.startOffset = 0;\n\tstate.retained = \"\";\n\tif (!eligible) return null;\n\t// Oldest -> newest, so `first` is the earliest occurrence and `second` the first repeat.\n\tlet occurrences = 1;\n\tlet first: ParagraphEntry | undefined;\n\tlet second: ParagraphEntry | undefined;\n\tfor (let back = state.ring.size - 1; back >= 0; back--) {\n\t\tconst previous = state.ring.getBack(back);\n\t\tif (previous === undefined || !isSameParagraph(previous, paragraph)) continue;\n\t\toccurrences += 1;\n\t\tif (first === undefined) first = previous;\n\t\telse if (second === undefined) second = previous;\n\t}\n\tstate.ring.push(paragraph);\n\tif (occurrences < PARAGRAPH_REPEAT_THRESHOLD || first === undefined || second === undefined) return null;\n\treturn {\n\t\trule: \"collapse-repetition\",\n\t\treason: `paragraph repeated ${occurrences} times within one message (${paragraph.utf16Length} chars)`,\n\t\tanomalyStartOffset: first.startOffset,\n\t\tgarbageStartOffset: second.startOffset,\n\t\tdetail: {\n\t\t\tmechanism: \"paragraph-repeat\",\n\t\t\toccurrences,\n\t\t\tparagraphChars: paragraph.utf16Length,\n\t\t\tsample: (first.text ?? \"\").slice(0, SAMPLE_LENGTH),\n\t\t},\n\t};\n}\n\nexport function updateParagraphRepeats(state: ParagraphRepeatState, entry: ScalarEntry): DetectorMatch | null {\n\tif (entry.value.charCodeAt(0) === CharCode.LineFeed) {\n\t\tlet result: DetectorMatch | null = null;\n\t\tif (state.lineHasContent) {\n\t\t\tif (state.length === 0) state.startOffset = state.lineStartOffset;\n\t\t\tstate.hashA = Math.imul(state.hashA ^ state.lineHashA, HASH_A_PRIME);\n\t\t\tstate.hashB = (Math.imul(state.hashB, HASH_B_MULTIPLIER) + state.lineHashB) | 0;\n\t\t\tstate.length += state.lineLength + 1;\n\t\t\tstate.wordChars += state.lineWordChars;\n\t\t\tif (state.retained.length < PARAGRAPH_TEXT_RETENTION_MAX) state.retained += `${state.lineText}\\n`;\n\t\t} else if (state.length > 0) {\n\t\t\tresult = completeParagraph(state);\n\t\t}\n\t\tstate.lineHashA = HASH_A_OFFSET;\n\t\tstate.lineHashB = HASH_B_OFFSET;\n\t\tstate.lineLength = 0;\n\t\tstate.lineWordChars = 0;\n\t\tstate.lineHasContent = false;\n\t\tstate.lineStartOffset = entry.startOffset + 1;\n\t\tstate.lineText = \"\";\n\t\treturn result;\n\t}\n\tfor (let i = 0; i < entry.value.length; i++) {\n\t\tconst code = entry.value.charCodeAt(i);\n\t\tstate.lineHashA = Math.imul(state.lineHashA ^ code, HASH_A_PRIME);\n\t\tstate.lineHashB = (Math.imul(state.lineHashB, HASH_B_MULTIPLIER) + code) | 0;\n\t}\n\tconst codePoint = entry.value.codePointAt(0) ?? 0;\n\tif (!isAsciiWhitespace(codePoint)) state.lineHasContent = true;\n\tif (isAsciiAlphanumeric(codePoint) || (codePoint > 0x7f && !isBoxDrawing(codePoint))) state.lineWordChars += 1;\n\tstate.lineLength += entry.width;\n\tif (state.lineText.length < PARAGRAPH_TEXT_RETENTION_MAX) state.lineText += entry.value;\n\treturn null;\n}\n"]}
@@ -1,6 +1,7 @@
1
1
  import { FixedRing, type ScalarEntry, ScalarScanner } from "../stream-utils.ts";
2
2
  import type { DetectorMatch, StreamDetector } from "../types.ts";
3
3
  import { type LineCycleState } from "./collapse-lines.ts";
4
+ import { type ParagraphRepeatState } from "./collapse-paragraphs.ts";
4
5
  import { type ShortPeriodState } from "./collapse-periods.ts";
5
6
  import { type DominantRunState, type WhitespaceFloodState } from "./collapse-scalars.ts";
6
7
  export declare const TAIL_RING_CAPACITY = 512;
@@ -11,6 +12,7 @@ export interface CollapseState {
11
12
  readonly whitespace: WhitespaceFloodState;
12
13
  readonly periods: ShortPeriodState;
13
14
  readonly lines: LineCycleState;
15
+ readonly paragraphs: ParagraphRepeatState;
14
16
  latched: DetectorMatch | null;
15
17
  }
16
18
  export declare function createCollapseState(): CollapseState;
@@ -1 +1 @@
1
- {"version":3,"file":"collapse.d.ts","sourceRoot":"","sources":["../../../../../../src/core/extensions/builtin/ttsr/detectors/collapse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAmB,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAwB,KAAK,cAAc,EAAoB,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAA0B,KAAK,gBAAgB,EAAsB,MAAM,uBAAuB,CAAC;AAC1G,OAAO,EAGN,KAAK,gBAAgB,EAGrB,KAAK,oBAAoB,EACzB,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAC1C,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9B;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAUnD;AAmBD,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,aAAa,CAG1D,CAAC"}
1
+ {"version":3,"file":"collapse.d.ts","sourceRoot":"","sources":["../../../../../../src/core/extensions/builtin/ttsr/detectors/collapse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAmB,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAwB,KAAK,cAAc,EAAoB,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAEN,KAAK,oBAAoB,EAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAA0B,KAAK,gBAAgB,EAAsB,MAAM,uBAAuB,CAAC;AAC1G,OAAO,EAGN,KAAK,gBAAgB,EAGrB,KAAK,oBAAoB,EACzB,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAC1C,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9B;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAWnD;AAqBD,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,aAAa,CAG1D,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { FixedRing, ScalarScanner } from "../stream-utils.js";
2
2
  import { createLineCycleState, updateLineCycles } from "./collapse-lines.js";
3
+ import { createParagraphRepeatState, updateParagraphRepeats, } from "./collapse-paragraphs.js";
3
4
  import { createShortPeriodState, updateShortPeriods } from "./collapse-periods.js";
4
5
  import { createDominantRunState, createWhitespaceFloodState, updateDominantRun, updateWhitespaceFlood, } from "./collapse-scalars.js";
5
6
  export const TAIL_RING_CAPACITY = 512;
@@ -11,18 +12,21 @@ export function createCollapseState() {
11
12
  whitespace: createWhitespaceFloodState(),
12
13
  periods: createShortPeriodState(),
13
14
  lines: createLineCycleState(),
15
+ paragraphs: createParagraphRepeatState(),
14
16
  latched: null,
15
17
  };
16
18
  }
17
- function checkDelta(state, delta, _context) {
19
+ function checkDelta(state, delta, context) {
18
20
  if (state.latched !== null)
19
21
  return state.latched;
22
+ const watchParagraphs = context.source !== "tool";
20
23
  for (const entry of state.scanner.push(delta)) {
21
24
  state.tailRing.push(entry);
22
25
  const match = updateDominantRun(state.run, entry) ??
23
26
  updateWhitespaceFlood(state.whitespace, entry) ??
24
27
  updateShortPeriods(state.periods, entry, state.tailRing) ??
25
- updateLineCycles(state.lines, entry);
28
+ updateLineCycles(state.lines, entry) ??
29
+ (watchParagraphs ? updateParagraphRepeats(state.paragraphs, entry) : null);
26
30
  if (match !== null) {
27
31
  state.latched = match;
28
32
  return match;
@@ -1 +1 @@
1
- {"version":3,"file":"collapse.js","sourceRoot":"","sources":["../../../../../../src/core/extensions/builtin/ttsr/detectors/collapse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAuB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAyB,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC1G,OAAO,EACN,sBAAsB,EACtB,0BAA0B,EAE1B,iBAAiB,EACjB,qBAAqB,GAErB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAYtC,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,OAAO,EAAE,IAAI,aAAa,EAAE;QAC5B,QAAQ,EAAE,IAAI,SAAS,CAAc,kBAAkB,CAAC;QACxD,GAAG,EAAE,sBAAsB,EAAE;QAC7B,UAAU,EAAE,0BAA0B,EAAE;QACxC,OAAO,EAAE,sBAAsB,EAAE;QACjC,KAAK,EAAE,oBAAoB,EAAE;QAC7B,OAAO,EAAE,IAAI;KACb,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAoB,EAAE,KAAa,EAAE,QAAyB;IACjF,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IACjD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,KAAK,GACV,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;YACnC,qBAAqB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;YAC9C,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;YACxD,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACpB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAkC;IAC9D,WAAW,EAAE,mBAAmB;IAChC,UAAU;CACV,CAAC","sourcesContent":["import { FixedRing, type ScalarEntry, ScalarScanner } from \"../stream-utils.ts\";\nimport type { DetectorContext, DetectorMatch, StreamDetector } from \"../types.ts\";\nimport { createLineCycleState, type LineCycleState, updateLineCycles } from \"./collapse-lines.ts\";\nimport { createShortPeriodState, type ShortPeriodState, updateShortPeriods } from \"./collapse-periods.ts\";\nimport {\n\tcreateDominantRunState,\n\tcreateWhitespaceFloodState,\n\ttype DominantRunState,\n\tupdateDominantRun,\n\tupdateWhitespaceFlood,\n\ttype WhitespaceFloodState,\n} from \"./collapse-scalars.ts\";\n\nexport const TAIL_RING_CAPACITY = 512;\n\nexport interface CollapseState {\n\treadonly scanner: ScalarScanner;\n\treadonly tailRing: FixedRing<ScalarEntry>;\n\treadonly run: DominantRunState;\n\treadonly whitespace: WhitespaceFloodState;\n\treadonly periods: ShortPeriodState;\n\treadonly lines: LineCycleState;\n\tlatched: DetectorMatch | null;\n}\n\nexport function createCollapseState(): CollapseState {\n\treturn {\n\t\tscanner: new ScalarScanner(),\n\t\ttailRing: new FixedRing<ScalarEntry>(TAIL_RING_CAPACITY),\n\t\trun: createDominantRunState(),\n\t\twhitespace: createWhitespaceFloodState(),\n\t\tperiods: createShortPeriodState(),\n\t\tlines: createLineCycleState(),\n\t\tlatched: null,\n\t};\n}\n\nfunction checkDelta(state: CollapseState, delta: string, _context: DetectorContext): DetectorMatch | null {\n\tif (state.latched !== null) return state.latched;\n\tfor (const entry of state.scanner.push(delta)) {\n\t\tstate.tailRing.push(entry);\n\t\tconst match =\n\t\t\tupdateDominantRun(state.run, entry) ??\n\t\t\tupdateWhitespaceFlood(state.whitespace, entry) ??\n\t\t\tupdateShortPeriods(state.periods, entry, state.tailRing) ??\n\t\t\tupdateLineCycles(state.lines, entry);\n\t\tif (match !== null) {\n\t\t\tstate.latched = match;\n\t\t\treturn match;\n\t\t}\n\t}\n\treturn null;\n}\n\nexport const collapseDetector: StreamDetector<CollapseState> = {\n\tcreateState: createCollapseState,\n\tcheckDelta,\n};\n"]}
1
+ {"version":3,"file":"collapse.js","sourceRoot":"","sources":["../../../../../../src/core/extensions/builtin/ttsr/detectors/collapse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAuB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACN,0BAA0B,EAE1B,sBAAsB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAyB,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC1G,OAAO,EACN,sBAAsB,EACtB,0BAA0B,EAE1B,iBAAiB,EACjB,qBAAqB,GAErB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAatC,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,OAAO,EAAE,IAAI,aAAa,EAAE;QAC5B,QAAQ,EAAE,IAAI,SAAS,CAAc,kBAAkB,CAAC;QACxD,GAAG,EAAE,sBAAsB,EAAE;QAC7B,UAAU,EAAE,0BAA0B,EAAE;QACxC,OAAO,EAAE,sBAAsB,EAAE;QACjC,KAAK,EAAE,oBAAoB,EAAE;QAC7B,UAAU,EAAE,0BAA0B,EAAE;QACxC,OAAO,EAAE,IAAI;KACb,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAoB,EAAE,KAAa,EAAE,OAAwB;IAChF,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IACjD,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC;IAClD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,KAAK,GACV,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;YACnC,qBAAqB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;YAC9C,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;YACxD,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC;YACpC,CAAC,eAAe,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACpB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAkC;IAC9D,WAAW,EAAE,mBAAmB;IAChC,UAAU;CACV,CAAC","sourcesContent":["import { FixedRing, type ScalarEntry, ScalarScanner } from \"../stream-utils.ts\";\nimport type { DetectorContext, DetectorMatch, StreamDetector } from \"../types.ts\";\nimport { createLineCycleState, type LineCycleState, updateLineCycles } from \"./collapse-lines.ts\";\nimport {\n\tcreateParagraphRepeatState,\n\ttype ParagraphRepeatState,\n\tupdateParagraphRepeats,\n} from \"./collapse-paragraphs.ts\";\nimport { createShortPeriodState, type ShortPeriodState, updateShortPeriods } from \"./collapse-periods.ts\";\nimport {\n\tcreateDominantRunState,\n\tcreateWhitespaceFloodState,\n\ttype DominantRunState,\n\tupdateDominantRun,\n\tupdateWhitespaceFlood,\n\ttype WhitespaceFloodState,\n} from \"./collapse-scalars.ts\";\n\nexport const TAIL_RING_CAPACITY = 512;\n\nexport interface CollapseState {\n\treadonly scanner: ScalarScanner;\n\treadonly tailRing: FixedRing<ScalarEntry>;\n\treadonly run: DominantRunState;\n\treadonly whitespace: WhitespaceFloodState;\n\treadonly periods: ShortPeriodState;\n\treadonly lines: LineCycleState;\n\treadonly paragraphs: ParagraphRepeatState;\n\tlatched: DetectorMatch | null;\n}\n\nexport function createCollapseState(): CollapseState {\n\treturn {\n\t\tscanner: new ScalarScanner(),\n\t\ttailRing: new FixedRing<ScalarEntry>(TAIL_RING_CAPACITY),\n\t\trun: createDominantRunState(),\n\t\twhitespace: createWhitespaceFloodState(),\n\t\tperiods: createShortPeriodState(),\n\t\tlines: createLineCycleState(),\n\t\tparagraphs: createParagraphRepeatState(),\n\t\tlatched: null,\n\t};\n}\n\nfunction checkDelta(state: CollapseState, delta: string, context: DetectorContext): DetectorMatch | null {\n\tif (state.latched !== null) return state.latched;\n\tconst watchParagraphs = context.source !== \"tool\";\n\tfor (const entry of state.scanner.push(delta)) {\n\t\tstate.tailRing.push(entry);\n\t\tconst match =\n\t\t\tupdateDominantRun(state.run, entry) ??\n\t\t\tupdateWhitespaceFlood(state.whitespace, entry) ??\n\t\t\tupdateShortPeriods(state.periods, entry, state.tailRing) ??\n\t\t\tupdateLineCycles(state.lines, entry) ??\n\t\t\t(watchParagraphs ? updateParagraphRepeats(state.paragraphs, entry) : null);\n\t\tif (match !== null) {\n\t\t\tstate.latched = match;\n\t\t\treturn match;\n\t\t}\n\t}\n\treturn null;\n}\n\nexport const collapseDetector: StreamDetector<CollapseState> = {\n\tcreateState: createCollapseState,\n\tcheckDelta,\n};\n"]}
@@ -7,7 +7,7 @@ export type { McpServerDeclaration } from "./builtin/mcp/config-schema.ts";
7
7
  export { createExtensionRuntime, discoverAndLoadExtensions, loadExtensionFromFactory, loadExtensions, } from "./loader.ts";
8
8
  export type { ExtensionErrorListener, ExtensionToolHookLifecycleEvent, ExtensionToolHookLifecycleObserver, ExtensionToolHookLifecycleStatus, ExtensionToolHookName, ForkHandler, NavigateTreeHandler, NewSessionHandler, ShutdownHandler, SwitchSessionHandler, } from "./runner.ts";
9
9
  export { ExtensionRunner } from "./runner.ts";
10
- export type { AfterProviderResponseEvent, AgentEndEvent, AgentSettledEvent, AgentStartEvent, AgentToolResult, AgentToolUpdateCallback, AppendEntryHandler, AppKeybinding, AutocompleteProviderFactory, BashToolCallEvent, BashToolResultEvent, BeforeAgentStartEvent, BeforeAgentStartEventResult, BeforeProviderHeadersEvent, BeforeProviderRequestEvent, BeforeProviderRequestEventResult, BuildSystemPromptOptions, CompactOptions, ContextEvent, ContextEventResult, ContextUsage, CustomToolCallEvent, CustomToolResultEvent, EditorFactory, EditToolCallEvent, EditToolResultEvent, EntryRenderer, EntryRenderOptions, ExecOptions, ExecResult, ExecuteToolErrorCode, ExecuteToolHandler, ExecuteToolOptions, ExecuteToolResult, ExecuteToolUpdateCallback, Extension, ExtensionActions, ExtensionAPI, ExtensionCommandContext, ExtensionCommandContextActions, ExtensionContext, ExtensionContextActions, ExtensionError, ExtensionEvent, ExtensionFactory, ExtensionFlag, ExtensionHandler, ExtensionMode, ExtensionRpcRequestHandler, ExtensionRuntime, ExtensionShortcut, ExtensionUIContext, ExtensionUIDialogOptions, ExtensionWidgetOptions, FilesystemOperation, FilesystemPolicy, FilesystemPolicyChecker, FilesystemPolicyDecision, FilesystemPolicyRequest, FindToolCallEvent, FindToolResultEvent, GetActiveToolsHandler, GetAllToolsHandler, GetCommandsHandler, GetThinkingLevelHandler, GrepToolCallEvent, GrepToolResultEvent, InlineExtension, InputDispositionEvent, InputEvent, InputEventResult, InputSource, KeybindingsManager, LoadExtensionsResult, LsToolCallEvent, LsToolResultEvent, MarkdownTransformContext, MarkdownTransformer, MessageEndEvent, MessageRenderer, MessageRenderOptions, MessageStartEvent, MessageUpdateEvent, ModelSelectEvent, ModelSelectEventResult, ModelSelectSource, PowerShellToolCallEvent, PowerShellToolResultEvent, ProjectTrustContext, ProjectTrustEvent, ProjectTrustEventDecision, ProjectTrustEventResult, ProjectTrustHandler, ProviderConfig, ProviderModelConfig, ReadToolCallEvent, ReadToolResultEvent, RegisteredCommand, RegisteredTool, ReplacedSessionContext, ResolvedCommand, ResourcesDiscoverEvent, ResourcesDiscoverResult, SendMessageHandler, SendUserMessageHandler, SessionBeforeCompactEvent, SessionBeforeCompactResult, SessionBeforeForkEvent, SessionBeforeForkResult, SessionBeforeSwitchEvent, SessionBeforeSwitchResult, SessionBeforeTreeEvent, SessionBeforeTreeResult, SessionCompactEvent, SessionCompactFailedEvent, SessionEvent, SessionInfoChangedEvent, SessionShutdownEvent, SessionStartEvent, SessionTreeEvent, SetActiveToolsHandler, SetLabelHandler, SetModelHandler, SetThinkingLevelHandler, SystemPromptChangeEvent, TerminalInputHandler, ToolCallEvent, ToolCallEventResult, ToolDefinition, ToolExecutionEndEvent, ToolExecutionMode, ToolExecutionStartEvent, ToolExecutionUpdateEvent, ToolInfo, ToolRenderResultOptions, ToolResultEvent, ToolResultEventResult, TreePreparation, TurnEndEvent, TurnStartEvent, UserBashEvent, UserBashEventResult, WidgetPlacement, WorkingIndicatorOptions, WriteToolCallEvent, WriteToolResultEvent, } from "./types.ts";
10
+ export type { AfterProviderResponseEvent, AgentEndEvent, AgentSettledEvent, AgentStartEvent, AgentToolResult, AgentToolUpdateCallback, AppendEntryHandler, AppKeybinding, AutocompleteProviderFactory, BashToolCallEvent, BashToolResultEvent, BeforeAgentStartEvent, BeforeAgentStartEventResult, BeforeProviderHeadersEvent, BeforeProviderRequestEvent, BeforeProviderRequestEventResult, BuildSystemPromptOptions, CompactOptions, ContextEvent, ContextEventResult, ContextUsage, CustomToolCallEvent, CustomToolResultEvent, EditorFactory, EditToolCallEvent, EditToolResultEvent, EntryRenderer, EntryRenderOptions, ExecOptions, ExecResult, ExecuteToolErrorCode, ExecuteToolHandler, ExecuteToolOptions, ExecuteToolResult, ExecuteToolUpdateCallback, Extension, ExtensionActions, ExtensionAPI, ExtensionCommandContext, ExtensionCommandContextActions, ExtensionContext, ExtensionContextActions, ExtensionError, ExtensionEvent, ExtensionFactory, ExtensionFlag, ExtensionHandler, ExtensionMode, ExtensionRpcRequestHandler, ExtensionRuntime, ExtensionShortcut, ExtensionUIContext, ExtensionUIDialogOptions, ExtensionWidgetOptions, FilesystemOperation, FilesystemPolicy, FilesystemPolicyChecker, FilesystemPolicyDecision, FilesystemPolicyRequest, FindToolCallEvent, FindToolResultEvent, GetActiveToolsHandler, GetAllToolsHandler, GetCommandsHandler, GetThinkingLevelHandler, GrepToolCallEvent, GrepToolResultEvent, InlineExtension, InputDispositionEvent, InputEvent, InputEventResult, InputSource, KeybindingsManager, LoadExtensionsResult, LsToolCallEvent, LsToolResultEvent, MarkdownTransformContext, MarkdownTransformer, MessageEndEvent, MessageRenderer, MessageRenderOptions, MessageStartEvent, MessageUpdateEvent, ModelSelectEvent, ModelSelectEventResult, ModelSelectSource, PowerShellToolCallEvent, PowerShellToolResultEvent, ProjectTrustContext, ProjectTrustEvent, ProjectTrustEventDecision, ProjectTrustEventResult, ProjectTrustHandler, ProviderConfig, ProviderModelConfig, ReadToolCallEvent, ReadToolResultEvent, RegisteredCommand, RegisteredTool, ReplacedSessionContext, ResolvedCommand, ResourcesDiscoverEvent, ResourcesDiscoverResult, SendMessageHandler, SendUserMessageHandler, SessionBeforeCompactEvent, SessionBeforeCompactResult, SessionBeforeForkEvent, SessionBeforeForkResult, SessionBeforeSwitchEvent, SessionBeforeSwitchResult, SessionBeforeTreeEvent, SessionBeforeTreeResult, SessionCompactEvent, SessionCompactFailedEvent, SessionEvent, SessionInfoChangedEvent, SessionShutdownEvent, SessionStartEvent, SessionTreeEvent, SetActiveToolsHandler, SetLabelHandler, SetModelHandler, SetThinkingLevelHandler, SystemPromptChangeEvent, TerminalInputHandler, ToolCallEvent, ToolCallEventResult, ToolDefinition, ToolExecutionEndEvent, ToolExecutionMode, ToolExecutionStartEvent, ToolExecutionUpdateEvent, ToolInfo, ToolRenderResultOptions, ToolResultEvent, ToolResultEventResult, TreePreparation, TurnEndEvent, TurnStartEvent, UIPromptEndEvent, UIPromptKind, UIPromptStartEvent, UserBashEvent, UserBashEventResult, WidgetPlacement, WorkingIndicatorOptions, WriteToolCallEvent, WriteToolResultEvent, } from "./types.ts";
11
11
  export { defineTool, ExecuteToolError, isBashToolResult, isEditToolResult, isFindToolResult, isGrepToolResult, isLsToolResult, isPowerShellToolResult, isReadToolResult, isToolCallEventType, isWriteToolResult, RUNTIME_EXTENSION_PATH, } from "./types.ts";
12
12
  export { wrapRegisteredTool, wrapRegisteredTools } from "./wrapper.ts";
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/extensions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EACN,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,GACd,MAAM,aAAa,CAAC;AAarB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA0K9C,cAAc;AACd,OAAO,EACN,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC","sourcesContent":["/**\n * Extension system for lifecycle events and custom tools.\n */\n\nexport type { SlashCommandInfo, SlashCommandSource } from \"../slash-commands.ts\";\nexport type { SourceInfo } from \"../source-info.ts\";\nexport type { McpServerDeclaration } from \"./builtin/mcp/config-schema.ts\";\nexport {\n\tcreateExtensionRuntime,\n\tdiscoverAndLoadExtensions,\n\tloadExtensionFromFactory,\n\tloadExtensions,\n} from \"./loader.ts\";\nexport type {\n\tExtensionErrorListener,\n\tExtensionToolHookLifecycleEvent,\n\tExtensionToolHookLifecycleObserver,\n\tExtensionToolHookLifecycleStatus,\n\tExtensionToolHookName,\n\tForkHandler,\n\tNavigateTreeHandler,\n\tNewSessionHandler,\n\tShutdownHandler,\n\tSwitchSessionHandler,\n} from \"./runner.ts\";\nexport { ExtensionRunner } from \"./runner.ts\";\nexport type {\n\tAfterProviderResponseEvent,\n\tAgentEndEvent,\n\tAgentSettledEvent,\n\tAgentStartEvent,\n\t// Re-exports\n\tAgentToolResult,\n\tAgentToolUpdateCallback,\n\tAppendEntryHandler,\n\t// App keybindings (for custom editors)\n\tAppKeybinding,\n\tAutocompleteProviderFactory,\n\t// Events - Tool (ToolCallEvent types)\n\tBashToolCallEvent,\n\tBashToolResultEvent,\n\tBeforeAgentStartEvent,\n\tBeforeAgentStartEventResult,\n\tBeforeProviderHeadersEvent,\n\tBeforeProviderRequestEvent,\n\tBeforeProviderRequestEventResult,\n\tBuildSystemPromptOptions,\n\t// Context\n\tCompactOptions,\n\t// Events - Agent\n\tContextEvent,\n\t// Event Results\n\tContextEventResult,\n\tContextUsage,\n\tCustomToolCallEvent,\n\tCustomToolResultEvent,\n\tEditorFactory,\n\tEditToolCallEvent,\n\tEditToolResultEvent,\n\t// Message and Entry Rendering\n\tEntryRenderer,\n\tEntryRenderOptions,\n\tExecOptions,\n\tExecResult,\n\tExecuteToolErrorCode,\n\tExecuteToolHandler,\n\tExecuteToolOptions,\n\tExecuteToolResult,\n\tExecuteToolUpdateCallback,\n\tExtension,\n\tExtensionActions,\n\t// API\n\tExtensionAPI,\n\tExtensionCommandContext,\n\tExtensionCommandContextActions,\n\tExtensionContext,\n\tExtensionContextActions,\n\t// Errors\n\tExtensionError,\n\tExtensionEvent,\n\tExtensionFactory,\n\tExtensionFlag,\n\tExtensionHandler,\n\tExtensionMode,\n\tExtensionRpcRequestHandler,\n\t// Runtime\n\tExtensionRuntime,\n\tExtensionShortcut,\n\tExtensionUIContext,\n\tExtensionUIDialogOptions,\n\tExtensionWidgetOptions,\n\tFilesystemOperation,\n\tFilesystemPolicy,\n\tFilesystemPolicyChecker,\n\tFilesystemPolicyDecision,\n\tFilesystemPolicyRequest,\n\tFindToolCallEvent,\n\tFindToolResultEvent,\n\tGetActiveToolsHandler,\n\tGetAllToolsHandler,\n\tGetCommandsHandler,\n\tGetThinkingLevelHandler,\n\tGrepToolCallEvent,\n\tGrepToolResultEvent,\n\tInlineExtension,\n\t// Events - Input\n\tInputDispositionEvent,\n\tInputEvent,\n\tInputEventResult,\n\tInputSource,\n\tKeybindingsManager,\n\tLoadExtensionsResult,\n\tLsToolCallEvent,\n\tLsToolResultEvent,\n\tMarkdownTransformContext,\n\tMarkdownTransformer,\n\t// Events - Message\n\tMessageEndEvent,\n\tMessageRenderer,\n\tMessageRenderOptions,\n\tMessageStartEvent,\n\tMessageUpdateEvent,\n\tModelSelectEvent,\n\tModelSelectEventResult,\n\tModelSelectSource,\n\tPowerShellToolCallEvent,\n\tPowerShellToolResultEvent,\n\tProjectTrustContext,\n\tProjectTrustEvent,\n\tProjectTrustEventDecision,\n\tProjectTrustEventResult,\n\tProjectTrustHandler,\n\t// Provider Registration\n\tProviderConfig,\n\tProviderModelConfig,\n\tReadToolCallEvent,\n\tReadToolResultEvent,\n\t// Commands\n\tRegisteredCommand,\n\tRegisteredTool,\n\tReplacedSessionContext,\n\tResolvedCommand,\n\t// Events - Resources\n\tResourcesDiscoverEvent,\n\tResourcesDiscoverResult,\n\tSendMessageHandler,\n\tSendUserMessageHandler,\n\tSessionBeforeCompactEvent,\n\tSessionBeforeCompactResult,\n\tSessionBeforeForkEvent,\n\tSessionBeforeForkResult,\n\tSessionBeforeSwitchEvent,\n\tSessionBeforeSwitchResult,\n\tSessionBeforeTreeEvent,\n\tSessionBeforeTreeResult,\n\tSessionCompactEvent,\n\tSessionCompactFailedEvent,\n\tSessionEvent,\n\tSessionInfoChangedEvent,\n\tSessionShutdownEvent,\n\t// Events - Session\n\tSessionStartEvent,\n\tSessionTreeEvent,\n\tSetActiveToolsHandler,\n\tSetLabelHandler,\n\tSetModelHandler,\n\tSetThinkingLevelHandler,\n\tSystemPromptChangeEvent,\n\tTerminalInputHandler,\n\t// Events - Tool\n\tToolCallEvent,\n\tToolCallEventResult,\n\t// Tools\n\tToolDefinition,\n\t// Events - Tool Execution\n\tToolExecutionEndEvent,\n\t// Tool execution mode\n\tToolExecutionMode,\n\tToolExecutionStartEvent,\n\tToolExecutionUpdateEvent,\n\tToolInfo,\n\tToolRenderResultOptions,\n\tToolResultEvent,\n\tToolResultEventResult,\n\tTreePreparation,\n\tTurnEndEvent,\n\tTurnStartEvent,\n\t// Events - User Bash\n\tUserBashEvent,\n\tUserBashEventResult,\n\tWidgetPlacement,\n\tWorkingIndicatorOptions,\n\tWriteToolCallEvent,\n\tWriteToolResultEvent,\n} from \"./types.ts\";\n// Type guards\nexport {\n\tdefineTool,\n\tExecuteToolError,\n\tisBashToolResult,\n\tisEditToolResult,\n\tisFindToolResult,\n\tisGrepToolResult,\n\tisLsToolResult,\n\tisPowerShellToolResult,\n\tisReadToolResult,\n\tisToolCallEventType,\n\tisWriteToolResult,\n\tRUNTIME_EXTENSION_PATH,\n} from \"./types.ts\";\nexport { wrapRegisteredTool, wrapRegisteredTools } from \"./wrapper.ts\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/extensions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EACN,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,GACd,MAAM,aAAa,CAAC;AAarB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA6K9C,cAAc;AACd,OAAO,EACN,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC","sourcesContent":["/**\n * Extension system for lifecycle events and custom tools.\n */\n\nexport type { SlashCommandInfo, SlashCommandSource } from \"../slash-commands.ts\";\nexport type { SourceInfo } from \"../source-info.ts\";\nexport type { McpServerDeclaration } from \"./builtin/mcp/config-schema.ts\";\nexport {\n\tcreateExtensionRuntime,\n\tdiscoverAndLoadExtensions,\n\tloadExtensionFromFactory,\n\tloadExtensions,\n} from \"./loader.ts\";\nexport type {\n\tExtensionErrorListener,\n\tExtensionToolHookLifecycleEvent,\n\tExtensionToolHookLifecycleObserver,\n\tExtensionToolHookLifecycleStatus,\n\tExtensionToolHookName,\n\tForkHandler,\n\tNavigateTreeHandler,\n\tNewSessionHandler,\n\tShutdownHandler,\n\tSwitchSessionHandler,\n} from \"./runner.ts\";\nexport { ExtensionRunner } from \"./runner.ts\";\nexport type {\n\tAfterProviderResponseEvent,\n\tAgentEndEvent,\n\tAgentSettledEvent,\n\tAgentStartEvent,\n\t// Re-exports\n\tAgentToolResult,\n\tAgentToolUpdateCallback,\n\tAppendEntryHandler,\n\t// App keybindings (for custom editors)\n\tAppKeybinding,\n\tAutocompleteProviderFactory,\n\t// Events - Tool (ToolCallEvent types)\n\tBashToolCallEvent,\n\tBashToolResultEvent,\n\tBeforeAgentStartEvent,\n\tBeforeAgentStartEventResult,\n\tBeforeProviderHeadersEvent,\n\tBeforeProviderRequestEvent,\n\tBeforeProviderRequestEventResult,\n\tBuildSystemPromptOptions,\n\t// Context\n\tCompactOptions,\n\t// Events - Agent\n\tContextEvent,\n\t// Event Results\n\tContextEventResult,\n\tContextUsage,\n\tCustomToolCallEvent,\n\tCustomToolResultEvent,\n\tEditorFactory,\n\tEditToolCallEvent,\n\tEditToolResultEvent,\n\t// Message and Entry Rendering\n\tEntryRenderer,\n\tEntryRenderOptions,\n\tExecOptions,\n\tExecResult,\n\tExecuteToolErrorCode,\n\tExecuteToolHandler,\n\tExecuteToolOptions,\n\tExecuteToolResult,\n\tExecuteToolUpdateCallback,\n\tExtension,\n\tExtensionActions,\n\t// API\n\tExtensionAPI,\n\tExtensionCommandContext,\n\tExtensionCommandContextActions,\n\tExtensionContext,\n\tExtensionContextActions,\n\t// Errors\n\tExtensionError,\n\tExtensionEvent,\n\tExtensionFactory,\n\tExtensionFlag,\n\tExtensionHandler,\n\tExtensionMode,\n\tExtensionRpcRequestHandler,\n\t// Runtime\n\tExtensionRuntime,\n\tExtensionShortcut,\n\tExtensionUIContext,\n\tExtensionUIDialogOptions,\n\tExtensionWidgetOptions,\n\tFilesystemOperation,\n\tFilesystemPolicy,\n\tFilesystemPolicyChecker,\n\tFilesystemPolicyDecision,\n\tFilesystemPolicyRequest,\n\tFindToolCallEvent,\n\tFindToolResultEvent,\n\tGetActiveToolsHandler,\n\tGetAllToolsHandler,\n\tGetCommandsHandler,\n\tGetThinkingLevelHandler,\n\tGrepToolCallEvent,\n\tGrepToolResultEvent,\n\tInlineExtension,\n\t// Events - Input\n\tInputDispositionEvent,\n\tInputEvent,\n\tInputEventResult,\n\tInputSource,\n\tKeybindingsManager,\n\tLoadExtensionsResult,\n\tLsToolCallEvent,\n\tLsToolResultEvent,\n\tMarkdownTransformContext,\n\tMarkdownTransformer,\n\t// Events - Message\n\tMessageEndEvent,\n\tMessageRenderer,\n\tMessageRenderOptions,\n\tMessageStartEvent,\n\tMessageUpdateEvent,\n\tModelSelectEvent,\n\tModelSelectEventResult,\n\tModelSelectSource,\n\tPowerShellToolCallEvent,\n\tPowerShellToolResultEvent,\n\tProjectTrustContext,\n\tProjectTrustEvent,\n\tProjectTrustEventDecision,\n\tProjectTrustEventResult,\n\tProjectTrustHandler,\n\t// Provider Registration\n\tProviderConfig,\n\tProviderModelConfig,\n\tReadToolCallEvent,\n\tReadToolResultEvent,\n\t// Commands\n\tRegisteredCommand,\n\tRegisteredTool,\n\tReplacedSessionContext,\n\tResolvedCommand,\n\t// Events - Resources\n\tResourcesDiscoverEvent,\n\tResourcesDiscoverResult,\n\tSendMessageHandler,\n\tSendUserMessageHandler,\n\tSessionBeforeCompactEvent,\n\tSessionBeforeCompactResult,\n\tSessionBeforeForkEvent,\n\tSessionBeforeForkResult,\n\tSessionBeforeSwitchEvent,\n\tSessionBeforeSwitchResult,\n\tSessionBeforeTreeEvent,\n\tSessionBeforeTreeResult,\n\tSessionCompactEvent,\n\tSessionCompactFailedEvent,\n\tSessionEvent,\n\tSessionInfoChangedEvent,\n\tSessionShutdownEvent,\n\t// Events - Session\n\tSessionStartEvent,\n\tSessionTreeEvent,\n\tSetActiveToolsHandler,\n\tSetLabelHandler,\n\tSetModelHandler,\n\tSetThinkingLevelHandler,\n\tSystemPromptChangeEvent,\n\tTerminalInputHandler,\n\t// Events - Tool\n\tToolCallEvent,\n\tToolCallEventResult,\n\t// Tools\n\tToolDefinition,\n\t// Events - Tool Execution\n\tToolExecutionEndEvent,\n\t// Tool execution mode\n\tToolExecutionMode,\n\tToolExecutionStartEvent,\n\tToolExecutionUpdateEvent,\n\tToolInfo,\n\tToolRenderResultOptions,\n\tToolResultEvent,\n\tToolResultEventResult,\n\tTreePreparation,\n\tTurnEndEvent,\n\tTurnStartEvent,\n\tUIPromptEndEvent,\n\tUIPromptKind,\n\tUIPromptStartEvent,\n\t// Events - User Bash\n\tUserBashEvent,\n\tUserBashEventResult,\n\tWidgetPlacement,\n\tWorkingIndicatorOptions,\n\tWriteToolCallEvent,\n\tWriteToolResultEvent,\n} from \"./types.ts\";\n// Type guards\nexport {\n\tdefineTool,\n\tExecuteToolError,\n\tisBashToolResult,\n\tisEditToolResult,\n\tisFindToolResult,\n\tisGrepToolResult,\n\tisLsToolResult,\n\tisPowerShellToolResult,\n\tisReadToolResult,\n\tisToolCallEventType,\n\tisWriteToolResult,\n\tRUNTIME_EXTENSION_PATH,\n} from \"./types.ts\";\nexport { wrapRegisteredTool, wrapRegisteredTools } from \"./wrapper.ts\";\n"]}
@@ -144,6 +144,8 @@ export declare class ExtensionRunner {
144
144
  private staleMessage;
145
145
  private toolHookLifecycleObserver;
146
146
  private nextToolHookRunIndex;
147
+ private uiPromptDepth;
148
+ private activeUIPrompt;
147
149
  constructor(extensions: Extension[], runtime: ExtensionRuntime, cwd: string, sessionManager: SessionManager, modelRegistry: ModelRegistry, eventBus?: EventBus);
148
150
  bindCore(actions: ExtensionActions, contextActions: ExtensionContextActions, providerActions?: {
149
151
  registerProvider?: (name: string, config: ProviderConfig) => void;
@@ -154,6 +156,9 @@ export declare class ExtensionRunner {
154
156
  private requestReload;
155
157
  setUIContext(uiContext?: ExtensionUIContext, mode?: ExtensionMode): void;
156
158
  setToolHookLifecycleObserver(observer?: ExtensionToolHookLifecycleObserver): void;
159
+ private wrapUIPromptContext;
160
+ private withUIPrompt;
161
+ private emitUIPromptEvent;
157
162
  getUIContext(): ExtensionUIContext;
158
163
  hasUI(): boolean;
159
164
  getExtensionPaths(): string[];