@aria-cli/tools 1.0.13 → 1.0.14

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 (465) hide show
  1. package/dist/ask-user-interaction.d.ts +0 -1
  2. package/dist/cache/web-cache.d.ts +0 -1
  3. package/dist/definitions/arion.d.ts +0 -1
  4. package/dist/definitions/browser/browser.d.ts +0 -1
  5. package/dist/definitions/browser/index.d.ts +0 -1
  6. package/dist/definitions/browser/pw-downloads.d.ts +0 -1
  7. package/dist/definitions/browser/pw-interactions.d.ts +0 -1
  8. package/dist/definitions/browser/pw-responses.d.ts +0 -1
  9. package/dist/definitions/browser/pw-session.d.ts +0 -1
  10. package/dist/definitions/browser/pw-shared.d.ts +0 -1
  11. package/dist/definitions/browser/pw-snapshot.d.ts +0 -1
  12. package/dist/definitions/browser/pw-state.d.ts +0 -1
  13. package/dist/definitions/browser/types.d.ts +0 -1
  14. package/dist/definitions/code-intelligence.d.ts +0 -1
  15. package/dist/definitions/core.d.ts +0 -1
  16. package/dist/definitions/delegation.d.ts +0 -1
  17. package/dist/definitions/deploy.d.ts +0 -1
  18. package/dist/definitions/filesystem.d.ts +0 -1
  19. package/dist/definitions/frg.d.ts +0 -1
  20. package/dist/definitions/index.d.ts +0 -1
  21. package/dist/definitions/memory.d.ts +0 -1
  22. package/dist/definitions/messaging.d.ts +0 -1
  23. package/dist/definitions/meta.d.ts +0 -1
  24. package/dist/definitions/network.d.ts +0 -1
  25. package/dist/definitions/outlook.d.ts +0 -1
  26. package/dist/definitions/patch/apply-patch.d.ts +0 -1
  27. package/dist/definitions/patch/fuzzy-match.d.ts +0 -1
  28. package/dist/definitions/patch/index.d.ts +0 -1
  29. package/dist/definitions/patch/patch-parser.d.ts +0 -1
  30. package/dist/definitions/patch/sandbox-paths.d.ts +0 -1
  31. package/dist/definitions/process/index.d.ts +0 -1
  32. package/dist/definitions/process/process-registry.d.ts +0 -1
  33. package/dist/definitions/process/process.d.ts +0 -1
  34. package/dist/definitions/process/pty-keys.d.ts +0 -1
  35. package/dist/definitions/process/session-slug.d.ts +0 -1
  36. package/dist/definitions/quip.d.ts +0 -1
  37. package/dist/definitions/search.d.ts +0 -1
  38. package/dist/definitions/session-history.d.ts +0 -1
  39. package/dist/definitions/shell.d.ts +0 -1
  40. package/dist/definitions/slack.d.ts +0 -1
  41. package/dist/definitions/web.d.ts +0 -1
  42. package/dist/executors/apply-patch.d.ts +0 -1
  43. package/dist/executors/arion.d.ts +0 -1
  44. package/dist/executors/code-intelligence.d.ts +0 -1
  45. package/dist/executors/deploy.d.ts +0 -1
  46. package/dist/executors/filesystem.d.ts +0 -1
  47. package/dist/executors/frg-freshness.d.ts +0 -1
  48. package/dist/executors/frg.d.ts +0 -1
  49. package/dist/executors/index.d.ts +0 -1
  50. package/dist/executors/learning-meta.d.ts +0 -1
  51. package/dist/executors/lsp-client.d.ts +0 -1
  52. package/dist/executors/memory.d.ts +0 -1
  53. package/dist/executors/meta.d.ts +0 -1
  54. package/dist/executors/process-registry.d.ts +0 -1
  55. package/dist/executors/pty-session-store.d.ts +0 -1
  56. package/dist/executors/pty.d.ts +0 -1
  57. package/dist/executors/restart.d.ts +0 -1
  58. package/dist/executors/search-freshness.d.ts +0 -1
  59. package/dist/executors/search-types.d.ts +0 -1
  60. package/dist/executors/search.d.ts +0 -1
  61. package/dist/executors/self-diagnose.d.ts +0 -1
  62. package/dist/executors/session-history.d.ts +0 -1
  63. package/dist/executors/shell-safety.d.ts +0 -1
  64. package/dist/executors/shell.d.ts +0 -1
  65. package/dist/executors/utils.d.ts +0 -1
  66. package/dist/executors/web.d.ts +0 -1
  67. package/dist/extraction/content-extraction.d.ts +0 -1
  68. package/dist/extraction/index.d.ts +0 -1
  69. package/dist/headless-control-contract.d.ts +0 -1
  70. package/dist/index.d.ts +0 -1
  71. package/dist/index.js +378 -71
  72. package/dist/local-control-http-auth.d.ts +0 -1
  73. package/dist/mcp/client.d.ts +0 -1
  74. package/dist/mcp/connection.d.ts +0 -1
  75. package/dist/mcp/index.d.ts +0 -1
  76. package/dist/mcp/jsonrpc.d.ts +0 -1
  77. package/dist/mcp/types.d.ts +0 -1
  78. package/dist/network-control-adapter.d.ts +0 -1
  79. package/dist/network-runtime/address-types.d.ts +0 -1
  80. package/dist/network-runtime/db-owner-fencing.d.ts +0 -1
  81. package/dist/network-runtime/delivery-receipts.d.ts +0 -1
  82. package/dist/network-runtime/direct-endpoint-authority.d.ts +0 -1
  83. package/dist/network-runtime/index.d.ts +0 -1
  84. package/dist/network-runtime/index.js +8 -13
  85. package/dist/network-runtime/local-control-contract.d.ts +0 -1
  86. package/dist/network-runtime/node-store-contract.d.ts +0 -1
  87. package/dist/network-runtime/pair-route-contract.d.ts +0 -1
  88. package/dist/network-runtime/peer-capabilities.d.ts +0 -1
  89. package/dist/network-runtime/peer-principal-ref.d.ts +0 -1
  90. package/dist/network-runtime/peer-state-machine.d.ts +0 -1
  91. package/dist/network-runtime/protocol-schemas.d.ts +0 -1
  92. package/dist/network-runtime/runtime-bootstrap-contract.d.ts +0 -1
  93. package/dist/outlook/desktop-session.d.ts +0 -1
  94. package/dist/policy.d.ts +0 -1
  95. package/dist/providers/brave.d.ts +0 -1
  96. package/dist/providers/duckduckgo.d.ts +0 -1
  97. package/dist/providers/exa.d.ts +0 -1
  98. package/dist/providers/firecrawl.d.ts +0 -1
  99. package/dist/providers/index.d.ts +0 -1
  100. package/dist/providers/jina.d.ts +0 -1
  101. package/dist/providers/router.d.ts +0 -1
  102. package/dist/providers/search-provider.d.ts +0 -1
  103. package/dist/providers/tavily.d.ts +0 -1
  104. package/dist/quip/desktop-session.d.ts +0 -1
  105. package/dist/registry/index.d.ts +0 -1
  106. package/dist/registry/registry.d.ts +0 -1
  107. package/dist/runtime-socket-local-control-client.d.ts +0 -1
  108. package/dist/security/dns-normalization.d.ts +0 -1
  109. package/dist/security/dns-pinning.d.ts +0 -1
  110. package/dist/security/external-content.d.ts +0 -1
  111. package/dist/security/ssrf.d.ts +0 -1
  112. package/dist/slack/desktop-session.d.ts +0 -1
  113. package/dist/tool-factory.d.ts +0 -1
  114. package/dist/types.d.ts +0 -1
  115. package/dist/utils/retry.d.ts +0 -1
  116. package/dist/utils/safe-parse-json.d.ts +0 -1
  117. package/dist/utils/url.d.ts +0 -1
  118. package/dist-cjs/index.js +107 -107
  119. package/dist-cjs/network-runtime/index.js +3 -3
  120. package/package.json +9 -7
  121. package/dist/.tsbuildinfo +0 -1
  122. package/dist/ask-user-interaction.d.ts.map +0 -1
  123. package/dist/ask-user-interaction.js +0 -23
  124. package/dist/ask-user-interaction.js.map +0 -1
  125. package/dist/cache/web-cache.d.ts.map +0 -1
  126. package/dist/cache/web-cache.js +0 -67
  127. package/dist/cache/web-cache.js.map +0 -1
  128. package/dist/definitions/arion.d.ts.map +0 -1
  129. package/dist/definitions/arion.js +0 -105
  130. package/dist/definitions/arion.js.map +0 -1
  131. package/dist/definitions/browser/browser.d.ts.map +0 -1
  132. package/dist/definitions/browser/browser.js +0 -419
  133. package/dist/definitions/browser/browser.js.map +0 -1
  134. package/dist/definitions/browser/index.d.ts.map +0 -1
  135. package/dist/definitions/browser/index.js +0 -5
  136. package/dist/definitions/browser/index.js.map +0 -1
  137. package/dist/definitions/browser/pw-downloads.d.ts.map +0 -1
  138. package/dist/definitions/browser/pw-downloads.js +0 -115
  139. package/dist/definitions/browser/pw-downloads.js.map +0 -1
  140. package/dist/definitions/browser/pw-interactions.d.ts.map +0 -1
  141. package/dist/definitions/browser/pw-interactions.js +0 -200
  142. package/dist/definitions/browser/pw-interactions.js.map +0 -1
  143. package/dist/definitions/browser/pw-responses.d.ts.map +0 -1
  144. package/dist/definitions/browser/pw-responses.js +0 -77
  145. package/dist/definitions/browser/pw-responses.js.map +0 -1
  146. package/dist/definitions/browser/pw-session.d.ts.map +0 -1
  147. package/dist/definitions/browser/pw-session.js +0 -311
  148. package/dist/definitions/browser/pw-session.js.map +0 -1
  149. package/dist/definitions/browser/pw-shared.d.ts.map +0 -1
  150. package/dist/definitions/browser/pw-shared.js +0 -67
  151. package/dist/definitions/browser/pw-shared.js.map +0 -1
  152. package/dist/definitions/browser/pw-snapshot.d.ts.map +0 -1
  153. package/dist/definitions/browser/pw-snapshot.js +0 -302
  154. package/dist/definitions/browser/pw-snapshot.js.map +0 -1
  155. package/dist/definitions/browser/pw-state.d.ts.map +0 -1
  156. package/dist/definitions/browser/pw-state.js +0 -63
  157. package/dist/definitions/browser/pw-state.js.map +0 -1
  158. package/dist/definitions/browser/types.d.ts.map +0 -1
  159. package/dist/definitions/browser/types.js +0 -5
  160. package/dist/definitions/browser/types.js.map +0 -1
  161. package/dist/definitions/code-intelligence.d.ts.map +0 -1
  162. package/dist/definitions/code-intelligence.js +0 -471
  163. package/dist/definitions/code-intelligence.js.map +0 -1
  164. package/dist/definitions/core.d.ts.map +0 -1
  165. package/dist/definitions/core.js +0 -110
  166. package/dist/definitions/core.js.map +0 -1
  167. package/dist/definitions/delegation.d.ts.map +0 -1
  168. package/dist/definitions/delegation.js +0 -513
  169. package/dist/definitions/delegation.js.map +0 -1
  170. package/dist/definitions/deploy.d.ts.map +0 -1
  171. package/dist/definitions/deploy.js +0 -66
  172. package/dist/definitions/deploy.js.map +0 -1
  173. package/dist/definitions/filesystem.d.ts.map +0 -1
  174. package/dist/definitions/filesystem.js +0 -197
  175. package/dist/definitions/filesystem.js.map +0 -1
  176. package/dist/definitions/frg.d.ts.map +0 -1
  177. package/dist/definitions/frg.js +0 -64
  178. package/dist/definitions/frg.js.map +0 -1
  179. package/dist/definitions/index.d.ts.map +0 -1
  180. package/dist/definitions/index.js +0 -21
  181. package/dist/definitions/index.js.map +0 -1
  182. package/dist/definitions/memory.d.ts.map +0 -1
  183. package/dist/definitions/memory.js +0 -124
  184. package/dist/definitions/memory.js.map +0 -1
  185. package/dist/definitions/messaging.d.ts.map +0 -1
  186. package/dist/definitions/messaging.js +0 -626
  187. package/dist/definitions/messaging.js.map +0 -1
  188. package/dist/definitions/meta.d.ts.map +0 -1
  189. package/dist/definitions/meta.js +0 -350
  190. package/dist/definitions/meta.js.map +0 -1
  191. package/dist/definitions/network.d.ts.map +0 -1
  192. package/dist/definitions/network.js +0 -160
  193. package/dist/definitions/network.js.map +0 -1
  194. package/dist/definitions/outlook.d.ts.map +0 -1
  195. package/dist/definitions/outlook.js +0 -278
  196. package/dist/definitions/outlook.js.map +0 -1
  197. package/dist/definitions/patch/apply-patch.d.ts.map +0 -1
  198. package/dist/definitions/patch/apply-patch.js +0 -185
  199. package/dist/definitions/patch/apply-patch.js.map +0 -1
  200. package/dist/definitions/patch/fuzzy-match.d.ts.map +0 -1
  201. package/dist/definitions/patch/fuzzy-match.js +0 -167
  202. package/dist/definitions/patch/fuzzy-match.js.map +0 -1
  203. package/dist/definitions/patch/index.d.ts.map +0 -1
  204. package/dist/definitions/patch/index.js +0 -2
  205. package/dist/definitions/patch/index.js.map +0 -1
  206. package/dist/definitions/patch/patch-parser.d.ts.map +0 -1
  207. package/dist/definitions/patch/patch-parser.js +0 -208
  208. package/dist/definitions/patch/patch-parser.js.map +0 -1
  209. package/dist/definitions/patch/sandbox-paths.d.ts.map +0 -1
  210. package/dist/definitions/patch/sandbox-paths.js +0 -106
  211. package/dist/definitions/patch/sandbox-paths.js.map +0 -1
  212. package/dist/definitions/process/index.d.ts.map +0 -1
  213. package/dist/definitions/process/index.js +0 -5
  214. package/dist/definitions/process/index.js.map +0 -1
  215. package/dist/definitions/process/process-registry.d.ts.map +0 -1
  216. package/dist/definitions/process/process-registry.js +0 -214
  217. package/dist/definitions/process/process-registry.js.map +0 -1
  218. package/dist/definitions/process/process.d.ts.map +0 -1
  219. package/dist/definitions/process/process.js +0 -387
  220. package/dist/definitions/process/process.js.map +0 -1
  221. package/dist/definitions/process/pty-keys.d.ts.map +0 -1
  222. package/dist/definitions/process/pty-keys.js +0 -255
  223. package/dist/definitions/process/pty-keys.js.map +0 -1
  224. package/dist/definitions/process/session-slug.d.ts.map +0 -1
  225. package/dist/definitions/process/session-slug.js +0 -143
  226. package/dist/definitions/process/session-slug.js.map +0 -1
  227. package/dist/definitions/quip.d.ts.map +0 -1
  228. package/dist/definitions/quip.js +0 -196
  229. package/dist/definitions/quip.js.map +0 -1
  230. package/dist/definitions/search.d.ts.map +0 -1
  231. package/dist/definitions/search.js +0 -61
  232. package/dist/definitions/search.js.map +0 -1
  233. package/dist/definitions/session-history.d.ts.map +0 -1
  234. package/dist/definitions/session-history.js +0 -70
  235. package/dist/definitions/session-history.js.map +0 -1
  236. package/dist/definitions/shell.d.ts.map +0 -1
  237. package/dist/definitions/shell.js +0 -182
  238. package/dist/definitions/shell.js.map +0 -1
  239. package/dist/definitions/slack.d.ts.map +0 -1
  240. package/dist/definitions/slack.js +0 -181
  241. package/dist/definitions/slack.js.map +0 -1
  242. package/dist/definitions/web.d.ts.map +0 -1
  243. package/dist/definitions/web.js +0 -110
  244. package/dist/definitions/web.js.map +0 -1
  245. package/dist/executors/apply-patch.d.ts.map +0 -1
  246. package/dist/executors/apply-patch.js +0 -902
  247. package/dist/executors/apply-patch.js.map +0 -1
  248. package/dist/executors/arion.d.ts.map +0 -1
  249. package/dist/executors/arion.js +0 -120
  250. package/dist/executors/arion.js.map +0 -1
  251. package/dist/executors/code-intelligence.d.ts.map +0 -1
  252. package/dist/executors/code-intelligence.js +0 -883
  253. package/dist/executors/code-intelligence.js.map +0 -1
  254. package/dist/executors/deploy.d.ts.map +0 -1
  255. package/dist/executors/deploy.js +0 -849
  256. package/dist/executors/deploy.js.map +0 -1
  257. package/dist/executors/filesystem.d.ts.map +0 -1
  258. package/dist/executors/filesystem.js +0 -1123
  259. package/dist/executors/filesystem.js.map +0 -1
  260. package/dist/executors/frg-freshness.d.ts.map +0 -1
  261. package/dist/executors/frg-freshness.js +0 -577
  262. package/dist/executors/frg-freshness.js.map +0 -1
  263. package/dist/executors/frg.d.ts.map +0 -1
  264. package/dist/executors/frg.js +0 -299
  265. package/dist/executors/frg.js.map +0 -1
  266. package/dist/executors/index.d.ts.map +0 -1
  267. package/dist/executors/index.js +0 -47
  268. package/dist/executors/index.js.map +0 -1
  269. package/dist/executors/learning-meta.d.ts.map +0 -1
  270. package/dist/executors/learning-meta.js +0 -1147
  271. package/dist/executors/learning-meta.js.map +0 -1
  272. package/dist/executors/lsp-client.d.ts.map +0 -1
  273. package/dist/executors/lsp-client.js +0 -297
  274. package/dist/executors/lsp-client.js.map +0 -1
  275. package/dist/executors/memory.d.ts.map +0 -1
  276. package/dist/executors/memory.js +0 -751
  277. package/dist/executors/memory.js.map +0 -1
  278. package/dist/executors/meta.d.ts.map +0 -1
  279. package/dist/executors/meta.js +0 -221
  280. package/dist/executors/meta.js.map +0 -1
  281. package/dist/executors/process-registry.d.ts.map +0 -1
  282. package/dist/executors/process-registry.js +0 -466
  283. package/dist/executors/process-registry.js.map +0 -1
  284. package/dist/executors/pty-session-store.d.ts.map +0 -1
  285. package/dist/executors/pty-session-store.js +0 -31
  286. package/dist/executors/pty-session-store.js.map +0 -1
  287. package/dist/executors/pty.d.ts.map +0 -1
  288. package/dist/executors/pty.js +0 -272
  289. package/dist/executors/pty.js.map +0 -1
  290. package/dist/executors/restart.d.ts.map +0 -1
  291. package/dist/executors/restart.js +0 -120
  292. package/dist/executors/restart.js.map +0 -1
  293. package/dist/executors/search-freshness.d.ts.map +0 -1
  294. package/dist/executors/search-freshness.js +0 -196
  295. package/dist/executors/search-freshness.js.map +0 -1
  296. package/dist/executors/search-types.d.ts.map +0 -1
  297. package/dist/executors/search-types.js +0 -53
  298. package/dist/executors/search-types.js.map +0 -1
  299. package/dist/executors/search.d.ts.map +0 -1
  300. package/dist/executors/search.js +0 -67
  301. package/dist/executors/search.js.map +0 -1
  302. package/dist/executors/self-diagnose.d.ts.map +0 -1
  303. package/dist/executors/self-diagnose.js +0 -399
  304. package/dist/executors/self-diagnose.js.map +0 -1
  305. package/dist/executors/session-history.d.ts.map +0 -1
  306. package/dist/executors/session-history.js +0 -284
  307. package/dist/executors/session-history.js.map +0 -1
  308. package/dist/executors/shell-safety.d.ts.map +0 -1
  309. package/dist/executors/shell-safety.js +0 -474
  310. package/dist/executors/shell-safety.js.map +0 -1
  311. package/dist/executors/shell.d.ts.map +0 -1
  312. package/dist/executors/shell.js +0 -955
  313. package/dist/executors/shell.js.map +0 -1
  314. package/dist/executors/utils.d.ts.map +0 -1
  315. package/dist/executors/utils.js +0 -34
  316. package/dist/executors/utils.js.map +0 -1
  317. package/dist/executors/web.d.ts.map +0 -1
  318. package/dist/executors/web.js +0 -543
  319. package/dist/executors/web.js.map +0 -1
  320. package/dist/extraction/content-extraction.d.ts.map +0 -1
  321. package/dist/extraction/content-extraction.js +0 -236
  322. package/dist/extraction/content-extraction.js.map +0 -1
  323. package/dist/extraction/index.d.ts.map +0 -1
  324. package/dist/extraction/index.js +0 -5
  325. package/dist/extraction/index.js.map +0 -1
  326. package/dist/headless-control-contract.d.ts.map +0 -1
  327. package/dist/headless-control-contract.js +0 -968
  328. package/dist/headless-control-contract.js.map +0 -1
  329. package/dist/index.d.ts.map +0 -1
  330. package/dist/index.js.map +0 -1
  331. package/dist/local-control-http-auth.d.ts.map +0 -1
  332. package/dist/local-control-http-auth.js +0 -3
  333. package/dist/local-control-http-auth.js.map +0 -1
  334. package/dist/mcp/client.d.ts.map +0 -1
  335. package/dist/mcp/client.js +0 -182
  336. package/dist/mcp/client.js.map +0 -1
  337. package/dist/mcp/connection.d.ts.map +0 -1
  338. package/dist/mcp/connection.js +0 -481
  339. package/dist/mcp/connection.js.map +0 -1
  340. package/dist/mcp/index.d.ts.map +0 -1
  341. package/dist/mcp/index.js +0 -11
  342. package/dist/mcp/index.js.map +0 -1
  343. package/dist/mcp/jsonrpc.d.ts.map +0 -1
  344. package/dist/mcp/jsonrpc.js +0 -145
  345. package/dist/mcp/jsonrpc.js.map +0 -1
  346. package/dist/mcp/types.d.ts.map +0 -1
  347. package/dist/mcp/types.js +0 -8
  348. package/dist/mcp/types.js.map +0 -1
  349. package/dist/network-control-adapter.d.ts.map +0 -1
  350. package/dist/network-control-adapter.js +0 -73
  351. package/dist/network-control-adapter.js.map +0 -1
  352. package/dist/network-runtime/address-types.d.ts.map +0 -1
  353. package/dist/network-runtime/address-types.js +0 -166
  354. package/dist/network-runtime/address-types.js.map +0 -1
  355. package/dist/network-runtime/db-owner-fencing.d.ts.map +0 -1
  356. package/dist/network-runtime/db-owner-fencing.js +0 -70
  357. package/dist/network-runtime/db-owner-fencing.js.map +0 -1
  358. package/dist/network-runtime/delivery-receipts.d.ts.map +0 -1
  359. package/dist/network-runtime/delivery-receipts.js +0 -268
  360. package/dist/network-runtime/delivery-receipts.js.map +0 -1
  361. package/dist/network-runtime/direct-endpoint-authority.d.ts.map +0 -1
  362. package/dist/network-runtime/direct-endpoint-authority.js +0 -26
  363. package/dist/network-runtime/direct-endpoint-authority.js.map +0 -1
  364. package/dist/network-runtime/index.d.ts.map +0 -1
  365. package/dist/network-runtime/index.js.map +0 -1
  366. package/dist/network-runtime/local-control-contract.d.ts.map +0 -1
  367. package/dist/network-runtime/local-control-contract.js +0 -628
  368. package/dist/network-runtime/local-control-contract.js.map +0 -1
  369. package/dist/network-runtime/node-store-contract.d.ts.map +0 -1
  370. package/dist/network-runtime/node-store-contract.js +0 -35
  371. package/dist/network-runtime/node-store-contract.js.map +0 -1
  372. package/dist/network-runtime/pair-route-contract.d.ts.map +0 -1
  373. package/dist/network-runtime/pair-route-contract.js +0 -78
  374. package/dist/network-runtime/pair-route-contract.js.map +0 -1
  375. package/dist/network-runtime/peer-capabilities.d.ts.map +0 -1
  376. package/dist/network-runtime/peer-capabilities.js +0 -29
  377. package/dist/network-runtime/peer-capabilities.js.map +0 -1
  378. package/dist/network-runtime/peer-principal-ref.d.ts.map +0 -1
  379. package/dist/network-runtime/peer-principal-ref.js +0 -13
  380. package/dist/network-runtime/peer-principal-ref.js.map +0 -1
  381. package/dist/network-runtime/peer-state-machine.d.ts.map +0 -1
  382. package/dist/network-runtime/peer-state-machine.js +0 -122
  383. package/dist/network-runtime/peer-state-machine.js.map +0 -1
  384. package/dist/network-runtime/protocol-schemas.d.ts.map +0 -1
  385. package/dist/network-runtime/protocol-schemas.js +0 -206
  386. package/dist/network-runtime/protocol-schemas.js.map +0 -1
  387. package/dist/network-runtime/runtime-bootstrap-contract.d.ts.map +0 -1
  388. package/dist/network-runtime/runtime-bootstrap-contract.js +0 -61
  389. package/dist/network-runtime/runtime-bootstrap-contract.js.map +0 -1
  390. package/dist/outlook/desktop-session.d.ts.map +0 -1
  391. package/dist/outlook/desktop-session.js +0 -280
  392. package/dist/outlook/desktop-session.js.map +0 -1
  393. package/dist/policy.d.ts.map +0 -1
  394. package/dist/policy.js +0 -150
  395. package/dist/policy.js.map +0 -1
  396. package/dist/providers/brave.d.ts.map +0 -1
  397. package/dist/providers/brave.js +0 -63
  398. package/dist/providers/brave.js.map +0 -1
  399. package/dist/providers/duckduckgo.d.ts.map +0 -1
  400. package/dist/providers/duckduckgo.js +0 -177
  401. package/dist/providers/duckduckgo.js.map +0 -1
  402. package/dist/providers/exa.d.ts.map +0 -1
  403. package/dist/providers/exa.js +0 -64
  404. package/dist/providers/exa.js.map +0 -1
  405. package/dist/providers/firecrawl.d.ts.map +0 -1
  406. package/dist/providers/firecrawl.js +0 -56
  407. package/dist/providers/firecrawl.js.map +0 -1
  408. package/dist/providers/index.d.ts.map +0 -1
  409. package/dist/providers/index.js +0 -8
  410. package/dist/providers/index.js.map +0 -1
  411. package/dist/providers/jina.d.ts.map +0 -1
  412. package/dist/providers/jina.js +0 -50
  413. package/dist/providers/jina.js.map +0 -1
  414. package/dist/providers/router.d.ts.map +0 -1
  415. package/dist/providers/router.js +0 -97
  416. package/dist/providers/router.js.map +0 -1
  417. package/dist/providers/search-provider.d.ts.map +0 -1
  418. package/dist/providers/search-provider.js +0 -33
  419. package/dist/providers/search-provider.js.map +0 -1
  420. package/dist/providers/tavily.d.ts.map +0 -1
  421. package/dist/providers/tavily.js +0 -55
  422. package/dist/providers/tavily.js.map +0 -1
  423. package/dist/quip/desktop-session.d.ts.map +0 -1
  424. package/dist/quip/desktop-session.js +0 -318
  425. package/dist/quip/desktop-session.js.map +0 -1
  426. package/dist/registry/index.d.ts.map +0 -1
  427. package/dist/registry/index.js +0 -2
  428. package/dist/registry/index.js.map +0 -1
  429. package/dist/registry/registry.d.ts.map +0 -1
  430. package/dist/registry/registry.js +0 -757
  431. package/dist/registry/registry.js.map +0 -1
  432. package/dist/runtime-socket-local-control-client.d.ts.map +0 -1
  433. package/dist/runtime-socket-local-control-client.js +0 -331
  434. package/dist/runtime-socket-local-control-client.js.map +0 -1
  435. package/dist/security/dns-normalization.d.ts.map +0 -1
  436. package/dist/security/dns-normalization.js +0 -20
  437. package/dist/security/dns-normalization.js.map +0 -1
  438. package/dist/security/dns-pinning.d.ts.map +0 -1
  439. package/dist/security/dns-pinning.js +0 -124
  440. package/dist/security/dns-pinning.js.map +0 -1
  441. package/dist/security/external-content.d.ts.map +0 -1
  442. package/dist/security/external-content.js +0 -92
  443. package/dist/security/external-content.js.map +0 -1
  444. package/dist/security/ssrf.d.ts.map +0 -1
  445. package/dist/security/ssrf.js +0 -182
  446. package/dist/security/ssrf.js.map +0 -1
  447. package/dist/slack/desktop-session.d.ts.map +0 -1
  448. package/dist/slack/desktop-session.js +0 -325
  449. package/dist/slack/desktop-session.js.map +0 -1
  450. package/dist/tool-factory.d.ts.map +0 -1
  451. package/dist/tool-factory.js +0 -48
  452. package/dist/tool-factory.js.map +0 -1
  453. package/dist/types.d.ts.map +0 -1
  454. package/dist/types.js +0 -8
  455. package/dist/types.js.map +0 -1
  456. package/dist/utils/retry.d.ts.map +0 -1
  457. package/dist/utils/retry.js +0 -133
  458. package/dist/utils/retry.js.map +0 -1
  459. package/dist/utils/safe-parse-json.d.ts.map +0 -1
  460. package/dist/utils/safe-parse-json.js +0 -161
  461. package/dist/utils/safe-parse-json.js.map +0 -1
  462. package/dist/utils/url.d.ts.map +0 -1
  463. package/dist/utils/url.js +0 -20
  464. package/dist/utils/url.js.map +0 -1
  465. package/dist-cjs/.tsbuildinfo +0 -1
@@ -1,481 +0,0 @@
1
- /**
2
- * MCP Server Connection
3
- *
4
- * Manages lifecycle and protocol methods for a single MCP server.
5
- */
6
- import { spawn } from "child_process";
7
- import { EventEmitter } from "events";
8
- import { PassThrough, Writable } from "stream";
9
- import { JSONRPCClient } from "./jsonrpc.js";
10
- function sanitizeGitEnv(env = process.env) {
11
- const sanitized = {};
12
- for (const [key, value] of Object.entries(env)) {
13
- if (value === undefined)
14
- continue;
15
- if (key.toUpperCase().startsWith("GIT_"))
16
- continue;
17
- sanitized[key] = value;
18
- }
19
- return sanitized;
20
- }
21
- export class MCPServerConnection extends EventEmitter {
22
- config;
23
- process;
24
- transport = "stdio";
25
- rpc;
26
- capabilities = {};
27
- _initialized = false;
28
- sseAbortController;
29
- sseStreamPromise;
30
- ssePostUrl;
31
- sseSessionId;
32
- sseOutput;
33
- // Auto-reconnect state
34
- _disconnecting = false;
35
- _reconnecting = false;
36
- _reconnectAttempts = 0;
37
- static RECONNECT_BASE_DELAY_MS = 1000;
38
- static RECONNECT_MAX_DELAY_MS = 30000;
39
- static RECONNECT_MAX_ATTEMPTS = 5;
40
- constructor(config) {
41
- super();
42
- this.config = config;
43
- this.rpc = new JSONRPCClient();
44
- }
45
- get name() {
46
- return this.config.name;
47
- }
48
- get initialized() {
49
- return this._initialized;
50
- }
51
- /**
52
- * Initialize connection to MCP server
53
- */
54
- async initialize() {
55
- // Reset disconnecting flag on fresh initialization so auto-reconnect is active.
56
- // During reconnect, attemptReconnect() checks _disconnecting before each attempt.
57
- if (!this._reconnecting) {
58
- this._disconnecting = false;
59
- this._reconnectAttempts = 0;
60
- }
61
- this.transport = this.config.transport ?? "stdio";
62
- try {
63
- if (this.transport === "stdio") {
64
- await this.initializeStdioTransport();
65
- }
66
- else {
67
- await this.initializeSSETransport();
68
- }
69
- // Forward notifications
70
- this.rpc.on("notifications/tools/list_changed", () => this.emit("tools/list_changed"));
71
- this.rpc.on("notifications/resources/list_changed", () => this.emit("resources/list_changed"));
72
- this.rpc.on("notifications/prompts/list_changed", () => this.emit("prompts/list_changed"));
73
- // MCP initialize handshake
74
- const result = await this.rpc.request("initialize", {
75
- protocolVersion: "2024-11-05",
76
- capabilities: {
77
- roots: { listChanged: true },
78
- },
79
- clientInfo: {
80
- name: "aria-cli",
81
- version: "1.0.0",
82
- },
83
- });
84
- this.capabilities = result.capabilities || {};
85
- this._initialized = true;
86
- // Send initialized notification
87
- this.rpc.notify("notifications/initialized", {});
88
- return this.capabilities;
89
- }
90
- catch (error) {
91
- await this.cleanupAfterInitializeFailure();
92
- throw error;
93
- }
94
- }
95
- /**
96
- * Attempt to reconnect with exponential backoff.
97
- * Called when the transport drops unexpectedly (not via explicit shutdown).
98
- */
99
- async attemptReconnect() {
100
- if (this._disconnecting || this._reconnecting) {
101
- return;
102
- }
103
- this._reconnecting = true;
104
- while (this._reconnectAttempts < MCPServerConnection.RECONNECT_MAX_ATTEMPTS &&
105
- !this._disconnecting) {
106
- this._reconnectAttempts++;
107
- const delay = Math.min(MCPServerConnection.RECONNECT_BASE_DELAY_MS * Math.pow(2, this._reconnectAttempts - 1), MCPServerConnection.RECONNECT_MAX_DELAY_MS);
108
- this.emit("log", {
109
- level: "info",
110
- message: `Reconnect attempt ${this._reconnectAttempts}/${MCPServerConnection.RECONNECT_MAX_ATTEMPTS} in ${delay}ms`,
111
- });
112
- await new Promise((resolve) => setTimeout(resolve, delay));
113
- if (this._disconnecting) {
114
- break;
115
- }
116
- try {
117
- // Clean up stale RPC state before reconnecting
118
- this.rpc.close();
119
- this.rpc = new JSONRPCClient();
120
- await this.initialize();
121
- // Success — reset reconnect state
122
- this._reconnectAttempts = 0;
123
- this._reconnecting = false;
124
- this.emit("reconnected");
125
- return;
126
- }
127
- catch (error) {
128
- this.emit("log", {
129
- level: "error",
130
- message: `Reconnect attempt ${this._reconnectAttempts} failed: ${error.message}`,
131
- });
132
- }
133
- }
134
- // All attempts exhausted or disconnecting flag was set
135
- this._reconnecting = false;
136
- if (!this._disconnecting) {
137
- this._initialized = false;
138
- this.emit("error", new Error(`Failed to reconnect after ${MCPServerConnection.RECONNECT_MAX_ATTEMPTS} attempts`));
139
- }
140
- }
141
- async initializeStdioTransport() {
142
- if (!this.config.command) {
143
- throw new Error("Command required for stdio transport");
144
- }
145
- // Spawn server process
146
- this.process = spawn(this.config.command, this.config.args || [], {
147
- env: { ...sanitizeGitEnv(), ...sanitizeGitEnv(this.config.env ?? {}) },
148
- stdio: ["pipe", "pipe", "pipe"],
149
- });
150
- if (!this.process.stdin || !this.process.stdout) {
151
- throw new Error("Failed to create stdio streams");
152
- }
153
- this.rpc.connect(this.process.stdin, this.process.stdout);
154
- // Handle stderr for logging
155
- this.process.stderr?.on("data", (data) => {
156
- this.emit("log", { level: "error", message: data.toString() });
157
- });
158
- this.process.on("exit", (code) => {
159
- this._initialized = false;
160
- this.rpc.close();
161
- this.emit("exit", code);
162
- // Attempt auto-reconnect on unexpected exit
163
- if (!this._disconnecting) {
164
- void this.attemptReconnect();
165
- }
166
- });
167
- }
168
- async initializeSSETransport() {
169
- const url = this.config.url;
170
- if (!url) {
171
- throw new Error("URL required for sse transport");
172
- }
173
- const stdin = new Writable({
174
- write: (chunk, _encoding, callback) => {
175
- const payload = chunk.toString();
176
- this.postSSEMessages(payload)
177
- .then(() => callback())
178
- .catch((err) => callback(err));
179
- },
180
- });
181
- const stdout = new PassThrough();
182
- this.sseOutput = stdout;
183
- this.rpc.connect(stdin, stdout);
184
- this.sseAbortController = new AbortController();
185
- const response = await fetch(url, {
186
- method: "GET",
187
- headers: { Accept: "text/event-stream" },
188
- signal: this.sseAbortController.signal,
189
- });
190
- if (!response.ok || !response.body) {
191
- const errorText = await response.text();
192
- throw new Error(`Failed to connect SSE transport: ${response.status} ${response.statusText} ${errorText}`);
193
- }
194
- this.sseSessionId = response.headers.get("mcp-session-id") ?? undefined;
195
- this.ssePostUrl = url;
196
- this.sseStreamPromise = this.consumeSSE(response.body, url);
197
- }
198
- async postSSEMessages(payload) {
199
- const trimmed = payload.trim();
200
- if (!trimmed) {
201
- return;
202
- }
203
- const endpoint = this.ssePostUrl || this.config.url;
204
- if (!endpoint) {
205
- throw new Error("SSE transport endpoint is not configured");
206
- }
207
- const messages = trimmed
208
- .split("\n")
209
- .map((line) => line.trim())
210
- .filter((line) => line.length > 0);
211
- for (const message of messages) {
212
- const response = await fetch(endpoint, {
213
- method: "POST",
214
- headers: {
215
- "Content-Type": "application/json",
216
- ...(this.sseSessionId ? { "mcp-session-id": this.sseSessionId } : {}),
217
- },
218
- body: message,
219
- });
220
- if (!response.ok) {
221
- const errorText = await response.text();
222
- throw new Error(`SSE transport POST failed: ${response.status} ${response.statusText} ${errorText}`);
223
- }
224
- const responseText = (await response.text()).trim();
225
- if (!responseText || !this.sseOutput) {
226
- continue;
227
- }
228
- // Some servers return direct JSON-RPC responses on POST while others
229
- // publish responses only via SSE. Forward direct JSON replies into RPC.
230
- for (const line of responseText.split("\n")) {
231
- const jsonLine = line.trim();
232
- if (!jsonLine) {
233
- continue;
234
- }
235
- if (jsonLine.startsWith("{") && jsonLine.endsWith("}")) {
236
- this.sseOutput.write(`${jsonLine}\n`);
237
- }
238
- }
239
- }
240
- }
241
- async consumeSSE(body, baseUrl) {
242
- const reader = body.getReader();
243
- const decoder = new TextDecoder();
244
- let buffer = "";
245
- let eventType = "";
246
- let dataLines = [];
247
- const dispatch = () => {
248
- if (dataLines.length === 0) {
249
- eventType = "";
250
- return;
251
- }
252
- const data = dataLines.join("\n").trim();
253
- const event = eventType || "message";
254
- eventType = "";
255
- dataLines = [];
256
- if (!data) {
257
- return;
258
- }
259
- if (event === "endpoint") {
260
- this.ssePostUrl = new URL(data, baseUrl).toString();
261
- return;
262
- }
263
- if (!this.sseOutput) {
264
- return;
265
- }
266
- if (data.startsWith("{") && data.endsWith("}")) {
267
- this.sseOutput.write(`${data}\n`);
268
- }
269
- };
270
- try {
271
- while (true) {
272
- const { done, value } = await reader.read();
273
- if (done) {
274
- dispatch();
275
- break;
276
- }
277
- buffer += decoder.decode(value, { stream: true });
278
- const lines = buffer.split(/\r?\n/);
279
- buffer = lines.pop() || "";
280
- for (const line of lines) {
281
- if (line === "") {
282
- dispatch();
283
- continue;
284
- }
285
- if (line.startsWith("event:")) {
286
- eventType = line.slice(6).trim();
287
- continue;
288
- }
289
- if (line.startsWith("data:")) {
290
- dataLines.push(line.slice(5).trim());
291
- }
292
- }
293
- }
294
- }
295
- catch (error) {
296
- // Ignore abort errors from normal shutdown.
297
- if (!(error instanceof DOMException && error.name === "AbortError")) {
298
- this.emit("log", {
299
- level: "error",
300
- message: `SSE stream error: ${error.message}`,
301
- });
302
- }
303
- }
304
- finally {
305
- if (this._initialized) {
306
- this._initialized = false;
307
- this.rpc.close();
308
- this.emit("exit", 0);
309
- // Attempt auto-reconnect on unexpected SSE stream end
310
- if (!this._disconnecting) {
311
- void this.attemptReconnect();
312
- }
313
- }
314
- }
315
- }
316
- async cleanupAfterInitializeFailure() {
317
- if (this.transport === "stdio") {
318
- if (this.process && !this.process.killed) {
319
- try {
320
- this.process.kill("SIGTERM");
321
- }
322
- catch {
323
- // Ignore kill failures during cleanup.
324
- }
325
- }
326
- this.process = undefined;
327
- }
328
- else {
329
- this.sseAbortController?.abort();
330
- try {
331
- await this.sseStreamPromise;
332
- }
333
- catch {
334
- // Ignore stream errors during cleanup.
335
- }
336
- this.sseOutput?.end();
337
- this.sseOutput = undefined;
338
- }
339
- this.rpc.close();
340
- }
341
- /**
342
- * Gracefully shutdown the connection
343
- */
344
- async shutdown() {
345
- this._disconnecting = true;
346
- if (!this._initialized)
347
- return;
348
- this._initialized = false;
349
- if (this.transport === "sse") {
350
- try {
351
- await this.rpc.request("shutdown", {});
352
- this.rpc.notify("notifications/exit", {});
353
- }
354
- catch {
355
- // Best effort
356
- }
357
- this.sseAbortController?.abort();
358
- try {
359
- await this.sseStreamPromise;
360
- }
361
- catch {
362
- // Ignore stream shutdown errors
363
- }
364
- this.sseOutput?.end();
365
- this.sseOutput = undefined;
366
- this.rpc.close();
367
- return;
368
- }
369
- if (this.process) {
370
- // Send MCP shutdown/exit protocol before killing
371
- try {
372
- await this.rpc.request("shutdown", {});
373
- this.rpc.notify("notifications/exit", {});
374
- // Give process a moment to clean up
375
- await new Promise((resolve) => setTimeout(resolve, 500));
376
- }
377
- catch {
378
- // Process may already be dead, proceed with kill
379
- }
380
- this.process.kill("SIGTERM");
381
- // Await process exit before resolving
382
- await new Promise((resolve) => {
383
- // Escalate to SIGKILL if process doesn't exit within 5s
384
- const killTimeout = setTimeout(() => {
385
- try {
386
- this.process?.kill("SIGKILL");
387
- }
388
- catch {
389
- /* already dead */
390
- }
391
- }, 5000);
392
- this.process.once("exit", () => {
393
- clearTimeout(killTimeout);
394
- this.rpc.close();
395
- resolve();
396
- });
397
- });
398
- }
399
- else {
400
- this.rpc.close();
401
- }
402
- }
403
- // ========== Tools ==========
404
- async listTools() {
405
- const result = await this.rpc.request("tools/list", {});
406
- return result.tools || [];
407
- }
408
- async callTool(name, args, abortSignal) {
409
- // Early abort check before making the RPC call
410
- if (abortSignal?.aborted) {
411
- return { success: false, message: "Tool execution cancelled by user." };
412
- }
413
- try {
414
- // Race the RPC call against the abort signal so user cancel
415
- // doesn't block waiting for a slow MCP server response.
416
- const rpcPromise = this.rpc.request("tools/call", {
417
- name,
418
- arguments: args,
419
- });
420
- let result;
421
- if (abortSignal) {
422
- result = await new Promise((resolve, reject) => {
423
- const onAbort = () => reject(new DOMException("Aborted", "AbortError"));
424
- abortSignal.addEventListener("abort", onAbort, { once: true });
425
- rpcPromise.then((r) => {
426
- abortSignal.removeEventListener("abort", onAbort);
427
- resolve(r);
428
- }, (e) => {
429
- abortSignal.removeEventListener("abort", onAbort);
430
- reject(e);
431
- });
432
- });
433
- }
434
- else {
435
- result = await rpcPromise;
436
- }
437
- const text = result.content
438
- ?.filter((c) => c.type === "text")
439
- .map((c) => c.text)
440
- .join("\n") || "";
441
- return {
442
- success: !result.isError,
443
- message: text,
444
- data: result.content,
445
- };
446
- }
447
- catch (error) {
448
- if (error instanceof DOMException && error.name === "AbortError") {
449
- return { success: false, message: "Tool execution cancelled by user." };
450
- }
451
- return {
452
- success: false,
453
- message: error.message,
454
- };
455
- }
456
- }
457
- // ========== Resources ==========
458
- async listResources() {
459
- const result = await this.rpc.request("resources/list", {});
460
- return result.resources || [];
461
- }
462
- async readResource(uri) {
463
- const result = await this.rpc.request("resources/read", {
464
- uri,
465
- });
466
- return result.contents || [];
467
- }
468
- // ========== Prompts ==========
469
- async listPrompts() {
470
- const result = await this.rpc.request("prompts/list", {});
471
- return result.prompts || [];
472
- }
473
- async getPrompt(name, args) {
474
- const result = await this.rpc.request("prompts/get", {
475
- name,
476
- arguments: args,
477
- });
478
- return result.messages || [];
479
- }
480
- }
481
- //# sourceMappingURL=connection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/mcp/connection.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
package/dist/mcp/index.js DELETED
@@ -1,11 +0,0 @@
1
- /**
2
- * MCP (Model Context Protocol) Module
3
- *
4
- * Provides client implementation for connecting to MCP servers
5
- * and discovering tools, resources, and prompts dynamically.
6
- */
7
- export * from './types.js';
8
- export { JSONRPCClient } from './jsonrpc.js';
9
- export { MCPServerConnection } from './connection.js';
10
- export { MCPClient } from './client.js';
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonrpc.d.ts","sourceRoot":"","sources":["../../src/mcp/jsonrpc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA6BtC,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,KAAK,CAAC,CAAW;IACzB,OAAO,CAAC,MAAM,CAAC,CAAW;IAC1B,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,cAAc,CAAS;gBAEnB,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO;IAK9C;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAkBhD,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,aAAa;IA0CrB;;OAEG;IACG,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IA+BxE;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAS9C,OAAO,CAAC,IAAI;IAOZ;;OAEG;IACH,KAAK,IAAI,IAAI;CAWd"}
@@ -1,145 +0,0 @@
1
- /**
2
- * JSON-RPC 2.0 Client for MCP
3
- *
4
- * Handles newline-delimited JSON over stdio streams.
5
- */
6
- import { EventEmitter } from "events";
7
- import { randomUUID } from "crypto";
8
- export class JSONRPCClient extends EventEmitter {
9
- stdin;
10
- stdout;
11
- pending = new Map();
12
- buffer = "";
13
- requestTimeout;
14
- constructor(options = {}) {
15
- super();
16
- this.requestTimeout = options.timeout ?? 30000;
17
- }
18
- /**
19
- * Connect to a process via stdio streams
20
- */
21
- connect(stdin, stdout) {
22
- this.stdin = stdin;
23
- this.stdout = stdout;
24
- stdout.on("data", (chunk) => {
25
- this.buffer += chunk.toString();
26
- this.processBuffer();
27
- });
28
- stdout.on("error", (error) => {
29
- this.emit("error", error);
30
- });
31
- stdout.on("end", () => {
32
- this.emit("close");
33
- });
34
- }
35
- processBuffer() {
36
- let newlineIdx;
37
- while ((newlineIdx = this.buffer.indexOf("\n")) !== -1) {
38
- const line = this.buffer.slice(0, newlineIdx).trim();
39
- this.buffer = this.buffer.slice(newlineIdx + 1);
40
- if (line) {
41
- try {
42
- this.handleMessage(JSON.parse(line));
43
- }
44
- catch (e) {
45
- this.emit("error", new Error(`Invalid JSON: ${line}`));
46
- }
47
- }
48
- }
49
- }
50
- handleMessage(msg) {
51
- // Ignore messages that aren't valid JSON-RPC 2.0
52
- if (typeof msg !== "object" ||
53
- msg === null ||
54
- !("jsonrpc" in msg) ||
55
- msg.jsonrpc !== "2.0")
56
- return;
57
- const rpcMsg = msg;
58
- // Response to our request
59
- if ("id" in rpcMsg && rpcMsg.id !== undefined) {
60
- const response = rpcMsg;
61
- const pending = this.pending.get(String(response.id));
62
- if (pending) {
63
- this.pending.delete(String(response.id));
64
- clearTimeout(pending.timeout);
65
- if (response.error) {
66
- pending.reject(new Error(`${response.error.code}: ${response.error.message}`));
67
- }
68
- else {
69
- pending.resolve(response.result);
70
- }
71
- }
72
- return;
73
- }
74
- // Notification from server
75
- if ("method" in rpcMsg) {
76
- const notification = rpcMsg;
77
- this.emit(notification.method, notification.params);
78
- this.emit("notification", {
79
- method: notification.method,
80
- params: notification.params,
81
- });
82
- }
83
- }
84
- /**
85
- * Send a request and wait for response
86
- */
87
- async request(method, params) {
88
- if (!this.stdin) {
89
- throw new Error("Not connected");
90
- }
91
- const id = randomUUID();
92
- const message = {
93
- jsonrpc: "2.0",
94
- id,
95
- method,
96
- params,
97
- };
98
- return new Promise((resolve, reject) => {
99
- const timeout = setTimeout(() => {
100
- if (this.pending.has(id)) {
101
- this.pending.delete(id);
102
- reject(new Error(`Request timeout: ${method}`));
103
- }
104
- }, this.requestTimeout);
105
- this.pending.set(id, {
106
- resolve: resolve,
107
- reject,
108
- timeout,
109
- });
110
- this.send(message);
111
- });
112
- }
113
- /**
114
- * Send a notification (no response expected)
115
- */
116
- notify(method, params) {
117
- const message = {
118
- jsonrpc: "2.0",
119
- method,
120
- params,
121
- };
122
- this.send(message);
123
- }
124
- send(message) {
125
- if (!this.stdin) {
126
- throw new Error("Not connected");
127
- }
128
- this.stdin.write(JSON.stringify(message) + "\n");
129
- }
130
- /**
131
- * Close and cleanup
132
- */
133
- close() {
134
- for (const [, pending] of this.pending) {
135
- clearTimeout(pending.timeout);
136
- pending.reject(new Error("Connection closed"));
137
- }
138
- this.pending.clear();
139
- this.buffer = "";
140
- this.stdin = undefined;
141
- this.stdout?.removeAllListeners();
142
- this.stdout = undefined;
143
- }
144
- }
145
- //# sourceMappingURL=jsonrpc.js.map