@jackwener/opencli 1.6.2 → 1.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1894) hide show
  1. package/README.md +7 -7
  2. package/README.zh-CN.md +9 -9
  3. package/dist/browser/cdp.d.ts +1 -40
  4. package/dist/browser/cdp.js +2 -310
  5. package/dist/browser/page.d.ts +1 -62
  6. package/dist/browser/page.js +2 -304
  7. package/dist/browser/utils.d.ts +1 -10
  8. package/dist/browser/utils.js +2 -27
  9. package/dist/cli-manifest.json +546 -2
  10. package/dist/clis/1688/item.js +3 -3
  11. package/dist/clis/1688/search.js +2 -2
  12. package/dist/clis/1688/shared.d.ts +1 -1
  13. package/dist/clis/1688/shared.js +1 -1
  14. package/dist/clis/1688/store.js +2 -2
  15. package/dist/clis/36kr/article.js +2 -2
  16. package/dist/clis/36kr/hot.js +12 -6
  17. package/dist/clis/36kr/news.js +1 -1
  18. package/dist/clis/36kr/search.js +12 -6
  19. package/dist/clis/_shared/desktop-commands.d.ts +5 -5
  20. package/dist/clis/_shared/desktop-commands.js +1 -1
  21. package/dist/clis/amazon/bestsellers.js +1 -1
  22. package/dist/clis/amazon/discussion.js +2 -2
  23. package/dist/clis/amazon/movers-shakers.js +1 -1
  24. package/dist/clis/amazon/new-releases.js +1 -1
  25. package/dist/clis/amazon/offer.js +2 -2
  26. package/dist/clis/amazon/product.js +2 -2
  27. package/dist/clis/amazon/rankings.d.ts +1 -1
  28. package/dist/clis/amazon/rankings.js +2 -2
  29. package/dist/clis/amazon/search.js +2 -2
  30. package/dist/clis/amazon/shared.d.ts +1 -1
  31. package/dist/clis/amazon/shared.js +1 -1
  32. package/dist/clis/antigravity/dump.d.ts +1 -1
  33. package/dist/clis/antigravity/dump.js +1 -1
  34. package/dist/clis/antigravity/extract-code.d.ts +1 -1
  35. package/dist/clis/antigravity/extract-code.js +1 -1
  36. package/dist/clis/antigravity/model.d.ts +1 -1
  37. package/dist/clis/antigravity/model.js +1 -1
  38. package/dist/clis/antigravity/new.d.ts +1 -1
  39. package/dist/clis/antigravity/new.js +1 -1
  40. package/dist/clis/antigravity/read.d.ts +1 -1
  41. package/dist/clis/antigravity/read.js +1 -1
  42. package/dist/clis/antigravity/send.d.ts +1 -1
  43. package/dist/clis/antigravity/send.js +1 -1
  44. package/dist/clis/antigravity/serve.js +2 -2
  45. package/dist/clis/antigravity/status.d.ts +1 -1
  46. package/dist/clis/antigravity/status.js +1 -1
  47. package/dist/clis/antigravity/watch.d.ts +1 -1
  48. package/dist/clis/antigravity/watch.js +1 -1
  49. package/dist/clis/apple-podcasts/commands.test.js +1 -1
  50. package/dist/clis/apple-podcasts/episodes.js +2 -2
  51. package/dist/clis/apple-podcasts/search.js +2 -2
  52. package/dist/clis/apple-podcasts/top.js +2 -2
  53. package/dist/clis/apple-podcasts/utils.js +1 -1
  54. package/dist/clis/arxiv/paper.js +2 -2
  55. package/dist/clis/arxiv/search.js +2 -2
  56. package/dist/clis/arxiv/utils.js +1 -1
  57. package/dist/clis/band/bands.js +2 -2
  58. package/dist/clis/band/mentions.js +2 -2
  59. package/dist/clis/band/post.js +2 -2
  60. package/dist/clis/band/posts.js +2 -2
  61. package/dist/clis/barchart/flow.js +1 -1
  62. package/dist/clis/barchart/greeks.js +1 -1
  63. package/dist/clis/barchart/options.js +1 -1
  64. package/dist/clis/barchart/quote.js +1 -1
  65. package/dist/clis/bbc/news.js +1 -1
  66. package/dist/clis/bilibili/comments.js +1 -1
  67. package/dist/clis/bilibili/comments.test.js +1 -1
  68. package/dist/clis/bilibili/download.js +1 -1
  69. package/dist/clis/bilibili/dynamic.js +1 -1
  70. package/dist/clis/bilibili/dynamic.test.js +1 -1
  71. package/dist/clis/bilibili/favorite.js +1 -1
  72. package/dist/clis/bilibili/feed.js +1 -1
  73. package/dist/clis/bilibili/following.js +2 -2
  74. package/dist/clis/bilibili/history.js +1 -1
  75. package/dist/clis/bilibili/me.js +1 -1
  76. package/dist/clis/bilibili/ranking.js +1 -1
  77. package/dist/clis/bilibili/search.js +1 -1
  78. package/dist/clis/bilibili/subtitle.js +2 -2
  79. package/dist/clis/bilibili/subtitle.test.js +2 -2
  80. package/dist/clis/bilibili/user-videos.js +1 -1
  81. package/dist/clis/bilibili/utils.d.ts +1 -1
  82. package/dist/clis/bilibili/utils.js +1 -1
  83. package/dist/clis/bloomberg/businessweek.js +1 -1
  84. package/dist/clis/bloomberg/economics.js +1 -1
  85. package/dist/clis/bloomberg/feeds.js +1 -1
  86. package/dist/clis/bloomberg/industries.js +1 -1
  87. package/dist/clis/bloomberg/main.js +1 -1
  88. package/dist/clis/bloomberg/markets.js +1 -1
  89. package/dist/clis/bloomberg/news.js +2 -2
  90. package/dist/clis/bloomberg/opinions.js +1 -1
  91. package/dist/clis/bloomberg/politics.js +1 -1
  92. package/dist/clis/bloomberg/tech.js +1 -1
  93. package/dist/clis/bloomberg/utils.js +1 -1
  94. package/dist/clis/boss/batchgreet.js +1 -1
  95. package/dist/clis/boss/chatlist.js +1 -1
  96. package/dist/clis/boss/chatmsg.js +1 -1
  97. package/dist/clis/boss/detail.js +1 -1
  98. package/dist/clis/boss/exchange.js +1 -1
  99. package/dist/clis/boss/greet.js +1 -1
  100. package/dist/clis/boss/invite.js +1 -1
  101. package/dist/clis/boss/joblist.js +1 -1
  102. package/dist/clis/boss/mark.js +2 -2
  103. package/dist/clis/boss/recommend.js +1 -1
  104. package/dist/clis/boss/resume.js +1 -1
  105. package/dist/clis/boss/search.js +1 -1
  106. package/dist/clis/boss/send.js +2 -2
  107. package/dist/clis/boss/stats.js +1 -1
  108. package/dist/clis/boss/utils.d.ts +1 -1
  109. package/dist/clis/chaoxing/assignments.js +2 -2
  110. package/dist/clis/chaoxing/exams.js +1 -1
  111. package/dist/clis/chaoxing/utils.d.ts +1 -1
  112. package/dist/clis/chatgpt/ask.d.ts +1 -1
  113. package/dist/clis/chatgpt/ask.js +2 -2
  114. package/dist/clis/chatgpt/model.d.ts +1 -1
  115. package/dist/clis/chatgpt/model.js +2 -2
  116. package/dist/clis/chatgpt/new.d.ts +1 -1
  117. package/dist/clis/chatgpt/new.js +2 -2
  118. package/dist/clis/chatgpt/read.d.ts +1 -1
  119. package/dist/clis/chatgpt/read.js +2 -2
  120. package/dist/clis/chatgpt/send.d.ts +1 -1
  121. package/dist/clis/chatgpt/send.js +2 -2
  122. package/dist/clis/chatgpt/status.d.ts +1 -1
  123. package/dist/clis/chatgpt/status.js +2 -2
  124. package/dist/clis/chatwise/ask.d.ts +1 -1
  125. package/dist/clis/chatwise/ask.js +2 -2
  126. package/dist/clis/chatwise/export.d.ts +1 -1
  127. package/dist/clis/chatwise/export.js +1 -1
  128. package/dist/clis/chatwise/history.d.ts +1 -1
  129. package/dist/clis/chatwise/history.js +1 -1
  130. package/dist/clis/chatwise/model.d.ts +1 -1
  131. package/dist/clis/chatwise/model.js +2 -2
  132. package/dist/clis/chatwise/new.d.ts +1 -1
  133. package/dist/clis/chatwise/read.d.ts +1 -1
  134. package/dist/clis/chatwise/read.js +1 -1
  135. package/dist/clis/chatwise/screenshot.d.ts +1 -1
  136. package/dist/clis/chatwise/send.d.ts +1 -1
  137. package/dist/clis/chatwise/send.js +2 -2
  138. package/dist/clis/chatwise/status.d.ts +1 -1
  139. package/dist/clis/codex/ask.d.ts +1 -1
  140. package/dist/clis/codex/ask.js +2 -2
  141. package/dist/clis/codex/dump.d.ts +1 -1
  142. package/dist/clis/codex/export.d.ts +1 -1
  143. package/dist/clis/codex/export.js +1 -1
  144. package/dist/clis/codex/extract-diff.d.ts +1 -1
  145. package/dist/clis/codex/extract-diff.js +1 -1
  146. package/dist/clis/codex/history.d.ts +1 -1
  147. package/dist/clis/codex/history.js +1 -1
  148. package/dist/clis/codex/model.d.ts +1 -1
  149. package/dist/clis/codex/model.js +1 -1
  150. package/dist/clis/codex/new.d.ts +1 -1
  151. package/dist/clis/codex/read.d.ts +1 -1
  152. package/dist/clis/codex/read.js +1 -1
  153. package/dist/clis/codex/screenshot.d.ts +1 -1
  154. package/dist/clis/codex/send.d.ts +1 -1
  155. package/dist/clis/codex/send.js +2 -2
  156. package/dist/clis/codex/status.d.ts +1 -1
  157. package/dist/clis/coupang/add-to-cart.js +1 -1
  158. package/dist/clis/coupang/search.js +1 -1
  159. package/dist/clis/ctrip/search.js +2 -2
  160. package/dist/clis/ctrip/search.test.js +1 -1
  161. package/dist/clis/cursor/ask.d.ts +1 -1
  162. package/dist/clis/cursor/ask.js +2 -2
  163. package/dist/clis/cursor/composer.d.ts +1 -1
  164. package/dist/clis/cursor/composer.js +2 -2
  165. package/dist/clis/cursor/dump.d.ts +1 -1
  166. package/dist/clis/cursor/export.d.ts +1 -1
  167. package/dist/clis/cursor/export.js +1 -1
  168. package/dist/clis/cursor/extract-code.d.ts +1 -1
  169. package/dist/clis/cursor/extract-code.js +1 -1
  170. package/dist/clis/cursor/history.d.ts +1 -1
  171. package/dist/clis/cursor/history.js +1 -1
  172. package/dist/clis/cursor/model.d.ts +1 -1
  173. package/dist/clis/cursor/model.js +1 -1
  174. package/dist/clis/cursor/new.d.ts +1 -1
  175. package/dist/clis/cursor/read.d.ts +1 -1
  176. package/dist/clis/cursor/read.js +2 -2
  177. package/dist/clis/cursor/screenshot.d.ts +1 -1
  178. package/dist/clis/cursor/send.d.ts +1 -1
  179. package/dist/clis/cursor/send.js +2 -2
  180. package/dist/clis/cursor/status.d.ts +1 -1
  181. package/dist/clis/discord-app/channels.d.ts +1 -1
  182. package/dist/clis/discord-app/channels.js +1 -1
  183. package/dist/clis/discord-app/members.d.ts +1 -1
  184. package/dist/clis/discord-app/members.js +1 -1
  185. package/dist/clis/discord-app/read.d.ts +1 -1
  186. package/dist/clis/discord-app/read.js +1 -1
  187. package/dist/clis/discord-app/search.d.ts +1 -1
  188. package/dist/clis/discord-app/search.js +1 -1
  189. package/dist/clis/discord-app/send.d.ts +1 -1
  190. package/dist/clis/discord-app/send.js +1 -1
  191. package/dist/clis/discord-app/servers.d.ts +1 -1
  192. package/dist/clis/discord-app/servers.js +1 -1
  193. package/dist/clis/discord-app/status.d.ts +1 -1
  194. package/dist/clis/discord-app/status.js +1 -1
  195. package/dist/clis/douban/book-hot.js +1 -1
  196. package/dist/clis/douban/download.js +2 -2
  197. package/dist/clis/douban/download.test.js +1 -1
  198. package/dist/clis/douban/marks.js +1 -1
  199. package/dist/clis/douban/movie-hot.js +1 -1
  200. package/dist/clis/douban/photos.js +1 -1
  201. package/dist/clis/douban/reviews.js +1 -1
  202. package/dist/clis/douban/search.js +1 -1
  203. package/dist/clis/douban/utils.d.ts +1 -1
  204. package/dist/clis/douban/utils.js +1 -1
  205. package/dist/clis/doubao/ask.d.ts +1 -1
  206. package/dist/clis/doubao/ask.js +1 -1
  207. package/dist/clis/doubao/detail.d.ts +1 -1
  208. package/dist/clis/doubao/detail.js +1 -1
  209. package/dist/clis/doubao/detail.test.js +1 -1
  210. package/dist/clis/doubao/history.d.ts +1 -1
  211. package/dist/clis/doubao/history.js +1 -1
  212. package/dist/clis/doubao/history.test.js +1 -1
  213. package/dist/clis/doubao/meeting-summary.d.ts +1 -1
  214. package/dist/clis/doubao/meeting-summary.js +1 -1
  215. package/dist/clis/doubao/meeting-transcript.d.ts +1 -1
  216. package/dist/clis/doubao/meeting-transcript.js +1 -1
  217. package/dist/clis/doubao/new.d.ts +1 -1
  218. package/dist/clis/doubao/new.js +1 -1
  219. package/dist/clis/doubao/read.d.ts +1 -1
  220. package/dist/clis/doubao/read.js +1 -1
  221. package/dist/clis/doubao/send.d.ts +1 -1
  222. package/dist/clis/doubao/send.js +1 -1
  223. package/dist/clis/doubao/status.d.ts +1 -1
  224. package/dist/clis/doubao/status.js +1 -1
  225. package/dist/clis/doubao/utils.d.ts +1 -1
  226. package/dist/clis/doubao-app/ask.d.ts +1 -1
  227. package/dist/clis/doubao-app/ask.js +1 -1
  228. package/dist/clis/doubao-app/dump.d.ts +1 -1
  229. package/dist/clis/doubao-app/dump.js +1 -1
  230. package/dist/clis/doubao-app/new.d.ts +1 -1
  231. package/dist/clis/doubao-app/new.js +1 -1
  232. package/dist/clis/doubao-app/read.d.ts +1 -1
  233. package/dist/clis/doubao-app/read.js +1 -1
  234. package/dist/clis/doubao-app/screenshot.d.ts +1 -1
  235. package/dist/clis/doubao-app/screenshot.js +1 -1
  236. package/dist/clis/doubao-app/send.d.ts +1 -1
  237. package/dist/clis/doubao-app/send.js +1 -1
  238. package/dist/clis/doubao-app/status.d.ts +1 -1
  239. package/dist/clis/doubao-app/status.js +1 -1
  240. package/dist/clis/douyin/_shared/browser-fetch.d.ts +1 -1
  241. package/dist/clis/douyin/_shared/browser-fetch.js +1 -1
  242. package/dist/clis/douyin/_shared/imagex-upload.js +1 -1
  243. package/dist/clis/douyin/_shared/imagex-upload.test.js +1 -1
  244. package/dist/clis/douyin/_shared/public-api.d.ts +1 -1
  245. package/dist/clis/douyin/_shared/sts2.d.ts +1 -1
  246. package/dist/clis/douyin/_shared/sts2.js +1 -1
  247. package/dist/clis/douyin/_shared/sts2.test.js +1 -1
  248. package/dist/clis/douyin/_shared/tos-upload-short-read.test.js +1 -1
  249. package/dist/clis/douyin/_shared/tos-upload.js +1 -1
  250. package/dist/clis/douyin/_shared/transcode.d.ts +1 -1
  251. package/dist/clis/douyin/_shared/transcode.js +1 -1
  252. package/dist/clis/douyin/_shared/transcode.test.js +1 -1
  253. package/dist/clis/douyin/activities.js +1 -1
  254. package/dist/clis/douyin/activities.test.js +1 -1
  255. package/dist/clis/douyin/collections.js +1 -1
  256. package/dist/clis/douyin/collections.test.js +1 -1
  257. package/dist/clis/douyin/delete.js +1 -1
  258. package/dist/clis/douyin/delete.test.js +1 -1
  259. package/dist/clis/douyin/draft.js +2 -2
  260. package/dist/clis/douyin/draft.test.js +1 -1
  261. package/dist/clis/douyin/drafts.js +1 -1
  262. package/dist/clis/douyin/drafts.test.js +1 -1
  263. package/dist/clis/douyin/hashtag.js +2 -2
  264. package/dist/clis/douyin/hashtag.test.js +1 -1
  265. package/dist/clis/douyin/location.js +1 -1
  266. package/dist/clis/douyin/location.test.js +1 -1
  267. package/dist/clis/douyin/profile.js +2 -2
  268. package/dist/clis/douyin/profile.test.js +1 -1
  269. package/dist/clis/douyin/publish.js +2 -2
  270. package/dist/clis/douyin/publish.test.js +1 -1
  271. package/dist/clis/douyin/stats.js +1 -1
  272. package/dist/clis/douyin/stats.test.js +1 -1
  273. package/dist/clis/douyin/update.js +2 -2
  274. package/dist/clis/douyin/update.test.js +1 -1
  275. package/dist/clis/douyin/user-videos.js +1 -1
  276. package/dist/clis/douyin/user-videos.test.js +1 -1
  277. package/dist/clis/douyin/videos.js +1 -1
  278. package/dist/clis/douyin/videos.test.js +1 -1
  279. package/dist/clis/gemini/ask.d.ts +1 -1
  280. package/dist/clis/gemini/ask.js +1 -1
  281. package/dist/clis/gemini/deep-research-result.d.ts +1 -0
  282. package/dist/clis/gemini/deep-research-result.js +91 -0
  283. package/dist/clis/gemini/deep-research-result.test.js +154 -0
  284. package/dist/clis/gemini/deep-research.d.ts +1 -0
  285. package/dist/clis/gemini/deep-research.js +98 -0
  286. package/dist/clis/gemini/deep-research.test.js +184 -0
  287. package/dist/clis/gemini/image.d.ts +1 -1
  288. package/dist/clis/gemini/image.js +2 -2
  289. package/dist/clis/gemini/new.d.ts +1 -1
  290. package/dist/clis/gemini/new.js +1 -1
  291. package/dist/clis/gemini/reply-state.test.js +30 -0
  292. package/dist/clis/gemini/utils.d.ts +30 -1
  293. package/dist/clis/gemini/utils.js +1014 -2
  294. package/dist/clis/gemini/utils.test.js +21 -1
  295. package/dist/clis/google/news.js +2 -2
  296. package/dist/clis/google/search.js +2 -2
  297. package/dist/clis/google/suggest.js +2 -2
  298. package/dist/clis/google/trends.js +2 -2
  299. package/dist/clis/grok/ask.d.ts +2 -2
  300. package/dist/clis/grok/ask.js +1 -1
  301. package/dist/clis/hf/top.js +2 -2
  302. package/dist/clis/hupu/detail.js +1 -1
  303. package/dist/clis/hupu/like.js +2 -2
  304. package/dist/clis/hupu/mentions.js +159 -0
  305. package/dist/clis/hupu/reply.js +2 -2
  306. package/dist/clis/hupu/search.js +1 -1
  307. package/dist/clis/hupu/unlike.js +2 -2
  308. package/dist/clis/hupu/utils.d.ts +1 -1
  309. package/dist/clis/hupu/utils.js +1 -1
  310. package/dist/clis/imdb/person.js +2 -2
  311. package/dist/clis/imdb/reviews.js +2 -2
  312. package/dist/clis/imdb/search.js +2 -2
  313. package/dist/clis/imdb/title.js +2 -2
  314. package/dist/clis/imdb/top.js +2 -2
  315. package/dist/clis/imdb/trending.js +2 -2
  316. package/dist/clis/imdb/utils.d.ts +1 -1
  317. package/dist/clis/imdb/utils.js +1 -1
  318. package/dist/clis/instagram/_shared/private-publish.d.ts +1 -1
  319. package/dist/clis/instagram/_shared/private-publish.js +1 -1
  320. package/dist/clis/instagram/_shared/protocol-capture.d.ts +1 -1
  321. package/dist/clis/instagram/_shared/runtime-info.d.ts +1 -1
  322. package/dist/clis/instagram/download.js +2 -2
  323. package/dist/clis/instagram/download.test.js +2 -2
  324. package/dist/clis/instagram/note.js +2 -2
  325. package/dist/clis/instagram/note.test.js +2 -2
  326. package/dist/clis/instagram/post.js +2 -2
  327. package/dist/clis/instagram/post.test.js +2 -2
  328. package/dist/clis/instagram/reel.js +2 -2
  329. package/dist/clis/instagram/reel.test.js +2 -2
  330. package/dist/clis/instagram/story.js +2 -2
  331. package/dist/clis/instagram/story.test.js +2 -2
  332. package/dist/clis/jd/item.js +1 -1
  333. package/dist/clis/jd/item.test.js +1 -1
  334. package/dist/clis/jike/comment.js +1 -1
  335. package/dist/clis/jike/create.js +1 -1
  336. package/dist/clis/jike/feed.js +1 -1
  337. package/dist/clis/jike/like.js +1 -1
  338. package/dist/clis/jike/notifications.js +1 -1
  339. package/dist/clis/jike/repost.js +1 -1
  340. package/dist/clis/jike/search.js +1 -1
  341. package/dist/clis/lesswrong/_helpers.d.ts +15 -0
  342. package/dist/clis/lesswrong/_helpers.js +75 -0
  343. package/dist/clis/lesswrong/comments.js +64 -0
  344. package/dist/clis/lesswrong/curated.js +30 -0
  345. package/dist/clis/lesswrong/frontpage.js +30 -0
  346. package/dist/clis/lesswrong/new.js +30 -0
  347. package/dist/clis/lesswrong/read.js +45 -0
  348. package/dist/clis/lesswrong/sequences.js +27 -0
  349. package/dist/clis/lesswrong/shortform.js +30 -0
  350. package/dist/clis/lesswrong/tag.js +45 -0
  351. package/dist/clis/lesswrong/tags.js +27 -0
  352. package/dist/clis/lesswrong/top-month.js +30 -0
  353. package/dist/clis/lesswrong/top-week.js +30 -0
  354. package/dist/clis/lesswrong/top-year.js +30 -0
  355. package/dist/clis/lesswrong/top.js +30 -0
  356. package/dist/clis/lesswrong/user-posts.js +41 -0
  357. package/dist/clis/lesswrong/user.js +44 -0
  358. package/dist/clis/linkedin/search.js +2 -2
  359. package/dist/clis/linkedin/timeline.js +2 -2
  360. package/dist/clis/linkedin/timeline.test.js +1 -1
  361. package/dist/clis/linux-do/category.js +1 -1
  362. package/dist/clis/linux-do/feed.d.ts +2 -2
  363. package/dist/clis/linux-do/feed.js +2 -2
  364. package/dist/clis/linux-do/hot.js +1 -1
  365. package/dist/clis/linux-do/latest.js +1 -1
  366. package/dist/clis/medium/feed.js +1 -1
  367. package/dist/clis/medium/search.js +1 -1
  368. package/dist/clis/medium/user.js +1 -1
  369. package/dist/clis/medium/utils.d.ts +1 -1
  370. package/dist/clis/medium/utils.js +1 -1
  371. package/dist/clis/notebooklm/compat.test.js +1 -1
  372. package/dist/clis/notebooklm/current.js +2 -2
  373. package/dist/clis/notebooklm/get.js +2 -2
  374. package/dist/clis/notebooklm/history.js +2 -2
  375. package/dist/clis/notebooklm/history.test.js +1 -1
  376. package/dist/clis/notebooklm/list.js +2 -2
  377. package/dist/clis/notebooklm/note-list.js +2 -2
  378. package/dist/clis/notebooklm/note-list.test.js +1 -1
  379. package/dist/clis/notebooklm/notes-get.js +2 -2
  380. package/dist/clis/notebooklm/notes-get.test.js +1 -1
  381. package/dist/clis/notebooklm/open.js +2 -2
  382. package/dist/clis/notebooklm/open.test.js +1 -1
  383. package/dist/clis/notebooklm/rpc.d.ts +1 -1
  384. package/dist/clis/notebooklm/rpc.js +1 -1
  385. package/dist/clis/notebooklm/rpc.test.js +1 -1
  386. package/dist/clis/notebooklm/source-fulltext.js +2 -2
  387. package/dist/clis/notebooklm/source-fulltext.test.js +1 -1
  388. package/dist/clis/notebooklm/source-get.js +2 -2
  389. package/dist/clis/notebooklm/source-get.test.js +1 -1
  390. package/dist/clis/notebooklm/source-guide.js +2 -2
  391. package/dist/clis/notebooklm/source-guide.test.js +1 -1
  392. package/dist/clis/notebooklm/source-list.js +2 -2
  393. package/dist/clis/notebooklm/status.js +1 -1
  394. package/dist/clis/notebooklm/summary.js +2 -2
  395. package/dist/clis/notebooklm/summary.test.js +1 -1
  396. package/dist/clis/notebooklm/utils.d.ts +1 -1
  397. package/dist/clis/notebooklm/utils.js +1 -1
  398. package/dist/clis/notion/export.d.ts +1 -1
  399. package/dist/clis/notion/export.js +1 -1
  400. package/dist/clis/notion/favorites.d.ts +1 -1
  401. package/dist/clis/notion/favorites.js +1 -1
  402. package/dist/clis/notion/new.d.ts +1 -1
  403. package/dist/clis/notion/new.js +1 -1
  404. package/dist/clis/notion/read.d.ts +1 -1
  405. package/dist/clis/notion/read.js +1 -1
  406. package/dist/clis/notion/search.d.ts +1 -1
  407. package/dist/clis/notion/search.js +1 -1
  408. package/dist/clis/notion/sidebar.d.ts +1 -1
  409. package/dist/clis/notion/sidebar.js +1 -1
  410. package/dist/clis/notion/status.d.ts +1 -1
  411. package/dist/clis/notion/status.js +1 -1
  412. package/dist/clis/notion/write.d.ts +1 -1
  413. package/dist/clis/notion/write.js +1 -1
  414. package/dist/clis/ones/common.d.ts +1 -1
  415. package/dist/clis/ones/common.js +1 -1
  416. package/dist/clis/ones/enrich-tasks.d.ts +1 -1
  417. package/dist/clis/ones/login.js +2 -2
  418. package/dist/clis/ones/logout.js +1 -1
  419. package/dist/clis/ones/me.js +2 -2
  420. package/dist/clis/ones/my-tasks.js +2 -2
  421. package/dist/clis/ones/resolve-labels.d.ts +1 -1
  422. package/dist/clis/ones/task-helpers.js +1 -1
  423. package/dist/clis/ones/task.js +2 -2
  424. package/dist/clis/ones/tasks.js +2 -2
  425. package/dist/clis/ones/token-info.js +2 -2
  426. package/dist/clis/ones/worklog.js +2 -2
  427. package/dist/clis/paperreview/commands.test.js +1 -1
  428. package/dist/clis/paperreview/feedback.js +2 -2
  429. package/dist/clis/paperreview/review.js +2 -2
  430. package/dist/clis/paperreview/submit.js +2 -2
  431. package/dist/clis/paperreview/utils.js +1 -1
  432. package/dist/clis/paperreview/utils.test.js +1 -1
  433. package/dist/clis/pixiv/download.js +2 -2
  434. package/dist/clis/pixiv/download.test.js +2 -2
  435. package/dist/clis/pixiv/illusts.js +2 -2
  436. package/dist/clis/pixiv/illusts.test.js +2 -2
  437. package/dist/clis/pixiv/search.js +1 -1
  438. package/dist/clis/pixiv/search.test.js +2 -2
  439. package/dist/clis/pixiv/test-utils.d.ts +1 -1
  440. package/dist/clis/pixiv/utils.d.ts +1 -1
  441. package/dist/clis/pixiv/utils.js +1 -1
  442. package/dist/clis/producthunt/browse.js +2 -2
  443. package/dist/clis/producthunt/hot.js +2 -2
  444. package/dist/clis/producthunt/posts.js +1 -1
  445. package/dist/clis/producthunt/today.js +1 -1
  446. package/dist/clis/reddit/comment.js +2 -2
  447. package/dist/clis/reddit/read.js +2 -2
  448. package/dist/clis/reddit/read.test.js +1 -1
  449. package/dist/clis/reddit/save.js +2 -2
  450. package/dist/clis/reddit/saved.js +2 -2
  451. package/dist/clis/reddit/subscribe.js +2 -2
  452. package/dist/clis/reddit/upvote.js +2 -2
  453. package/dist/clis/reddit/upvoted.js +2 -2
  454. package/dist/clis/reuters/search.js +1 -1
  455. package/dist/clis/sinablog/article.js +1 -1
  456. package/dist/clis/sinablog/hot.js +1 -1
  457. package/dist/clis/sinablog/search.js +1 -1
  458. package/dist/clis/sinablog/user.js +1 -1
  459. package/dist/clis/sinablog/utils.d.ts +1 -1
  460. package/dist/clis/sinafinance/news.js +2 -2
  461. package/dist/clis/sinafinance/rolling-news.js +1 -1
  462. package/dist/clis/sinafinance/stock-rank.js +1 -1
  463. package/dist/clis/sinafinance/stock.js +2 -2
  464. package/dist/clis/smzdm/search.js +1 -1
  465. package/dist/clis/spotify/spotify.js +2 -2
  466. package/dist/clis/spotify/utils.js +1 -1
  467. package/dist/clis/substack/feed.js +1 -1
  468. package/dist/clis/substack/publication.js +1 -1
  469. package/dist/clis/substack/search.js +2 -2
  470. package/dist/clis/substack/utils.d.ts +1 -1
  471. package/dist/clis/substack/utils.js +1 -1
  472. package/dist/clis/tieba/commands.test.js +1 -1
  473. package/dist/clis/tieba/hot.js +2 -2
  474. package/dist/clis/tieba/posts.js +2 -2
  475. package/dist/clis/tieba/read.js +2 -2
  476. package/dist/clis/tieba/search.js +2 -2
  477. package/dist/clis/twitter/accept.js +2 -2
  478. package/dist/clis/twitter/article.js +2 -2
  479. package/dist/clis/twitter/block.js +2 -2
  480. package/dist/clis/twitter/bookmark.js +2 -2
  481. package/dist/clis/twitter/bookmarks.js +2 -2
  482. package/dist/clis/twitter/delete.d.ts +6 -0
  483. package/dist/clis/twitter/delete.js +82 -47
  484. package/dist/clis/twitter/delete.test.d.ts +1 -0
  485. package/dist/clis/twitter/delete.test.js +73 -0
  486. package/dist/clis/twitter/download.js +1 -1
  487. package/dist/clis/twitter/follow.js +2 -2
  488. package/dist/clis/twitter/followers.js +2 -2
  489. package/dist/clis/twitter/following.js +2 -2
  490. package/dist/clis/twitter/hide-reply.js +2 -2
  491. package/dist/clis/twitter/like.js +2 -2
  492. package/dist/clis/twitter/likes.js +2 -2
  493. package/dist/clis/twitter/notifications.js +2 -2
  494. package/dist/clis/twitter/post.js +2 -2
  495. package/dist/clis/twitter/post.test.js +1 -1
  496. package/dist/clis/twitter/profile.js +2 -2
  497. package/dist/clis/twitter/reply-dm.js +2 -2
  498. package/dist/clis/twitter/reply.js +2 -2
  499. package/dist/clis/twitter/reply.test.js +1 -1
  500. package/dist/clis/twitter/search.js +2 -2
  501. package/dist/clis/twitter/search.test.js +1 -1
  502. package/dist/clis/twitter/shared.d.ts +1 -1
  503. package/dist/clis/twitter/thread.js +2 -2
  504. package/dist/clis/twitter/timeline.js +2 -2
  505. package/dist/clis/twitter/trending.js +2 -2
  506. package/dist/clis/twitter/unblock.js +2 -2
  507. package/dist/clis/twitter/unbookmark.js +2 -2
  508. package/dist/clis/twitter/unfollow.js +2 -2
  509. package/dist/clis/v2ex/daily.js +2 -2
  510. package/dist/clis/v2ex/me.js +2 -2
  511. package/dist/clis/v2ex/notifications.js +2 -2
  512. package/dist/clis/web/read.js +1 -1
  513. package/dist/clis/weibo/comments.js +1 -1
  514. package/dist/clis/weibo/feed.js +1 -1
  515. package/dist/clis/weibo/hot.js +1 -1
  516. package/dist/clis/weibo/me.js +2 -2
  517. package/dist/clis/weibo/post.js +2 -2
  518. package/dist/clis/weibo/search.js +2 -2
  519. package/dist/clis/weibo/user.js +2 -2
  520. package/dist/clis/weibo/utils.d.ts +1 -1
  521. package/dist/clis/weibo/utils.js +1 -1
  522. package/dist/clis/weixin/download.js +1 -1
  523. package/dist/clis/weread/book.js +2 -2
  524. package/dist/clis/weread/commands.test.js +2 -2
  525. package/dist/clis/weread/highlights.js +1 -1
  526. package/dist/clis/weread/notebooks.js +1 -1
  527. package/dist/clis/weread/notes.js +1 -1
  528. package/dist/clis/weread/private-api-regression.test.js +2 -2
  529. package/dist/clis/weread/ranking.js +1 -1
  530. package/dist/clis/weread/search-regression.test.js +1 -1
  531. package/dist/clis/weread/search.js +1 -1
  532. package/dist/clis/weread/shelf.js +3 -3
  533. package/dist/clis/weread/utils.d.ts +1 -1
  534. package/dist/clis/weread/utils.js +1 -1
  535. package/dist/clis/wikipedia/random.js +2 -2
  536. package/dist/clis/wikipedia/search.js +2 -2
  537. package/dist/clis/wikipedia/summary.js +2 -2
  538. package/dist/clis/wikipedia/trending.js +2 -2
  539. package/dist/clis/wikipedia/utils.js +1 -1
  540. package/dist/clis/xianyu/chat.js +2 -2
  541. package/dist/clis/xianyu/item.js +2 -2
  542. package/dist/clis/xianyu/item.test.js +2 -2
  543. package/dist/clis/xianyu/search.js +2 -2
  544. package/dist/clis/xianyu/utils.js +1 -1
  545. package/dist/clis/xiaohongshu/comments.js +2 -2
  546. package/dist/clis/xiaohongshu/comments.test.js +3 -3
  547. package/dist/clis/xiaohongshu/creator-note-detail.d.ts +1 -1
  548. package/dist/clis/xiaohongshu/creator-note-detail.js +1 -1
  549. package/dist/clis/xiaohongshu/creator-note-detail.test.js +1 -1
  550. package/dist/clis/xiaohongshu/creator-notes-summary.js +1 -1
  551. package/dist/clis/xiaohongshu/creator-notes.d.ts +1 -1
  552. package/dist/clis/xiaohongshu/creator-notes.js +1 -1
  553. package/dist/clis/xiaohongshu/creator-notes.test.js +1 -1
  554. package/dist/clis/xiaohongshu/creator-profile.js +1 -1
  555. package/dist/clis/xiaohongshu/creator-stats.js +1 -1
  556. package/dist/clis/xiaohongshu/download.js +1 -1
  557. package/dist/clis/xiaohongshu/download.test.js +1 -1
  558. package/dist/clis/xiaohongshu/note-helpers.d.ts +2 -2
  559. package/dist/clis/xiaohongshu/note-helpers.js +5 -3
  560. package/dist/clis/xiaohongshu/note.d.ts +4 -0
  561. package/dist/clis/xiaohongshu/note.js +10 -12
  562. package/dist/clis/xiaohongshu/note.test.js +6 -6
  563. package/dist/clis/xiaohongshu/publish.js +1 -1
  564. package/dist/clis/xiaohongshu/publish.test.js +1 -1
  565. package/dist/clis/xiaohongshu/search.js +2 -2
  566. package/dist/clis/xiaohongshu/search.test.js +1 -1
  567. package/dist/clis/xiaohongshu/user.js +1 -1
  568. package/dist/clis/xiaoyuzhou/episode.js +2 -2
  569. package/dist/clis/xiaoyuzhou/podcast-episodes.js +2 -2
  570. package/dist/clis/xiaoyuzhou/podcast.js +2 -2
  571. package/dist/clis/xiaoyuzhou/utils.js +1 -1
  572. package/dist/clis/xueqiu/comments.d.ts +1 -1
  573. package/dist/clis/xueqiu/comments.js +4 -4
  574. package/dist/clis/xueqiu/comments.test.js +3 -3
  575. package/dist/clis/xueqiu/danjuan-utils.d.ts +1 -1
  576. package/dist/clis/xueqiu/fund-holdings.js +1 -1
  577. package/dist/clis/xueqiu/fund-snapshot.js +1 -1
  578. package/dist/clis/yahoo-finance/quote.js +1 -1
  579. package/dist/clis/yollomi/background.js +2 -2
  580. package/dist/clis/yollomi/edit.js +2 -2
  581. package/dist/clis/yollomi/face-swap.js +2 -2
  582. package/dist/clis/yollomi/generate.js +2 -2
  583. package/dist/clis/yollomi/models.js +1 -1
  584. package/dist/clis/yollomi/object-remover.js +2 -2
  585. package/dist/clis/yollomi/remove-bg.js +2 -2
  586. package/dist/clis/yollomi/restore.js +2 -2
  587. package/dist/clis/yollomi/try-on.js +2 -2
  588. package/dist/clis/yollomi/upload.js +2 -2
  589. package/dist/clis/yollomi/upscale.js +2 -2
  590. package/dist/clis/yollomi/utils.d.ts +1 -1
  591. package/dist/clis/yollomi/utils.js +1 -1
  592. package/dist/clis/yollomi/video.js +2 -2
  593. package/dist/clis/youtube/channel.js +2 -2
  594. package/dist/clis/youtube/comments.js +2 -2
  595. package/dist/clis/youtube/search.js +1 -1
  596. package/dist/clis/youtube/transcript.js +2 -2
  597. package/dist/clis/youtube/utils.d.ts +1 -1
  598. package/dist/clis/youtube/video.js +2 -2
  599. package/dist/clis/yuanbao/ask.d.ts +1 -1
  600. package/dist/clis/yuanbao/ask.js +2 -2
  601. package/dist/clis/yuanbao/ask.test.js +1 -1
  602. package/dist/clis/yuanbao/new.d.ts +1 -1
  603. package/dist/clis/yuanbao/new.js +1 -1
  604. package/dist/clis/yuanbao/new.test.js +1 -1
  605. package/dist/clis/yuanbao/shared.d.ts +2 -2
  606. package/dist/clis/yuanbao/shared.js +1 -1
  607. package/dist/clis/zhihu/download.js +1 -1
  608. package/dist/clis/zhihu/question.js +2 -2
  609. package/dist/clis/zhihu/question.test.js +2 -2
  610. package/dist/clis/zsxq/dynamics.js +1 -1
  611. package/dist/clis/zsxq/groups.js +1 -1
  612. package/dist/clis/zsxq/search.js +1 -1
  613. package/dist/clis/zsxq/search.test.js +1 -1
  614. package/dist/clis/zsxq/topic.js +2 -2
  615. package/dist/clis/zsxq/topic.test.js +1 -1
  616. package/dist/clis/zsxq/topics.js +1 -1
  617. package/dist/clis/zsxq/topics.test.js +1 -1
  618. package/dist/clis/zsxq/utils.d.ts +1 -1
  619. package/dist/clis/zsxq/utils.js +1 -1
  620. package/dist/download/article-download.d.ts +1 -59
  621. package/dist/download/article-download.js +2 -178
  622. package/dist/download/index.d.ts +1 -71
  623. package/dist/download/index.js +2 -345
  624. package/dist/download/media-download.d.ts +1 -49
  625. package/dist/download/media-download.js +2 -114
  626. package/dist/download/progress.d.ts +1 -36
  627. package/dist/download/progress.js +2 -111
  628. package/dist/pipeline/index.d.ts +1 -5
  629. package/dist/pipeline/index.js +2 -5
  630. package/dist/src/browser/cdp.d.ts +40 -0
  631. package/dist/src/browser/cdp.js +310 -0
  632. package/dist/src/browser/page.d.ts +62 -0
  633. package/dist/src/browser/page.js +304 -0
  634. package/dist/src/browser/utils.d.ts +10 -0
  635. package/dist/src/browser/utils.js +27 -0
  636. package/dist/{build-manifest.js → src/build-manifest.js} +5 -4
  637. package/dist/{cascade.js → src/cascade.js} +16 -31
  638. package/dist/src/cli.d.ts +22 -0
  639. package/dist/{cli.js → src/cli.js} +78 -8
  640. package/dist/{cli.test.js → src/cli.test.js} +84 -1
  641. package/dist/{commanderAdapter.d.ts → src/commanderAdapter.d.ts} +1 -0
  642. package/dist/{commanderAdapter.js → src/commanderAdapter.js} +26 -46
  643. package/dist/{discovery.d.ts → src/discovery.d.ts} +11 -2
  644. package/dist/{discovery.js → src/discovery.js} +96 -12
  645. package/dist/src/doctor.test.d.ts +1 -0
  646. package/dist/src/download/article-download.d.ts +59 -0
  647. package/dist/src/download/article-download.js +178 -0
  648. package/dist/src/download/index.d.ts +71 -0
  649. package/dist/src/download/index.js +345 -0
  650. package/dist/src/download/index.test.d.ts +1 -0
  651. package/dist/src/download/media-download.d.ts +49 -0
  652. package/dist/src/download/media-download.js +114 -0
  653. package/dist/src/download/progress.d.ts +36 -0
  654. package/dist/src/download/progress.js +111 -0
  655. package/dist/src/electron-apps.test.d.ts +1 -0
  656. package/dist/src/engine.test.d.ts +1 -0
  657. package/dist/src/errors.test.d.ts +1 -0
  658. package/dist/src/execution.test.d.ts +1 -0
  659. package/dist/src/extension-manifest-regression.test.d.ts +1 -0
  660. package/dist/src/external.test.d.ts +1 -0
  661. package/dist/{interceptor.d.ts → src/interceptor.d.ts} +2 -0
  662. package/dist/{interceptor.js → src/interceptor.js} +3 -6
  663. package/dist/src/launcher.test.d.ts +1 -0
  664. package/dist/{main.js → src/main.js} +3 -2
  665. package/dist/src/node-network.test.d.ts +1 -0
  666. package/dist/src/output.test.d.ts +1 -0
  667. package/{src/pipeline/index.ts → dist/src/pipeline/index.d.ts} +0 -1
  668. package/dist/src/pipeline/index.js +5 -0
  669. package/dist/src/pipeline/steps/download.test.d.ts +1 -0
  670. package/dist/src/pipeline/steps/fetch.test.d.ts +1 -0
  671. package/dist/{record.js → src/record.js} +1 -1
  672. package/dist/src/record.test.d.ts +1 -0
  673. package/dist/src/runtime-detect.test.d.ts +1 -0
  674. package/dist/src/serialization.test.d.ts +1 -0
  675. package/dist/{synthesize.d.ts → src/synthesize.d.ts} +0 -4
  676. package/dist/{synthesize.js → src/synthesize.js} +4 -15
  677. package/dist/src/tui.test.d.ts +1 -0
  678. package/dist/src/weixin-download.test.d.ts +1 -0
  679. package/dist/{weixin-download.test.js → src/weixin-download.test.js} +1 -1
  680. package/package.json +26 -9
  681. package/scripts/check-doc-coverage.sh +2 -2
  682. package/scripts/copy-yaml.cjs +4 -4
  683. package/scripts/fetch-adapters.js +157 -0
  684. package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -83
  685. package/.github/ISSUE_TEMPLATE/config.yml +0 -8
  686. package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -42
  687. package/.github/ISSUE_TEMPLATE/new_site_adapter.yml +0 -57
  688. package/.github/actions/setup-chrome/action.yml +0 -27
  689. package/.github/dependabot.yml +0 -27
  690. package/.github/pull_request_template.md +0 -33
  691. package/.github/workflows/build-extension.yml +0 -67
  692. package/.github/workflows/ci.yml +0 -147
  693. package/.github/workflows/doc-check.yml +0 -36
  694. package/.github/workflows/docs.yml +0 -17
  695. package/.github/workflows/e2e-headed.yml +0 -74
  696. package/.github/workflows/release.yml +0 -44
  697. package/.github/workflows/security.yml +0 -33
  698. package/CHANGELOG.md +0 -321
  699. package/CONTRIBUTING.md +0 -208
  700. package/PRIVACY.md +0 -57
  701. package/TESTING.md +0 -252
  702. package/autoresearch/baseline-browse.txt +0 -1
  703. package/autoresearch/baseline-skill.txt +0 -1
  704. package/autoresearch/browse-tasks.json +0 -686
  705. package/autoresearch/commands/debug.ts +0 -163
  706. package/autoresearch/commands/fix.ts +0 -145
  707. package/autoresearch/commands/plan.ts +0 -88
  708. package/autoresearch/commands/run.ts +0 -138
  709. package/autoresearch/config.ts +0 -82
  710. package/autoresearch/engine.ts +0 -359
  711. package/autoresearch/eval-all.ts +0 -127
  712. package/autoresearch/eval-browse.ts +0 -185
  713. package/autoresearch/eval-publish.ts +0 -238
  714. package/autoresearch/eval-save.ts +0 -249
  715. package/autoresearch/eval-skill.ts +0 -254
  716. package/autoresearch/eval-v2ex.ts +0 -220
  717. package/autoresearch/eval-zhihu.ts +0 -230
  718. package/autoresearch/logger.ts +0 -69
  719. package/autoresearch/presets/combined-reliability.ts +0 -27
  720. package/autoresearch/presets/index.ts +0 -23
  721. package/autoresearch/presets/operate-reliability.ts +0 -24
  722. package/autoresearch/presets/save-reliability.ts +0 -26
  723. package/autoresearch/presets/skill-quality.ts +0 -20
  724. package/autoresearch/presets/v2ex-reliability.ts +0 -24
  725. package/autoresearch/presets/zhihu-reliability.ts +0 -25
  726. package/autoresearch/publish-tasks.json +0 -345
  727. package/autoresearch/run-browse.sh +0 -9
  728. package/autoresearch/run-save.sh +0 -11
  729. package/autoresearch/run-skill.sh +0 -9
  730. package/autoresearch/save-adapters/xhs-explore-deep.ts +0 -64
  731. package/autoresearch/save-adapters/xhs-note-comments.ts +0 -61
  732. package/autoresearch/save-adapters/xhs-search-full.ts +0 -62
  733. package/autoresearch/save-adapters/zhihu-hot-detail.ts +0 -52
  734. package/autoresearch/save-adapters/zhihu-question-full.ts +0 -57
  735. package/autoresearch/save-adapters/zhihu-search-detail.ts +0 -53
  736. package/autoresearch/save-tasks.json +0 -281
  737. package/autoresearch/v2ex-tasks.json +0 -899
  738. package/autoresearch/zhihu-tasks.json +0 -848
  739. package/bun.lock +0 -615
  740. package/dist/cli.d.ts +0 -9
  741. package/docs/.vitepress/config.mts +0 -238
  742. package/docs/adapters/browser/1688.md +0 -52
  743. package/docs/adapters/browser/36kr.md +0 -48
  744. package/docs/adapters/browser/amazon.md +0 -53
  745. package/docs/adapters/browser/apple-podcasts.md +0 -28
  746. package/docs/adapters/browser/arxiv.md +0 -27
  747. package/docs/adapters/browser/band.md +0 -63
  748. package/docs/adapters/browser/barchart.md +0 -33
  749. package/docs/adapters/browser/bbc.md +0 -26
  750. package/docs/adapters/browser/bilibili.md +0 -47
  751. package/docs/adapters/browser/bloomberg.md +0 -70
  752. package/docs/adapters/browser/bluesky.md +0 -53
  753. package/docs/adapters/browser/boss.md +0 -28
  754. package/docs/adapters/browser/chaoxing.md +0 -39
  755. package/docs/adapters/browser/coupang.md +0 -28
  756. package/docs/adapters/browser/ctrip.md +0 -27
  757. package/docs/adapters/browser/devto.md +0 -35
  758. package/docs/adapters/browser/dictionary.md +0 -27
  759. package/docs/adapters/browser/douban.md +0 -62
  760. package/docs/adapters/browser/doubao.md +0 -39
  761. package/docs/adapters/browser/douyin.md +0 -75
  762. package/docs/adapters/browser/facebook.md +0 -36
  763. package/docs/adapters/browser/gemini.md +0 -72
  764. package/docs/adapters/browser/google.md +0 -62
  765. package/docs/adapters/browser/grok.md +0 -53
  766. package/docs/adapters/browser/hackernews.md +0 -42
  767. package/docs/adapters/browser/hf.md +0 -42
  768. package/docs/adapters/browser/hupu.md +0 -53
  769. package/docs/adapters/browser/imdb.md +0 -47
  770. package/docs/adapters/browser/instagram.md +0 -46
  771. package/docs/adapters/browser/jd.md +0 -27
  772. package/docs/adapters/browser/jike.md +0 -45
  773. package/docs/adapters/browser/jimeng.md +0 -39
  774. package/docs/adapters/browser/linkedin.md +0 -33
  775. package/docs/adapters/browser/linux-do.md +0 -206
  776. package/docs/adapters/browser/lobsters.md +0 -32
  777. package/docs/adapters/browser/medium.md +0 -32
  778. package/docs/adapters/browser/notebooklm.md +0 -69
  779. package/docs/adapters/browser/ones.md +0 -59
  780. package/docs/adapters/browser/paperreview.md +0 -43
  781. package/docs/adapters/browser/pixiv.md +0 -92
  782. package/docs/adapters/browser/producthunt.md +0 -49
  783. package/docs/adapters/browser/reddit.md +0 -50
  784. package/docs/adapters/browser/reuters.md +0 -27
  785. package/docs/adapters/browser/sinablog.md +0 -36
  786. package/docs/adapters/browser/sinafinance.md +0 -115
  787. package/docs/adapters/browser/smzdm.md +0 -27
  788. package/docs/adapters/browser/spotify.md +0 -62
  789. package/docs/adapters/browser/stackoverflow.md +0 -35
  790. package/docs/adapters/browser/steam.md +0 -26
  791. package/docs/adapters/browser/substack.md +0 -38
  792. package/docs/adapters/browser/tieba.md +0 -45
  793. package/docs/adapters/browser/tiktok.md +0 -68
  794. package/docs/adapters/browser/twitter.md +0 -56
  795. package/docs/adapters/browser/v2ex.md +0 -53
  796. package/docs/adapters/browser/web.md +0 -30
  797. package/docs/adapters/browser/weibo.md +0 -36
  798. package/docs/adapters/browser/weixin.md +0 -33
  799. package/docs/adapters/browser/weread.md +0 -48
  800. package/docs/adapters/browser/wikipedia.md +0 -32
  801. package/docs/adapters/browser/xianyu.md +0 -42
  802. package/docs/adapters/browser/xiaoe.md +0 -44
  803. package/docs/adapters/browser/xiaohongshu.md +0 -47
  804. package/docs/adapters/browser/xiaoyuzhou.md +0 -28
  805. package/docs/adapters/browser/xueqiu.md +0 -65
  806. package/docs/adapters/browser/yahoo-finance.md +0 -27
  807. package/docs/adapters/browser/yollomi.md +0 -69
  808. package/docs/adapters/browser/youtube.md +0 -29
  809. package/docs/adapters/browser/yuanbao.md +0 -64
  810. package/docs/adapters/browser/zhihu.md +0 -30
  811. package/docs/adapters/browser/zsxq.md +0 -49
  812. package/docs/adapters/desktop/antigravity.md +0 -49
  813. package/docs/adapters/desktop/chatgpt.md +0 -49
  814. package/docs/adapters/desktop/chatwise.md +0 -38
  815. package/docs/adapters/desktop/codex.md +0 -36
  816. package/docs/adapters/desktop/cursor.md +0 -37
  817. package/docs/adapters/desktop/discord.md +0 -28
  818. package/docs/adapters/desktop/doubao-app.md +0 -35
  819. package/docs/adapters/desktop/notion.md +0 -29
  820. package/docs/adapters/index.md +0 -96
  821. package/docs/adapters-doc/ones.md +0 -32
  822. package/docs/advanced/cdp.md +0 -103
  823. package/docs/advanced/download.md +0 -71
  824. package/docs/advanced/electron.md +0 -125
  825. package/docs/advanced/rate-limiter-plugin.md +0 -99
  826. package/docs/advanced/remote-chrome.md +0 -72
  827. package/docs/comparison.md +0 -125
  828. package/docs/developer/ai-workflow.md +0 -66
  829. package/docs/developer/architecture.md +0 -103
  830. package/docs/developer/contributing.md +0 -155
  831. package/docs/developer/testing.md +0 -263
  832. package/docs/developer/ts-adapter.md +0 -105
  833. package/docs/developer/yaml-adapter.md +0 -124
  834. package/docs/guide/browser-bridge.md +0 -49
  835. package/docs/guide/electron-app-cli.md +0 -200
  836. package/docs/guide/getting-started.md +0 -79
  837. package/docs/guide/installation.md +0 -37
  838. package/docs/guide/plugins.md +0 -261
  839. package/docs/guide/troubleshooting.md +0 -72
  840. package/docs/index.md +0 -35
  841. package/docs/superpowers/plans/2026-03-28-perf-smart-wait.md +0 -1143
  842. package/docs/superpowers/plans/2026-03-31-daemon-lifecycle-redesign.md +0 -857
  843. package/docs/superpowers/specs/2026-03-28-perf-smart-wait-design.md +0 -170
  844. package/docs/superpowers/specs/2026-03-31-daemon-lifecycle-redesign.md +0 -208
  845. package/docs/superpowers/specs/2026-04-02-browse-skill-testing-design.md +0 -144
  846. package/docs/superpowers/specs/2026-04-03-v2ex-autoresearch-design.md +0 -41
  847. package/docs/zh/adapters/index.md +0 -5
  848. package/docs/zh/advanced/cdp.md +0 -3
  849. package/docs/zh/developer/contributing.md +0 -24
  850. package/docs/zh/guide/browser-bridge.md +0 -36
  851. package/docs/zh/guide/electron-app-cli.md +0 -188
  852. package/docs/zh/guide/getting-started.md +0 -62
  853. package/docs/zh/guide/installation.md +0 -37
  854. package/docs/zh/guide/plugins.md +0 -183
  855. package/docs/zh/index.md +0 -29
  856. package/extension/dist/background.js +0 -1127
  857. package/extension/icons/icon-128.png +0 -0
  858. package/extension/icons/icon-16.png +0 -0
  859. package/extension/icons/icon-32.png +0 -0
  860. package/extension/icons/icon-48.png +0 -0
  861. package/extension/manifest.json +0 -39
  862. package/extension/package-lock.json +0 -1156
  863. package/extension/package.json +0 -17
  864. package/extension/popup.html +0 -84
  865. package/extension/popup.js +0 -25
  866. package/extension/scripts/package-release.mjs +0 -179
  867. package/extension/src/background.test.ts +0 -279
  868. package/extension/src/background.ts +0 -878
  869. package/extension/src/cdp.test.ts +0 -75
  870. package/extension/src/cdp.ts +0 -440
  871. package/extension/src/protocol.ts +0 -87
  872. package/extension/store-assets/screenshot-1280x800.png +0 -0
  873. package/extension/tsconfig.json +0 -15
  874. package/extension/vite.config.ts +0 -18
  875. package/skills/opencli-explorer/SKILL.md +0 -853
  876. package/skills/opencli-oneshot/SKILL.md +0 -222
  877. package/skills/opencli-operate/SKILL.md +0 -306
  878. package/skills/opencli-usage/SKILL.md +0 -163
  879. package/skills/opencli-usage/browser.md +0 -527
  880. package/skills/opencli-usage/desktop.md +0 -118
  881. package/skills/opencli-usage/plugins.md +0 -82
  882. package/skills/opencli-usage/public-api.md +0 -178
  883. package/skills/smart-search/SKILL.md +0 -156
  884. package/skills/smart-search/references/sources-ai.md +0 -74
  885. package/skills/smart-search/references/sources-info.md +0 -43
  886. package/skills/smart-search/references/sources-media.md +0 -50
  887. package/skills/smart-search/references/sources-other.md +0 -42
  888. package/skills/smart-search/references/sources-shopping.md +0 -31
  889. package/skills/smart-search/references/sources-social.md +0 -51
  890. package/skills/smart-search/references/sources-tech.md +0 -42
  891. package/skills/smart-search/references/sources-travel.md +0 -20
  892. package/src/analysis.ts +0 -170
  893. package/src/browser/base-page.ts +0 -232
  894. package/src/browser/bridge.ts +0 -129
  895. package/src/browser/cdp.test.ts +0 -66
  896. package/src/browser/cdp.ts +0 -341
  897. package/src/browser/daemon-client.test.ts +0 -103
  898. package/src/browser/daemon-client.ts +0 -175
  899. package/src/browser/discover.ts +0 -26
  900. package/src/browser/dom-helpers.test.ts +0 -114
  901. package/src/browser/dom-helpers.ts +0 -238
  902. package/src/browser/dom-snapshot.test.ts +0 -291
  903. package/src/browser/dom-snapshot.ts +0 -845
  904. package/src/browser/errors.ts +0 -63
  905. package/src/browser/index.ts +0 -14
  906. package/src/browser/page.test.ts +0 -58
  907. package/src/browser/page.ts +0 -315
  908. package/src/browser/stealth.test.ts +0 -153
  909. package/src/browser/stealth.ts +0 -354
  910. package/src/browser/tabs.ts +0 -76
  911. package/src/browser/utils.ts +0 -27
  912. package/src/browser.test.ts +0 -195
  913. package/src/build-manifest.test.ts +0 -200
  914. package/src/build-manifest.ts +0 -279
  915. package/src/capabilityRouting.test.ts +0 -47
  916. package/src/capabilityRouting.ts +0 -29
  917. package/src/cascade.ts +0 -192
  918. package/src/cli.test.ts +0 -133
  919. package/src/cli.ts +0 -1012
  920. package/src/clis/1688/item.test.ts +0 -69
  921. package/src/clis/1688/item.ts +0 -282
  922. package/src/clis/1688/search.test.ts +0 -81
  923. package/src/clis/1688/search.ts +0 -402
  924. package/src/clis/1688/shared.test.ts +0 -75
  925. package/src/clis/1688/shared.ts +0 -623
  926. package/src/clis/1688/store.test.ts +0 -69
  927. package/src/clis/1688/store.ts +0 -300
  928. package/src/clis/36kr/article.ts +0 -69
  929. package/src/clis/36kr/hot.test.ts +0 -19
  930. package/src/clis/36kr/hot.ts +0 -100
  931. package/src/clis/36kr/news.test.ts +0 -90
  932. package/src/clis/36kr/news.ts +0 -54
  933. package/src/clis/36kr/search.ts +0 -78
  934. package/src/clis/_shared/common.ts +0 -11
  935. package/src/clis/_shared/desktop-commands.ts +0 -121
  936. package/src/clis/amazon/bestsellers.test.ts +0 -31
  937. package/src/clis/amazon/bestsellers.ts +0 -8
  938. package/src/clis/amazon/discussion.test.ts +0 -38
  939. package/src/clis/amazon/discussion.ts +0 -131
  940. package/src/clis/amazon/movers-shakers.ts +0 -8
  941. package/src/clis/amazon/new-releases.ts +0 -8
  942. package/src/clis/amazon/offer.test.ts +0 -35
  943. package/src/clis/amazon/offer.ts +0 -185
  944. package/src/clis/amazon/product.test.ts +0 -26
  945. package/src/clis/amazon/product.ts +0 -131
  946. package/src/clis/amazon/rankings.test.ts +0 -47
  947. package/src/clis/amazon/rankings.ts +0 -312
  948. package/src/clis/amazon/search.test.ts +0 -24
  949. package/src/clis/amazon/search.ts +0 -128
  950. package/src/clis/amazon/shared.test.ts +0 -53
  951. package/src/clis/amazon/shared.ts +0 -438
  952. package/src/clis/antigravity/SKILL.md +0 -38
  953. package/src/clis/antigravity/dump.ts +0 -30
  954. package/src/clis/antigravity/extract-code.ts +0 -34
  955. package/src/clis/antigravity/model.ts +0 -47
  956. package/src/clis/antigravity/new.ts +0 -28
  957. package/src/clis/antigravity/read.ts +0 -36
  958. package/src/clis/antigravity/send.ts +0 -40
  959. package/src/clis/antigravity/serve.ts +0 -600
  960. package/src/clis/antigravity/status.ts +0 -19
  961. package/src/clis/antigravity/watch.ts +0 -45
  962. package/src/clis/apple-podcasts/commands.test.ts +0 -123
  963. package/src/clis/apple-podcasts/episodes.ts +0 -28
  964. package/src/clis/apple-podcasts/search.ts +0 -30
  965. package/src/clis/apple-podcasts/top.ts +0 -47
  966. package/src/clis/apple-podcasts/utils.test.ts +0 -72
  967. package/src/clis/apple-podcasts/utils.ts +0 -37
  968. package/src/clis/arxiv/paper.ts +0 -21
  969. package/src/clis/arxiv/search.ts +0 -24
  970. package/src/clis/arxiv/utils.ts +0 -63
  971. package/src/clis/band/bands.ts +0 -76
  972. package/src/clis/band/mentions.ts +0 -134
  973. package/src/clis/band/post.ts +0 -187
  974. package/src/clis/band/posts.ts +0 -106
  975. package/src/clis/barchart/flow.ts +0 -120
  976. package/src/clis/barchart/greeks.ts +0 -123
  977. package/src/clis/barchart/options.ts +0 -110
  978. package/src/clis/barchart/quote.ts +0 -137
  979. package/src/clis/bbc/news.ts +0 -41
  980. package/src/clis/bilibili/comments.test.ts +0 -103
  981. package/src/clis/bilibili/comments.ts +0 -44
  982. package/src/clis/bilibili/download.ts +0 -93
  983. package/src/clis/bilibili/dynamic.test.ts +0 -79
  984. package/src/clis/bilibili/dynamic.ts +0 -34
  985. package/src/clis/bilibili/favorite.ts +0 -45
  986. package/src/clis/bilibili/feed.ts +0 -71
  987. package/src/clis/bilibili/following.ts +0 -51
  988. package/src/clis/bilibili/history.ts +0 -48
  989. package/src/clis/bilibili/hot.yaml +0 -38
  990. package/src/clis/bilibili/me.ts +0 -14
  991. package/src/clis/bilibili/ranking.ts +0 -25
  992. package/src/clis/bilibili/search.ts +0 -25
  993. package/src/clis/bilibili/subtitle.test.ts +0 -61
  994. package/src/clis/bilibili/subtitle.ts +0 -106
  995. package/src/clis/bilibili/user-videos.ts +0 -42
  996. package/src/clis/bilibili/utils.test.ts +0 -21
  997. package/src/clis/bilibili/utils.ts +0 -143
  998. package/src/clis/bloomberg/businessweek.ts +0 -18
  999. package/src/clis/bloomberg/economics.ts +0 -18
  1000. package/src/clis/bloomberg/feeds.ts +0 -16
  1001. package/src/clis/bloomberg/industries.ts +0 -18
  1002. package/src/clis/bloomberg/main.ts +0 -18
  1003. package/src/clis/bloomberg/markets.ts +0 -18
  1004. package/src/clis/bloomberg/news.ts +0 -136
  1005. package/src/clis/bloomberg/opinions.ts +0 -18
  1006. package/src/clis/bloomberg/politics.ts +0 -18
  1007. package/src/clis/bloomberg/tech.ts +0 -18
  1008. package/src/clis/bloomberg/utils.test.ts +0 -135
  1009. package/src/clis/bloomberg/utils.ts +0 -429
  1010. package/src/clis/bluesky/feeds.yaml +0 -29
  1011. package/src/clis/bluesky/followers.yaml +0 -33
  1012. package/src/clis/bluesky/following.yaml +0 -33
  1013. package/src/clis/bluesky/profile.yaml +0 -27
  1014. package/src/clis/bluesky/search.yaml +0 -34
  1015. package/src/clis/bluesky/starter-packs.yaml +0 -34
  1016. package/src/clis/bluesky/thread.yaml +0 -32
  1017. package/src/clis/bluesky/trending.yaml +0 -27
  1018. package/src/clis/bluesky/user.yaml +0 -34
  1019. package/src/clis/boss/batchgreet.ts +0 -75
  1020. package/src/clis/boss/chatlist.ts +0 -36
  1021. package/src/clis/boss/chatmsg.ts +0 -46
  1022. package/src/clis/boss/detail.ts +0 -69
  1023. package/src/clis/boss/exchange.ts +0 -52
  1024. package/src/clis/boss/greet.ts +0 -61
  1025. package/src/clis/boss/invite.ts +0 -80
  1026. package/src/clis/boss/joblist.ts +0 -34
  1027. package/src/clis/boss/mark.ts +0 -75
  1028. package/src/clis/boss/recommend.ts +0 -49
  1029. package/src/clis/boss/resume.ts +0 -157
  1030. package/src/clis/boss/search.ts +0 -162
  1031. package/src/clis/boss/send.ts +0 -54
  1032. package/src/clis/boss/stats.ts +0 -75
  1033. package/src/clis/boss/utils.ts +0 -287
  1034. package/src/clis/chaoxing/assignments.ts +0 -89
  1035. package/src/clis/chaoxing/exams.ts +0 -88
  1036. package/src/clis/chaoxing/utils.test.ts +0 -53
  1037. package/src/clis/chaoxing/utils.ts +0 -266
  1038. package/src/clis/chatgpt/ask.ts +0 -95
  1039. package/src/clis/chatgpt/ax.ts +0 -260
  1040. package/src/clis/chatgpt/model.ts +0 -27
  1041. package/src/clis/chatgpt/new.ts +0 -29
  1042. package/src/clis/chatgpt/read.ts +0 -35
  1043. package/src/clis/chatgpt/send.ts +0 -59
  1044. package/src/clis/chatgpt/status.ts +0 -27
  1045. package/src/clis/chatwise/ask.ts +0 -90
  1046. package/src/clis/chatwise/export.ts +0 -51
  1047. package/src/clis/chatwise/history.ts +0 -61
  1048. package/src/clis/chatwise/model.ts +0 -89
  1049. package/src/clis/chatwise/new.ts +0 -3
  1050. package/src/clis/chatwise/read.ts +0 -42
  1051. package/src/clis/chatwise/screenshot.ts +0 -3
  1052. package/src/clis/chatwise/send.ts +0 -53
  1053. package/src/clis/chatwise/status.ts +0 -3
  1054. package/src/clis/codex/ask.ts +0 -80
  1055. package/src/clis/codex/dump.ts +0 -3
  1056. package/src/clis/codex/export.ts +0 -42
  1057. package/src/clis/codex/extract-diff.ts +0 -48
  1058. package/src/clis/codex/history.ts +0 -47
  1059. package/src/clis/codex/model.ts +0 -59
  1060. package/src/clis/codex/new.ts +0 -3
  1061. package/src/clis/codex/read.ts +0 -37
  1062. package/src/clis/codex/screenshot.ts +0 -3
  1063. package/src/clis/codex/send.ts +0 -48
  1064. package/src/clis/codex/status.ts +0 -3
  1065. package/src/clis/coupang/add-to-cart.ts +0 -148
  1066. package/src/clis/coupang/search.ts +0 -464
  1067. package/src/clis/coupang/utils.test.ts +0 -78
  1068. package/src/clis/coupang/utils.ts +0 -302
  1069. package/src/clis/ctrip/search.test.ts +0 -73
  1070. package/src/clis/ctrip/search.ts +0 -111
  1071. package/src/clis/cursor/ask.ts +0 -82
  1072. package/src/clis/cursor/composer.ts +0 -51
  1073. package/src/clis/cursor/dump.ts +0 -3
  1074. package/src/clis/cursor/export.ts +0 -57
  1075. package/src/clis/cursor/extract-code.ts +0 -39
  1076. package/src/clis/cursor/history.ts +0 -47
  1077. package/src/clis/cursor/model.ts +0 -57
  1078. package/src/clis/cursor/new.ts +0 -3
  1079. package/src/clis/cursor/read.ts +0 -48
  1080. package/src/clis/cursor/screenshot.ts +0 -3
  1081. package/src/clis/cursor/send.ts +0 -48
  1082. package/src/clis/cursor/status.ts +0 -3
  1083. package/src/clis/devto/tag.yaml +0 -34
  1084. package/src/clis/devto/top.yaml +0 -29
  1085. package/src/clis/devto/user.yaml +0 -33
  1086. package/src/clis/dictionary/examples.yaml +0 -25
  1087. package/src/clis/dictionary/search.yaml +0 -27
  1088. package/src/clis/dictionary/synonyms.yaml +0 -25
  1089. package/src/clis/discord-app/channels.ts +0 -60
  1090. package/src/clis/discord-app/members.ts +0 -41
  1091. package/src/clis/discord-app/read.ts +0 -49
  1092. package/src/clis/discord-app/search.ts +0 -64
  1093. package/src/clis/discord-app/send.ts +0 -32
  1094. package/src/clis/discord-app/servers.ts +0 -39
  1095. package/src/clis/discord-app/status.ts +0 -18
  1096. package/src/clis/douban/book-hot.ts +0 -15
  1097. package/src/clis/douban/download.test.ts +0 -196
  1098. package/src/clis/douban/download.ts +0 -78
  1099. package/src/clis/douban/marks.ts +0 -135
  1100. package/src/clis/douban/movie-hot.ts +0 -15
  1101. package/src/clis/douban/photos.ts +0 -36
  1102. package/src/clis/douban/reviews.ts +0 -127
  1103. package/src/clis/douban/search.ts +0 -17
  1104. package/src/clis/douban/subject.yaml +0 -107
  1105. package/src/clis/douban/top250.yaml +0 -70
  1106. package/src/clis/douban/utils.test.ts +0 -97
  1107. package/src/clis/douban/utils.ts +0 -472
  1108. package/src/clis/doubao/ask.ts +0 -40
  1109. package/src/clis/doubao/detail.test.ts +0 -53
  1110. package/src/clis/doubao/detail.ts +0 -41
  1111. package/src/clis/doubao/history.test.ts +0 -45
  1112. package/src/clis/doubao/history.ts +0 -32
  1113. package/src/clis/doubao/meeting-summary.ts +0 -53
  1114. package/src/clis/doubao/meeting-transcript.ts +0 -48
  1115. package/src/clis/doubao/new.ts +0 -22
  1116. package/src/clis/doubao/read.ts +0 -20
  1117. package/src/clis/doubao/send.ts +0 -25
  1118. package/src/clis/doubao/status.ts +0 -27
  1119. package/src/clis/doubao/utils.test.ts +0 -45
  1120. package/src/clis/doubao/utils.ts +0 -1010
  1121. package/src/clis/doubao-app/ask.ts +0 -60
  1122. package/src/clis/doubao-app/dump.ts +0 -28
  1123. package/src/clis/doubao-app/new.ts +0 -21
  1124. package/src/clis/doubao-app/read.ts +0 -21
  1125. package/src/clis/doubao-app/screenshot.ts +0 -19
  1126. package/src/clis/doubao-app/send.ts +0 -30
  1127. package/src/clis/doubao-app/status.ts +0 -17
  1128. package/src/clis/doubao-app/utils.ts +0 -116
  1129. package/src/clis/douyin/_shared/browser-fetch.test.ts +0 -37
  1130. package/src/clis/douyin/_shared/browser-fetch.ts +0 -45
  1131. package/src/clis/douyin/_shared/creation-id.test.ts +0 -26
  1132. package/src/clis/douyin/_shared/creation-id.ts +0 -8
  1133. package/src/clis/douyin/_shared/imagex-upload.test.ts +0 -113
  1134. package/src/clis/douyin/_shared/imagex-upload.ts +0 -76
  1135. package/src/clis/douyin/_shared/public-api.ts +0 -84
  1136. package/src/clis/douyin/_shared/sts2.test.ts +0 -31
  1137. package/src/clis/douyin/_shared/sts2.ts +0 -28
  1138. package/src/clis/douyin/_shared/text-extra.test.ts +0 -42
  1139. package/src/clis/douyin/_shared/text-extra.ts +0 -33
  1140. package/src/clis/douyin/_shared/timing.test.ts +0 -38
  1141. package/src/clis/douyin/_shared/timing.ts +0 -22
  1142. package/src/clis/douyin/_shared/tos-upload-short-read.test.ts +0 -102
  1143. package/src/clis/douyin/_shared/tos-upload.test.ts +0 -281
  1144. package/src/clis/douyin/_shared/tos-upload.ts +0 -444
  1145. package/src/clis/douyin/_shared/transcode.test.ts +0 -115
  1146. package/src/clis/douyin/_shared/transcode.ts +0 -78
  1147. package/src/clis/douyin/_shared/types.ts +0 -29
  1148. package/src/clis/douyin/activities.test.ts +0 -65
  1149. package/src/clis/douyin/activities.ts +0 -32
  1150. package/src/clis/douyin/collections.test.ts +0 -59
  1151. package/src/clis/douyin/collections.ts +0 -25
  1152. package/src/clis/douyin/delete.test.ts +0 -12
  1153. package/src/clis/douyin/delete.ts +0 -20
  1154. package/src/clis/douyin/draft.test.ts +0 -452
  1155. package/src/clis/douyin/draft.ts +0 -446
  1156. package/src/clis/douyin/drafts.test.ts +0 -12
  1157. package/src/clis/douyin/drafts.ts +0 -27
  1158. package/src/clis/douyin/hashtag.test.ts +0 -68
  1159. package/src/clis/douyin/hashtag.ts +0 -64
  1160. package/src/clis/douyin/location.test.ts +0 -26
  1161. package/src/clis/douyin/location.ts +0 -27
  1162. package/src/clis/douyin/profile.test.ts +0 -54
  1163. package/src/clis/douyin/profile.ts +0 -44
  1164. package/src/clis/douyin/publish.test.ts +0 -45
  1165. package/src/clis/douyin/publish.ts +0 -340
  1166. package/src/clis/douyin/stats.test.ts +0 -25
  1167. package/src/clis/douyin/stats.ts +0 -30
  1168. package/src/clis/douyin/update.test.ts +0 -12
  1169. package/src/clis/douyin/update.ts +0 -43
  1170. package/src/clis/douyin/user-videos.test.ts +0 -122
  1171. package/src/clis/douyin/user-videos.ts +0 -101
  1172. package/src/clis/douyin/videos.test.ts +0 -62
  1173. package/src/clis/douyin/videos.ts +0 -83
  1174. package/src/clis/facebook/add-friend.yaml +0 -43
  1175. package/src/clis/facebook/events.yaml +0 -44
  1176. package/src/clis/facebook/feed.yaml +0 -63
  1177. package/src/clis/facebook/friends.yaml +0 -42
  1178. package/src/clis/facebook/groups.yaml +0 -50
  1179. package/src/clis/facebook/join-group.yaml +0 -44
  1180. package/src/clis/facebook/memories.yaml +0 -39
  1181. package/src/clis/facebook/notifications.yaml +0 -40
  1182. package/src/clis/facebook/profile.yaml +0 -37
  1183. package/src/clis/facebook/search.test.ts +0 -68
  1184. package/src/clis/facebook/search.yaml +0 -47
  1185. package/src/clis/gemini/ask.test.ts +0 -116
  1186. package/src/clis/gemini/ask.ts +0 -53
  1187. package/src/clis/gemini/image.ts +0 -115
  1188. package/src/clis/gemini/new.ts +0 -22
  1189. package/src/clis/gemini/reply-state.test.ts +0 -708
  1190. package/src/clis/gemini/utils.test.ts +0 -218
  1191. package/src/clis/gemini/utils.ts +0 -1051
  1192. package/src/clis/google/news.ts +0 -66
  1193. package/src/clis/google/search.ts +0 -133
  1194. package/src/clis/google/suggest.ts +0 -40
  1195. package/src/clis/google/trends.ts +0 -44
  1196. package/src/clis/google/utils.test.ts +0 -82
  1197. package/src/clis/google/utils.ts +0 -24
  1198. package/src/clis/grok/ask.test.ts +0 -78
  1199. package/src/clis/grok/ask.ts +0 -334
  1200. package/src/clis/hackernews/ask.yaml +0 -38
  1201. package/src/clis/hackernews/best.yaml +0 -38
  1202. package/src/clis/hackernews/jobs.yaml +0 -36
  1203. package/src/clis/hackernews/new.yaml +0 -38
  1204. package/src/clis/hackernews/search.yaml +0 -44
  1205. package/src/clis/hackernews/show.yaml +0 -38
  1206. package/src/clis/hackernews/top.yaml +0 -38
  1207. package/src/clis/hackernews/user.yaml +0 -25
  1208. package/src/clis/hf/top.ts +0 -141
  1209. package/src/clis/hupu/detail.ts +0 -126
  1210. package/src/clis/hupu/hot.yaml +0 -43
  1211. package/src/clis/hupu/like.ts +0 -76
  1212. package/src/clis/hupu/reply.ts +0 -76
  1213. package/src/clis/hupu/search.ts +0 -95
  1214. package/src/clis/hupu/unlike.ts +0 -76
  1215. package/src/clis/hupu/utils.ts +0 -381
  1216. package/src/clis/imdb/person.ts +0 -232
  1217. package/src/clis/imdb/reviews.ts +0 -111
  1218. package/src/clis/imdb/search.ts +0 -179
  1219. package/src/clis/imdb/title.ts +0 -121
  1220. package/src/clis/imdb/top.ts +0 -67
  1221. package/src/clis/imdb/trending.ts +0 -66
  1222. package/src/clis/imdb/utils.test.ts +0 -117
  1223. package/src/clis/imdb/utils.ts +0 -305
  1224. package/src/clis/instagram/_shared/private-publish.test.ts +0 -827
  1225. package/src/clis/instagram/_shared/private-publish.ts +0 -1303
  1226. package/src/clis/instagram/_shared/protocol-capture.test.ts +0 -148
  1227. package/src/clis/instagram/_shared/protocol-capture.ts +0 -321
  1228. package/src/clis/instagram/_shared/runtime-info.ts +0 -91
  1229. package/src/clis/instagram/comment.yaml +0 -52
  1230. package/src/clis/instagram/download.test.ts +0 -159
  1231. package/src/clis/instagram/download.ts +0 -286
  1232. package/src/clis/instagram/explore.yaml +0 -43
  1233. package/src/clis/instagram/follow.yaml +0 -41
  1234. package/src/clis/instagram/followers.yaml +0 -51
  1235. package/src/clis/instagram/following.yaml +0 -51
  1236. package/src/clis/instagram/like.yaml +0 -46
  1237. package/src/clis/instagram/note.test.ts +0 -96
  1238. package/src/clis/instagram/note.ts +0 -254
  1239. package/src/clis/instagram/post.test.ts +0 -1716
  1240. package/src/clis/instagram/post.ts +0 -1620
  1241. package/src/clis/instagram/profile.yaml +0 -42
  1242. package/src/clis/instagram/reel.test.ts +0 -191
  1243. package/src/clis/instagram/reel.ts +0 -886
  1244. package/src/clis/instagram/save.yaml +0 -46
  1245. package/src/clis/instagram/saved.yaml +0 -40
  1246. package/src/clis/instagram/search.yaml +0 -44
  1247. package/src/clis/instagram/story.test.ts +0 -191
  1248. package/src/clis/instagram/story.ts +0 -151
  1249. package/src/clis/instagram/unfollow.yaml +0 -38
  1250. package/src/clis/instagram/unlike.yaml +0 -46
  1251. package/src/clis/instagram/unsave.yaml +0 -46
  1252. package/src/clis/instagram/user.yaml +0 -54
  1253. package/src/clis/jd/item.test.ts +0 -52
  1254. package/src/clis/jd/item.ts +0 -104
  1255. package/src/clis/jike/comment.ts +0 -112
  1256. package/src/clis/jike/create.ts +0 -112
  1257. package/src/clis/jike/feed.ts +0 -73
  1258. package/src/clis/jike/like.ts +0 -64
  1259. package/src/clis/jike/notifications.ts +0 -184
  1260. package/src/clis/jike/post.yaml +0 -59
  1261. package/src/clis/jike/repost.ts +0 -113
  1262. package/src/clis/jike/search.ts +0 -73
  1263. package/src/clis/jike/topic.yaml +0 -53
  1264. package/src/clis/jike/user.yaml +0 -52
  1265. package/src/clis/jike/utils.ts +0 -36
  1266. package/src/clis/jimeng/generate.yaml +0 -85
  1267. package/src/clis/jimeng/history.yaml +0 -46
  1268. package/src/clis/linkedin/search.ts +0 -417
  1269. package/src/clis/linkedin/timeline.test.ts +0 -99
  1270. package/src/clis/linkedin/timeline.ts +0 -532
  1271. package/src/clis/linux-do/categories.yaml +0 -70
  1272. package/src/clis/linux-do/category.ts +0 -37
  1273. package/src/clis/linux-do/feed.test.ts +0 -132
  1274. package/src/clis/linux-do/feed.ts +0 -501
  1275. package/src/clis/linux-do/hot.ts +0 -26
  1276. package/src/clis/linux-do/latest.ts +0 -19
  1277. package/src/clis/linux-do/search.yaml +0 -48
  1278. package/src/clis/linux-do/tags.yaml +0 -41
  1279. package/src/clis/linux-do/topic.yaml +0 -77
  1280. package/src/clis/linux-do/user-posts.yaml +0 -67
  1281. package/src/clis/linux-do/user-topics.yaml +0 -54
  1282. package/src/clis/lobsters/active.yaml +0 -29
  1283. package/src/clis/lobsters/hot.yaml +0 -29
  1284. package/src/clis/lobsters/newest.yaml +0 -29
  1285. package/src/clis/lobsters/tag.yaml +0 -34
  1286. package/src/clis/medium/feed.ts +0 -16
  1287. package/src/clis/medium/search.ts +0 -16
  1288. package/src/clis/medium/user.ts +0 -16
  1289. package/src/clis/medium/utils.ts +0 -84
  1290. package/src/clis/notebooklm/compat.test.ts +0 -19
  1291. package/src/clis/notebooklm/current.ts +0 -37
  1292. package/src/clis/notebooklm/get.ts +0 -51
  1293. package/src/clis/notebooklm/history.test.ts +0 -70
  1294. package/src/clis/notebooklm/history.ts +0 -34
  1295. package/src/clis/notebooklm/list.ts +0 -40
  1296. package/src/clis/notebooklm/note-list.test.ts +0 -64
  1297. package/src/clis/notebooklm/note-list.ts +0 -40
  1298. package/src/clis/notebooklm/notes-get.test.ts +0 -88
  1299. package/src/clis/notebooklm/notes-get.ts +0 -65
  1300. package/src/clis/notebooklm/open.test.ts +0 -78
  1301. package/src/clis/notebooklm/open.ts +0 -61
  1302. package/src/clis/notebooklm/rpc.test.ts +0 -126
  1303. package/src/clis/notebooklm/rpc.ts +0 -286
  1304. package/src/clis/notebooklm/shared.ts +0 -98
  1305. package/src/clis/notebooklm/source-fulltext.test.ts +0 -123
  1306. package/src/clis/notebooklm/source-fulltext.ts +0 -67
  1307. package/src/clis/notebooklm/source-get.test.ts +0 -100
  1308. package/src/clis/notebooklm/source-get.ts +0 -58
  1309. package/src/clis/notebooklm/source-guide.test.ts +0 -121
  1310. package/src/clis/notebooklm/source-guide.ts +0 -67
  1311. package/src/clis/notebooklm/source-list.ts +0 -43
  1312. package/src/clis/notebooklm/status.ts +0 -33
  1313. package/src/clis/notebooklm/summary.test.ts +0 -94
  1314. package/src/clis/notebooklm/summary.ts +0 -43
  1315. package/src/clis/notebooklm/utils.test.ts +0 -446
  1316. package/src/clis/notebooklm/utils.ts +0 -902
  1317. package/src/clis/notion/export.ts +0 -36
  1318. package/src/clis/notion/favorites.ts +0 -87
  1319. package/src/clis/notion/new.ts +0 -39
  1320. package/src/clis/notion/read.ts +0 -33
  1321. package/src/clis/notion/search.ts +0 -54
  1322. package/src/clis/notion/sidebar.ts +0 -44
  1323. package/src/clis/notion/status.ts +0 -18
  1324. package/src/clis/notion/write.ts +0 -45
  1325. package/src/clis/ones/common.ts +0 -187
  1326. package/src/clis/ones/enrich-tasks.ts +0 -47
  1327. package/src/clis/ones/login.ts +0 -103
  1328. package/src/clis/ones/logout.ts +0 -19
  1329. package/src/clis/ones/me.ts +0 -34
  1330. package/src/clis/ones/my-tasks.ts +0 -148
  1331. package/src/clis/ones/resolve-labels.ts +0 -80
  1332. package/src/clis/ones/task-helpers.test.ts +0 -14
  1333. package/src/clis/ones/task-helpers.ts +0 -214
  1334. package/src/clis/ones/task.ts +0 -79
  1335. package/src/clis/ones/tasks.ts +0 -92
  1336. package/src/clis/ones/token-info.ts +0 -46
  1337. package/src/clis/ones/worklog.test.ts +0 -24
  1338. package/src/clis/ones/worklog.ts +0 -306
  1339. package/src/clis/paperreview/commands.test.ts +0 -283
  1340. package/src/clis/paperreview/feedback.ts +0 -64
  1341. package/src/clis/paperreview/review.ts +0 -47
  1342. package/src/clis/paperreview/submit.ts +0 -119
  1343. package/src/clis/paperreview/utils.test.ts +0 -68
  1344. package/src/clis/paperreview/utils.ts +0 -276
  1345. package/src/clis/pixiv/detail.yaml +0 -49
  1346. package/src/clis/pixiv/download.test.ts +0 -114
  1347. package/src/clis/pixiv/download.ts +0 -91
  1348. package/src/clis/pixiv/illusts.test.ts +0 -115
  1349. package/src/clis/pixiv/illusts.ts +0 -78
  1350. package/src/clis/pixiv/ranking.yaml +0 -53
  1351. package/src/clis/pixiv/search.test.ts +0 -97
  1352. package/src/clis/pixiv/search.ts +0 -53
  1353. package/src/clis/pixiv/test-utils.ts +0 -29
  1354. package/src/clis/pixiv/user.yaml +0 -46
  1355. package/src/clis/pixiv/utils.ts +0 -62
  1356. package/src/clis/producthunt/browse.ts +0 -109
  1357. package/src/clis/producthunt/hot.ts +0 -127
  1358. package/src/clis/producthunt/posts.ts +0 -29
  1359. package/src/clis/producthunt/today.ts +0 -37
  1360. package/src/clis/producthunt/utils.test.ts +0 -72
  1361. package/src/clis/producthunt/utils.ts +0 -122
  1362. package/src/clis/reddit/comment.ts +0 -60
  1363. package/src/clis/reddit/frontpage.yaml +0 -30
  1364. package/src/clis/reddit/hot.yaml +0 -47
  1365. package/src/clis/reddit/popular.yaml +0 -40
  1366. package/src/clis/reddit/read.test.ts +0 -34
  1367. package/src/clis/reddit/read.ts +0 -186
  1368. package/src/clis/reddit/save.ts +0 -54
  1369. package/src/clis/reddit/saved.ts +0 -51
  1370. package/src/clis/reddit/search.yaml +0 -61
  1371. package/src/clis/reddit/subreddit.yaml +0 -50
  1372. package/src/clis/reddit/subscribe.ts +0 -53
  1373. package/src/clis/reddit/upvote.ts +0 -67
  1374. package/src/clis/reddit/upvoted.ts +0 -51
  1375. package/src/clis/reddit/user-comments.yaml +0 -46
  1376. package/src/clis/reddit/user-posts.yaml +0 -44
  1377. package/src/clis/reddit/user.yaml +0 -40
  1378. package/src/clis/reuters/search.ts +0 -51
  1379. package/src/clis/sinablog/article.ts +0 -15
  1380. package/src/clis/sinablog/hot.ts +0 -15
  1381. package/src/clis/sinablog/search.ts +0 -56
  1382. package/src/clis/sinablog/user.ts +0 -16
  1383. package/src/clis/sinablog/utils.ts +0 -197
  1384. package/src/clis/sinafinance/news.ts +0 -76
  1385. package/src/clis/sinafinance/rolling-news.ts +0 -42
  1386. package/src/clis/sinafinance/stock-rank.ts +0 -68
  1387. package/src/clis/sinafinance/stock.ts +0 -127
  1388. package/src/clis/smzdm/search.ts +0 -56
  1389. package/src/clis/spotify/spotify.ts +0 -328
  1390. package/src/clis/spotify/utils.test.ts +0 -87
  1391. package/src/clis/spotify/utils.ts +0 -92
  1392. package/src/clis/stackoverflow/bounties.yaml +0 -29
  1393. package/src/clis/stackoverflow/hot.yaml +0 -28
  1394. package/src/clis/stackoverflow/search.yaml +0 -33
  1395. package/src/clis/stackoverflow/unanswered.yaml +0 -28
  1396. package/src/clis/steam/top-sellers.yaml +0 -29
  1397. package/src/clis/substack/feed.ts +0 -16
  1398. package/src/clis/substack/publication.ts +0 -16
  1399. package/src/clis/substack/search.ts +0 -92
  1400. package/src/clis/substack/utils.test.ts +0 -52
  1401. package/src/clis/substack/utils.ts +0 -141
  1402. package/src/clis/tieba/commands.test.ts +0 -86
  1403. package/src/clis/tieba/hot.ts +0 -52
  1404. package/src/clis/tieba/posts.ts +0 -108
  1405. package/src/clis/tieba/read.ts +0 -158
  1406. package/src/clis/tieba/search.ts +0 -119
  1407. package/src/clis/tieba/utils.test.ts +0 -322
  1408. package/src/clis/tieba/utils.ts +0 -348
  1409. package/src/clis/tiktok/comment.yaml +0 -66
  1410. package/src/clis/tiktok/explore.yaml +0 -39
  1411. package/src/clis/tiktok/follow.yaml +0 -39
  1412. package/src/clis/tiktok/following.yaml +0 -46
  1413. package/src/clis/tiktok/friends.yaml +0 -47
  1414. package/src/clis/tiktok/like.yaml +0 -38
  1415. package/src/clis/tiktok/live.yaml +0 -51
  1416. package/src/clis/tiktok/notifications.yaml +0 -52
  1417. package/src/clis/tiktok/profile.yaml +0 -45
  1418. package/src/clis/tiktok/save.yaml +0 -34
  1419. package/src/clis/tiktok/search.yaml +0 -47
  1420. package/src/clis/tiktok/unfollow.yaml +0 -44
  1421. package/src/clis/tiktok/unlike.yaml +0 -38
  1422. package/src/clis/tiktok/unsave.yaml +0 -36
  1423. package/src/clis/tiktok/user.yaml +0 -44
  1424. package/src/clis/twitter/accept.ts +0 -214
  1425. package/src/clis/twitter/article.ts +0 -170
  1426. package/src/clis/twitter/block.ts +0 -93
  1427. package/src/clis/twitter/bookmark.ts +0 -68
  1428. package/src/clis/twitter/bookmarks.ts +0 -202
  1429. package/src/clis/twitter/delete.ts +0 -78
  1430. package/src/clis/twitter/download.ts +0 -118
  1431. package/src/clis/twitter/follow.ts +0 -70
  1432. package/src/clis/twitter/followers.ts +0 -116
  1433. package/src/clis/twitter/following.ts +0 -109
  1434. package/src/clis/twitter/hide-reply.ts +0 -71
  1435. package/src/clis/twitter/like.ts +0 -74
  1436. package/src/clis/twitter/likes.test.ts +0 -91
  1437. package/src/clis/twitter/likes.ts +0 -256
  1438. package/src/clis/twitter/notifications.ts +0 -136
  1439. package/src/clis/twitter/post.test.ts +0 -157
  1440. package/src/clis/twitter/post.ts +0 -110
  1441. package/src/clis/twitter/profile.ts +0 -108
  1442. package/src/clis/twitter/reply-dm.ts +0 -194
  1443. package/src/clis/twitter/reply.test.ts +0 -177
  1444. package/src/clis/twitter/reply.ts +0 -309
  1445. package/src/clis/twitter/search.test.ts +0 -265
  1446. package/src/clis/twitter/search.ts +0 -185
  1447. package/src/clis/twitter/shared.ts +0 -45
  1448. package/src/clis/twitter/thread.ts +0 -182
  1449. package/src/clis/twitter/timeline.test.ts +0 -109
  1450. package/src/clis/twitter/timeline.ts +0 -248
  1451. package/src/clis/twitter/trending.ts +0 -66
  1452. package/src/clis/twitter/unblock.ts +0 -76
  1453. package/src/clis/twitter/unbookmark.ts +0 -67
  1454. package/src/clis/twitter/unfollow.ts +0 -76
  1455. package/src/clis/v2ex/daily.ts +0 -106
  1456. package/src/clis/v2ex/hot.yaml +0 -28
  1457. package/src/clis/v2ex/latest.yaml +0 -28
  1458. package/src/clis/v2ex/me.ts +0 -104
  1459. package/src/clis/v2ex/member.yaml +0 -29
  1460. package/src/clis/v2ex/node.yaml +0 -34
  1461. package/src/clis/v2ex/nodes.yaml +0 -31
  1462. package/src/clis/v2ex/notifications.ts +0 -76
  1463. package/src/clis/v2ex/replies.yaml +0 -32
  1464. package/src/clis/v2ex/topic.yaml +0 -33
  1465. package/src/clis/v2ex/user.yaml +0 -34
  1466. package/src/clis/web/read.ts +0 -210
  1467. package/src/clis/weibo/comments.ts +0 -54
  1468. package/src/clis/weibo/feed.ts +0 -57
  1469. package/src/clis/weibo/hot.ts +0 -39
  1470. package/src/clis/weibo/me.ts +0 -77
  1471. package/src/clis/weibo/post.ts +0 -77
  1472. package/src/clis/weibo/search.ts +0 -78
  1473. package/src/clis/weibo/user.ts +0 -64
  1474. package/src/clis/weibo/utils.ts +0 -32
  1475. package/src/clis/weixin/download.ts +0 -382
  1476. package/src/clis/weread/book.ts +0 -271
  1477. package/src/clis/weread/commands.test.ts +0 -466
  1478. package/src/clis/weread/highlights.ts +0 -25
  1479. package/src/clis/weread/notebooks.ts +0 -23
  1480. package/src/clis/weread/notes.ts +0 -31
  1481. package/src/clis/weread/private-api-regression.test.ts +0 -435
  1482. package/src/clis/weread/ranking.ts +0 -29
  1483. package/src/clis/weread/search-regression.test.ts +0 -440
  1484. package/src/clis/weread/search.ts +0 -207
  1485. package/src/clis/weread/shelf.ts +0 -84
  1486. package/src/clis/weread/utils.test.ts +0 -153
  1487. package/src/clis/weread/utils.ts +0 -390
  1488. package/src/clis/wikipedia/random.ts +0 -19
  1489. package/src/clis/wikipedia/search.ts +0 -38
  1490. package/src/clis/wikipedia/summary.ts +0 -23
  1491. package/src/clis/wikipedia/trending.ts +0 -41
  1492. package/src/clis/wikipedia/utils.ts +0 -51
  1493. package/src/clis/xianyu/chat.test.ts +0 -20
  1494. package/src/clis/xianyu/chat.ts +0 -175
  1495. package/src/clis/xianyu/item.test.ts +0 -67
  1496. package/src/clis/xianyu/item.ts +0 -172
  1497. package/src/clis/xianyu/search.test.ts +0 -22
  1498. package/src/clis/xianyu/search.ts +0 -151
  1499. package/src/clis/xianyu/utils.ts +0 -9
  1500. package/src/clis/xiaoe/catalog.yaml +0 -129
  1501. package/src/clis/xiaoe/content.yaml +0 -43
  1502. package/src/clis/xiaoe/courses.yaml +0 -73
  1503. package/src/clis/xiaoe/detail.yaml +0 -39
  1504. package/src/clis/xiaoe/play-url.yaml +0 -124
  1505. package/src/clis/xiaohongshu/comments.test.ts +0 -171
  1506. package/src/clis/xiaohongshu/comments.ts +0 -140
  1507. package/src/clis/xiaohongshu/creator-note-detail.test.ts +0 -273
  1508. package/src/clis/xiaohongshu/creator-note-detail.ts +0 -447
  1509. package/src/clis/xiaohongshu/creator-notes-summary.test.ts +0 -54
  1510. package/src/clis/xiaohongshu/creator-notes-summary.ts +0 -120
  1511. package/src/clis/xiaohongshu/creator-notes.test.ts +0 -212
  1512. package/src/clis/xiaohongshu/creator-notes.ts +0 -295
  1513. package/src/clis/xiaohongshu/creator-profile.ts +0 -59
  1514. package/src/clis/xiaohongshu/creator-stats.ts +0 -80
  1515. package/src/clis/xiaohongshu/download.test.ts +0 -94
  1516. package/src/clis/xiaohongshu/download.ts +0 -174
  1517. package/src/clis/xiaohongshu/feed.yaml +0 -31
  1518. package/src/clis/xiaohongshu/note-helpers.ts +0 -25
  1519. package/src/clis/xiaohongshu/note.test.ts +0 -213
  1520. package/src/clis/xiaohongshu/note.ts +0 -104
  1521. package/src/clis/xiaohongshu/notifications.yaml +0 -37
  1522. package/src/clis/xiaohongshu/publish.test.ts +0 -228
  1523. package/src/clis/xiaohongshu/publish.ts +0 -598
  1524. package/src/clis/xiaohongshu/search.test.ts +0 -191
  1525. package/src/clis/xiaohongshu/search.ts +0 -143
  1526. package/src/clis/xiaohongshu/user-helpers.test.ts +0 -129
  1527. package/src/clis/xiaohongshu/user-helpers.ts +0 -89
  1528. package/src/clis/xiaohongshu/user.ts +0 -64
  1529. package/src/clis/xiaoyuzhou/episode.ts +0 -28
  1530. package/src/clis/xiaoyuzhou/podcast-episodes.ts +0 -36
  1531. package/src/clis/xiaoyuzhou/podcast.ts +0 -27
  1532. package/src/clis/xiaoyuzhou/utils.test.ts +0 -122
  1533. package/src/clis/xiaoyuzhou/utils.ts +0 -65
  1534. package/src/clis/xueqiu/comments.test.ts +0 -823
  1535. package/src/clis/xueqiu/comments.ts +0 -461
  1536. package/src/clis/xueqiu/danjuan-utils.test.ts +0 -49
  1537. package/src/clis/xueqiu/danjuan-utils.ts +0 -176
  1538. package/src/clis/xueqiu/earnings-date.yaml +0 -69
  1539. package/src/clis/xueqiu/feed.yaml +0 -53
  1540. package/src/clis/xueqiu/fund-holdings.ts +0 -32
  1541. package/src/clis/xueqiu/fund-snapshot.ts +0 -27
  1542. package/src/clis/xueqiu/hot-stock.yaml +0 -49
  1543. package/src/clis/xueqiu/hot.yaml +0 -46
  1544. package/src/clis/xueqiu/search.yaml +0 -55
  1545. package/src/clis/xueqiu/stock.yaml +0 -69
  1546. package/src/clis/xueqiu/watchlist.yaml +0 -46
  1547. package/src/clis/yahoo-finance/quote.ts +0 -72
  1548. package/src/clis/yollomi/background.ts +0 -48
  1549. package/src/clis/yollomi/edit.ts +0 -58
  1550. package/src/clis/yollomi/face-swap.ts +0 -45
  1551. package/src/clis/yollomi/generate.ts +0 -95
  1552. package/src/clis/yollomi/models.ts +0 -38
  1553. package/src/clis/yollomi/object-remover.ts +0 -44
  1554. package/src/clis/yollomi/remove-bg.ts +0 -40
  1555. package/src/clis/yollomi/restore.ts +0 -40
  1556. package/src/clis/yollomi/try-on.ts +0 -48
  1557. package/src/clis/yollomi/upload.ts +0 -78
  1558. package/src/clis/yollomi/upscale.ts +0 -49
  1559. package/src/clis/yollomi/utils.ts +0 -202
  1560. package/src/clis/yollomi/video.ts +0 -61
  1561. package/src/clis/youtube/channel.ts +0 -155
  1562. package/src/clis/youtube/comments.ts +0 -97
  1563. package/src/clis/youtube/search.ts +0 -99
  1564. package/src/clis/youtube/transcript-group.test.ts +0 -108
  1565. package/src/clis/youtube/transcript-group.ts +0 -287
  1566. package/src/clis/youtube/transcript.ts +0 -279
  1567. package/src/clis/youtube/utils.test.ts +0 -43
  1568. package/src/clis/youtube/utils.ts +0 -97
  1569. package/src/clis/youtube/video.ts +0 -118
  1570. package/src/clis/yuanbao/ask.test.ts +0 -156
  1571. package/src/clis/yuanbao/ask.ts +0 -522
  1572. package/src/clis/yuanbao/new.test.ts +0 -36
  1573. package/src/clis/yuanbao/new.ts +0 -81
  1574. package/src/clis/yuanbao/shared.ts +0 -57
  1575. package/src/clis/zhihu/download.test.ts +0 -14
  1576. package/src/clis/zhihu/download.ts +0 -87
  1577. package/src/clis/zhihu/hot.yaml +0 -46
  1578. package/src/clis/zhihu/question.test.ts +0 -96
  1579. package/src/clis/zhihu/question.ts +0 -63
  1580. package/src/clis/zhihu/search.yaml +0 -59
  1581. package/src/clis/zsxq/dynamics.ts +0 -60
  1582. package/src/clis/zsxq/groups.ts +0 -41
  1583. package/src/clis/zsxq/search.test.ts +0 -29
  1584. package/src/clis/zsxq/search.ts +0 -54
  1585. package/src/clis/zsxq/topic.test.ts +0 -34
  1586. package/src/clis/zsxq/topic.ts +0 -68
  1587. package/src/clis/zsxq/topics.test.ts +0 -29
  1588. package/src/clis/zsxq/topics.ts +0 -36
  1589. package/src/clis/zsxq/utils.ts +0 -351
  1590. package/src/commanderAdapter.test.ts +0 -315
  1591. package/src/commanderAdapter.ts +0 -319
  1592. package/src/commands/daemon.test.ts +0 -204
  1593. package/src/commands/daemon.ts +0 -87
  1594. package/src/completion.test.ts +0 -30
  1595. package/src/completion.ts +0 -132
  1596. package/src/constants.ts +0 -41
  1597. package/src/daemon.test.ts +0 -88
  1598. package/src/daemon.ts +0 -339
  1599. package/src/discovery.ts +0 -328
  1600. package/src/doctor.test.ts +0 -111
  1601. package/src/doctor.ts +0 -163
  1602. package/src/download/article-download.ts +0 -272
  1603. package/src/download/index.test.ts +0 -135
  1604. package/src/download/index.ts +0 -422
  1605. package/src/download/media-download.ts +0 -180
  1606. package/src/download/progress.ts +0 -125
  1607. package/src/electron-apps.test.ts +0 -50
  1608. package/src/electron-apps.ts +0 -97
  1609. package/src/engine.test.ts +0 -323
  1610. package/src/errors.test.ts +0 -79
  1611. package/src/errors.ts +0 -162
  1612. package/src/execution.test.ts +0 -47
  1613. package/src/execution.ts +0 -235
  1614. package/src/explore.ts +0 -502
  1615. package/src/extension-manifest-regression.test.ts +0 -18
  1616. package/src/external-clis.yaml +0 -56
  1617. package/src/external.test.ts +0 -97
  1618. package/src/external.ts +0 -246
  1619. package/src/generate.ts +0 -161
  1620. package/src/hooks.test.ts +0 -126
  1621. package/src/hooks.ts +0 -91
  1622. package/src/idle-manager.ts +0 -60
  1623. package/src/interceptor.test.ts +0 -94
  1624. package/src/interceptor.ts +0 -204
  1625. package/src/launcher.test.ts +0 -181
  1626. package/src/launcher.ts +0 -263
  1627. package/src/logger.ts +0 -57
  1628. package/src/main.ts +0 -66
  1629. package/src/node-network.test.ts +0 -93
  1630. package/src/node-network.ts +0 -213
  1631. package/src/output.test.ts +0 -69
  1632. package/src/output.ts +0 -145
  1633. package/src/pipeline/executor.test.ts +0 -191
  1634. package/src/pipeline/executor.ts +0 -110
  1635. package/src/pipeline/registry.ts +0 -62
  1636. package/src/pipeline/steps/browser.ts +0 -76
  1637. package/src/pipeline/steps/download.test.ts +0 -135
  1638. package/src/pipeline/steps/download.ts +0 -320
  1639. package/src/pipeline/steps/fetch.test.ts +0 -179
  1640. package/src/pipeline/steps/fetch.ts +0 -160
  1641. package/src/pipeline/steps/intercept.ts +0 -55
  1642. package/src/pipeline/steps/tap.ts +0 -100
  1643. package/src/pipeline/steps/transform.ts +0 -71
  1644. package/src/pipeline/template.test.ts +0 -177
  1645. package/src/pipeline/template.ts +0 -269
  1646. package/src/pipeline/transform.test.ts +0 -140
  1647. package/src/plugin-manifest.test.ts +0 -223
  1648. package/src/plugin-manifest.ts +0 -206
  1649. package/src/plugin-scaffold.test.ts +0 -98
  1650. package/src/plugin-scaffold.ts +0 -170
  1651. package/src/plugin.test.ts +0 -1427
  1652. package/src/plugin.ts +0 -1537
  1653. package/src/record.test.ts +0 -362
  1654. package/src/record.ts +0 -824
  1655. package/src/registry-api.ts +0 -14
  1656. package/src/registry.test.ts +0 -133
  1657. package/src/registry.ts +0 -160
  1658. package/src/runtime-detect.test.ts +0 -30
  1659. package/src/runtime-detect.ts +0 -36
  1660. package/src/runtime.ts +0 -86
  1661. package/src/scripts/framework.ts +0 -20
  1662. package/src/scripts/interact.ts +0 -22
  1663. package/src/scripts/store.ts +0 -40
  1664. package/src/serialization.test.ts +0 -44
  1665. package/src/serialization.ts +0 -92
  1666. package/src/snapshotFormatter.test.ts +0 -579
  1667. package/src/snapshotFormatter.ts +0 -359
  1668. package/src/synthesize.ts +0 -296
  1669. package/src/tui.test.ts +0 -23
  1670. package/src/tui.ts +0 -237
  1671. package/src/types.ts +0 -95
  1672. package/src/update-check.ts +0 -114
  1673. package/src/utils.ts +0 -44
  1674. package/src/validate.ts +0 -103
  1675. package/src/verify.ts +0 -93
  1676. package/src/version.ts +0 -18
  1677. package/src/weixin-download.test.ts +0 -91
  1678. package/src/yaml-schema.ts +0 -48
  1679. package/tests/e2e/band-auth.test.ts +0 -20
  1680. package/tests/e2e/browser-auth-helpers.ts +0 -18
  1681. package/tests/e2e/browser-auth.test.ts +0 -150
  1682. package/tests/e2e/browser-public-extended.test.ts +0 -166
  1683. package/tests/e2e/browser-public.test.ts +0 -417
  1684. package/tests/e2e/helpers.ts +0 -64
  1685. package/tests/e2e/management.test.ts +0 -106
  1686. package/tests/e2e/output-formats.test.ts +0 -44
  1687. package/tests/e2e/plugin-management.test.ts +0 -140
  1688. package/tests/e2e/public-commands.test.ts +0 -569
  1689. package/tests/smoke/api-health.test.ts +0 -131
  1690. package/tsconfig.json +0 -17
  1691. package/vitest.config.ts +0 -50
  1692. /package/dist/{browser.test.d.ts → clis/gemini/deep-research-result.test.d.ts} +0 -0
  1693. /package/dist/{browser/cdp.test.d.ts → clis/gemini/deep-research.test.d.ts} +0 -0
  1694. /package/dist/{browser/daemon-client.test.d.ts → clis/hupu/mentions.d.ts} +0 -0
  1695. /package/dist/{browser/dom-helpers.test.d.ts → clis/lesswrong/comments.d.ts} +0 -0
  1696. /package/dist/{browser/page.test.d.ts → clis/lesswrong/curated.d.ts} +0 -0
  1697. /package/dist/{browser/stealth.test.d.ts → clis/lesswrong/frontpage.d.ts} +0 -0
  1698. /package/dist/{build-manifest.test.d.ts → clis/lesswrong/new.d.ts} +0 -0
  1699. /package/dist/{capabilityRouting.test.d.ts → clis/lesswrong/read.d.ts} +0 -0
  1700. /package/dist/{cli.test.d.ts → clis/lesswrong/sequences.d.ts} +0 -0
  1701. /package/dist/{commanderAdapter.test.d.ts → clis/lesswrong/shortform.d.ts} +0 -0
  1702. /package/dist/{commands/daemon.test.d.ts → clis/lesswrong/tag.d.ts} +0 -0
  1703. /package/dist/{completion.test.d.ts → clis/lesswrong/tags.d.ts} +0 -0
  1704. /package/dist/{daemon.test.d.ts → clis/lesswrong/top-month.d.ts} +0 -0
  1705. /package/dist/{doctor.test.d.ts → clis/lesswrong/top-week.d.ts} +0 -0
  1706. /package/dist/{download/index.test.d.ts → clis/lesswrong/top-year.d.ts} +0 -0
  1707. /package/dist/{electron-apps.test.d.ts → clis/lesswrong/top.d.ts} +0 -0
  1708. /package/dist/{engine.test.d.ts → clis/lesswrong/user-posts.d.ts} +0 -0
  1709. /package/dist/{errors.test.d.ts → clis/lesswrong/user.d.ts} +0 -0
  1710. /package/dist/{analysis.d.ts → src/analysis.d.ts} +0 -0
  1711. /package/dist/{analysis.js → src/analysis.js} +0 -0
  1712. /package/dist/{browser → src/browser}/base-page.d.ts +0 -0
  1713. /package/dist/{browser → src/browser}/base-page.js +0 -0
  1714. /package/dist/{browser → src/browser}/bridge.d.ts +0 -0
  1715. /package/dist/{browser → src/browser}/bridge.js +0 -0
  1716. /package/dist/{extension-manifest-regression.test.d.ts → src/browser/cdp.test.d.ts} +0 -0
  1717. /package/dist/{browser → src/browser}/cdp.test.js +0 -0
  1718. /package/dist/{browser → src/browser}/daemon-client.d.ts +0 -0
  1719. /package/dist/{browser → src/browser}/daemon-client.js +0 -0
  1720. /package/dist/{external.test.d.ts → src/browser/daemon-client.test.d.ts} +0 -0
  1721. /package/dist/{browser → src/browser}/daemon-client.test.js +0 -0
  1722. /package/dist/{browser → src/browser}/discover.d.ts +0 -0
  1723. /package/dist/{browser → src/browser}/discover.js +0 -0
  1724. /package/dist/{browser → src/browser}/dom-helpers.d.ts +0 -0
  1725. /package/dist/{browser → src/browser}/dom-helpers.js +0 -0
  1726. /package/dist/{launcher.test.d.ts → src/browser/dom-helpers.test.d.ts} +0 -0
  1727. /package/dist/{browser → src/browser}/dom-helpers.test.js +0 -0
  1728. /package/dist/{browser → src/browser}/dom-snapshot.d.ts +0 -0
  1729. /package/dist/{browser → src/browser}/dom-snapshot.js +0 -0
  1730. /package/dist/{browser → src/browser}/dom-snapshot.test.d.ts +0 -0
  1731. /package/dist/{browser → src/browser}/dom-snapshot.test.js +0 -0
  1732. /package/dist/{browser → src/browser}/errors.d.ts +0 -0
  1733. /package/dist/{browser → src/browser}/errors.js +0 -0
  1734. /package/dist/{browser → src/browser}/index.d.ts +0 -0
  1735. /package/dist/{browser → src/browser}/index.js +0 -0
  1736. /package/dist/{node-network.test.d.ts → src/browser/page.test.d.ts} +0 -0
  1737. /package/dist/{browser → src/browser}/page.test.js +0 -0
  1738. /package/dist/{browser → src/browser}/stealth.d.ts +0 -0
  1739. /package/dist/{browser → src/browser}/stealth.js +0 -0
  1740. /package/dist/{output.test.d.ts → src/browser/stealth.test.d.ts} +0 -0
  1741. /package/dist/{browser → src/browser}/stealth.test.js +0 -0
  1742. /package/dist/{browser → src/browser}/tabs.d.ts +0 -0
  1743. /package/dist/{browser → src/browser}/tabs.js +0 -0
  1744. /package/dist/{execution.test.d.ts → src/browser.test.d.ts} +0 -0
  1745. /package/dist/{browser.test.js → src/browser.test.js} +0 -0
  1746. /package/dist/{build-manifest.d.ts → src/build-manifest.d.ts} +0 -0
  1747. /package/dist/{pipeline/steps/download.test.d.ts → src/build-manifest.test.d.ts} +0 -0
  1748. /package/dist/{build-manifest.test.js → src/build-manifest.test.js} +0 -0
  1749. /package/dist/{capabilityRouting.d.ts → src/capabilityRouting.d.ts} +0 -0
  1750. /package/dist/{capabilityRouting.js → src/capabilityRouting.js} +0 -0
  1751. /package/dist/{pipeline/steps/fetch.test.d.ts → src/capabilityRouting.test.d.ts} +0 -0
  1752. /package/dist/{capabilityRouting.test.js → src/capabilityRouting.test.js} +0 -0
  1753. /package/dist/{cascade.d.ts → src/cascade.d.ts} +0 -0
  1754. /package/dist/{record.test.d.ts → src/cli.test.d.ts} +0 -0
  1755. /package/dist/{runtime-detect.test.d.ts → src/commanderAdapter.test.d.ts} +0 -0
  1756. /package/dist/{commanderAdapter.test.js → src/commanderAdapter.test.js} +0 -0
  1757. /package/dist/{commands → src/commands}/daemon.d.ts +0 -0
  1758. /package/dist/{commands → src/commands}/daemon.js +0 -0
  1759. /package/dist/{serialization.test.d.ts → src/commands/daemon.test.d.ts} +0 -0
  1760. /package/dist/{commands → src/commands}/daemon.test.js +0 -0
  1761. /package/dist/{completion.d.ts → src/completion.d.ts} +0 -0
  1762. /package/dist/{completion.js → src/completion.js} +0 -0
  1763. /package/dist/{tui.test.d.ts → src/completion.test.d.ts} +0 -0
  1764. /package/dist/{completion.test.js → src/completion.test.js} +0 -0
  1765. /package/dist/{constants.d.ts → src/constants.d.ts} +0 -0
  1766. /package/dist/{constants.js → src/constants.js} +0 -0
  1767. /package/dist/{daemon.d.ts → src/daemon.d.ts} +0 -0
  1768. /package/dist/{daemon.js → src/daemon.js} +0 -0
  1769. /package/dist/{weixin-download.test.d.ts → src/daemon.test.d.ts} +0 -0
  1770. /package/dist/{daemon.test.js → src/daemon.test.js} +0 -0
  1771. /package/dist/{doctor.d.ts → src/doctor.d.ts} +0 -0
  1772. /package/dist/{doctor.js → src/doctor.js} +0 -0
  1773. /package/dist/{doctor.test.js → src/doctor.test.js} +0 -0
  1774. /package/dist/{download → src/download}/index.test.js +0 -0
  1775. /package/dist/{electron-apps.d.ts → src/electron-apps.d.ts} +0 -0
  1776. /package/dist/{electron-apps.js → src/electron-apps.js} +0 -0
  1777. /package/dist/{electron-apps.test.js → src/electron-apps.test.js} +0 -0
  1778. /package/dist/{engine.test.js → src/engine.test.js} +0 -0
  1779. /package/dist/{errors.d.ts → src/errors.d.ts} +0 -0
  1780. /package/dist/{errors.js → src/errors.js} +0 -0
  1781. /package/dist/{errors.test.js → src/errors.test.js} +0 -0
  1782. /package/dist/{execution.d.ts → src/execution.d.ts} +0 -0
  1783. /package/dist/{execution.js → src/execution.js} +0 -0
  1784. /package/dist/{execution.test.js → src/execution.test.js} +0 -0
  1785. /package/dist/{explore.d.ts → src/explore.d.ts} +0 -0
  1786. /package/dist/{explore.js → src/explore.js} +0 -0
  1787. /package/dist/{extension-manifest-regression.test.js → src/extension-manifest-regression.test.js} +0 -0
  1788. /package/dist/{external-clis.yaml → src/external-clis.yaml} +0 -0
  1789. /package/dist/{external.d.ts → src/external.d.ts} +0 -0
  1790. /package/dist/{external.js → src/external.js} +0 -0
  1791. /package/dist/{external.test.js → src/external.test.js} +0 -0
  1792. /package/dist/{generate.d.ts → src/generate.d.ts} +0 -0
  1793. /package/dist/{generate.js → src/generate.js} +0 -0
  1794. /package/dist/{hooks.d.ts → src/hooks.d.ts} +0 -0
  1795. /package/dist/{hooks.js → src/hooks.js} +0 -0
  1796. /package/dist/{hooks.test.d.ts → src/hooks.test.d.ts} +0 -0
  1797. /package/dist/{hooks.test.js → src/hooks.test.js} +0 -0
  1798. /package/dist/{idle-manager.d.ts → src/idle-manager.d.ts} +0 -0
  1799. /package/dist/{idle-manager.js → src/idle-manager.js} +0 -0
  1800. /package/dist/{interceptor.test.d.ts → src/interceptor.test.d.ts} +0 -0
  1801. /package/dist/{interceptor.test.js → src/interceptor.test.js} +0 -0
  1802. /package/dist/{launcher.d.ts → src/launcher.d.ts} +0 -0
  1803. /package/dist/{launcher.js → src/launcher.js} +0 -0
  1804. /package/dist/{launcher.test.js → src/launcher.test.js} +0 -0
  1805. /package/dist/{logger.d.ts → src/logger.d.ts} +0 -0
  1806. /package/dist/{logger.js → src/logger.js} +0 -0
  1807. /package/dist/{main.d.ts → src/main.d.ts} +0 -0
  1808. /package/dist/{node-network.d.ts → src/node-network.d.ts} +0 -0
  1809. /package/dist/{node-network.js → src/node-network.js} +0 -0
  1810. /package/dist/{node-network.test.js → src/node-network.test.js} +0 -0
  1811. /package/dist/{output.d.ts → src/output.d.ts} +0 -0
  1812. /package/dist/{output.js → src/output.js} +0 -0
  1813. /package/dist/{output.test.js → src/output.test.js} +0 -0
  1814. /package/dist/{pipeline → src/pipeline}/executor.d.ts +0 -0
  1815. /package/dist/{pipeline → src/pipeline}/executor.js +0 -0
  1816. /package/dist/{pipeline → src/pipeline}/executor.test.d.ts +0 -0
  1817. /package/dist/{pipeline → src/pipeline}/executor.test.js +0 -0
  1818. /package/dist/{pipeline → src/pipeline}/registry.d.ts +0 -0
  1819. /package/dist/{pipeline → src/pipeline}/registry.js +0 -0
  1820. /package/dist/{pipeline → src/pipeline}/steps/browser.d.ts +0 -0
  1821. /package/dist/{pipeline → src/pipeline}/steps/browser.js +0 -0
  1822. /package/dist/{pipeline → src/pipeline}/steps/download.d.ts +0 -0
  1823. /package/dist/{pipeline → src/pipeline}/steps/download.js +0 -0
  1824. /package/dist/{pipeline → src/pipeline}/steps/download.test.js +0 -0
  1825. /package/dist/{pipeline → src/pipeline}/steps/fetch.d.ts +0 -0
  1826. /package/dist/{pipeline → src/pipeline}/steps/fetch.js +0 -0
  1827. /package/dist/{pipeline → src/pipeline}/steps/fetch.test.js +0 -0
  1828. /package/dist/{pipeline → src/pipeline}/steps/intercept.d.ts +0 -0
  1829. /package/dist/{pipeline → src/pipeline}/steps/intercept.js +0 -0
  1830. /package/dist/{pipeline → src/pipeline}/steps/tap.d.ts +0 -0
  1831. /package/dist/{pipeline → src/pipeline}/steps/tap.js +0 -0
  1832. /package/dist/{pipeline → src/pipeline}/steps/transform.d.ts +0 -0
  1833. /package/dist/{pipeline → src/pipeline}/steps/transform.js +0 -0
  1834. /package/dist/{pipeline → src/pipeline}/template.d.ts +0 -0
  1835. /package/dist/{pipeline → src/pipeline}/template.js +0 -0
  1836. /package/dist/{pipeline → src/pipeline}/template.test.d.ts +0 -0
  1837. /package/dist/{pipeline → src/pipeline}/template.test.js +0 -0
  1838. /package/dist/{pipeline → src/pipeline}/transform.test.d.ts +0 -0
  1839. /package/dist/{pipeline → src/pipeline}/transform.test.js +0 -0
  1840. /package/dist/{plugin-manifest.d.ts → src/plugin-manifest.d.ts} +0 -0
  1841. /package/dist/{plugin-manifest.js → src/plugin-manifest.js} +0 -0
  1842. /package/dist/{plugin-manifest.test.d.ts → src/plugin-manifest.test.d.ts} +0 -0
  1843. /package/dist/{plugin-manifest.test.js → src/plugin-manifest.test.js} +0 -0
  1844. /package/dist/{plugin-scaffold.d.ts → src/plugin-scaffold.d.ts} +0 -0
  1845. /package/dist/{plugin-scaffold.js → src/plugin-scaffold.js} +0 -0
  1846. /package/dist/{plugin-scaffold.test.d.ts → src/plugin-scaffold.test.d.ts} +0 -0
  1847. /package/dist/{plugin-scaffold.test.js → src/plugin-scaffold.test.js} +0 -0
  1848. /package/dist/{plugin.d.ts → src/plugin.d.ts} +0 -0
  1849. /package/dist/{plugin.js → src/plugin.js} +0 -0
  1850. /package/dist/{plugin.test.d.ts → src/plugin.test.d.ts} +0 -0
  1851. /package/dist/{plugin.test.js → src/plugin.test.js} +0 -0
  1852. /package/dist/{record.d.ts → src/record.d.ts} +0 -0
  1853. /package/dist/{record.test.js → src/record.test.js} +0 -0
  1854. /package/dist/{registry-api.d.ts → src/registry-api.d.ts} +0 -0
  1855. /package/dist/{registry-api.js → src/registry-api.js} +0 -0
  1856. /package/dist/{registry.d.ts → src/registry.d.ts} +0 -0
  1857. /package/dist/{registry.js → src/registry.js} +0 -0
  1858. /package/dist/{registry.test.d.ts → src/registry.test.d.ts} +0 -0
  1859. /package/dist/{registry.test.js → src/registry.test.js} +0 -0
  1860. /package/dist/{runtime-detect.d.ts → src/runtime-detect.d.ts} +0 -0
  1861. /package/dist/{runtime-detect.js → src/runtime-detect.js} +0 -0
  1862. /package/dist/{runtime-detect.test.js → src/runtime-detect.test.js} +0 -0
  1863. /package/dist/{runtime.d.ts → src/runtime.d.ts} +0 -0
  1864. /package/dist/{runtime.js → src/runtime.js} +0 -0
  1865. /package/dist/{scripts → src/scripts}/framework.d.ts +0 -0
  1866. /package/dist/{scripts → src/scripts}/framework.js +0 -0
  1867. /package/dist/{scripts → src/scripts}/interact.d.ts +0 -0
  1868. /package/dist/{scripts → src/scripts}/interact.js +0 -0
  1869. /package/dist/{scripts → src/scripts}/store.d.ts +0 -0
  1870. /package/dist/{scripts → src/scripts}/store.js +0 -0
  1871. /package/dist/{serialization.d.ts → src/serialization.d.ts} +0 -0
  1872. /package/dist/{serialization.js → src/serialization.js} +0 -0
  1873. /package/dist/{serialization.test.js → src/serialization.test.js} +0 -0
  1874. /package/dist/{snapshotFormatter.d.ts → src/snapshotFormatter.d.ts} +0 -0
  1875. /package/dist/{snapshotFormatter.js → src/snapshotFormatter.js} +0 -0
  1876. /package/dist/{snapshotFormatter.test.d.ts → src/snapshotFormatter.test.d.ts} +0 -0
  1877. /package/dist/{snapshotFormatter.test.js → src/snapshotFormatter.test.js} +0 -0
  1878. /package/dist/{tui.d.ts → src/tui.d.ts} +0 -0
  1879. /package/dist/{tui.js → src/tui.js} +0 -0
  1880. /package/dist/{tui.test.js → src/tui.test.js} +0 -0
  1881. /package/dist/{types.d.ts → src/types.d.ts} +0 -0
  1882. /package/dist/{types.js → src/types.js} +0 -0
  1883. /package/dist/{update-check.d.ts → src/update-check.d.ts} +0 -0
  1884. /package/dist/{update-check.js → src/update-check.js} +0 -0
  1885. /package/dist/{utils.d.ts → src/utils.d.ts} +0 -0
  1886. /package/dist/{utils.js → src/utils.js} +0 -0
  1887. /package/dist/{validate.d.ts → src/validate.d.ts} +0 -0
  1888. /package/dist/{validate.js → src/validate.js} +0 -0
  1889. /package/dist/{verify.d.ts → src/verify.d.ts} +0 -0
  1890. /package/dist/{verify.js → src/verify.js} +0 -0
  1891. /package/dist/{version.d.ts → src/version.d.ts} +0 -0
  1892. /package/dist/{version.js → src/version.js} +0 -0
  1893. /package/dist/{yaml-schema.d.ts → src/yaml-schema.d.ts} +0 -0
  1894. /package/dist/{yaml-schema.js → src/yaml-schema.js} +0 -0
@@ -1,354 +0,0 @@
1
- /**
2
- * Stealth anti-detection module.
3
- *
4
- * Generates JS code that patches browser globals to hide automation
5
- * fingerprints (e.g. navigator.webdriver, missing chrome object, empty
6
- * plugin list). Injected before page scripts run so that websites cannot
7
- * detect CDP / extension-based control.
8
- *
9
- * Inspired by puppeteer-extra-plugin-stealth.
10
- */
11
-
12
- /**
13
- * Return a self-contained JS string that, when evaluated in a page context,
14
- * applies all stealth patches. Safe to call multiple times — the guard flag
15
- * ensures patches are applied only once.
16
- */
17
- export function generateStealthJs(): string {
18
- return `
19
- (() => {
20
- // Guard: prevent double-injection across separate CDP evaluations.
21
- // We cannot use a closure variable (each eval is a fresh scope), and
22
- // window properties / Symbols are discoverable by anti-bot scripts.
23
- // Instead, stash the flag in a non-enumerable getter on a built-in
24
- // prototype that fingerprinters are unlikely to scan.
25
- const _gProto = EventTarget.prototype;
26
- const _gKey = '__lsn'; // looks like an internal listener cache
27
- if (_gProto[_gKey]) return 'skipped';
28
- try {
29
- Object.defineProperty(_gProto, _gKey, { value: true, enumerable: false, configurable: true });
30
- } catch {}
31
-
32
- // 1. navigator.webdriver → false
33
- // Most common check; Playwright/Puppeteer/CDP set this to true.
34
- // Real Chrome returns false (not undefined) — returning undefined is
35
- // itself a detection signal for advanced fingerprinters.
36
- try {
37
- Object.defineProperty(navigator, 'webdriver', {
38
- get: () => false,
39
- configurable: true,
40
- });
41
- } catch {}
42
-
43
- // 2. window.chrome stub
44
- // Real Chrome exposes window.chrome with runtime, loadTimes, csi.
45
- // Headless/automated Chrome may not have it.
46
- try {
47
- if (!window.chrome) {
48
- window.chrome = {
49
- runtime: {
50
- onConnect: { addListener: () => {}, removeListener: () => {} },
51
- onMessage: { addListener: () => {}, removeListener: () => {} },
52
- },
53
- loadTimes: () => ({}),
54
- csi: () => ({}),
55
- };
56
- }
57
- } catch {}
58
-
59
- // 3. navigator.plugins — fake population only if empty
60
- // Real user browser already has plugins; only patch in automated/headless
61
- // contexts where the list is empty (overwriting real plugins with fakes
62
- // would be counterproductive and detectable).
63
- try {
64
- if (!navigator.plugins || navigator.plugins.length === 0) {
65
- const fakePlugins = [
66
- { name: 'PDF Viewer', filename: 'internal-pdf-viewer', description: 'Portable Document Format' },
67
- { name: 'Chrome PDF Viewer', filename: 'internal-pdf-viewer', description: '' },
68
- { name: 'Chromium PDF Viewer', filename: 'internal-pdf-viewer', description: '' },
69
- { name: 'Microsoft Edge PDF Viewer', filename: 'internal-pdf-viewer', description: '' },
70
- { name: 'WebKit built-in PDF', filename: 'internal-pdf-viewer', description: '' },
71
- ];
72
- fakePlugins.item = (i) => fakePlugins[i] || null;
73
- fakePlugins.namedItem = (n) => fakePlugins.find(p => p.name === n) || null;
74
- fakePlugins.refresh = () => {};
75
- Object.defineProperty(navigator, 'plugins', {
76
- get: () => fakePlugins,
77
- configurable: true,
78
- });
79
- }
80
- } catch {}
81
-
82
- // 4. navigator.languages — guarantee non-empty
83
- // Some automated contexts return undefined or empty array.
84
- try {
85
- if (!navigator.languages || navigator.languages.length === 0) {
86
- Object.defineProperty(navigator, 'languages', {
87
- get: () => ['en-US', 'en'],
88
- configurable: true,
89
- });
90
- }
91
- } catch {}
92
-
93
- // 5. Permissions.query — normalize notification permission
94
- // Headless Chrome throws on Permissions.query({ name: 'notifications' }).
95
- try {
96
- const origQuery = window.Permissions?.prototype?.query;
97
- if (origQuery) {
98
- window.Permissions.prototype.query = function (parameters) {
99
- if (parameters?.name === 'notifications') {
100
- return Promise.resolve({ state: Notification.permission, onchange: null });
101
- }
102
- return origQuery.call(this, parameters);
103
- };
104
- }
105
- } catch {}
106
-
107
- // 6. Clean automation artifacts
108
- // Remove properties left by Playwright, Puppeteer, or CDP injection.
109
- try {
110
- delete window.__playwright;
111
- delete window.__puppeteer;
112
- // ChromeDriver injects cdc_ prefixed globals; the suffix varies by version,
113
- // so scan window for any matching property rather than hardcoding names.
114
- for (const prop of Object.getOwnPropertyNames(window)) {
115
- if (prop.startsWith('cdc_') || prop.startsWith('__cdc_')) {
116
- try { delete window[prop]; } catch {}
117
- }
118
- }
119
- } catch {}
120
-
121
- // 7. CDP stack trace cleanup
122
- // Runtime.evaluate injects scripts whose source URLs appear in Error
123
- // stack traces (e.g. __puppeteer_evaluation_script__, pptr:, debugger://).
124
- // Websites detect automation by doing: new Error().stack and inspecting it.
125
- // We override the stack property getter on Error.prototype to filter them.
126
- // Note: Error.prepareStackTrace is V8/Node-only and not available in
127
- // browser page context, so we use a property descriptor approach instead.
128
- // We use generic protocol patterns instead of product-specific names to
129
- // also catch our own injected code frames without leaking identifiers.
130
- try {
131
- const _origDescriptor = Object.getOwnPropertyDescriptor(Error.prototype, 'stack');
132
- const _cdpPatterns = [
133
- 'puppeteer_evaluation_script',
134
- 'pptr:',
135
- 'debugger://',
136
- '__playwright',
137
- '__puppeteer',
138
- ];
139
- if (_origDescriptor && _origDescriptor.get) {
140
- Object.defineProperty(Error.prototype, 'stack', {
141
- get: function () {
142
- const raw = _origDescriptor.get.call(this);
143
- if (typeof raw !== 'string') return raw;
144
- return raw.split('\\n').filter(line =>
145
- !_cdpPatterns.some(p => line.includes(p))
146
- ).join('\\n');
147
- },
148
- configurable: true,
149
- });
150
- }
151
- } catch {}
152
-
153
- // ── Shared toString disguise infrastructure ──
154
- // Save the pristine Function.prototype.toString BEFORE any patches,
155
- // so all subsequent disguises use the real native reference.
156
- // Anti-bot scripts detect per-instance toString overrides via:
157
- // Function.hasOwnProperty('toString') → true if patched
158
- // Function.prototype.toString.call(fn) !== fn.toString()
159
- // Instead we patch Function.prototype.toString once with a WeakMap
160
- // lookup, making disguised functions indistinguishable from native.
161
- const _origToString = Function.prototype.toString;
162
- const _disguised = new WeakMap();
163
- try {
164
- Object.defineProperty(Function.prototype, 'toString', {
165
- value: function() {
166
- const override = _disguised.get(this);
167
- return override !== undefined ? override : _origToString.call(this);
168
- },
169
- writable: true, configurable: true,
170
- });
171
- } catch {}
172
- const _disguise = (fn, name) => {
173
- _disguised.set(fn, 'function ' + name + '() { [native code] }');
174
- try { Object.defineProperty(fn, 'name', { value: name, configurable: true }); } catch {}
175
- return fn;
176
- };
177
-
178
- // 8. Anti-debugger statement trap
179
- // Sites inject debugger statements to detect DevTools/CDP.
180
- // When a CDP debugger is attached, the statement pauses execution
181
- // and the site measures the time gap to confirm automation.
182
- // We neutralize this by overriding the Function constructor and
183
- // eval to strip debugger statements from dynamically created code.
184
- // Note: this does NOT affect static debugger statements in parsed
185
- // scripts — those require CDP Debugger.setBreakpointsActive(false)
186
- // which we handle at the extension level.
187
- // Caveat: the regex targets standalone debugger statements (preceded
188
- // by a statement boundary) to minimise false positives inside string
189
- // literals, but cannot perfectly distinguish all cases without a
190
- // full parser. This is an acceptable trade-off for stealth code.
191
- try {
192
- const _OrigFunction = Function;
193
- // Match standalone debugger statements preceded by a statement
194
- // boundary (start of string, semicolon, brace, or newline).
195
- // This avoids most false positives inside string literals like
196
- // "use debugger mode" while still catching the anti-bot patterns.
197
- const _debuggerRe = /(?:^|(?<=[;{}\\n\\r]))\\s*debugger\\s*;?/g;
198
- const _cleanDebugger = (src) => typeof src === 'string' ? src.replace(_debuggerRe, '') : src;
199
- // Patch Function constructor to strip debugger from dynamic code.
200
- // Support both Function('code') and new Function('code') via
201
- // new.target / Reflect.construct.
202
- const _PatchedFunction = function(...args) {
203
- if (args.length > 0) {
204
- args[args.length - 1] = _cleanDebugger(args[args.length - 1]);
205
- }
206
- if (new.target) {
207
- return Reflect.construct(_OrigFunction, args, new.target);
208
- }
209
- return _OrigFunction.apply(this, args);
210
- };
211
- _PatchedFunction.prototype = _OrigFunction.prototype;
212
- Object.setPrototypeOf(_PatchedFunction, _OrigFunction);
213
- _disguise(_PatchedFunction, 'Function');
214
- try { window.Function = _PatchedFunction; } catch {}
215
-
216
- // Patch eval to strip debugger
217
- const _origEval = window.eval;
218
- const _patchedEval = function(code) {
219
- return _origEval.call(this, _cleanDebugger(code));
220
- };
221
- _disguise(_patchedEval, 'eval');
222
- try { window.eval = _patchedEval; } catch {}
223
- } catch {}
224
-
225
- // 9. Console method fingerprinting defense
226
- // When CDP Runtime.enable is called, Chrome replaces console.log etc.
227
- // with CDP-bound versions. These bound functions have a different
228
- // toString() output: "function log() { [native code] }" becomes
229
- // something like "function () { [native code] }" (no name) or the
230
- // bound function signature leaks. Anti-bot scripts check:
231
- // console.log.toString().includes('[native code]')
232
- // console.log.name === 'log'
233
- // We re-wrap console methods and register them via the shared
234
- // _disguise infrastructure so Function.prototype.toString.call()
235
- // also returns the correct native string.
236
- try {
237
- const _consoleMethods = ['log', 'warn', 'error', 'info', 'debug', 'table', 'trace', 'dir', 'group', 'groupEnd', 'groupCollapsed', 'clear', 'count', 'assert', 'profile', 'profileEnd', 'time', 'timeEnd', 'timeStamp'];
238
- for (const _m of _consoleMethods) {
239
- if (typeof console[_m] !== 'function') continue;
240
- const _origMethod = console[_m];
241
- const _nativeStr = 'function ' + _m + '() { [native code] }';
242
- // Only patch if toString is wrong (i.e. CDP has replaced it)
243
- try {
244
- const _currentStr = _origToString.call(_origMethod);
245
- if (_currentStr === _nativeStr) continue; // already looks native
246
- } catch {}
247
- const _wrapper = function() { return _origMethod.apply(console, arguments); };
248
- Object.defineProperty(_wrapper, 'length', { value: _origMethod.length || 0, configurable: true });
249
- _disguise(_wrapper, _m);
250
- try { console[_m] = _wrapper; } catch {}
251
- }
252
- } catch {}
253
-
254
- // 10. window.outerWidth/outerHeight defense
255
- // When DevTools or CDP debugger is attached, Chrome may alter the
256
- // window dimensions. Anti-bot scripts compare outerWidth/innerWidth
257
- // and outerHeight/innerHeight — a significant difference indicates
258
- // DevTools is open. We freeze the relationship so the delta stays
259
- // consistent with a normal browser window.
260
- // Thresholds: width delta > 100px or height delta > 200px indicates
261
- // a docked DevTools panel. When triggered, we report outerWidth
262
- // equal to innerWidth (normal for maximised windows) and
263
- // outerHeight as innerHeight + the captured "normal" delta (capped
264
- // to a reasonable range), so the result is plausible across OSes.
265
- try {
266
- const _normalWidthDelta = window.outerWidth - window.innerWidth;
267
- const _normalHeightDelta = window.outerHeight - window.innerHeight;
268
- // Only patch if the delta looks suspicious (e.g. DevTools docked)
269
- if (_normalWidthDelta > 100 || _normalHeightDelta > 200) {
270
- Object.defineProperty(window, 'outerWidth', {
271
- get: () => window.innerWidth,
272
- configurable: true,
273
- });
274
- // Use a clamped height offset (40-120px covers macOS ~78px,
275
- // Windows ~40px, and Linux ~37-50px title bar heights).
276
- const _heightOffset = Math.max(40, Math.min(120, _normalHeightDelta));
277
- Object.defineProperty(window, 'outerHeight', {
278
- get: () => window.innerHeight + _heightOffset,
279
- configurable: true,
280
- });
281
- }
282
- } catch {}
283
-
284
- // 11. Performance API cleanup
285
- // CDP injects internal resources and timing entries that don't exist
286
- // in normal browsing. Filter entries with debugger/devtools URLs.
287
- try {
288
- const _origGetEntries = Performance.prototype.getEntries;
289
- const _origGetByType = Performance.prototype.getEntriesByType;
290
- const _origGetByName = Performance.prototype.getEntriesByName;
291
- const _suspiciousPatterns = ['debugger', 'devtools', '__puppeteer', '__playwright', 'pptr:'];
292
- const _filterEntries = (entries) => {
293
- if (!Array.isArray(entries)) return entries;
294
- return entries.filter(e => {
295
- const name = e.name || '';
296
- return !_suspiciousPatterns.some(p => name.includes(p));
297
- });
298
- };
299
- Performance.prototype.getEntries = function() {
300
- return _filterEntries(_origGetEntries.call(this));
301
- };
302
- Performance.prototype.getEntriesByType = function(type) {
303
- return _filterEntries(_origGetByType.call(this, type));
304
- };
305
- Performance.prototype.getEntriesByName = function(name, type) {
306
- return _filterEntries(_origGetByName.call(this, name, type));
307
- };
308
- } catch {}
309
-
310
- // 12. WebDriver-related property defense
311
- // Some anti-bot systems check additional navigator properties
312
- // and document properties that may indicate automation.
313
- try {
314
- // document.$cdc_ properties (ChromeDriver specific, backup for #6)
315
- for (const _prop of Object.getOwnPropertyNames(document)) {
316
- if (_prop.startsWith('$cdc_') || _prop.startsWith('$chrome_')) {
317
- try { delete document[_prop]; } catch {}
318
- }
319
- }
320
- } catch {}
321
-
322
- // 13. Iframe contentWindow.chrome consistency
323
- // Anti-bot scripts create iframes and check if
324
- // iframe.contentWindow.chrome exists and matches the parent.
325
- // CDP-controlled pages may have inconsistent iframe contexts.
326
- try {
327
- const _origHTMLIFrame = HTMLIFrameElement.prototype;
328
- const _origContentWindow = Object.getOwnPropertyDescriptor(_origHTMLIFrame, 'contentWindow');
329
- if (_origContentWindow && _origContentWindow.get) {
330
- Object.defineProperty(_origHTMLIFrame, 'contentWindow', {
331
- get: function() {
332
- const _w = _origContentWindow.get.call(this);
333
- if (_w) {
334
- try {
335
- if (!_w.chrome) {
336
- Object.defineProperty(_w, 'chrome', {
337
- value: window.chrome,
338
- writable: true,
339
- configurable: true,
340
- });
341
- }
342
- } catch {}
343
- }
344
- return _w;
345
- },
346
- configurable: true,
347
- });
348
- }
349
- } catch {}
350
-
351
- return 'applied';
352
- })()
353
- `;
354
- }
@@ -1,76 +0,0 @@
1
- /**
2
- * Browser tab management helpers: extract, diff, and cleanup tab state.
3
- */
4
-
5
- export function extractTabEntries(raw: unknown): Array<{ index: number; identity: string }> {
6
- if (Array.isArray(raw)) {
7
- return raw.map((tab: Record<string, unknown>, index: number) => ({
8
- index,
9
- identity: [
10
- tab?.id ?? '',
11
- tab?.url ?? '',
12
- tab?.title ?? '',
13
- tab?.name ?? '',
14
- ].join('|'),
15
- }));
16
- }
17
-
18
- if (typeof raw === 'string') {
19
- return raw
20
- .split('\n')
21
- .map(line => line.trim())
22
- .filter(Boolean)
23
- .map(line => {
24
- // Match tab list format: "- 0: (current) [title](url)" or "- 1: [title](url)"
25
- const tabMatch = line.match(/^-\s+(\d+):\s*(.*)$/);
26
- if (tabMatch) {
27
- return {
28
- index: parseInt(tabMatch[1], 10),
29
- identity: tabMatch[2].trim() || `tab-${tabMatch[1]}`,
30
- };
31
- }
32
- // Legacy format: "Tab 0 ..."
33
- const legacyMatch = line.match(/Tab\s+(\d+)\s*(.*)$/);
34
- if (legacyMatch) {
35
- return {
36
- index: parseInt(legacyMatch[1], 10),
37
- identity: legacyMatch[2].trim() || `tab-${legacyMatch[1]}`,
38
- };
39
- }
40
- return null;
41
- })
42
- .filter((entry): entry is { index: number; identity: string } => entry !== null);
43
- }
44
-
45
- return [];
46
- }
47
-
48
- export function extractTabIdentities(raw: unknown): string[] {
49
- return extractTabEntries(raw).map(tab => tab.identity);
50
- }
51
-
52
- export function diffTabIndexes(initialIdentities: string[], currentTabs: Array<{ index: number; identity: string }>): number[] {
53
- if (initialIdentities.length === 0 || currentTabs.length === 0) return [];
54
- const remaining = new Map<string, number>();
55
- for (const identity of initialIdentities) {
56
- remaining.set(identity, (remaining.get(identity) ?? 0) + 1);
57
- }
58
-
59
- const tabsToClose: number[] = [];
60
- for (const tab of currentTabs) {
61
- const count = remaining.get(tab.identity) ?? 0;
62
- if (count > 0) {
63
- remaining.set(tab.identity, count - 1);
64
- continue;
65
- }
66
- tabsToClose.push(tab.index);
67
- }
68
-
69
- return tabsToClose.sort((a, b) => b - a);
70
- }
71
-
72
- export function appendLimited(current: string, chunk: string, limit: number): string {
73
- const next = current + chunk;
74
- if (next.length <= limit) return next;
75
- return next.slice(-limit);
76
- }
@@ -1,27 +0,0 @@
1
- /**
2
- * Utility functions for browser operations
3
- */
4
-
5
- /**
6
- * Wrap JS code for CDP Runtime.evaluate:
7
- * - Already an IIFE `(...)()` → send as-is
8
- * - Arrow/function literal → wrap as IIFE `(code)()`
9
- * - `new Promise(...)` or raw expression → send as-is (expression)
10
- */
11
- export function wrapForEval(js: string): string {
12
- if (typeof js !== 'string') return 'undefined';
13
- const code = js.trim();
14
- if (!code) return 'undefined';
15
-
16
- // Already an IIFE: `(async () => { ... })()` or `(function() {...})()`
17
- if (/^\([\s\S]*\)\s*\(.*\)\s*$/.test(code)) return code;
18
-
19
- // Arrow function: `() => ...` or `async () => ...`
20
- if (/^(async\s+)?(\([^)]*\)|[A-Za-z_]\w*)\s*=>/.test(code)) return `(${code})()`;
21
-
22
- // Function declaration: `function ...` or `async function ...`
23
- if (/^(async\s+)?function[\s(]/.test(code)) return `(${code})()`;
24
-
25
- // Everything else: bare expression, `new Promise(...)`, etc. → evaluate directly
26
- return code;
27
- }
@@ -1,195 +0,0 @@
1
- import { describe, it, expect, vi } from 'vitest';
2
- import { BrowserBridge, generateStealthJs } from './browser/index.js';
3
- import { extractTabEntries, diffTabIndexes, appendLimited } from './browser/tabs.js';
4
- import { withTimeoutMs } from './runtime.js';
5
- import { __test__ as cdpTest } from './browser/cdp.js';
6
- import { isRetryableSettleError } from './browser/page.js';
7
- import * as daemonClient from './browser/daemon-client.js';
8
-
9
- describe('browser helpers', () => {
10
- it('extracts tab entries from string snapshots', () => {
11
- const entries = extractTabEntries('Tab 0 https://example.com\nTab 1 Chrome Extension');
12
-
13
- expect(entries).toEqual([
14
- { index: 0, identity: 'https://example.com' },
15
- { index: 1, identity: 'Chrome Extension' },
16
- ]);
17
- });
18
-
19
- it('extracts tab entries from MCP markdown format', () => {
20
- const entries = extractTabEntries(
21
- '- 0: (current) [Playwright MCP extension](chrome-extension://abc/connect.html)\n- 1: [知乎 - 首页](https://www.zhihu.com/)'
22
- );
23
-
24
- expect(entries).toEqual([
25
- { index: 0, identity: '(current) [Playwright MCP extension](chrome-extension://abc/connect.html)' },
26
- { index: 1, identity: '[知乎 - 首页](https://www.zhihu.com/)' },
27
- ]);
28
- });
29
-
30
- it('closes only tabs that were opened during the session', () => {
31
- const tabsToClose = diffTabIndexes(
32
- ['https://example.com', 'Chrome Extension'],
33
- [
34
- { index: 0, identity: 'https://example.com' },
35
- { index: 1, identity: 'Chrome Extension' },
36
- { index: 2, identity: 'https://target.example/page' },
37
- { index: 3, identity: 'chrome-extension://bridge' },
38
- ],
39
- );
40
-
41
- expect(tabsToClose).toEqual([3, 2]);
42
- });
43
-
44
- it('keeps only the tail of stderr buffers', () => {
45
- expect(appendLimited('12345', '67890', 8)).toBe('34567890');
46
- });
47
-
48
- it('times out slow promises', async () => {
49
- await expect(withTimeoutMs(new Promise(() => {}), 10, 'timeout')).rejects.toThrow('timeout');
50
- });
51
-
52
- it('retries settle only for target-invalidated errors', () => {
53
- expect(isRetryableSettleError(new Error('{"code":-32000,"message":"Inspected target navigated or closed"}'))).toBe(true);
54
- expect(isRetryableSettleError(new Error('attach failed: target no longer exists'))).toBe(false);
55
- expect(isRetryableSettleError(new Error('malformed exec payload'))).toBe(false);
56
- });
57
-
58
- it('prefers the real Electron app target over DevTools and blank pages', () => {
59
- const target = cdpTest.selectCDPTarget([
60
- {
61
- type: 'page',
62
- title: 'DevTools - localhost:9224',
63
- url: 'devtools://devtools/bundled/inspector.html',
64
- webSocketDebuggerUrl: 'ws://127.0.0.1:9224/devtools',
65
- },
66
- {
67
- type: 'page',
68
- title: '',
69
- url: 'about:blank',
70
- webSocketDebuggerUrl: 'ws://127.0.0.1:9224/blank',
71
- },
72
- {
73
- type: 'app',
74
- title: 'Antigravity',
75
- url: 'http://localhost:3000/',
76
- webSocketDebuggerUrl: 'ws://127.0.0.1:9224/app',
77
- },
78
- ]);
79
-
80
- expect(target?.webSocketDebuggerUrl).toBe('ws://127.0.0.1:9224/app');
81
- });
82
-
83
- it('honors OPENCLI_CDP_TARGET when multiple inspectable targets exist', () => {
84
- vi.stubEnv('OPENCLI_CDP_TARGET', 'codex');
85
-
86
- const target = cdpTest.selectCDPTarget([
87
- {
88
- type: 'app',
89
- title: 'Cursor',
90
- url: 'http://localhost:3000/cursor',
91
- webSocketDebuggerUrl: 'ws://127.0.0.1:9226/cursor',
92
- },
93
- {
94
- type: 'app',
95
- title: 'OpenAI Codex',
96
- url: 'http://localhost:3000/codex',
97
- webSocketDebuggerUrl: 'ws://127.0.0.1:9226/codex',
98
- },
99
- ]);
100
-
101
- expect(target?.webSocketDebuggerUrl).toBe('ws://127.0.0.1:9226/codex');
102
- });
103
- });
104
-
105
- describe('BrowserBridge state', () => {
106
- it('transitions to closed after close()', async () => {
107
- const bridge = new BrowserBridge();
108
-
109
- expect(bridge.state).toBe('idle');
110
-
111
- await bridge.close();
112
-
113
- expect(bridge.state).toBe('closed');
114
- });
115
-
116
- it('rejects connect() after the session has been closed', async () => {
117
- const bridge = new BrowserBridge();
118
- await bridge.close();
119
-
120
- await expect(bridge.connect()).rejects.toThrow('Session is closed');
121
- });
122
-
123
- it('rejects connect() while already connecting', async () => {
124
- const bridge = new BrowserBridge();
125
- (bridge as any)._state = 'connecting';
126
-
127
- await expect(bridge.connect()).rejects.toThrow('Already connecting');
128
- });
129
-
130
- it('rejects connect() while closing', async () => {
131
- const bridge = new BrowserBridge();
132
- (bridge as any)._state = 'closing';
133
-
134
- await expect(bridge.connect()).rejects.toThrow('Session is closing');
135
- });
136
-
137
- it('fails fast when daemon is running but extension is disconnected', async () => {
138
- vi.spyOn(daemonClient, 'isExtensionConnected').mockResolvedValue(false);
139
- vi.spyOn(daemonClient, 'fetchDaemonStatus').mockResolvedValue({ extensionConnected: false } as any);
140
-
141
- const bridge = new BrowserBridge();
142
-
143
- await expect(bridge.connect({ timeout: 0.1 })).rejects.toThrow('Browser Extension is not connected');
144
- });
145
- });
146
-
147
- describe('stealth anti-detection', () => {
148
- it('generates non-empty JS string', () => {
149
- const js = generateStealthJs();
150
- expect(typeof js).toBe('string');
151
- expect(js.length).toBeGreaterThan(100);
152
- });
153
-
154
- it('contains all 7 anti-detection patches', () => {
155
- const js = generateStealthJs();
156
- // 1. webdriver
157
- expect(js).toContain('navigator');
158
- expect(js).toContain('webdriver');
159
- // 2. chrome stub
160
- expect(js).toContain('window.chrome');
161
- // 3. plugins
162
- expect(js).toContain('plugins');
163
- expect(js).toContain('PDF Viewer');
164
- // 4. languages
165
- expect(js).toContain('languages');
166
- // 5. permissions
167
- expect(js).toContain('Permissions');
168
- expect(js).toContain('notifications');
169
- // 6. automation artifacts (dynamic cdc_ scan)
170
- expect(js).toContain('__playwright');
171
- expect(js).toContain('__puppeteer');
172
- expect(js).toContain('getOwnPropertyNames');
173
- expect(js).toContain('cdc_');
174
- // 7. CDP stack trace cleanup
175
- expect(js).toContain('Error.prototype');
176
- expect(js).toContain('puppeteer_evaluation_script');
177
- expect(js).toContain('getOwnPropertyDescriptor');
178
- });
179
-
180
- it('includes guard flag to prevent double-injection', () => {
181
- const js = generateStealthJs();
182
- // Guard uses a non-enumerable property on a built-in prototype
183
- expect(js).toContain("EventTarget.prototype");
184
- // Guard should check early and return 'skipped'
185
- expect(js).toContain("return 'skipped'");
186
- // Normal path returns 'applied'
187
- expect(js).toContain("return 'applied'");
188
- });
189
-
190
- it('generates syntactically valid JS', () => {
191
- const js = generateStealthJs();
192
- // Should not throw when parsed
193
- expect(() => new Function(js)).not.toThrow();
194
- });
195
- });