@jackwener/opencli 1.7.7 → 1.7.9

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 (280) hide show
  1. package/README.md +49 -14
  2. package/README.zh-CN.md +30 -10
  3. package/cli-manifest.json +782 -55
  4. package/clis/36kr/news.js +1 -1
  5. package/clis/amazon/discussion.js +37 -6
  6. package/clis/amazon/discussion.test.js +147 -32
  7. package/clis/apple-podcasts/commands.test.js +4 -4
  8. package/clis/apple-podcasts/episodes.js +1 -1
  9. package/clis/apple-podcasts/search.js +1 -1
  10. package/clis/apple-podcasts/top.js +1 -1
  11. package/clis/arxiv/paper.js +1 -1
  12. package/clis/arxiv/search.js +1 -1
  13. package/clis/band/mentions.js +3 -3
  14. package/clis/bbc/news.js +1 -1
  15. package/clis/bilibili/subtitle.js +2 -2
  16. package/clis/bloomberg/businessweek.js +1 -1
  17. package/clis/bloomberg/economics.js +1 -1
  18. package/clis/bloomberg/industries.js +1 -1
  19. package/clis/bloomberg/main.js +1 -1
  20. package/clis/bloomberg/markets.js +1 -1
  21. package/clis/bloomberg/opinions.js +1 -1
  22. package/clis/bloomberg/politics.js +1 -1
  23. package/clis/bloomberg/tech.js +1 -1
  24. package/clis/boss/search.js +49 -8
  25. package/clis/boss/search.test.js +78 -0
  26. package/clis/boss/send.js +3 -3
  27. package/clis/chatgpt/image.js +37 -8
  28. package/clis/chatgpt/image.test.js +92 -0
  29. package/clis/chatgpt/utils.js +39 -6
  30. package/clis/chatgpt/utils.test.js +63 -0
  31. package/clis/chatgpt-app/ask.js +4 -20
  32. package/clis/chatgpt-app/ax.js +135 -2
  33. package/clis/chatgpt-app/ax.test.js +35 -0
  34. package/clis/chatgpt-app/model.js +1 -1
  35. package/clis/chatgpt-app/new.js +1 -1
  36. package/clis/chatgpt-app/read.js +1 -1
  37. package/clis/chatgpt-app/send.js +3 -22
  38. package/clis/chatgpt-app/status.js +1 -1
  39. package/clis/chatwise/ask.js +2 -2
  40. package/clis/chatwise/model.js +2 -2
  41. package/clis/chatwise/send.js +2 -2
  42. package/clis/claude/ask.js +128 -0
  43. package/clis/claude/ask.test.js +338 -0
  44. package/clis/claude/commands.test.js +118 -0
  45. package/clis/claude/detail.js +29 -0
  46. package/clis/claude/history.js +31 -0
  47. package/clis/claude/new.js +21 -0
  48. package/clis/claude/read.js +24 -0
  49. package/clis/claude/send.js +41 -0
  50. package/clis/claude/status.js +24 -0
  51. package/clis/claude/utils.js +440 -0
  52. package/clis/claude/utils.test.js +148 -0
  53. package/clis/codex/ask.js +2 -2
  54. package/clis/codex/send.js +2 -2
  55. package/clis/ctrip/search.js +1 -1
  56. package/clis/ctrip/search.test.js +4 -4
  57. package/clis/cursor/ask.js +2 -2
  58. package/clis/cursor/composer.js +2 -2
  59. package/clis/cursor/send.js +2 -2
  60. package/clis/deepseek/ask.js +49 -10
  61. package/clis/deepseek/ask.test.js +150 -3
  62. package/clis/deepseek/utils.js +60 -22
  63. package/clis/deepseek/utils.test.js +124 -5
  64. package/clis/doubao/utils.js +53 -11
  65. package/clis/doubao/utils.test.js +22 -2
  66. package/clis/eastmoney/announcement.js +1 -1
  67. package/clis/eastmoney/convertible.js +1 -1
  68. package/clis/eastmoney/etf.js +1 -1
  69. package/clis/eastmoney/holders.js +1 -1
  70. package/clis/eastmoney/index-board.js +1 -1
  71. package/clis/eastmoney/kline.js +1 -1
  72. package/clis/eastmoney/kuaixun.js +1 -1
  73. package/clis/eastmoney/longhu.js +1 -1
  74. package/clis/eastmoney/money-flow.js +1 -1
  75. package/clis/eastmoney/northbound.js +1 -1
  76. package/clis/eastmoney/quote.js +1 -1
  77. package/clis/eastmoney/rank.js +1 -1
  78. package/clis/eastmoney/sectors.js +1 -1
  79. package/clis/facebook/marketplace-inbox.js +83 -0
  80. package/clis/facebook/marketplace-listings.js +83 -0
  81. package/clis/facebook/marketplace.test.js +91 -0
  82. package/clis/google/news.js +1 -1
  83. package/clis/google/suggest.js +1 -1
  84. package/clis/google/trends.js +1 -1
  85. package/clis/google-scholar/cite.js +74 -0
  86. package/clis/google-scholar/cite.test.js +47 -0
  87. package/clis/google-scholar/profile.js +92 -0
  88. package/clis/google-scholar/profile.test.js +49 -0
  89. package/clis/google-scholar/search.js +1 -1
  90. package/clis/google-scholar/search.test.js +15 -0
  91. package/clis/hf/top.js +1 -1
  92. package/clis/jd/item.js +679 -47
  93. package/clis/jd/item.test.js +318 -7
  94. package/clis/jd/item.test.ts +517 -0
  95. package/clis/lesswrong/comments.js +1 -1
  96. package/clis/lesswrong/curated.js +1 -1
  97. package/clis/lesswrong/frontpage.js +1 -1
  98. package/clis/lesswrong/new.js +1 -1
  99. package/clis/lesswrong/read.js +1 -1
  100. package/clis/lesswrong/sequences.js +1 -1
  101. package/clis/lesswrong/shortform.js +1 -1
  102. package/clis/lesswrong/tag.js +1 -1
  103. package/clis/lesswrong/tags.js +1 -1
  104. package/clis/lesswrong/top-month.js +1 -1
  105. package/clis/lesswrong/top-week.js +1 -1
  106. package/clis/lesswrong/top-year.js +1 -1
  107. package/clis/lesswrong/top.js +1 -1
  108. package/clis/lesswrong/user-posts.js +1 -1
  109. package/clis/lesswrong/user.js +1 -1
  110. package/clis/paperreview/commands.test.js +6 -6
  111. package/clis/paperreview/feedback.js +1 -1
  112. package/clis/paperreview/review.js +1 -1
  113. package/clis/paperreview/submit.js +1 -1
  114. package/clis/powerchina/search.js +250 -0
  115. package/clis/powerchina/search.test.js +67 -0
  116. package/clis/producthunt/posts.js +1 -1
  117. package/clis/producthunt/today.js +1 -1
  118. package/clis/sinablog/search.js +1 -1
  119. package/clis/sinafinance/news.js +1 -1
  120. package/clis/sinafinance/stock.js +6 -3
  121. package/clis/sinafinance/stock.test.js +59 -0
  122. package/clis/spotify/spotify.js +6 -6
  123. package/clis/substack/search.js +1 -1
  124. package/clis/toutiao/articles.js +80 -0
  125. package/clis/toutiao/articles.test.js +30 -0
  126. package/clis/twitter/followers.js +2 -2
  127. package/clis/twitter/following.js +224 -73
  128. package/clis/twitter/following.test.js +277 -0
  129. package/clis/twitter/post.js +184 -47
  130. package/clis/twitter/post.test.js +114 -34
  131. package/clis/uiverse/_shared.js +63 -4
  132. package/clis/uiverse/_shared.test.js +7 -0
  133. package/clis/uiverse/code.js +1 -0
  134. package/clis/uiverse/navigation.test.js +12 -0
  135. package/clis/uiverse/preview.js +1 -0
  136. package/clis/web/read.js +319 -81
  137. package/clis/web/read.test.js +221 -5
  138. package/clis/weibo/favorites.js +169 -0
  139. package/clis/weibo/favorites.test.js +114 -0
  140. package/clis/weibo/publish.js +282 -0
  141. package/clis/weibo/publish.test.js +183 -0
  142. package/clis/weixin/create-draft.js +225 -0
  143. package/clis/weixin/drafts.js +65 -0
  144. package/clis/weixin/drafts.test.js +65 -0
  145. package/clis/weread/ranking.js +1 -1
  146. package/clis/weread/search-regression.test.js +8 -8
  147. package/clis/weread/search.js +1 -1
  148. package/clis/wikipedia/random.js +1 -1
  149. package/clis/wikipedia/search.js +1 -1
  150. package/clis/wikipedia/summary.js +1 -1
  151. package/clis/wikipedia/trending.js +1 -1
  152. package/clis/xianyu/chat.js +3 -3
  153. package/clis/xianyu/item.js +2 -2
  154. package/clis/xianyu/item.test.js +3 -3
  155. package/clis/xiaohongshu/search.js +17 -2
  156. package/clis/xiaohongshu/search.test.js +37 -1
  157. package/clis/xiaoyuzhou/download.js +1 -1
  158. package/clis/xiaoyuzhou/download.test.js +3 -3
  159. package/clis/xiaoyuzhou/episode.js +1 -1
  160. package/clis/xiaoyuzhou/podcast-episodes.js +1 -1
  161. package/clis/xiaoyuzhou/podcast-episodes.test.js +2 -2
  162. package/clis/xiaoyuzhou/podcast.js +1 -1
  163. package/clis/xiaoyuzhou/transcript.js +1 -1
  164. package/clis/xiaoyuzhou/transcript.test.js +5 -5
  165. package/clis/yollomi/models.js +1 -1
  166. package/clis/youtube/channel.js +24 -1
  167. package/clis/youtube/channel.test.js +59 -0
  168. package/clis/zhihu/answer.js +21 -162
  169. package/clis/zhihu/answer.test.js +26 -53
  170. package/clis/zhihu/collection.js +197 -0
  171. package/clis/zhihu/collection.test.js +290 -0
  172. package/clis/zhihu/collections.js +127 -0
  173. package/clis/zhihu/collections.test.js +182 -0
  174. package/clis/zhihu/comment.js +24 -305
  175. package/clis/zhihu/comment.test.js +31 -35
  176. package/clis/zhihu/favorite.js +44 -182
  177. package/clis/zhihu/favorite.test.js +30 -167
  178. package/clis/zhihu/follow.js +25 -56
  179. package/clis/zhihu/follow.test.js +20 -23
  180. package/clis/zhihu/like.js +22 -67
  181. package/clis/zhihu/like.test.js +19 -42
  182. package/clis/zhihu/search.js +3 -2
  183. package/clis/zhihu/write-shared.js +8 -1
  184. package/clis/zhihu/write-shared.test.js +1 -0
  185. package/clis/zlibrary/commands.test.js +75 -0
  186. package/clis/zlibrary/info.js +47 -0
  187. package/clis/zlibrary/search.js +46 -0
  188. package/clis/zlibrary/utils.js +136 -0
  189. package/dist/src/adapter-source.d.ts +11 -0
  190. package/dist/src/adapter-source.js +24 -0
  191. package/dist/src/adapter-source.test.js +29 -0
  192. package/dist/src/browser/base-page.d.ts +3 -1
  193. package/dist/src/browser/base-page.js +76 -1
  194. package/dist/src/browser/base-page.test.d.ts +1 -0
  195. package/dist/src/browser/base-page.test.js +74 -0
  196. package/dist/src/browser/bridge.d.ts +1 -0
  197. package/dist/src/browser/bridge.js +36 -9
  198. package/dist/src/browser/cdp.d.ts +1 -0
  199. package/dist/src/browser/cdp.js +3 -3
  200. package/dist/src/browser/daemon-client.d.ts +38 -4
  201. package/dist/src/browser/daemon-client.js +24 -7
  202. package/dist/src/browser/daemon-client.test.js +49 -0
  203. package/dist/src/browser/errors.js +3 -0
  204. package/dist/src/browser/errors.test.js +3 -0
  205. package/dist/src/browser/network-cache.d.ts +1 -0
  206. package/dist/src/browser/page.d.ts +3 -1
  207. package/dist/src/browser/page.js +10 -2
  208. package/dist/src/browser/profile.d.ts +14 -0
  209. package/dist/src/browser/profile.js +85 -0
  210. package/dist/src/build-manifest.d.ts +2 -0
  211. package/dist/src/build-manifest.js +13 -3
  212. package/dist/src/build-manifest.test.js +20 -2
  213. package/dist/src/cli.d.ts +6 -0
  214. package/dist/src/cli.js +462 -32
  215. package/dist/src/cli.test.js +209 -2
  216. package/dist/src/commanderAdapter.js +29 -9
  217. package/dist/src/commanderAdapter.test.js +78 -2
  218. package/dist/src/commands/daemon.js +6 -0
  219. package/dist/src/completion-shared.js +1 -2
  220. package/dist/src/completion.test.js +3 -2
  221. package/dist/src/daemon.js +125 -41
  222. package/dist/src/doctor.d.ts +4 -6
  223. package/dist/src/doctor.js +80 -22
  224. package/dist/src/doctor.test.js +82 -0
  225. package/dist/src/engine.test.js +6 -5
  226. package/dist/src/errors.d.ts +14 -8
  227. package/dist/src/errors.js +36 -30
  228. package/dist/src/errors.test.js +5 -5
  229. package/dist/src/execution.d.ts +4 -0
  230. package/dist/src/execution.js +173 -25
  231. package/dist/src/execution.test.js +171 -1
  232. package/dist/src/main.js +10 -0
  233. package/dist/src/observation/artifact.d.ts +16 -0
  234. package/dist/src/observation/artifact.js +260 -0
  235. package/dist/src/observation/artifact.test.d.ts +1 -0
  236. package/dist/src/observation/artifact.test.js +121 -0
  237. package/dist/src/observation/events.d.ts +89 -0
  238. package/dist/src/observation/events.js +1 -0
  239. package/dist/src/observation/index.d.ts +7 -0
  240. package/dist/src/observation/index.js +7 -0
  241. package/dist/src/observation/manager.d.ts +9 -0
  242. package/dist/src/observation/manager.js +27 -0
  243. package/dist/src/observation/manager.test.d.ts +1 -0
  244. package/dist/src/observation/manager.test.js +13 -0
  245. package/dist/src/observation/redaction.d.ts +11 -0
  246. package/dist/src/observation/redaction.js +81 -0
  247. package/dist/src/observation/redaction.test.d.ts +1 -0
  248. package/dist/src/observation/redaction.test.js +32 -0
  249. package/dist/src/observation/retention.d.ts +32 -0
  250. package/dist/src/observation/retention.js +160 -0
  251. package/dist/src/observation/retention.test.d.ts +1 -0
  252. package/dist/src/observation/retention.test.js +118 -0
  253. package/dist/src/observation/ring-buffer.d.ts +22 -0
  254. package/dist/src/observation/ring-buffer.js +45 -0
  255. package/dist/src/observation/ring-buffer.test.d.ts +1 -0
  256. package/dist/src/observation/ring-buffer.test.js +22 -0
  257. package/dist/src/observation/session.d.ts +25 -0
  258. package/dist/src/observation/session.js +50 -0
  259. package/dist/src/pipeline/executor.test.js +1 -0
  260. package/dist/src/pipeline/steps/download.test.js +1 -0
  261. package/dist/src/pipeline/steps/fetch.js +1 -21
  262. package/dist/src/pipeline/steps/fetch.test.js +6 -12
  263. package/dist/src/plugin-scaffold.js +1 -1
  264. package/dist/src/plugin-scaffold.test.js +1 -1
  265. package/dist/src/registry.d.ts +40 -9
  266. package/dist/src/registry.js +3 -1
  267. package/dist/src/runtime-detect.d.ts +10 -0
  268. package/dist/src/runtime-detect.js +19 -0
  269. package/dist/src/runtime-detect.test.js +12 -1
  270. package/dist/src/runtime.d.ts +2 -0
  271. package/dist/src/runtime.js +1 -0
  272. package/dist/src/types.d.ts +22 -0
  273. package/dist/src/update-check.d.ts +31 -1
  274. package/dist/src/update-check.js +62 -16
  275. package/dist/src/update-check.test.js +86 -1
  276. package/package.json +1 -1
  277. package/dist/src/diagnostic.d.ts +0 -63
  278. package/dist/src/diagnostic.js +0 -292
  279. package/dist/src/diagnostic.test.js +0 -302
  280. /package/dist/src/{diagnostic.test.d.ts → adapter-source.test.d.ts} +0 -0
package/cli-manifest.json CHANGED
@@ -3275,7 +3275,7 @@
3275
3275
  {
3276
3276
  "site": "boss",
3277
3277
  "name": "search",
3278
- "description": "BOSS直聘搜索职位",
3278
+ "description": "BOSS直聘搜索职位(不带关键词时返回为你推荐职位)",
3279
3279
  "domain": "www.zhipin.com",
3280
3280
  "strategy": "cookie",
3281
3281
  "browser": true,
@@ -3283,9 +3283,9 @@
3283
3283
  {
3284
3284
  "name": "query",
3285
3285
  "type": "str",
3286
- "required": true,
3286
+ "required": false,
3287
3287
  "positional": true,
3288
- "help": "Search keyword (e.g. AI agent, 前端)"
3288
+ "help": "Search keyword (optional, empty = recommended jobs)"
3289
3289
  },
3290
3290
  {
3291
3291
  "name": "city",
@@ -3299,7 +3299,7 @@
3299
3299
  "type": "str",
3300
3300
  "default": "",
3301
3301
  "required": false,
3302
- "help": "Experience: 应届/1年以内/1-3年/3-5年/5-10年/10年以上"
3302
+ "help": "Experience: 在校生(实习)/应届生(校招)/经验不限/1年以内/1-3年/3-5年/5-10年/10年以上"
3303
3303
  },
3304
3304
  {
3305
3305
  "name": "degree",
@@ -3322,6 +3322,13 @@
3322
3322
  "required": false,
3323
3323
  "help": "Industry code or name (e.g. 100020, 互联网)"
3324
3324
  },
3325
+ {
3326
+ "name": "jobType",
3327
+ "type": "str",
3328
+ "default": "",
3329
+ "required": false,
3330
+ "help": "Job type: 全职/兼职/实习(不传=不限,混合校招与实习)"
3331
+ },
3325
3332
  {
3326
3333
  "name": "page",
3327
3334
  "type": "int",
@@ -3346,6 +3353,7 @@
3346
3353
  "degree",
3347
3354
  "skills",
3348
3355
  "boss",
3356
+ "bossOnline",
3349
3357
  "security_id",
3350
3358
  "url"
3351
3359
  ],
@@ -3532,9 +3540,8 @@
3532
3540
  {
3533
3541
  "name": "op",
3534
3542
  "type": "str",
3535
- "default": "~/Pictures/chatgpt",
3536
3543
  "required": false,
3537
- "help": "Output directory"
3544
+ "help": "Output directory (default: ~/Pictures/chatgpt)"
3538
3545
  },
3539
3546
  {
3540
3547
  "name": "sd",
@@ -3852,6 +3859,208 @@
3852
3859
  "sourceFile": "chatwise/send.js",
3853
3860
  "navigateBefore": true
3854
3861
  },
3862
+ {
3863
+ "site": "claude",
3864
+ "name": "ask",
3865
+ "description": "Send a prompt to Claude and get the response",
3866
+ "domain": "claude.ai",
3867
+ "strategy": "cookie",
3868
+ "browser": true,
3869
+ "args": [
3870
+ {
3871
+ "name": "prompt",
3872
+ "type": "str",
3873
+ "required": true,
3874
+ "positional": true,
3875
+ "help": "Prompt to send"
3876
+ },
3877
+ {
3878
+ "name": "timeout",
3879
+ "type": "int",
3880
+ "default": 120,
3881
+ "required": false,
3882
+ "help": "Max seconds to wait for response"
3883
+ },
3884
+ {
3885
+ "name": "new",
3886
+ "type": "boolean",
3887
+ "default": false,
3888
+ "required": false,
3889
+ "help": "Start a new chat before sending"
3890
+ },
3891
+ {
3892
+ "name": "model",
3893
+ "type": "str",
3894
+ "default": "sonnet",
3895
+ "required": false,
3896
+ "help": "Model to use: sonnet, opus, or haiku",
3897
+ "choices": [
3898
+ "sonnet",
3899
+ "opus",
3900
+ "haiku"
3901
+ ]
3902
+ },
3903
+ {
3904
+ "name": "think",
3905
+ "type": "boolean",
3906
+ "default": false,
3907
+ "required": false,
3908
+ "help": "Enable Adaptive thinking"
3909
+ },
3910
+ {
3911
+ "name": "file",
3912
+ "type": "str",
3913
+ "required": false,
3914
+ "help": "Attach a file (image, PDF, text) with the prompt"
3915
+ }
3916
+ ],
3917
+ "columns": [
3918
+ "response"
3919
+ ],
3920
+ "timeout": 180,
3921
+ "type": "js",
3922
+ "modulePath": "claude/ask.js",
3923
+ "sourceFile": "claude/ask.js",
3924
+ "navigateBefore": false
3925
+ },
3926
+ {
3927
+ "site": "claude",
3928
+ "name": "detail",
3929
+ "description": "Open a Claude conversation by ID and read its messages",
3930
+ "domain": "claude.ai",
3931
+ "strategy": "cookie",
3932
+ "browser": true,
3933
+ "args": [
3934
+ {
3935
+ "name": "id",
3936
+ "type": "str",
3937
+ "required": true,
3938
+ "positional": true,
3939
+ "help": "Conversation ID (UUID from /chat/<id>)"
3940
+ }
3941
+ ],
3942
+ "columns": [
3943
+ "Index",
3944
+ "Role",
3945
+ "Text"
3946
+ ],
3947
+ "type": "js",
3948
+ "modulePath": "claude/detail.js",
3949
+ "sourceFile": "claude/detail.js",
3950
+ "navigateBefore": false
3951
+ },
3952
+ {
3953
+ "site": "claude",
3954
+ "name": "history",
3955
+ "description": "List conversation history from Claude /recents",
3956
+ "domain": "claude.ai",
3957
+ "strategy": "cookie",
3958
+ "browser": true,
3959
+ "args": [
3960
+ {
3961
+ "name": "limit",
3962
+ "type": "int",
3963
+ "default": 20,
3964
+ "required": false,
3965
+ "help": "Max conversations to show"
3966
+ }
3967
+ ],
3968
+ "columns": [
3969
+ "Index",
3970
+ "Id",
3971
+ "Title",
3972
+ "Url"
3973
+ ],
3974
+ "type": "js",
3975
+ "modulePath": "claude/history.js",
3976
+ "sourceFile": "claude/history.js",
3977
+ "navigateBefore": false
3978
+ },
3979
+ {
3980
+ "site": "claude",
3981
+ "name": "new",
3982
+ "description": "Start a new conversation in Claude",
3983
+ "domain": "claude.ai",
3984
+ "strategy": "cookie",
3985
+ "browser": true,
3986
+ "args": [],
3987
+ "columns": [
3988
+ "Status"
3989
+ ],
3990
+ "type": "js",
3991
+ "modulePath": "claude/new.js",
3992
+ "sourceFile": "claude/new.js",
3993
+ "navigateBefore": false
3994
+ },
3995
+ {
3996
+ "site": "claude",
3997
+ "name": "read",
3998
+ "description": "Read the current Claude conversation",
3999
+ "domain": "claude.ai",
4000
+ "strategy": "cookie",
4001
+ "browser": true,
4002
+ "args": [],
4003
+ "columns": [
4004
+ "Index",
4005
+ "Role",
4006
+ "Text"
4007
+ ],
4008
+ "type": "js",
4009
+ "modulePath": "claude/read.js",
4010
+ "sourceFile": "claude/read.js",
4011
+ "navigateBefore": false
4012
+ },
4013
+ {
4014
+ "site": "claude",
4015
+ "name": "send",
4016
+ "description": "Send a prompt to Claude without waiting for the response",
4017
+ "domain": "claude.ai",
4018
+ "strategy": "cookie",
4019
+ "browser": true,
4020
+ "args": [
4021
+ {
4022
+ "name": "prompt",
4023
+ "type": "str",
4024
+ "required": true,
4025
+ "positional": true,
4026
+ "help": "Prompt to send"
4027
+ },
4028
+ {
4029
+ "name": "new",
4030
+ "type": "boolean",
4031
+ "default": false,
4032
+ "required": false,
4033
+ "help": "Start a new chat before sending"
4034
+ }
4035
+ ],
4036
+ "columns": [
4037
+ "Status",
4038
+ "SubmittedBy",
4039
+ "InjectedText"
4040
+ ],
4041
+ "type": "js",
4042
+ "modulePath": "claude/send.js",
4043
+ "sourceFile": "claude/send.js",
4044
+ "navigateBefore": false
4045
+ },
4046
+ {
4047
+ "site": "claude",
4048
+ "name": "status",
4049
+ "description": "Check Claude page availability and login state",
4050
+ "domain": "claude.ai",
4051
+ "strategy": "cookie",
4052
+ "browser": true,
4053
+ "args": [],
4054
+ "columns": [
4055
+ "Status",
4056
+ "Login",
4057
+ "Url"
4058
+ ],
4059
+ "type": "js",
4060
+ "modulePath": "claude/status.js",
4061
+ "sourceFile": "claude/status.js",
4062
+ "navigateBefore": false
4063
+ },
3855
4064
  {
3856
4065
  "site": "cnki",
3857
4066
  "name": "search",
@@ -4381,10 +4590,11 @@
4381
4590
  "type": "str",
4382
4591
  "default": "instant",
4383
4592
  "required": false,
4384
- "help": "Model to use: instant or expert",
4593
+ "help": "Model to use: instant, expert, or vision",
4385
4594
  "choices": [
4386
4595
  "instant",
4387
- "expert"
4596
+ "expert",
4597
+ "vision"
4388
4598
  ]
4389
4599
  },
4390
4600
  {
@@ -6847,6 +7057,65 @@
6847
7057
  "sourceFile": "facebook/join-group.js",
6848
7058
  "navigateBefore": "https://www.facebook.com"
6849
7059
  },
7060
+ {
7061
+ "site": "facebook",
7062
+ "name": "marketplace-inbox",
7063
+ "description": "List recent Facebook Marketplace buyer/seller conversations",
7064
+ "domain": "www.facebook.com",
7065
+ "strategy": "cookie",
7066
+ "browser": true,
7067
+ "args": [
7068
+ {
7069
+ "name": "limit",
7070
+ "type": "int",
7071
+ "default": 20,
7072
+ "required": false,
7073
+ "help": "Number of conversations to return"
7074
+ }
7075
+ ],
7076
+ "columns": [
7077
+ "index",
7078
+ "buyer",
7079
+ "listing",
7080
+ "snippet",
7081
+ "time",
7082
+ "unread"
7083
+ ],
7084
+ "type": "js",
7085
+ "modulePath": "facebook/marketplace-inbox.js",
7086
+ "sourceFile": "facebook/marketplace-inbox.js",
7087
+ "navigateBefore": "https://www.facebook.com"
7088
+ },
7089
+ {
7090
+ "site": "facebook",
7091
+ "name": "marketplace-listings",
7092
+ "description": "List your Facebook Marketplace seller listings",
7093
+ "domain": "www.facebook.com",
7094
+ "strategy": "cookie",
7095
+ "browser": true,
7096
+ "args": [
7097
+ {
7098
+ "name": "limit",
7099
+ "type": "int",
7100
+ "default": 20,
7101
+ "required": false,
7102
+ "help": "Number of listings to return"
7103
+ }
7104
+ ],
7105
+ "columns": [
7106
+ "index",
7107
+ "title",
7108
+ "price",
7109
+ "status",
7110
+ "listed",
7111
+ "clicks",
7112
+ "actions"
7113
+ ],
7114
+ "type": "js",
7115
+ "modulePath": "facebook/marketplace-listings.js",
7116
+ "sourceFile": "facebook/marketplace-listings.js",
7117
+ "navigateBefore": "https://www.facebook.com"
7118
+ },
6850
7119
  {
6851
7120
  "site": "facebook",
6852
7121
  "name": "memories",
@@ -7393,8 +7662,8 @@
7393
7662
  },
7394
7663
  {
7395
7664
  "site": "google-scholar",
7396
- "name": "search",
7397
- "description": "Google Scholar 学术搜索",
7665
+ "name": "cite",
7666
+ "description": "Get citation for a Google Scholar paper",
7398
7667
  "domain": "scholar.google.com",
7399
7668
  "strategy": "public",
7400
7669
  "browser": true,
@@ -7404,61 +7673,141 @@
7404
7673
  "type": "str",
7405
7674
  "required": true,
7406
7675
  "positional": true,
7407
- "help": "搜索关键词"
7676
+ "help": "Paper title to search for"
7408
7677
  },
7409
7678
  {
7410
- "name": "limit",
7679
+ "name": "style",
7680
+ "type": "str",
7681
+ "default": "bibtex",
7682
+ "required": false,
7683
+ "help": "Citation format",
7684
+ "choices": [
7685
+ "bibtex",
7686
+ "endnote",
7687
+ "refman",
7688
+ "refworks"
7689
+ ]
7690
+ },
7691
+ {
7692
+ "name": "index",
7411
7693
  "type": "int",
7412
- "default": 10,
7694
+ "default": 1,
7413
7695
  "required": false,
7414
- "help": "返回结果数量 (max 20)"
7696
+ "help": "Which search result to cite (1-based)"
7415
7697
  }
7416
7698
  ],
7417
7699
  "columns": [
7418
- "rank",
7419
7700
  "title",
7420
- "authors",
7421
- "source",
7422
- "year",
7423
- "cited",
7424
- "url"
7701
+ "format",
7702
+ "citation"
7425
7703
  ],
7426
7704
  "type": "js",
7427
- "modulePath": "google-scholar/search.js",
7428
- "sourceFile": "google-scholar/search.js",
7705
+ "modulePath": "google-scholar/cite.js",
7706
+ "sourceFile": "google-scholar/cite.js",
7429
7707
  "navigateBefore": false
7430
7708
  },
7431
7709
  {
7432
- "site": "gov-law",
7433
- "name": "recent",
7434
- "description": "最新法律法规",
7435
- "domain": "flk.npc.gov.cn",
7710
+ "site": "google-scholar",
7711
+ "name": "profile",
7712
+ "description": "View a Google Scholar author profile",
7713
+ "domain": "scholar.google.com",
7436
7714
  "strategy": "public",
7437
7715
  "browser": true,
7438
7716
  "args": [
7717
+ {
7718
+ "name": "author",
7719
+ "type": "str",
7720
+ "required": true,
7721
+ "positional": true,
7722
+ "help": "Author name or Scholar user ID (e.g. JicYPdAAAAAJ)"
7723
+ },
7439
7724
  {
7440
7725
  "name": "limit",
7441
7726
  "type": "int",
7442
7727
  "default": 10,
7443
7728
  "required": false,
7444
- "help": "返回结果数量 (max 20)"
7729
+ "help": "Max papers to show (max 20)"
7445
7730
  }
7446
7731
  ],
7447
7732
  "columns": [
7448
7733
  "rank",
7449
7734
  "title",
7450
- "status",
7451
- "publish_date",
7452
- "type",
7453
- "department"
7735
+ "cited",
7736
+ "year"
7454
7737
  ],
7455
7738
  "type": "js",
7456
- "modulePath": "gov-law/recent.js",
7457
- "sourceFile": "gov-law/recent.js",
7739
+ "modulePath": "google-scholar/profile.js",
7740
+ "sourceFile": "google-scholar/profile.js",
7458
7741
  "navigateBefore": false
7459
7742
  },
7460
7743
  {
7461
- "site": "gov-law",
7744
+ "site": "google-scholar",
7745
+ "name": "search",
7746
+ "description": "Google Scholar 学术搜索",
7747
+ "domain": "scholar.google.com",
7748
+ "strategy": "public",
7749
+ "browser": true,
7750
+ "args": [
7751
+ {
7752
+ "name": "query",
7753
+ "type": "str",
7754
+ "required": true,
7755
+ "positional": true,
7756
+ "help": "搜索关键词"
7757
+ },
7758
+ {
7759
+ "name": "limit",
7760
+ "type": "int",
7761
+ "default": 10,
7762
+ "required": false,
7763
+ "help": "返回结果数量 (max 20)"
7764
+ }
7765
+ ],
7766
+ "columns": [
7767
+ "rank",
7768
+ "title",
7769
+ "authors",
7770
+ "source",
7771
+ "year",
7772
+ "cited",
7773
+ "url"
7774
+ ],
7775
+ "type": "js",
7776
+ "modulePath": "google-scholar/search.js",
7777
+ "sourceFile": "google-scholar/search.js",
7778
+ "navigateBefore": false
7779
+ },
7780
+ {
7781
+ "site": "gov-law",
7782
+ "name": "recent",
7783
+ "description": "最新法律法规",
7784
+ "domain": "flk.npc.gov.cn",
7785
+ "strategy": "public",
7786
+ "browser": true,
7787
+ "args": [
7788
+ {
7789
+ "name": "limit",
7790
+ "type": "int",
7791
+ "default": 10,
7792
+ "required": false,
7793
+ "help": "返回结果数量 (max 20)"
7794
+ }
7795
+ ],
7796
+ "columns": [
7797
+ "rank",
7798
+ "title",
7799
+ "status",
7800
+ "publish_date",
7801
+ "type",
7802
+ "department"
7803
+ ],
7804
+ "type": "js",
7805
+ "modulePath": "gov-law/recent.js",
7806
+ "sourceFile": "gov-law/recent.js",
7807
+ "navigateBefore": false
7808
+ },
7809
+ {
7810
+ "site": "gov-law",
7462
7811
  "name": "search",
7463
7812
  "description": "国家法律法规数据库搜索",
7464
7813
  "domain": "flk.npc.gov.cn",
@@ -9034,7 +9383,7 @@
9034
9383
  {
9035
9384
  "site": "jd",
9036
9385
  "name": "item",
9037
- "description": "京东商品详情(价格、店铺、规格参数、AVIF 图片)",
9386
+ "description": "京东商品详情(价格、店铺、规格参数、主图、详情图)",
9038
9387
  "domain": "item.jd.com",
9039
9388
  "strategy": "cookie",
9040
9389
  "browser": true,
@@ -9049,9 +9398,9 @@
9049
9398
  {
9050
9399
  "name": "images",
9051
9400
  "type": "int",
9052
- "default": 10,
9401
+ "default": 200,
9053
9402
  "required": false,
9054
- "help": "AVIF 图片数量上限(默认10)"
9403
+ "help": "图片数量上限(默认200)"
9055
9404
  }
9056
9405
  ],
9057
9406
  "columns": [
@@ -9059,7 +9408,8 @@
9059
9408
  "price",
9060
9409
  "shop",
9061
9410
  "specs",
9062
- "avifImages"
9411
+ "mainImages",
9412
+ "detailImages"
9063
9413
  ],
9064
9414
  "type": "js",
9065
9415
  "modulePath": "jd/item.js",
@@ -13039,6 +13389,43 @@
13039
13389
  "sourceFile": "pixiv/user.js",
13040
13390
  "navigateBefore": "https://www.pixiv.net"
13041
13391
  },
13392
+ {
13393
+ "site": "powerchina",
13394
+ "name": "search",
13395
+ "description": "搜索中国电建阳光采购公告",
13396
+ "domain": "bid.powerchina.cn",
13397
+ "strategy": "cookie",
13398
+ "browser": true,
13399
+ "args": [
13400
+ {
13401
+ "name": "query",
13402
+ "type": "str",
13403
+ "required": true,
13404
+ "positional": true,
13405
+ "help": "Search keyword, e.g. \"procurement\""
13406
+ },
13407
+ {
13408
+ "name": "limit",
13409
+ "type": "int",
13410
+ "default": 20,
13411
+ "required": false,
13412
+ "help": "Number of results (max 50)"
13413
+ }
13414
+ ],
13415
+ "columns": [
13416
+ "rank",
13417
+ "content_type",
13418
+ "title",
13419
+ "publish_time",
13420
+ "project_code",
13421
+ "budget_or_limit",
13422
+ "url"
13423
+ ],
13424
+ "type": "js",
13425
+ "modulePath": "powerchina/search.js",
13426
+ "sourceFile": "powerchina/search.js",
13427
+ "navigateBefore": "https://bid.powerchina.cn"
13428
+ },
13042
13429
  {
13043
13430
  "site": "producthunt",
13044
13431
  "name": "browse",
@@ -15593,6 +15980,36 @@
15593
15980
  "sourceFile": "tiktok/user.js",
15594
15981
  "navigateBefore": "https://www.tiktok.com"
15595
15982
  },
15983
+ {
15984
+ "site": "toutiao",
15985
+ "name": "articles",
15986
+ "description": "获取头条号创作者后台文章列表及数据",
15987
+ "domain": "mp.toutiao.com",
15988
+ "strategy": "cookie",
15989
+ "browser": true,
15990
+ "args": [
15991
+ {
15992
+ "name": "page",
15993
+ "type": "int",
15994
+ "default": 1,
15995
+ "required": false,
15996
+ "help": "页码 (1-4)"
15997
+ }
15998
+ ],
15999
+ "columns": [
16000
+ "title",
16001
+ "date",
16002
+ "status",
16003
+ "展现",
16004
+ "阅读",
16005
+ "点赞",
16006
+ "评论"
16007
+ ],
16008
+ "type": "js",
16009
+ "modulePath": "toutiao/articles.js",
16010
+ "sourceFile": "toutiao/articles.js",
16011
+ "navigateBefore": "https://mp.toutiao.com"
16012
+ },
15596
16013
  {
15597
16014
  "site": "twitter",
15598
16015
  "name": "accept",
@@ -15870,7 +16287,7 @@
15870
16287
  "name": "following",
15871
16288
  "description": "Get accounts a Twitter/X user is following",
15872
16289
  "domain": "x.com",
15873
- "strategy": "intercept",
16290
+ "strategy": "cookie",
15874
16291
  "browser": true,
15875
16292
  "args": [
15876
16293
  {
@@ -15897,7 +16314,7 @@
15897
16314
  "type": "js",
15898
16315
  "modulePath": "twitter/following.js",
15899
16316
  "sourceFile": "twitter/following.js",
15900
- "navigateBefore": true
16317
+ "navigateBefore": "https://x.com"
15901
16318
  },
15902
16319
  {
15903
16320
  "site": "twitter",
@@ -16616,7 +17033,8 @@
16616
17033
  ],
16617
17034
  "type": "js",
16618
17035
  "modulePath": "uiverse/code.js",
16619
- "sourceFile": "uiverse/code.js"
17036
+ "sourceFile": "uiverse/code.js",
17037
+ "navigateBefore": "https://uiverse.io"
16620
17038
  },
16621
17039
  {
16622
17040
  "site": "uiverse",
@@ -16656,7 +17074,8 @@
16656
17074
  ],
16657
17075
  "type": "js",
16658
17076
  "modulePath": "uiverse/preview.js",
16659
- "sourceFile": "uiverse/preview.js"
17077
+ "sourceFile": "uiverse/preview.js",
17078
+ "navigateBefore": "https://uiverse.io"
16660
17079
  },
16661
17080
  {
16662
17081
  "site": "v2ex",
@@ -17033,6 +17452,42 @@
17033
17452
  "required": false,
17034
17453
  "help": "Seconds to wait after page load"
17035
17454
  },
17455
+ {
17456
+ "name": "wait-for",
17457
+ "type": "str",
17458
+ "required": false,
17459
+ "valueRequired": true,
17460
+ "help": "CSS selector to wait for in the main document or same-origin iframes"
17461
+ },
17462
+ {
17463
+ "name": "wait-until",
17464
+ "type": "str",
17465
+ "default": "domstable",
17466
+ "required": false,
17467
+ "help": "Readiness policy after navigation: domstable or networkidle",
17468
+ "choices": [
17469
+ "domstable",
17470
+ "networkidle"
17471
+ ]
17472
+ },
17473
+ {
17474
+ "name": "frames",
17475
+ "type": "str",
17476
+ "default": "same-origin",
17477
+ "required": false,
17478
+ "help": "Iframe handling mode: same-origin or none",
17479
+ "choices": [
17480
+ "same-origin",
17481
+ "none"
17482
+ ]
17483
+ },
17484
+ {
17485
+ "name": "diagnose",
17486
+ "type": "boolean",
17487
+ "default": false,
17488
+ "required": false,
17489
+ "help": "Print render diagnostics (frames, empty containers, XHR/API-like requests) to stderr"
17490
+ },
17036
17491
  {
17037
17492
  "name": "stdout",
17038
17493
  "type": "boolean",
@@ -17090,6 +17545,37 @@
17090
17545
  "sourceFile": "weibo/comments.js",
17091
17546
  "navigateBefore": "https://weibo.com"
17092
17547
  },
17548
+ {
17549
+ "site": "weibo",
17550
+ "name": "favorites",
17551
+ "description": "我的微博收藏列表",
17552
+ "domain": "weibo.com",
17553
+ "strategy": "cookie",
17554
+ "browser": true,
17555
+ "args": [
17556
+ {
17557
+ "name": "limit",
17558
+ "type": "int",
17559
+ "default": 20,
17560
+ "required": false,
17561
+ "help": "数量(最多50)"
17562
+ }
17563
+ ],
17564
+ "columns": [
17565
+ "author",
17566
+ "text",
17567
+ "time",
17568
+ "source",
17569
+ "likes",
17570
+ "comments",
17571
+ "reposts",
17572
+ "url"
17573
+ ],
17574
+ "type": "js",
17575
+ "modulePath": "weibo/favorites.js",
17576
+ "sourceFile": "weibo/favorites.js",
17577
+ "navigateBefore": "https://weibo.com"
17578
+ },
17093
17579
  {
17094
17580
  "site": "weibo",
17095
17581
  "name": "feed",
@@ -17207,6 +17693,38 @@
17207
17693
  "sourceFile": "weibo/post.js",
17208
17694
  "navigateBefore": "https://weibo.com"
17209
17695
  },
17696
+ {
17697
+ "site": "weibo",
17698
+ "name": "publish",
17699
+ "description": "Publish a new Weibo post immediately",
17700
+ "domain": "weibo.com",
17701
+ "strategy": "ui",
17702
+ "browser": true,
17703
+ "args": [
17704
+ {
17705
+ "name": "text",
17706
+ "type": "string",
17707
+ "required": true,
17708
+ "positional": true,
17709
+ "help": "Weibo text content (max 2000 chars)"
17710
+ },
17711
+ {
17712
+ "name": "images",
17713
+ "type": "string",
17714
+ "required": false,
17715
+ "help": "Image paths, comma-separated, max 9 (jpg/png/gif/webp)"
17716
+ }
17717
+ ],
17718
+ "columns": [
17719
+ "status",
17720
+ "message",
17721
+ "text"
17722
+ ],
17723
+ "type": "js",
17724
+ "modulePath": "weibo/publish.js",
17725
+ "sourceFile": "weibo/publish.js",
17726
+ "navigateBefore": true
17727
+ },
17210
17728
  {
17211
17729
  "site": "weibo",
17212
17730
  "name": "search",
@@ -17274,6 +17792,56 @@
17274
17792
  "sourceFile": "weibo/user.js",
17275
17793
  "navigateBefore": "https://weibo.com"
17276
17794
  },
17795
+ {
17796
+ "site": "weixin",
17797
+ "name": "create-draft",
17798
+ "description": "创建微信公众号图文草稿",
17799
+ "domain": "mp.weixin.qq.com",
17800
+ "strategy": "cookie",
17801
+ "browser": true,
17802
+ "args": [
17803
+ {
17804
+ "name": "title",
17805
+ "type": "str",
17806
+ "required": true,
17807
+ "help": "文章标题 (最长64字)"
17808
+ },
17809
+ {
17810
+ "name": "content",
17811
+ "type": "str",
17812
+ "required": true,
17813
+ "positional": true,
17814
+ "help": "文章正文"
17815
+ },
17816
+ {
17817
+ "name": "author",
17818
+ "type": "str",
17819
+ "required": false,
17820
+ "help": "作者名 (最长8字)"
17821
+ },
17822
+ {
17823
+ "name": "cover-image",
17824
+ "type": "str",
17825
+ "required": false,
17826
+ "help": "封面图片路径 (会先上传到正文再设为封面)"
17827
+ },
17828
+ {
17829
+ "name": "summary",
17830
+ "type": "str",
17831
+ "required": false,
17832
+ "help": "文章摘要"
17833
+ }
17834
+ ],
17835
+ "columns": [
17836
+ "status",
17837
+ "detail"
17838
+ ],
17839
+ "timeout": 180,
17840
+ "type": "js",
17841
+ "modulePath": "weixin/create-draft.js",
17842
+ "sourceFile": "weixin/create-draft.js",
17843
+ "navigateBefore": false
17844
+ },
17277
17845
  {
17278
17846
  "site": "weixin",
17279
17847
  "name": "download",
@@ -17316,6 +17884,33 @@
17316
17884
  "sourceFile": "weixin/download.js",
17317
17885
  "navigateBefore": "https://mp.weixin.qq.com"
17318
17886
  },
17887
+ {
17888
+ "site": "weixin",
17889
+ "name": "drafts",
17890
+ "description": "列出微信公众号草稿箱",
17891
+ "domain": "mp.weixin.qq.com",
17892
+ "strategy": "cookie",
17893
+ "browser": true,
17894
+ "args": [
17895
+ {
17896
+ "name": "limit",
17897
+ "type": "int",
17898
+ "default": 10,
17899
+ "required": false,
17900
+ "help": "最多显示条数"
17901
+ }
17902
+ ],
17903
+ "columns": [
17904
+ "Index",
17905
+ "Title",
17906
+ "Time"
17907
+ ],
17908
+ "timeout": 60,
17909
+ "type": "js",
17910
+ "modulePath": "weixin/drafts.js",
17911
+ "sourceFile": "weixin/drafts.js",
17912
+ "navigateBefore": false
17913
+ },
17319
17914
  {
17320
17915
  "site": "weread",
17321
17916
  "name": "ai-outline",
@@ -20056,7 +20651,7 @@
20056
20651
  "name": "answer",
20057
20652
  "description": "Answer a Zhihu question",
20058
20653
  "domain": "www.zhihu.com",
20059
- "strategy": "ui",
20654
+ "strategy": "cookie",
20060
20655
  "browser": true,
20061
20656
  "args": [
20062
20657
  {
@@ -20099,14 +20694,86 @@
20099
20694
  "type": "js",
20100
20695
  "modulePath": "zhihu/answer.js",
20101
20696
  "sourceFile": "zhihu/answer.js",
20102
- "navigateBefore": true
20697
+ "navigateBefore": "https://www.zhihu.com"
20698
+ },
20699
+ {
20700
+ "site": "zhihu",
20701
+ "name": "collection",
20702
+ "description": "知乎收藏夹内容列表(需要登录)",
20703
+ "domain": "www.zhihu.com",
20704
+ "strategy": "cookie",
20705
+ "browser": true,
20706
+ "args": [
20707
+ {
20708
+ "name": "id",
20709
+ "type": "str",
20710
+ "required": true,
20711
+ "positional": true,
20712
+ "help": "收藏夹 ID (数字,可从收藏夹 URL 中获取)"
20713
+ },
20714
+ {
20715
+ "name": "offset",
20716
+ "type": "int",
20717
+ "default": 0,
20718
+ "required": false,
20719
+ "help": "起始偏移量(用于分页)"
20720
+ },
20721
+ {
20722
+ "name": "limit",
20723
+ "type": "int",
20724
+ "default": 20,
20725
+ "required": false,
20726
+ "help": "每页数量(最大 20)"
20727
+ }
20728
+ ],
20729
+ "columns": [
20730
+ "rank",
20731
+ "type",
20732
+ "title",
20733
+ "author",
20734
+ "votes",
20735
+ "excerpt",
20736
+ "url"
20737
+ ],
20738
+ "type": "js",
20739
+ "modulePath": "zhihu/collection.js",
20740
+ "sourceFile": "zhihu/collection.js",
20741
+ "navigateBefore": "https://www.zhihu.com"
20742
+ },
20743
+ {
20744
+ "site": "zhihu",
20745
+ "name": "collections",
20746
+ "description": "知乎收藏夹列表(需要登录)",
20747
+ "domain": "www.zhihu.com",
20748
+ "strategy": "cookie",
20749
+ "browser": true,
20750
+ "args": [
20751
+ {
20752
+ "name": "limit",
20753
+ "type": "int",
20754
+ "default": 20,
20755
+ "required": false,
20756
+ "help": "每页数量(最大 20)"
20757
+ }
20758
+ ],
20759
+ "columns": [
20760
+ "rank",
20761
+ "title",
20762
+ "item_count",
20763
+ "description",
20764
+ "collection_id"
20765
+ ],
20766
+ "type": "js",
20767
+ "modulePath": "zhihu/collections.js",
20768
+ "sourceFile": "zhihu/collections.js",
20769
+ "navigateBefore": "https://www.zhihu.com"
20103
20770
  },
20104
20771
  {
20105
20772
  "site": "zhihu",
20106
20773
  "name": "comment",
20107
20774
  "description": "Create a top-level comment on a Zhihu answer or article",
20108
20775
  "domain": "zhihu.com",
20109
- "strategy": "ui",
20776
+ "strategy": "cookie",
20110
20777
  "browser": true,
20111
20778
  "args": [
20112
20779
  {
@@ -20143,13 +20810,12 @@
20143
20810
  "target_type",
20144
20811
  "target",
20145
20812
  "author_identity",
20146
- "created_url",
20147
- "created_proof"
20813
+ "created_url"
20148
20814
  ],
20149
20815
  "type": "js",
20150
20816
  "modulePath": "zhihu/comment.js",
20151
20817
  "sourceFile": "zhihu/comment.js",
20152
- "navigateBefore": true
20818
+ "navigateBefore": "https://zhihu.com"
20153
20819
  },
20154
20820
  {
20155
20821
  "site": "zhihu",
@@ -20197,7 +20863,7 @@
20197
20863
  "name": "favorite",
20198
20864
  "description": "Favorite a Zhihu answer or article into a specific collection",
20199
20865
  "domain": "zhihu.com",
20200
- "strategy": "ui",
20866
+ "strategy": "cookie",
20201
20867
  "browser": true,
20202
20868
  "args": [
20203
20869
  {
@@ -20238,14 +20904,14 @@
20238
20904
  "type": "js",
20239
20905
  "modulePath": "zhihu/favorite.js",
20240
20906
  "sourceFile": "zhihu/favorite.js",
20241
- "navigateBefore": true
20907
+ "navigateBefore": "https://zhihu.com"
20242
20908
  },
20243
20909
  {
20244
20910
  "site": "zhihu",
20245
20911
  "name": "follow",
20246
20912
  "description": "Follow a Zhihu user or question",
20247
20913
  "domain": "www.zhihu.com",
20248
- "strategy": "ui",
20914
+ "strategy": "cookie",
20249
20915
  "browser": true,
20250
20916
  "args": [
20251
20917
  {
@@ -20272,7 +20938,7 @@
20272
20938
  "type": "js",
20273
20939
  "modulePath": "zhihu/follow.js",
20274
20940
  "sourceFile": "zhihu/follow.js",
20275
- "navigateBefore": true
20941
+ "navigateBefore": "https://www.zhihu.com"
20276
20942
  },
20277
20943
  {
20278
20944
  "site": "zhihu",
@@ -20306,7 +20972,7 @@
20306
20972
  "name": "like",
20307
20973
  "description": "Like a Zhihu answer or article",
20308
20974
  "domain": "zhihu.com",
20309
- "strategy": "ui",
20975
+ "strategy": "cookie",
20310
20976
  "browser": true,
20311
20977
  "args": [
20312
20978
  {
@@ -20333,7 +20999,7 @@
20333
20999
  "type": "js",
20334
21000
  "modulePath": "zhihu/like.js",
20335
21001
  "sourceFile": "zhihu/like.js",
20336
- "navigateBefore": true
21002
+ "navigateBefore": "https://zhihu.com"
20337
21003
  },
20338
21004
  {
20339
21005
  "site": "zhihu",
@@ -20405,6 +21071,67 @@
20405
21071
  "sourceFile": "zhihu/search.js",
20406
21072
  "navigateBefore": "https://www.zhihu.com"
20407
21073
  },
21074
+ {
21075
+ "site": "zlibrary",
21076
+ "name": "info",
21077
+ "description": "Get book details and available download formats from a Z-Library book page",
21078
+ "domain": "z-library.im",
21079
+ "strategy": "cookie",
21080
+ "browser": true,
21081
+ "args": [
21082
+ {
21083
+ "name": "url",
21084
+ "type": "str",
21085
+ "required": true,
21086
+ "positional": true,
21087
+ "help": "Z-Library book page URL (e.g. https://z-library.im/book/...)"
21088
+ }
21089
+ ],
21090
+ "columns": [
21091
+ "title",
21092
+ "pdf",
21093
+ "epub",
21094
+ "url"
21095
+ ],
21096
+ "type": "js",
21097
+ "modulePath": "zlibrary/info.js",
21098
+ "sourceFile": "zlibrary/info.js",
21099
+ "navigateBefore": false
21100
+ },
21101
+ {
21102
+ "site": "zlibrary",
21103
+ "name": "search",
21104
+ "description": "Search Z-Library for books by title, author, ISBN, or keyword",
21105
+ "domain": "z-library.im",
21106
+ "strategy": "cookie",
21107
+ "browser": true,
21108
+ "args": [
21109
+ {
21110
+ "name": "query",
21111
+ "type": "str",
21112
+ "required": true,
21113
+ "positional": true,
21114
+ "help": "Search keyword (title, author, ISBN, etc.)"
21115
+ },
21116
+ {
21117
+ "name": "limit",
21118
+ "type": "int",
21119
+ "default": 10,
21120
+ "required": false,
21121
+ "help": "Max results (1–25)"
21122
+ }
21123
+ ],
21124
+ "columns": [
21125
+ "rank",
21126
+ "title",
21127
+ "author",
21128
+ "url"
21129
+ ],
21130
+ "type": "js",
21131
+ "modulePath": "zlibrary/search.js",
21132
+ "sourceFile": "zlibrary/search.js",
21133
+ "navigateBefore": false
21134
+ },
20408
21135
  {
20409
21136
  "site": "zsxq",
20410
21137
  "name": "dynamics",
@@ -20590,4 +21317,4 @@
20590
21317
  "sourceFile": "zsxq/topics.js",
20591
21318
  "navigateBefore": "https://wx.zsxq.com"
20592
21319
  }
20593
- ]
21320
+ ]