@zenalexa/unicli 0.220.1 → 0.221.1

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 (586) hide show
  1. package/AGENTS.md +35 -13
  2. package/README.md +18 -16
  3. package/README.zh-CN.md +18 -16
  4. package/dist/adapters/acl-anthology/papers.d.ts +16 -0
  5. package/dist/adapters/acl-anthology/papers.d.ts.map +1 -0
  6. package/dist/adapters/acl-anthology/papers.js +135 -0
  7. package/dist/adapters/acl-anthology/papers.js.map +1 -0
  8. package/dist/adapters/arxiv/papers.js +2 -0
  9. package/dist/adapters/arxiv/papers.js.map +1 -1
  10. package/dist/adapters/baidu-scholar/search.js +5 -0
  11. package/dist/adapters/baidu-scholar/search.js.map +1 -1
  12. package/dist/adapters/bilibili/comments.js +66 -4
  13. package/dist/adapters/bilibili/comments.js.map +1 -1
  14. package/dist/adapters/bilibili/compat.js +2 -2
  15. package/dist/adapters/bilibili/compat.js.map +1 -1
  16. package/dist/adapters/bilibili/download.js +4 -4
  17. package/dist/adapters/bilibili/download.js.map +1 -1
  18. package/dist/adapters/bilibili/wbi.d.ts.map +1 -1
  19. package/dist/adapters/bilibili/wbi.js +3 -3
  20. package/dist/adapters/bilibili/wbi.js.map +1 -1
  21. package/dist/adapters/cipo/_shared.d.ts +21 -0
  22. package/dist/adapters/cipo/_shared.d.ts.map +1 -0
  23. package/dist/adapters/cipo/_shared.js +67 -0
  24. package/dist/adapters/cipo/_shared.js.map +1 -0
  25. package/dist/adapters/cipo/get.d.ts +19 -0
  26. package/dist/adapters/cipo/get.d.ts.map +1 -0
  27. package/dist/adapters/cipo/get.js +140 -0
  28. package/dist/adapters/cipo/get.js.map +1 -0
  29. package/dist/adapters/cipo/legal-status.d.ts +19 -0
  30. package/dist/adapters/cipo/legal-status.d.ts.map +1 -0
  31. package/dist/adapters/cipo/legal-status.js +111 -0
  32. package/dist/adapters/cipo/legal-status.js.map +1 -0
  33. package/dist/adapters/cipo/search.d.ts +20 -0
  34. package/dist/adapters/cipo/search.d.ts.map +1 -0
  35. package/dist/adapters/cipo/search.js +148 -0
  36. package/dist/adapters/cipo/search.js.map +1 -0
  37. package/dist/adapters/cnipa/_shared.d.ts +47 -0
  38. package/dist/adapters/cnipa/_shared.d.ts.map +1 -0
  39. package/dist/adapters/cnipa/_shared.js +97 -0
  40. package/dist/adapters/cnipa/_shared.js.map +1 -0
  41. package/dist/adapters/cnipa/get.d.ts +19 -0
  42. package/dist/adapters/cnipa/get.d.ts.map +1 -0
  43. package/dist/adapters/cnipa/get.js +149 -0
  44. package/dist/adapters/cnipa/get.js.map +1 -0
  45. package/dist/adapters/cnipa/legal-status.d.ts +19 -0
  46. package/dist/adapters/cnipa/legal-status.d.ts.map +1 -0
  47. package/dist/adapters/cnipa/legal-status.js +119 -0
  48. package/dist/adapters/cnipa/legal-status.js.map +1 -0
  49. package/dist/adapters/cnipa/search.d.ts +21 -0
  50. package/dist/adapters/cnipa/search.d.ts.map +1 -0
  51. package/dist/adapters/cnipa/search.js +170 -0
  52. package/dist/adapters/cnipa/search.js.map +1 -0
  53. package/dist/adapters/crossref/works.d.ts +42 -0
  54. package/dist/adapters/crossref/works.d.ts.map +1 -0
  55. package/dist/adapters/crossref/works.js +157 -0
  56. package/dist/adapters/crossref/works.js.map +1 -0
  57. package/dist/adapters/cvf/papers.d.ts +17 -0
  58. package/dist/adapters/cvf/papers.d.ts.map +1 -0
  59. package/dist/adapters/cvf/papers.js +124 -0
  60. package/dist/adapters/cvf/papers.js.map +1 -0
  61. package/dist/adapters/dblp/publications.js +4 -0
  62. package/dist/adapters/dblp/publications.js.map +1 -1
  63. package/dist/adapters/espacenet/_shared.d.ts +21 -0
  64. package/dist/adapters/espacenet/_shared.d.ts.map +1 -0
  65. package/dist/adapters/espacenet/_shared.js +67 -0
  66. package/dist/adapters/espacenet/_shared.js.map +1 -0
  67. package/dist/adapters/espacenet/family.d.ts +19 -0
  68. package/dist/adapters/espacenet/family.d.ts.map +1 -0
  69. package/dist/adapters/espacenet/family.js +118 -0
  70. package/dist/adapters/espacenet/family.js.map +1 -0
  71. package/dist/adapters/espacenet/get.d.ts +19 -0
  72. package/dist/adapters/espacenet/get.d.ts.map +1 -0
  73. package/dist/adapters/espacenet/get.js +130 -0
  74. package/dist/adapters/espacenet/get.js.map +1 -0
  75. package/dist/adapters/espacenet/legal-status.d.ts +19 -0
  76. package/dist/adapters/espacenet/legal-status.d.ts.map +1 -0
  77. package/dist/adapters/espacenet/legal-status.js +110 -0
  78. package/dist/adapters/espacenet/legal-status.js.map +1 -0
  79. package/dist/adapters/espacenet/search.d.ts +20 -0
  80. package/dist/adapters/espacenet/search.d.ts.map +1 -0
  81. package/dist/adapters/espacenet/search.js +165 -0
  82. package/dist/adapters/espacenet/search.js.map +1 -0
  83. package/dist/adapters/facebook/subtitles.d.ts +9 -0
  84. package/dist/adapters/facebook/subtitles.d.ts.map +1 -0
  85. package/dist/adapters/facebook/subtitles.js +42 -0
  86. package/dist/adapters/facebook/subtitles.js.map +1 -0
  87. package/dist/adapters/fips/_shared.d.ts +21 -0
  88. package/dist/adapters/fips/_shared.d.ts.map +1 -0
  89. package/dist/adapters/fips/_shared.js +77 -0
  90. package/dist/adapters/fips/_shared.js.map +1 -0
  91. package/dist/adapters/fips/get.d.ts +19 -0
  92. package/dist/adapters/fips/get.d.ts.map +1 -0
  93. package/dist/adapters/fips/get.js +139 -0
  94. package/dist/adapters/fips/get.js.map +1 -0
  95. package/dist/adapters/fips/search.d.ts +20 -0
  96. package/dist/adapters/fips/search.d.ts.map +1 -0
  97. package/dist/adapters/fips/search.js +148 -0
  98. package/dist/adapters/fips/search.js.map +1 -0
  99. package/dist/adapters/freepatentsonline-web/_shared.d.ts +72 -0
  100. package/dist/adapters/freepatentsonline-web/_shared.d.ts.map +1 -0
  101. package/dist/adapters/freepatentsonline-web/_shared.js +216 -0
  102. package/dist/adapters/freepatentsonline-web/_shared.js.map +1 -0
  103. package/dist/adapters/freepatentsonline-web/get.d.ts +21 -0
  104. package/dist/adapters/freepatentsonline-web/get.d.ts.map +1 -0
  105. package/dist/adapters/freepatentsonline-web/get.js +127 -0
  106. package/dist/adapters/freepatentsonline-web/get.js.map +1 -0
  107. package/dist/adapters/freepatentsonline-web/search.d.ts +22 -0
  108. package/dist/adapters/freepatentsonline-web/search.d.ts.map +1 -0
  109. package/dist/adapters/freepatentsonline-web/search.js +149 -0
  110. package/dist/adapters/freepatentsonline-web/search.js.map +1 -0
  111. package/dist/adapters/google-patents-web/_shared.d.ts +110 -0
  112. package/dist/adapters/google-patents-web/_shared.d.ts.map +1 -0
  113. package/dist/adapters/google-patents-web/_shared.js +164 -0
  114. package/dist/adapters/google-patents-web/_shared.js.map +1 -0
  115. package/dist/adapters/google-patents-web/get.d.ts +36 -0
  116. package/dist/adapters/google-patents-web/get.d.ts.map +1 -0
  117. package/dist/adapters/google-patents-web/get.js +187 -0
  118. package/dist/adapters/google-patents-web/get.js.map +1 -0
  119. package/dist/adapters/google-patents-web/search.d.ts +23 -0
  120. package/dist/adapters/google-patents-web/search.d.ts.map +1 -0
  121. package/dist/adapters/google-patents-web/search.js +169 -0
  122. package/dist/adapters/google-patents-web/search.js.map +1 -0
  123. package/dist/adapters/google-scholar/cite.js +1 -0
  124. package/dist/adapters/google-scholar/cite.js.map +1 -1
  125. package/dist/adapters/google-scholar/profile.js +5 -0
  126. package/dist/adapters/google-scholar/profile.js.map +1 -1
  127. package/dist/adapters/google-scholar/search.js +5 -0
  128. package/dist/adapters/google-scholar/search.js.map +1 -1
  129. package/dist/adapters/hf/paper.js +1 -0
  130. package/dist/adapters/hf/paper.js.map +1 -1
  131. package/dist/adapters/inpi-br/_shared.d.ts +21 -0
  132. package/dist/adapters/inpi-br/_shared.d.ts.map +1 -0
  133. package/dist/adapters/inpi-br/_shared.js +67 -0
  134. package/dist/adapters/inpi-br/_shared.js.map +1 -0
  135. package/dist/adapters/inpi-br/get.d.ts +19 -0
  136. package/dist/adapters/inpi-br/get.d.ts.map +1 -0
  137. package/dist/adapters/inpi-br/get.js +142 -0
  138. package/dist/adapters/inpi-br/get.js.map +1 -0
  139. package/dist/adapters/inpi-br/search.d.ts +20 -0
  140. package/dist/adapters/inpi-br/search.d.ts.map +1 -0
  141. package/dist/adapters/inpi-br/search.js +154 -0
  142. package/dist/adapters/inpi-br/search.js.map +1 -0
  143. package/dist/adapters/instagram/subtitles.d.ts +9 -0
  144. package/dist/adapters/instagram/subtitles.d.ts.map +1 -0
  145. package/dist/adapters/instagram/subtitles.js +42 -0
  146. package/dist/adapters/instagram/subtitles.js.map +1 -0
  147. package/dist/adapters/mastodon/statuses.d.ts +40 -0
  148. package/dist/adapters/mastodon/statuses.d.ts.map +1 -0
  149. package/dist/adapters/mastodon/statuses.js +153 -0
  150. package/dist/adapters/mastodon/statuses.js.map +1 -0
  151. package/dist/adapters/neurips/proceedings.d.ts +17 -0
  152. package/dist/adapters/neurips/proceedings.d.ts.map +1 -0
  153. package/dist/adapters/neurips/proceedings.js +112 -0
  154. package/dist/adapters/neurips/proceedings.js.map +1 -0
  155. package/dist/adapters/openalex/works.d.ts.map +1 -1
  156. package/dist/adapters/openalex/works.js +32 -0
  157. package/dist/adapters/openalex/works.js.map +1 -1
  158. package/dist/adapters/openreview/papers.js +5 -0
  159. package/dist/adapters/openreview/papers.js.map +1 -1
  160. package/dist/adapters/pmlr/proceedings.d.ts +35 -0
  161. package/dist/adapters/pmlr/proceedings.d.ts.map +1 -0
  162. package/dist/adapters/pmlr/proceedings.js +139 -0
  163. package/dist/adapters/pmlr/proceedings.js.map +1 -0
  164. package/dist/adapters/pubmed/articles.js +5 -0
  165. package/dist/adapters/pubmed/articles.js.map +1 -1
  166. package/dist/adapters/reddit/comments.d.ts +9 -0
  167. package/dist/adapters/reddit/comments.d.ts.map +1 -0
  168. package/dist/adapters/reddit/comments.js +124 -0
  169. package/dist/adapters/reddit/comments.js.map +1 -0
  170. package/dist/adapters/semantic-scholar/papers.d.ts +36 -0
  171. package/dist/adapters/semantic-scholar/papers.d.ts.map +1 -0
  172. package/dist/adapters/semantic-scholar/papers.js +214 -0
  173. package/dist/adapters/semantic-scholar/papers.js.map +1 -0
  174. package/dist/adapters/threads/post.d.ts +32 -0
  175. package/dist/adapters/threads/post.d.ts.map +1 -0
  176. package/dist/adapters/threads/post.js +287 -0
  177. package/dist/adapters/threads/post.js.map +1 -0
  178. package/dist/adapters/tiktok/subtitles.d.ts +9 -0
  179. package/dist/adapters/tiktok/subtitles.d.ts.map +1 -0
  180. package/dist/adapters/tiktok/subtitles.js +42 -0
  181. package/dist/adapters/tiktok/subtitles.js.map +1 -0
  182. package/dist/adapters/twitter/accept.js +2 -2
  183. package/dist/adapters/twitter/accept.js.map +1 -1
  184. package/dist/adapters/twitter/browser-fallback.d.ts +26 -0
  185. package/dist/adapters/twitter/browser-fallback.d.ts.map +1 -0
  186. package/dist/adapters/twitter/browser-fallback.js +93 -0
  187. package/dist/adapters/twitter/browser-fallback.js.map +1 -0
  188. package/dist/adapters/twitter/browser-state.d.ts +11 -0
  189. package/dist/adapters/twitter/browser-state.d.ts.map +1 -0
  190. package/dist/adapters/twitter/browser-state.js +46 -0
  191. package/dist/adapters/twitter/browser-state.js.map +1 -0
  192. package/dist/adapters/twitter/client.d.ts.map +1 -1
  193. package/dist/adapters/twitter/client.js +36 -13
  194. package/dist/adapters/twitter/client.js.map +1 -1
  195. package/dist/adapters/twitter/reply-dm.js +2 -2
  196. package/dist/adapters/twitter/reply-dm.js.map +1 -1
  197. package/dist/adapters/twitter/reply.js +1 -0
  198. package/dist/adapters/twitter/reply.js.map +1 -1
  199. package/dist/adapters/twitter/search.js +11 -18
  200. package/dist/adapters/twitter/search.js.map +1 -1
  201. package/dist/adapters/twitter/thread.d.ts +14 -0
  202. package/dist/adapters/twitter/thread.d.ts.map +1 -1
  203. package/dist/adapters/twitter/thread.js +28 -2
  204. package/dist/adapters/twitter/thread.js.map +1 -1
  205. package/dist/adapters/twitter/trending.js +13 -59
  206. package/dist/adapters/twitter/trending.js.map +1 -1
  207. package/dist/adapters/unpaywall/works.d.ts +33 -0
  208. package/dist/adapters/unpaywall/works.d.ts.map +1 -0
  209. package/dist/adapters/unpaywall/works.js +101 -0
  210. package/dist/adapters/unpaywall/works.js.map +1 -0
  211. package/dist/adapters/xiaohongshu/browser-state.d.ts +19 -0
  212. package/dist/adapters/xiaohongshu/browser-state.d.ts.map +1 -0
  213. package/dist/adapters/xiaohongshu/browser-state.js +67 -0
  214. package/dist/adapters/xiaohongshu/browser-state.js.map +1 -0
  215. package/dist/adapters/xiaohongshu/comments.js +28 -5
  216. package/dist/adapters/xiaohongshu/comments.js.map +1 -1
  217. package/dist/adapters/xiaohongshu/download.js +49 -11
  218. package/dist/adapters/xiaohongshu/download.js.map +1 -1
  219. package/dist/adapters/xiaohongshu/search.d.ts.map +1 -1
  220. package/dist/adapters/xiaohongshu/search.js +11 -5
  221. package/dist/adapters/xiaohongshu/search.js.map +1 -1
  222. package/dist/adapters/xiaohongshu/trending.d.ts +9 -0
  223. package/dist/adapters/xiaohongshu/trending.d.ts.map +1 -0
  224. package/dist/adapters/xiaohongshu/trending.js +94 -0
  225. package/dist/adapters/xiaohongshu/trending.js.map +1 -0
  226. package/dist/adapters/youtube/comments.d.ts +80 -0
  227. package/dist/adapters/youtube/comments.d.ts.map +1 -1
  228. package/dist/adapters/youtube/comments.js +108 -12
  229. package/dist/adapters/youtube/comments.js.map +1 -1
  230. package/dist/adapters/youtube/subtitles.d.ts +9 -0
  231. package/dist/adapters/youtube/subtitles.d.ts.map +1 -0
  232. package/dist/adapters/youtube/subtitles.js +42 -0
  233. package/dist/adapters/youtube/subtitles.js.map +1 -0
  234. package/dist/adapters/yt-dlp/subtitles.d.ts +9 -0
  235. package/dist/adapters/yt-dlp/subtitles.d.ts.map +1 -0
  236. package/dist/adapters/yt-dlp/subtitles.js +41 -0
  237. package/dist/adapters/yt-dlp/subtitles.js.map +1 -0
  238. package/dist/adapters/zhihu/answer-detail.d.ts +39 -0
  239. package/dist/adapters/zhihu/answer-detail.d.ts.map +1 -0
  240. package/dist/adapters/zhihu/answer-detail.js +204 -0
  241. package/dist/adapters/zhihu/answer-detail.js.map +1 -0
  242. package/dist/adapters/zhihu/comment.d.ts +9 -0
  243. package/dist/adapters/zhihu/comment.d.ts.map +1 -0
  244. package/dist/adapters/zhihu/comment.js +149 -0
  245. package/dist/adapters/zhihu/comment.js.map +1 -0
  246. package/dist/adapters/zhihu/recommend.d.ts +36 -0
  247. package/dist/adapters/zhihu/recommend.d.ts.map +1 -0
  248. package/dist/adapters/zhihu/recommend.js +151 -0
  249. package/dist/adapters/zhihu/recommend.js.map +1 -0
  250. package/dist/browser/bridge.d.ts.map +1 -1
  251. package/dist/browser/bridge.js +14 -3
  252. package/dist/browser/bridge.js.map +1 -1
  253. package/dist/browser/daemon-client.d.ts +6 -0
  254. package/dist/browser/daemon-client.d.ts.map +1 -1
  255. package/dist/browser/daemon-client.js +75 -15
  256. package/dist/browser/daemon-client.js.map +1 -1
  257. package/dist/browser/daemon.js +39 -15
  258. package/dist/browser/daemon.js.map +1 -1
  259. package/dist/browser/protocol.d.ts +1 -0
  260. package/dist/browser/protocol.d.ts.map +1 -1
  261. package/dist/browser/protocol.js +1 -0
  262. package/dist/browser/protocol.js.map +1 -1
  263. package/dist/cli.d.ts.map +1 -1
  264. package/dist/cli.js +21 -1
  265. package/dist/cli.js.map +1 -1
  266. package/dist/commands/approvals.d.ts.map +1 -1
  267. package/dist/commands/approvals.js +1 -37
  268. package/dist/commands/approvals.js.map +1 -1
  269. package/dist/commands/browser/index.d.ts.map +1 -1
  270. package/dist/commands/browser/index.js +7 -2
  271. package/dist/commands/browser/index.js.map +1 -1
  272. package/dist/commands/daemon.d.ts.map +1 -1
  273. package/dist/commands/daemon.js +7 -3
  274. package/dist/commands/daemon.js.map +1 -1
  275. package/dist/commands/dispatch.d.ts.map +1 -1
  276. package/dist/commands/dispatch.js +27 -3
  277. package/dist/commands/dispatch.js.map +1 -1
  278. package/dist/commands/do.d.ts +30 -0
  279. package/dist/commands/do.d.ts.map +1 -0
  280. package/dist/commands/do.js +248 -0
  281. package/dist/commands/do.js.map +1 -0
  282. package/dist/commands/extract.d.ts +34 -0
  283. package/dist/commands/extract.d.ts.map +1 -0
  284. package/dist/commands/extract.js +316 -0
  285. package/dist/commands/extract.js.map +1 -0
  286. package/dist/commands/patent-doctor.d.ts +48 -0
  287. package/dist/commands/patent-doctor.d.ts.map +1 -0
  288. package/dist/commands/patent-doctor.js +109 -0
  289. package/dist/commands/patent-doctor.js.map +1 -0
  290. package/dist/commands/patent.d.ts +78 -0
  291. package/dist/commands/patent.d.ts.map +1 -0
  292. package/dist/commands/patent.js +919 -0
  293. package/dist/commands/patent.js.map +1 -0
  294. package/dist/commands/scholar.d.ts +33 -0
  295. package/dist/commands/scholar.d.ts.map +1 -0
  296. package/dist/commands/scholar.js +494 -0
  297. package/dist/commands/scholar.js.map +1 -0
  298. package/dist/commands/search.d.ts.map +1 -1
  299. package/dist/commands/search.js +2 -5
  300. package/dist/commands/search.js.map +1 -1
  301. package/dist/commands/social.d.ts +19 -0
  302. package/dist/commands/social.d.ts.map +1 -0
  303. package/dist/commands/social.js +236 -0
  304. package/dist/commands/social.js.map +1 -0
  305. package/dist/core/registry.d.ts +1 -1
  306. package/dist/core/registry.d.ts.map +1 -1
  307. package/dist/core/registry.js +11 -2
  308. package/dist/core/registry.js.map +1 -1
  309. package/dist/discovery/aliases.d.ts +2 -2
  310. package/dist/discovery/aliases.d.ts.map +1 -1
  311. package/dist/discovery/aliases.js +182 -11
  312. package/dist/discovery/aliases.js.map +1 -1
  313. package/dist/discovery/intents.d.ts +10 -0
  314. package/dist/discovery/intents.d.ts.map +1 -0
  315. package/dist/discovery/intents.js +255 -0
  316. package/dist/discovery/intents.js.map +1 -0
  317. package/dist/discovery/loader.d.ts.map +1 -1
  318. package/dist/discovery/loader.js +4 -0
  319. package/dist/discovery/loader.js.map +1 -1
  320. package/dist/discovery/search.d.ts +4 -1
  321. package/dist/discovery/search.d.ts.map +1 -1
  322. package/dist/discovery/search.js +28 -140
  323. package/dist/discovery/search.js.map +1 -1
  324. package/dist/engine/approval-presenter.d.ts +10 -0
  325. package/dist/engine/approval-presenter.d.ts.map +1 -0
  326. package/dist/engine/approval-presenter.js +45 -0
  327. package/dist/engine/approval-presenter.js.map +1 -0
  328. package/dist/engine/approval-store.d.ts +4 -0
  329. package/dist/engine/approval-store.d.ts.map +1 -1
  330. package/dist/engine/approval-store.js +85 -11
  331. package/dist/engine/approval-store.js.map +1 -1
  332. package/dist/engine/auth/oauth2-cc.d.ts +67 -0
  333. package/dist/engine/auth/oauth2-cc.d.ts.map +1 -0
  334. package/dist/engine/auth/oauth2-cc.js +120 -0
  335. package/dist/engine/auth/oauth2-cc.js.map +1 -0
  336. package/dist/engine/cookies.d.ts +10 -0
  337. package/dist/engine/cookies.d.ts.map +1 -1
  338. package/dist/engine/cookies.js +64 -0
  339. package/dist/engine/cookies.js.map +1 -1
  340. package/dist/engine/download.d.ts +5 -0
  341. package/dist/engine/download.d.ts.map +1 -1
  342. package/dist/engine/download.js +11 -4
  343. package/dist/engine/download.js.map +1 -1
  344. package/dist/engine/executor.d.ts +1 -0
  345. package/dist/engine/executor.d.ts.map +1 -1
  346. package/dist/engine/executor.js +25 -0
  347. package/dist/engine/executor.js.map +1 -1
  348. package/dist/engine/framework.d.ts +5 -5
  349. package/dist/engine/framework.js +5 -5
  350. package/dist/engine/harden.d.ts +1 -1
  351. package/dist/engine/harden.js +1 -1
  352. package/dist/engine/kernel/stages.d.ts.map +1 -1
  353. package/dist/engine/kernel/stages.js +2 -1
  354. package/dist/engine/kernel/stages.js.map +1 -1
  355. package/dist/engine/normalizer/patent-envelope.d.ts +61 -0
  356. package/dist/engine/normalizer/patent-envelope.d.ts.map +1 -0
  357. package/dist/engine/normalizer/patent-envelope.js +132 -0
  358. package/dist/engine/normalizer/patent-envelope.js.map +1 -0
  359. package/dist/engine/research.d.ts +5 -7
  360. package/dist/engine/research.d.ts.map +1 -1
  361. package/dist/engine/research.js +6 -9
  362. package/dist/engine/research.js.map +1 -1
  363. package/dist/engine/steps/browser-helpers.d.ts +2 -2
  364. package/dist/engine/steps/browser-helpers.d.ts.map +1 -1
  365. package/dist/engine/steps/browser-helpers.js +39 -16
  366. package/dist/engine/steps/browser-helpers.js.map +1 -1
  367. package/dist/engine/steps/download.d.ts +1 -0
  368. package/dist/engine/steps/download.d.ts.map +1 -1
  369. package/dist/engine/steps/download.js +3 -1
  370. package/dist/engine/steps/download.js.map +1 -1
  371. package/dist/engine/steps/index.d.ts +2 -0
  372. package/dist/engine/steps/index.d.ts.map +1 -1
  373. package/dist/engine/steps/index.js +2 -0
  374. package/dist/engine/steps/index.js.map +1 -1
  375. package/dist/engine/steps/oauth2-token.d.ts +41 -0
  376. package/dist/engine/steps/oauth2-token.d.ts.map +1 -0
  377. package/dist/engine/steps/oauth2-token.js +115 -0
  378. package/dist/engine/steps/oauth2-token.js.map +1 -0
  379. package/dist/engine/steps/select-xml.d.ts +34 -0
  380. package/dist/engine/steps/select-xml.d.ts.map +1 -0
  381. package/dist/engine/steps/select-xml.js +222 -0
  382. package/dist/engine/steps/select-xml.js.map +1 -0
  383. package/dist/engine/template.d.ts.map +1 -1
  384. package/dist/engine/template.js +7 -0
  385. package/dist/engine/template.js.map +1 -1
  386. package/dist/engine/transport/mcp-browser.d.ts +128 -0
  387. package/dist/engine/transport/mcp-browser.d.ts.map +1 -0
  388. package/dist/engine/transport/mcp-browser.js +120 -0
  389. package/dist/engine/transport/mcp-browser.js.map +1 -0
  390. package/dist/fast-path/handlers/approvals.d.ts +11 -0
  391. package/dist/fast-path/handlers/approvals.d.ts.map +1 -0
  392. package/dist/fast-path/handlers/approvals.js +136 -0
  393. package/dist/fast-path/handlers/approvals.js.map +1 -0
  394. package/dist/fast-path/handlers/discovery.d.ts.map +1 -1
  395. package/dist/fast-path/handlers/discovery.js +17 -3
  396. package/dist/fast-path/handlers/discovery.js.map +1 -1
  397. package/dist/fast-path/manifest.d.ts +1 -0
  398. package/dist/fast-path/manifest.d.ts.map +1 -1
  399. package/dist/fast-path/manifest.js.map +1 -1
  400. package/dist/fast-path.d.ts.map +1 -1
  401. package/dist/fast-path.js +3 -0
  402. package/dist/fast-path.js.map +1 -1
  403. package/dist/index.d.ts +23 -0
  404. package/dist/index.d.ts.map +1 -0
  405. package/dist/index.js +38 -0
  406. package/dist/index.js.map +1 -0
  407. package/dist/manifest-compact.txt +13 -11
  408. package/dist/manifest-search.json +1 -1
  409. package/dist/manifest.json +2560 -103
  410. package/dist/mcp/handler.d.ts.map +1 -1
  411. package/dist/mcp/handler.js +14 -2
  412. package/dist/mcp/handler.js.map +1 -1
  413. package/dist/mcp/tools.d.ts.map +1 -1
  414. package/dist/mcp/tools.js +11 -3
  415. package/dist/mcp/tools.js.map +1 -1
  416. package/dist/output/auth-guidance.d.ts +14 -0
  417. package/dist/output/auth-guidance.d.ts.map +1 -0
  418. package/dist/output/auth-guidance.js +50 -0
  419. package/dist/output/auth-guidance.js.map +1 -0
  420. package/dist/output/error-map.d.ts +1 -1
  421. package/dist/output/error-map.d.ts.map +1 -1
  422. package/dist/output/error-map.js +28 -4
  423. package/dist/output/error-map.js.map +1 -1
  424. package/dist/output/next-actions.d.ts.map +1 -1
  425. package/dist/output/next-actions.js +19 -3
  426. package/dist/output/next-actions.js.map +1 -1
  427. package/dist/registry.d.ts +19 -1
  428. package/dist/registry.d.ts.map +1 -1
  429. package/dist/registry.js +10 -0
  430. package/dist/registry.js.map +1 -1
  431. package/dist/social/browser-errors.d.ts +13 -0
  432. package/dist/social/browser-errors.d.ts.map +1 -0
  433. package/dist/social/browser-errors.js +36 -0
  434. package/dist/social/browser-errors.js.map +1 -0
  435. package/dist/social/capabilities.d.ts +29 -0
  436. package/dist/social/capabilities.d.ts.map +1 -0
  437. package/dist/social/capabilities.js +448 -0
  438. package/dist/social/capabilities.js.map +1 -0
  439. package/dist/social/comments.d.ts +26 -0
  440. package/dist/social/comments.d.ts.map +1 -0
  441. package/dist/social/comments.js +97 -0
  442. package/dist/social/comments.js.map +1 -0
  443. package/dist/social/video-text.d.ts +27 -0
  444. package/dist/social/video-text.d.ts.map +1 -0
  445. package/dist/social/video-text.js +140 -0
  446. package/dist/social/video-text.js.map +1 -0
  447. package/dist/types/patent.d.ts +160 -0
  448. package/dist/types/patent.d.ts.map +1 -0
  449. package/dist/types/patent.js +16 -0
  450. package/dist/types/patent.js.map +1 -0
  451. package/dist/types/scholarly.d.ts +49 -0
  452. package/dist/types/scholarly.d.ts.map +1 -0
  453. package/dist/types/scholarly.js +16 -0
  454. package/dist/types/scholarly.js.map +1 -0
  455. package/dist/types.d.ts +12 -0
  456. package/dist/types.d.ts.map +1 -1
  457. package/dist/types.js.map +1 -1
  458. package/package.json +9 -4
  459. package/server.json +3 -3
  460. package/skills/unicli/SKILL.md +1 -1
  461. package/skills/unicli-claude-code/SKILL.md +1 -1
  462. package/skills/unicli-hermes/SKILL.md +1 -1
  463. package/src/adapters/acl-anthology/papers.ts +157 -0
  464. package/src/adapters/arxiv/download.yaml +1 -1
  465. package/src/adapters/arxiv/paper.yaml +1 -1
  466. package/src/adapters/arxiv/papers.ts +2 -0
  467. package/src/adapters/arxiv/search.yaml +1 -1
  468. package/src/adapters/arxiv/trending.yaml +1 -1
  469. package/src/adapters/baidu-scholar/search.ts +5 -0
  470. package/src/adapters/bilibili/comments-tree.test.ts +41 -0
  471. package/src/adapters/bilibili/comments.ts +78 -4
  472. package/src/adapters/bilibili/compat.ts +5 -2
  473. package/src/adapters/bilibili/download.ts +7 -4
  474. package/src/adapters/bilibili/wbi.ts +6 -3
  475. package/src/adapters/brave/search.yaml +53 -0
  476. package/src/adapters/cipo/_shared.ts +98 -0
  477. package/src/adapters/cipo/get.ts +188 -0
  478. package/src/adapters/cipo/legal-status.ts +148 -0
  479. package/src/adapters/cipo/search.ts +195 -0
  480. package/src/adapters/cnipa/_shared.ts +138 -0
  481. package/src/adapters/cnipa/get.ts +199 -0
  482. package/src/adapters/cnipa/legal-status.ts +162 -0
  483. package/src/adapters/cnipa/search.ts +229 -0
  484. package/src/adapters/crossref/works.ts +209 -0
  485. package/src/adapters/cvf/papers.ts +136 -0
  486. package/src/adapters/dblp/publications.ts +4 -0
  487. package/src/adapters/dpma/get.yaml +67 -0
  488. package/src/adapters/dpma/search.yaml +77 -0
  489. package/src/adapters/duckduckgo/search.yaml +54 -0
  490. package/src/adapters/duckduckgo/suggest.yaml +52 -0
  491. package/src/adapters/epo/family.yaml +69 -0
  492. package/src/adapters/epo/get.yaml +74 -0
  493. package/src/adapters/epo/legal-status.yaml +63 -0
  494. package/src/adapters/epo/search.yaml +84 -0
  495. package/src/adapters/espacenet/_shared.ts +98 -0
  496. package/src/adapters/espacenet/family.ts +161 -0
  497. package/src/adapters/espacenet/get.ts +185 -0
  498. package/src/adapters/espacenet/legal-status.ts +151 -0
  499. package/src/adapters/espacenet/search.ts +229 -0
  500. package/src/adapters/facebook/subtitles.ts +44 -0
  501. package/src/adapters/fips/_shared.ts +109 -0
  502. package/src/adapters/fips/get.ts +186 -0
  503. package/src/adapters/fips/search.ts +195 -0
  504. package/src/adapters/freepatentsonline-web/_shared.ts +273 -0
  505. package/src/adapters/freepatentsonline-web/get.ts +144 -0
  506. package/src/adapters/freepatentsonline-web/search.ts +170 -0
  507. package/src/adapters/google-patents-bq/prior-art.yaml +80 -0
  508. package/src/adapters/google-patents-bq/search.yaml +97 -0
  509. package/src/adapters/google-patents-web/_shared.ts +242 -0
  510. package/src/adapters/google-patents-web/get.ts +224 -0
  511. package/src/adapters/google-patents-web/search.ts +196 -0
  512. package/src/adapters/google-scholar/cite.ts +1 -0
  513. package/src/adapters/google-scholar/profile.ts +5 -0
  514. package/src/adapters/google-scholar/search.ts +5 -0
  515. package/src/adapters/hf/paper.test.ts +10 -0
  516. package/src/adapters/hf/paper.ts +1 -0
  517. package/src/adapters/hf/top.yaml +1 -1
  518. package/src/adapters/huggingface-papers/daily.yaml +1 -1
  519. package/src/adapters/huggingface-papers/search.yaml +1 -1
  520. package/src/adapters/inpi-br/_shared.ts +98 -0
  521. package/src/adapters/inpi-br/get.ts +193 -0
  522. package/src/adapters/inpi-br/search.ts +206 -0
  523. package/src/adapters/inpi-fr/get.yaml +62 -0
  524. package/src/adapters/inpi-fr/search.yaml +74 -0
  525. package/src/adapters/instagram/subtitles.ts +44 -0
  526. package/src/adapters/ipaustralia/get.yaml +67 -0
  527. package/src/adapters/ipaustralia/search.yaml +74 -0
  528. package/src/adapters/jpo/get.yaml +63 -0
  529. package/src/adapters/jpo/search.yaml +76 -0
  530. package/src/adapters/kipris/get.yaml +69 -0
  531. package/src/adapters/kipris/legal-status.yaml +58 -0
  532. package/src/adapters/kipris/search.yaml +79 -0
  533. package/src/adapters/lens/get.yaml +64 -0
  534. package/src/adapters/lens/search.yaml +82 -0
  535. package/src/adapters/mastodon/statuses.test.ts +82 -0
  536. package/src/adapters/mastodon/statuses.ts +208 -0
  537. package/src/adapters/neurips/proceedings.ts +126 -0
  538. package/src/adapters/openalex/works.ts +33 -0
  539. package/src/adapters/openreview/papers.ts +5 -0
  540. package/src/adapters/patsnap/get.yaml +65 -0
  541. package/src/adapters/patsnap/search.yaml +77 -0
  542. package/src/adapters/pmlr/proceedings.ts +167 -0
  543. package/src/adapters/pqai/prior-art.yaml +59 -0
  544. package/src/adapters/pqai/search.yaml +60 -0
  545. package/src/adapters/pubmed/articles.ts +5 -0
  546. package/src/adapters/reddit/comments-tree.test.ts +79 -0
  547. package/src/adapters/reddit/comments.ts +159 -0
  548. package/src/adapters/semantic-scholar/papers.ts +268 -0
  549. package/src/adapters/threads/post.test.ts +64 -0
  550. package/src/adapters/threads/post.ts +366 -0
  551. package/src/adapters/threads/user.yaml +73 -0
  552. package/src/adapters/tiktok/subtitles.ts +44 -0
  553. package/src/adapters/twitter/accept.ts +5 -2
  554. package/src/adapters/twitter/browser-fallback.ts +138 -0
  555. package/src/adapters/twitter/browser-state.ts +74 -0
  556. package/src/adapters/twitter/client.ts +51 -21
  557. package/src/adapters/twitter/reply-dm.ts +5 -2
  558. package/src/adapters/twitter/reply.ts +1 -0
  559. package/src/adapters/twitter/search.ts +12 -38
  560. package/src/adapters/twitter/thread.test.ts +43 -0
  561. package/src/adapters/twitter/thread.ts +44 -2
  562. package/src/adapters/twitter/trending.ts +14 -95
  563. package/src/adapters/ukipo/info.yaml +43 -0
  564. package/src/adapters/unpaywall/works.ts +138 -0
  565. package/src/adapters/uspto/get.yaml +67 -0
  566. package/src/adapters/uspto/legal-status.yaml +58 -0
  567. package/src/adapters/uspto/search.yaml +88 -0
  568. package/src/adapters/wipo-patentscope/info.yaml +43 -0
  569. package/src/adapters/xiaohongshu/browser-state.ts +95 -0
  570. package/src/adapters/xiaohongshu/comments.ts +29 -6
  571. package/src/adapters/xiaohongshu/download.ts +60 -11
  572. package/src/adapters/xiaohongshu/search.ts +18 -6
  573. package/src/adapters/xiaohongshu/trending.ts +112 -0
  574. package/src/adapters/yahoo/search.yaml +52 -0
  575. package/src/adapters/youtube/comments-microformat.test.ts +35 -0
  576. package/src/adapters/youtube/comments-tree.test.ts +74 -0
  577. package/src/adapters/youtube/comments.ts +166 -12
  578. package/src/adapters/youtube/subtitles.ts +44 -0
  579. package/src/adapters/yt-dlp/subtitles.ts +43 -0
  580. package/src/adapters/zhihu/answer-detail.test.ts +83 -0
  581. package/src/adapters/zhihu/answer-detail.ts +275 -0
  582. package/src/adapters/zhihu/comment-tree.test.ts +57 -0
  583. package/src/adapters/zhihu/comment.ts +186 -0
  584. package/src/adapters/zhihu/recommend.test.ts +65 -0
  585. package/src/adapters/zhihu/recommend.ts +207 -0
  586. package/src/adapters/zotero/search.yaml +1 -1
@@ -0,0 +1,222 @@
1
+ /**
2
+ * @owner src::engine::steps::select-xml
3
+ * @does Pipeline step that selects XML nodes via a subset of XPath 1.0 (descendant, attribute predicate, namespace-prefixed names) — needed for EPO OPS DOCDB, DPMA REST, KIPRIS legacy SOAP responses.
4
+ * @needs src/engine/step-registry.ts, src/engine/executor.ts, fast-xml-parser (npm)
5
+ * @feeds src/engine/steps/index.ts (barrel), adapter YAML pipelines (`- select-xml: { xpath: …, namespaces: {…} }`)
6
+ * @breaks throws PipelineError on malformed XML, invalid XPath expression, or namespace prefix not declared
7
+ * @invariants no XML external entity (XXE) expansion; parser configured with `processEntities: false`
8
+ * @side-effects none beyond CPU
9
+ * @perf O(N) over the parsed DOM where N = node count; suitable for OPS responses up to a few MB; larger responses should be paginated upstream
10
+ * @concurrency safe (pure function, no shared mutable state)
11
+ * @test tests/unit/engine/steps/select-xml.test.ts
12
+ * @stability stable
13
+ * @since 2026-05-18
14
+ */
15
+ import { XMLParser } from "fast-xml-parser";
16
+ import { registerStep } from "../step-registry.js";
17
+ import { PipelineError } from "../executor.js";
18
+ const xmlParser = new XMLParser({
19
+ ignoreAttributes: false,
20
+ attributeNamePrefix: "@_",
21
+ processEntities: false,
22
+ allowBooleanAttributes: true,
23
+ removeNSPrefix: false,
24
+ parseTagValue: false,
25
+ parseAttributeValue: false,
26
+ trimValues: true,
27
+ });
28
+ function parseXPath(xpath) {
29
+ if (!xpath.startsWith("/")) {
30
+ throw new Error(`select-xml: xpath must be absolute, got "${xpath}"`);
31
+ }
32
+ const segments = [];
33
+ let i = 0;
34
+ while (i < xpath.length) {
35
+ if (xpath[i] !== "/") {
36
+ throw new Error(`select-xml: malformed xpath near index ${i}: "${xpath}"`);
37
+ }
38
+ i++;
39
+ let axis = "child";
40
+ if (xpath[i] === "/") {
41
+ axis = "descendant";
42
+ i++;
43
+ }
44
+ let attribute = false;
45
+ if (xpath[i] === "@") {
46
+ attribute = true;
47
+ i++;
48
+ }
49
+ let name = "";
50
+ while (i < xpath.length &&
51
+ xpath[i] !== "/" &&
52
+ xpath[i] !== "[" &&
53
+ xpath[i] !== undefined) {
54
+ name += xpath[i];
55
+ i++;
56
+ }
57
+ if (name.length === 0) {
58
+ throw new Error(`select-xml: empty step name in xpath "${xpath}" near index ${i}`);
59
+ }
60
+ const predicates = [];
61
+ while (xpath[i] === "[") {
62
+ const end = xpath.indexOf("]", i);
63
+ if (end < 0) {
64
+ throw new Error(`select-xml: unterminated predicate in xpath "${xpath}"`);
65
+ }
66
+ const body = xpath.slice(i + 1, end).trim();
67
+ predicates.push(parsePredicate(body, xpath));
68
+ i = end + 1;
69
+ }
70
+ segments.push({ axis, name, attribute, predicates });
71
+ }
72
+ return segments;
73
+ }
74
+ function parsePredicate(body, xpath) {
75
+ if (/^\d+$/.test(body)) {
76
+ return { kind: "position", index: Number(body) };
77
+ }
78
+ const attrEqMatch = /^@([A-Za-z_][\w.-]*(?::[A-Za-z_][\w.-]*)?)\s*=\s*['"]([^'"]*)['"]$/.exec(body);
79
+ if (attrEqMatch) {
80
+ return {
81
+ kind: "attr-equals",
82
+ attribute: attrEqMatch[1],
83
+ value: attrEqMatch[2],
84
+ };
85
+ }
86
+ throw new Error(`select-xml: unsupported predicate "[${body}]" in xpath "${xpath}" (only [n] and [@attr='value'] supported)`);
87
+ }
88
+ function asArray(value) {
89
+ if (Array.isArray(value))
90
+ return value;
91
+ if (value === undefined || value === null)
92
+ return [];
93
+ return [value];
94
+ }
95
+ function readAttribute(node, attribute) {
96
+ if (!node || typeof node !== "object" || Array.isArray(node))
97
+ return undefined;
98
+ const raw = node[`@_${attribute}`];
99
+ return raw === undefined || raw === null ? undefined : String(raw);
100
+ }
101
+ function applyPredicates(candidates, predicates) {
102
+ let working = candidates;
103
+ for (const predicate of predicates) {
104
+ if (predicate.kind === "position") {
105
+ // XPath positions are 1-indexed.
106
+ const item = working[predicate.index - 1];
107
+ working = item === undefined ? [] : [item];
108
+ }
109
+ else {
110
+ working = working.filter((item) => readAttribute(item, predicate.attribute) === predicate.value);
111
+ }
112
+ }
113
+ return working;
114
+ }
115
+ function walk(root, segments, segmentIndex) {
116
+ if (segmentIndex >= segments.length) {
117
+ return Array.isArray(root) ? root : [root];
118
+ }
119
+ const segment = segments[segmentIndex];
120
+ if (segment.attribute) {
121
+ if (segmentIndex !== segments.length - 1) {
122
+ throw new Error("select-xml: attribute axis must be the final step");
123
+ }
124
+ const nodes = Array.isArray(root) ? root : [root];
125
+ const out = [];
126
+ for (const node of nodes) {
127
+ const value = readAttribute(node, segment.name);
128
+ if (value !== undefined)
129
+ out.push(value);
130
+ }
131
+ return out;
132
+ }
133
+ const matches = [];
134
+ const visit = (node, descendantMode) => {
135
+ if (node === undefined || node === null)
136
+ return;
137
+ if (Array.isArray(node)) {
138
+ for (const item of node)
139
+ visit(item, descendantMode);
140
+ return;
141
+ }
142
+ if (typeof node !== "object")
143
+ return;
144
+ const child = node[segment.name];
145
+ if (child !== undefined) {
146
+ for (const item of asArray(child))
147
+ matches.push(item);
148
+ }
149
+ if (descendantMode) {
150
+ for (const [key, value] of Object.entries(node)) {
151
+ if (key.startsWith("@_"))
152
+ continue;
153
+ if (key === "#text")
154
+ continue;
155
+ if (key === segment.name)
156
+ continue;
157
+ visit(value, true);
158
+ }
159
+ }
160
+ };
161
+ visit(root, segment.axis === "descendant");
162
+ const filtered = applyPredicates(matches, segment.predicates);
163
+ const next = [];
164
+ for (const node of filtered) {
165
+ for (const item of walk(node, segments, segmentIndex + 1))
166
+ next.push(item);
167
+ }
168
+ return next;
169
+ }
170
+ function applyNamespaceMap(xpath, namespaces) {
171
+ // We support namespace-prefixed names by passing them through verbatim;
172
+ // fast-xml-parser preserves the prefix when `removeNSPrefix: false`, so a
173
+ // step like `/ops:exchange-document` looks up the literal key
174
+ // `ops:exchange-document` in the parsed tree. The `namespaces` map is
175
+ // currently accepted for forward compatibility and to allow tests to
176
+ // declare the schemas they consume; we do not yet rewrite the xpath
177
+ // because fast-xml-parser does not expose URI-aware lookups.
178
+ void namespaces;
179
+ return xpath;
180
+ }
181
+ export const stepSelectXml = (ctx, config, stepIndex) => {
182
+ if (typeof ctx.data !== "string") {
183
+ throw new PipelineError("select-xml requires string input (raw XML)", {
184
+ step: stepIndex ?? 0,
185
+ action: "select-xml",
186
+ config,
187
+ errorType: "parse_error",
188
+ suggestion: "Place select-xml directly after a step that yields the XML payload as a string (fetch-text, exec, etc.).",
189
+ });
190
+ }
191
+ let parsed;
192
+ try {
193
+ parsed = xmlParser.parse(ctx.data);
194
+ }
195
+ catch (err) {
196
+ throw new PipelineError(`select-xml: failed to parse XML: ${err.message}`, {
197
+ step: stepIndex ?? 0,
198
+ action: "select-xml",
199
+ config,
200
+ errorType: "parse_error",
201
+ suggestion: "Inspect the upstream payload — the response may be HTML or a structured-error envelope instead of XML.",
202
+ });
203
+ }
204
+ let segments;
205
+ try {
206
+ segments = parseXPath(applyNamespaceMap(config.xpath, config.namespaces));
207
+ }
208
+ catch (err) {
209
+ throw new PipelineError(err.message, {
210
+ step: stepIndex ?? 0,
211
+ action: "select-xml",
212
+ config,
213
+ errorType: "expression_error",
214
+ suggestion: "Supported xpath subset: /, //, /name, /ns:name, /@attr, [n], [@attr='value'].",
215
+ });
216
+ }
217
+ const result = walk(parsed, segments, 0);
218
+ const data = config.unwrap_single && result.length === 1 ? result[0] : result;
219
+ return { ...ctx, data };
220
+ };
221
+ registerStep("select-xml", stepSelectXml);
222
+ //# sourceMappingURL=select-xml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-xml.js","sourceRoot":"","sources":["../../../src/engine/steps/select-xml.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/engine/template.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAcrD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAkGxE,CAAC;AA+GF,qBAAa,iBAAkB,SAAQ,KAAK;IAIxC,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IAJ1B,SAAkB,IAAI,uBAAuB;gBAE3C,OAAO,EAAE,MAAM,EACN,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,OAAO,YAAA;CAI3B;AAoBD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAwDT;AAgDD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,GAAG,MAAM,CAW3E;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgCxE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,eAAe,GACnB,OAAO,CAeT;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAmBlE"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/engine/template.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAcrD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAkGxE,CAAC;AA+GF,qBAAa,iBAAkB,SAAQ,KAAK;IAIxC,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IAJ1B,SAAkB,IAAI,uBAAuB;gBAE3C,OAAO,EAAE,MAAM,EACN,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,OAAO,YAAA;CAI3B;AAoBD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAwDT;AAgDD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,GAAG,MAAM,CAW3E;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuCxE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,eAAe,GACnB,OAAO,CAeT;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAmBlE"}
@@ -362,6 +362,13 @@ export function buildScope(ctx) {
362
362
  vars: ctx.vars ?? {},
363
363
  base: ctx.base,
364
364
  temp: ctx.temp ?? {},
365
+ // Process environment exposed for credential templating —
366
+ // ~38 adapters read keys via `${{ env.X || '' }}` (USPTO ODP, EPO OPS,
367
+ // PatSnap, Lens, PQAI, KIPRIS, DPMA, IP-AU, Pexels, NYTimes, Linear,
368
+ // Perplexity, MiniMax, QWeather, Novita, GCloud, etc.). Bind to
369
+ // process.env so the template engine resolves rather than coercing to
370
+ // empty string (which sent unauthenticated requests silently).
371
+ env: process.env,
365
372
  // Kernel-plumbed surface metadata (v0.213.3 P3): available to YAML as
366
373
  // ${{ source }} / ${{ surface }} / ${{ trace_id }}. All three are
367
374
  // optional — legacy callers that pass a bare bag with no options get
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/engine/template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/engine/template.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ /**
2
+ * @owner src::engine::transport::mcp-browser
3
+ * @does Transport adapter that proxies pipeline browser steps (navigate / wait / evaluate / snapshot) to a real Chrome session reachable through the bb-browser or claude-in-chrome MCP server — sole programmatic path for L3 jurisdictions whose IP office offers no open API (CNIPA, INPI-BR pre-API, Rospatent, CIPO, Espacenet HTML).
4
+ * @needs src/transport/bus.ts (TransportBus surface — note: MCP client integration is NOT yet wired into the bus; this module returns MCP_BUS_MISSING TransportError until the bus grows an mcp transport kind)
5
+ * @feeds src/adapters/cnipa/*, src/adapters/espacenet/*, src/adapters/cipo/*, src/adapters/inpi-br/*, src/adapters/fips/*
6
+ * @breaks throws TransportError(code='MCP_BUS_MISSING') when invoked today because the in-repo TransportBus has no outbound MCP client; throws TransportError(code='MCP_NO_SERVER') when both candidate servers are absent; emits PATENT_BROWSER_CAPTCHA envelope when upstream challenge detected at the adapter layer (not here)
7
+ * @invariants prefer bb-browser MCP if both available (claude-in-chrome requires tool pre-loading via ToolSearch); never silently fall back to a synthetic response — rule 02
8
+ * @side-effects network egress through MCP server; controls the user's actual Chrome browser (visible side-effect) — currently inactive because no MCP outbound transport exists in the bus
9
+ * @perf latency is bounded by browser navigation; expect 1-5 s per page once live
10
+ * @concurrency one tab per logical request; the transport does not multiplex
11
+ * @test tests/unit/engine/transport/mcp-browser.test.ts (interface contract only — live MCP not under unit test)
12
+ * @stability experimental — MCP server vocabulary evolves; gate live use behind a feature flag
13
+ * @since 2026-05-18
14
+ *
15
+ * Integration status: the existing TransportBus at src/transport/bus.ts exposes
16
+ * a fixed set of seven TransportKind values (http, cdp-browser, subprocess,
17
+ * desktop-ax, desktop-uia, desktop-atspi, cua). There is NO outbound MCP
18
+ * client wired into the bus — src/mcp/* implements Uni-CLI AS an MCP server,
19
+ * not as an MCP client. Per rule 02 / Priority Zero NO HACKS, this module
20
+ * does NOT invent a fake transport; every entry point returns a structured
21
+ * TransportError with code MCP_BUS_MISSING (or MCP_NO_SERVER from
22
+ * initMcpBrowserTransport when probing) so callers can emit a PATENT_*
23
+ * envelope with a clear suggestion. When the bus gains an mcp-client
24
+ * TransportKind (tracked separately), replace the MCP_BUS_MISSING returns
25
+ * with dispatch through that transport.
26
+ */
27
+ export interface McpBrowserNavigateRequest {
28
+ url: string;
29
+ /** Preferred MCP server: "bb-browser" | "claude-in-chrome". Default "bb-browser". */
30
+ preferred?: "bb-browser" | "claude-in-chrome";
31
+ /** Optional tab short-id; if absent a new tab is opened. */
32
+ tab?: string;
33
+ /** Network-idle wait in ms after navigation. Default 1500. */
34
+ network_idle_ms?: number;
35
+ }
36
+ export interface McpBrowserEvaluateRequest {
37
+ /** JavaScript expression to evaluate in the page context. */
38
+ expression: string;
39
+ tab?: string;
40
+ }
41
+ export interface McpBrowserSnapshotRequest {
42
+ tab?: string;
43
+ /** Whether to return accessibility-tree refs alongside HTML. Default false. */
44
+ with_refs?: boolean;
45
+ }
46
+ export interface McpBrowserResult<T = unknown> {
47
+ ok: boolean;
48
+ data?: T;
49
+ /** Error code when ok=false. Aligned with PatentErrorCode where applicable. */
50
+ code?: string;
51
+ message?: string;
52
+ /** Short-id of the tab the operation ran in, when applicable. */
53
+ tab?: string;
54
+ }
55
+ export declare class TransportError extends Error {
56
+ readonly code: string;
57
+ constructor(code: string, message: string);
58
+ }
59
+ /**
60
+ * Server probe result. Active server is "none" when neither bb-browser nor
61
+ * claude-in-chrome is reachable, AND when the engine has no outbound MCP
62
+ * transport to call them through (current state on main).
63
+ */
64
+ export interface McpBrowserInit {
65
+ active_server: "bb-browser" | "claude-in-chrome" | "none";
66
+ /**
67
+ * Why no server is active. "bus-missing" means the engine has no outbound
68
+ * MCP client wired into the TransportBus. "no-server" means an outbound
69
+ * route exists but neither candidate MCP server is reachable. Surfaced so
70
+ * adapter-level error envelopes can suggest the right repair path.
71
+ */
72
+ reason?: "bus-missing" | "no-server";
73
+ }
74
+ /**
75
+ * Resolver injected by the host process (Claude Code session, future MCP
76
+ * bus transport, or a test) that can dispatch an outbound MCP tool call to
77
+ * either bb-browser or claude-in-chrome. Stays nullable so the module
78
+ * loads cleanly on a host with no MCP plumbing — that is the production
79
+ * path today.
80
+ */
81
+ export interface McpResolver {
82
+ /**
83
+ * Best-effort liveness probe. Returns true when the named server has
84
+ * declared its tools to the host. Implementations should NOT throw —
85
+ * a failed probe returns false.
86
+ */
87
+ isAvailable(server: "bb-browser" | "claude-in-chrome"): Promise<boolean>;
88
+ /**
89
+ * Dispatch a single tool call. Tool name is the MCP convention
90
+ * (e.g. "browser_navigate"); arguments shape is the server's contract.
91
+ * The resolver normalises responses to McpBrowserResult so adapters do
92
+ * not branch on which server answered.
93
+ */
94
+ call<T = unknown>(server: "bb-browser" | "claude-in-chrome", tool: string, args: Record<string, unknown>): Promise<McpBrowserResult<T>>;
95
+ }
96
+ /**
97
+ * Install an MCP resolver. The host process (the Claude Code session, a
98
+ * future MCP-bus transport adapter, or a unit test) injects a resolver so
99
+ * this module can stay free of the SDK dependency. Calling with `undefined`
100
+ * uninstalls — used by tests to assert the "no resolver" path.
101
+ */
102
+ export declare function installMcpResolver(resolver: McpResolver | undefined): void;
103
+ /** @internal — exposed for tests; production callers should not read this. */
104
+ export declare function _getMcpResolverForTests(): McpResolver | undefined;
105
+ /**
106
+ * Initialize the transport — confirms which MCP server (bb-browser
107
+ * preferred, claude-in-chrome fallback) is reachable in this session.
108
+ * Idempotent.
109
+ *
110
+ * Returns `{ active_server: "none", reason: "bus-missing" }` when no
111
+ * outbound MCP resolver has been installed (the engine's current state).
112
+ * Returns `{ active_server: "none", reason: "no-server" }` when a resolver
113
+ * exists but neither candidate server is reachable.
114
+ *
115
+ * Never throws — callers (adapters) emit a PATENT_* envelope with the
116
+ * appropriate suggestion based on `reason`.
117
+ */
118
+ export declare function initMcpBrowserTransport(): Promise<McpBrowserInit>;
119
+ export declare function mcpBrowserNavigate(req: McpBrowserNavigateRequest): Promise<McpBrowserResult<{
120
+ url: string;
121
+ title?: string;
122
+ }>>;
123
+ export declare function mcpBrowserEvaluate<T = unknown>(req: McpBrowserEvaluateRequest): Promise<McpBrowserResult<T>>;
124
+ export declare function mcpBrowserSnapshot(req: McpBrowserSnapshotRequest): Promise<McpBrowserResult<{
125
+ html: string;
126
+ refs?: unknown;
127
+ }>>;
128
+ //# sourceMappingURL=mcp-browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-browser.d.ts","sourceRoot":"","sources":["../../../src/engine/transport/mcp-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,qFAAqF;IACrF,SAAS,CAAC,EAAE,YAAY,GAAG,kBAAkB,CAAC;IAC9C,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,yBAAyB;IACxC,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO;IAC3C,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,cAAe,SAAQ,KAAK;aAErB,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM;CAKlB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,YAAY,GAAG,kBAAkB,GAAG,MAAM,CAAC;IAC1D;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;CACtC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE;;;;;OAKG;IACH,IAAI,CAAC,CAAC,GAAG,OAAO,EACd,MAAM,EAAE,YAAY,GAAG,kBAAkB,EACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;CACjC;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAE1E;AAED,8EAA8E;AAC9E,wBAAgB,uBAAuB,IAAI,WAAW,GAAG,SAAS,CAEjE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,cAAc,CAAC,CAuBvE;AA8BD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,yBAAyB,GAC7B,OAAO,CAAC,gBAAgB,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAS5D;AAED,wBAAsB,kBAAkB,CAAC,CAAC,GAAG,OAAO,EAClD,GAAG,EAAE,yBAAyB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAK9B;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,yBAAyB,GAC7B,OAAO,CAAC,gBAAgB,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC,CAK7D"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * @owner src::engine::transport::mcp-browser
3
+ * @does Transport adapter that proxies pipeline browser steps (navigate / wait / evaluate / snapshot) to a real Chrome session reachable through the bb-browser or claude-in-chrome MCP server — sole programmatic path for L3 jurisdictions whose IP office offers no open API (CNIPA, INPI-BR pre-API, Rospatent, CIPO, Espacenet HTML).
4
+ * @needs src/transport/bus.ts (TransportBus surface — note: MCP client integration is NOT yet wired into the bus; this module returns MCP_BUS_MISSING TransportError until the bus grows an mcp transport kind)
5
+ * @feeds src/adapters/cnipa/*, src/adapters/espacenet/*, src/adapters/cipo/*, src/adapters/inpi-br/*, src/adapters/fips/*
6
+ * @breaks throws TransportError(code='MCP_BUS_MISSING') when invoked today because the in-repo TransportBus has no outbound MCP client; throws TransportError(code='MCP_NO_SERVER') when both candidate servers are absent; emits PATENT_BROWSER_CAPTCHA envelope when upstream challenge detected at the adapter layer (not here)
7
+ * @invariants prefer bb-browser MCP if both available (claude-in-chrome requires tool pre-loading via ToolSearch); never silently fall back to a synthetic response — rule 02
8
+ * @side-effects network egress through MCP server; controls the user's actual Chrome browser (visible side-effect) — currently inactive because no MCP outbound transport exists in the bus
9
+ * @perf latency is bounded by browser navigation; expect 1-5 s per page once live
10
+ * @concurrency one tab per logical request; the transport does not multiplex
11
+ * @test tests/unit/engine/transport/mcp-browser.test.ts (interface contract only — live MCP not under unit test)
12
+ * @stability experimental — MCP server vocabulary evolves; gate live use behind a feature flag
13
+ * @since 2026-05-18
14
+ *
15
+ * Integration status: the existing TransportBus at src/transport/bus.ts exposes
16
+ * a fixed set of seven TransportKind values (http, cdp-browser, subprocess,
17
+ * desktop-ax, desktop-uia, desktop-atspi, cua). There is NO outbound MCP
18
+ * client wired into the bus — src/mcp/* implements Uni-CLI AS an MCP server,
19
+ * not as an MCP client. Per rule 02 / Priority Zero NO HACKS, this module
20
+ * does NOT invent a fake transport; every entry point returns a structured
21
+ * TransportError with code MCP_BUS_MISSING (or MCP_NO_SERVER from
22
+ * initMcpBrowserTransport when probing) so callers can emit a PATENT_*
23
+ * envelope with a clear suggestion. When the bus gains an mcp-client
24
+ * TransportKind (tracked separately), replace the MCP_BUS_MISSING returns
25
+ * with dispatch through that transport.
26
+ */
27
+ export class TransportError extends Error {
28
+ code;
29
+ constructor(code, message) {
30
+ super(message);
31
+ this.code = code;
32
+ this.name = "TransportError";
33
+ }
34
+ }
35
+ let installedResolver;
36
+ /**
37
+ * Install an MCP resolver. The host process (the Claude Code session, a
38
+ * future MCP-bus transport adapter, or a unit test) injects a resolver so
39
+ * this module can stay free of the SDK dependency. Calling with `undefined`
40
+ * uninstalls — used by tests to assert the "no resolver" path.
41
+ */
42
+ export function installMcpResolver(resolver) {
43
+ installedResolver = resolver;
44
+ }
45
+ /** @internal — exposed for tests; production callers should not read this. */
46
+ export function _getMcpResolverForTests() {
47
+ return installedResolver;
48
+ }
49
+ /**
50
+ * Initialize the transport — confirms which MCP server (bb-browser
51
+ * preferred, claude-in-chrome fallback) is reachable in this session.
52
+ * Idempotent.
53
+ *
54
+ * Returns `{ active_server: "none", reason: "bus-missing" }` when no
55
+ * outbound MCP resolver has been installed (the engine's current state).
56
+ * Returns `{ active_server: "none", reason: "no-server" }` when a resolver
57
+ * exists but neither candidate server is reachable.
58
+ *
59
+ * Never throws — callers (adapters) emit a PATENT_* envelope with the
60
+ * appropriate suggestion based on `reason`.
61
+ */
62
+ export async function initMcpBrowserTransport() {
63
+ const resolver = installedResolver;
64
+ if (!resolver) {
65
+ return { active_server: "none", reason: "bus-missing" };
66
+ }
67
+ // bb-browser preferred per file-header @invariants.
68
+ let bbAvailable = false;
69
+ try {
70
+ bbAvailable = await resolver.isAvailable("bb-browser");
71
+ }
72
+ catch {
73
+ bbAvailable = false;
74
+ }
75
+ if (bbAvailable)
76
+ return { active_server: "bb-browser" };
77
+ let cicAvailable = false;
78
+ try {
79
+ cicAvailable = await resolver.isAvailable("claude-in-chrome");
80
+ }
81
+ catch {
82
+ cicAvailable = false;
83
+ }
84
+ if (cicAvailable)
85
+ return { active_server: "claude-in-chrome" };
86
+ return { active_server: "none", reason: "no-server" };
87
+ }
88
+ async function dispatch(tool, args) {
89
+ const init = await initMcpBrowserTransport();
90
+ if (init.active_server === "none") {
91
+ const code = init.reason === "bus-missing" ? "MCP_BUS_MISSING" : "MCP_NO_SERVER";
92
+ const message = init.reason === "bus-missing"
93
+ ? "no outbound MCP transport is wired into the engine; register an McpResolver via installMcpResolver() before invoking browser-driven adapters"
94
+ : "neither bb-browser nor claude-in-chrome MCP server is reachable in this session; start one (bb-browser preferred) and retry";
95
+ throw new TransportError(code, message);
96
+ }
97
+ const resolver = installedResolver;
98
+ if (!resolver) {
99
+ // Defensive: initMcpBrowserTransport already returned a server, so a
100
+ // resolver should be present. If it disappeared between calls,
101
+ // surface the gap honestly rather than synthesise a result.
102
+ throw new TransportError("MCP_BUS_MISSING", "McpResolver disappeared between init and dispatch; no fallback");
103
+ }
104
+ const toolName = init.active_server === "bb-browser" ? tool.bb : tool.cic;
105
+ return resolver.call(init.active_server, toolName, args);
106
+ }
107
+ export async function mcpBrowserNavigate(req) {
108
+ return dispatch({ bb: "browser_navigate", cic: "navigate" }, {
109
+ url: req.url,
110
+ tab: req.tab,
111
+ network_idle_ms: req.network_idle_ms ?? 1500,
112
+ });
113
+ }
114
+ export async function mcpBrowserEvaluate(req) {
115
+ return dispatch({ bb: "browser_eval", cic: "javascript_tool" }, { expression: req.expression, tab: req.tab });
116
+ }
117
+ export async function mcpBrowserSnapshot(req) {
118
+ return dispatch({ bb: "browser_snapshot", cic: "read_page" }, { tab: req.tab, with_refs: req.with_refs ?? false });
119
+ }
120
+ //# sourceMappingURL=mcp-browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-browser.js","sourceRoot":"","sources":["../../../src/engine/transport/mcp-browser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @owner src/fast-path/handlers/approvals.ts
3
+ * @does Handles lightweight approval-memory CLI commands before full adapter startup.
4
+ * @needs ParsedArgv, approval-store sync APIs, and shared approval projection.
5
+ * @feeds src/fast-path.ts approvals dispatch case.
6
+ * @breaks Commander approvals syntax changes must be mirrored by this handler.
7
+ */
8
+ import type { ParsedArgv } from "../parsed-argv.js";
9
+ import { type Io } from "../render.js";
10
+ export declare function handleApprovals(parsed: ParsedArgv, io: Io): boolean;
11
+ //# sourceMappingURL=approvals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approvals.d.ts","sourceRoot":"","sources":["../../../src/fast-path/handlers/approvals.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAQ,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC;AAS7C,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAiGnE"}