@zenalexa/unicli 0.208.0 → 0.210.0

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 (413) hide show
  1. package/AGENTS.md +56 -15
  2. package/README.md +228 -278
  3. package/dist/adapters/cursor/cursor.d.ts +2 -1
  4. package/dist/adapters/cursor/cursor.d.ts.map +1 -1
  5. package/dist/adapters/cursor/cursor.js +87 -1
  6. package/dist/adapters/cursor/cursor.js.map +1 -1
  7. package/dist/adapters/discord-app/discord-app.d.ts +1 -1
  8. package/dist/adapters/discord-app/discord-app.js +94 -1
  9. package/dist/adapters/discord-app/discord-app.js.map +1 -1
  10. package/dist/browser/bridge.d.ts +45 -0
  11. package/dist/browser/bridge.d.ts.map +1 -1
  12. package/dist/browser/bridge.js +94 -1
  13. package/dist/browser/bridge.js.map +1 -1
  14. package/dist/browser/cdp-client.d.ts +24 -1
  15. package/dist/browser/cdp-client.d.ts.map +1 -1
  16. package/dist/browser/cdp-client.js +56 -2
  17. package/dist/browser/cdp-client.js.map +1 -1
  18. package/dist/browser/launcher.d.ts +5 -0
  19. package/dist/browser/launcher.d.ts.map +1 -1
  20. package/dist/browser/launcher.js +7 -0
  21. package/dist/browser/launcher.js.map +1 -1
  22. package/dist/cli.d.ts.map +1 -1
  23. package/dist/cli.js +73 -2
  24. package/dist/cli.js.map +1 -1
  25. package/dist/commands/agents.d.ts.map +1 -1
  26. package/dist/commands/agents.js +82 -2
  27. package/dist/commands/agents.js.map +1 -1
  28. package/dist/commands/browser.d.ts.map +1 -1
  29. package/dist/commands/browser.js +79 -1
  30. package/dist/commands/browser.js.map +1 -1
  31. package/dist/commands/ext.d.ts +11 -0
  32. package/dist/commands/ext.d.ts.map +1 -0
  33. package/dist/commands/ext.js +122 -0
  34. package/dist/commands/ext.js.map +1 -0
  35. package/dist/commands/generate.d.ts.map +1 -1
  36. package/dist/commands/generate.js +20 -1
  37. package/dist/commands/generate.js.map +1 -1
  38. package/dist/commands/hub.d.ts +13 -0
  39. package/dist/commands/hub.d.ts.map +1 -0
  40. package/dist/commands/hub.js +232 -0
  41. package/dist/commands/hub.js.map +1 -0
  42. package/dist/commands/research.d.ts +17 -0
  43. package/dist/commands/research.d.ts.map +1 -0
  44. package/dist/commands/research.js +257 -0
  45. package/dist/commands/research.js.map +1 -0
  46. package/dist/commands/skills.d.ts +2 -3
  47. package/dist/commands/skills.d.ts.map +1 -1
  48. package/dist/commands/skills.js +2 -3
  49. package/dist/commands/skills.js.map +1 -1
  50. package/dist/commands/status.d.ts +12 -0
  51. package/dist/commands/status.d.ts.map +1 -0
  52. package/dist/commands/status.js +137 -0
  53. package/dist/commands/status.js.map +1 -0
  54. package/dist/commands/test-gen.d.ts +10 -0
  55. package/dist/commands/test-gen.d.ts.map +1 -0
  56. package/dist/commands/test-gen.js +124 -0
  57. package/dist/commands/test-gen.js.map +1 -0
  58. package/dist/discovery/loader.d.ts.map +1 -1
  59. package/dist/discovery/loader.js +3 -0
  60. package/dist/discovery/loader.js.map +1 -1
  61. package/dist/engine/capability.d.ts +40 -0
  62. package/dist/engine/capability.d.ts.map +1 -0
  63. package/dist/engine/capability.js +191 -0
  64. package/dist/engine/capability.js.map +1 -0
  65. package/dist/engine/endpoint.d.ts +47 -0
  66. package/dist/engine/endpoint.d.ts.map +1 -0
  67. package/dist/engine/endpoint.js +295 -0
  68. package/dist/engine/endpoint.js.map +1 -0
  69. package/dist/engine/framework.d.ts +28 -0
  70. package/dist/engine/framework.d.ts.map +1 -0
  71. package/dist/engine/framework.js +66 -0
  72. package/dist/engine/framework.js.map +1 -0
  73. package/dist/engine/probe.d.ts +19 -0
  74. package/dist/engine/probe.d.ts.map +1 -0
  75. package/dist/engine/probe.js +85 -0
  76. package/dist/engine/probe.js.map +1 -0
  77. package/dist/engine/research.d.ts +38 -0
  78. package/dist/engine/research.d.ts.map +1 -0
  79. package/dist/engine/research.js +414 -0
  80. package/dist/engine/research.js.map +1 -0
  81. package/dist/engine/yaml-runner.d.ts +10 -0
  82. package/dist/engine/yaml-runner.d.ts.map +1 -1
  83. package/dist/engine/yaml-runner.js +131 -8
  84. package/dist/engine/yaml-runner.js.map +1 -1
  85. package/dist/hub/index.d.ts +37 -0
  86. package/dist/hub/index.d.ts.map +1 -0
  87. package/dist/hub/index.js +98 -0
  88. package/dist/hub/index.js.map +1 -0
  89. package/dist/hub/passthrough.d.ts +21 -0
  90. package/dist/hub/passthrough.d.ts.map +1 -0
  91. package/dist/hub/passthrough.js +71 -0
  92. package/dist/hub/passthrough.js.map +1 -0
  93. package/dist/manifest.json +2242 -134
  94. package/dist/mcp/server.js +59 -1
  95. package/dist/mcp/server.js.map +1 -1
  96. package/dist/types.d.ts +15 -0
  97. package/dist/types.d.ts.map +1 -1
  98. package/dist/types.js.map +1 -1
  99. package/package.json +2 -1
  100. package/src/adapters/36kr/latest.yaml +36 -0
  101. package/src/adapters/arxiv/trending.yaml +37 -0
  102. package/src/adapters/baidu/hot.yaml +37 -0
  103. package/src/adapters/baidu/search.yaml +41 -0
  104. package/src/adapters/bbc/technology.yaml +26 -0
  105. package/src/adapters/bbc/top.yaml +26 -0
  106. package/src/adapters/bbc/world.yaml +26 -0
  107. package/src/adapters/bilibili/coin.yaml +33 -0
  108. package/src/adapters/bilibili/later.yaml +31 -0
  109. package/src/adapters/bilibili/live.yaml +41 -0
  110. package/src/adapters/bilibili/trending.yaml +29 -0
  111. package/src/adapters/binance/hot.yaml +39 -0
  112. package/src/adapters/binance/kline.yaml +35 -0
  113. package/src/adapters/binance/ticker.yaml +33 -0
  114. package/src/adapters/bluesky/likes.yaml +35 -0
  115. package/src/adapters/bluesky/notifications.yaml +30 -0
  116. package/src/adapters/bluesky/post.yaml +25 -0
  117. package/src/adapters/chrome/bookmarks.yaml +26 -0
  118. package/src/adapters/chrome/tabs.yaml +25 -0
  119. package/src/adapters/cnki/search.yaml +40 -0
  120. package/src/adapters/cnn/technology.yaml +26 -0
  121. package/src/adapters/cnn/top.yaml +21 -0
  122. package/src/adapters/cocoapods/info.yaml +33 -0
  123. package/src/adapters/cocoapods/search.yaml +16 -0
  124. package/src/adapters/coinbase/prices.yaml +27 -0
  125. package/src/adapters/coinbase/rates.yaml +24 -0
  126. package/src/adapters/coupang/hot.yaml +29 -0
  127. package/src/adapters/crates-io/info.yaml +29 -0
  128. package/src/adapters/crates-io/search.yaml +27 -0
  129. package/src/adapters/crates-io/versions.yaml +33 -0
  130. package/src/adapters/ctrip/hot.yaml +28 -0
  131. package/src/adapters/cursor/cursor.ts +91 -1
  132. package/src/adapters/dangdang/hot.yaml +38 -0
  133. package/src/adapters/dangdang/search.yaml +43 -0
  134. package/src/adapters/deepseek/chat.yaml +33 -0
  135. package/src/adapters/deepseek/models.yaml +18 -0
  136. package/src/adapters/devto/latest.yaml +29 -0
  137. package/src/adapters/devto/search.yaml +34 -0
  138. package/src/adapters/dianping/hot.yaml +43 -0
  139. package/src/adapters/dianping/search.yaml +48 -0
  140. package/src/adapters/discord-app/discord-app.ts +99 -1
  141. package/src/adapters/docker/networks.yaml +20 -0
  142. package/src/adapters/docker/volumes.yaml +19 -0
  143. package/src/adapters/docker-hub/info.yaml +26 -0
  144. package/src/adapters/docker-hub/search.yaml +26 -0
  145. package/src/adapters/docker-hub/tags.yaml +34 -0
  146. package/src/adapters/douban/group-hot.yaml +29 -0
  147. package/src/adapters/douban/new-movies.yaml +32 -0
  148. package/src/adapters/douban/tv-hot.yaml +32 -0
  149. package/src/adapters/doubao/ask.yaml +64 -0
  150. package/src/adapters/doubao/new.yaml +18 -0
  151. package/src/adapters/doubao/status.yaml +21 -0
  152. package/src/adapters/douyu/hot.yaml +34 -0
  153. package/src/adapters/douyu/search.yaml +42 -0
  154. package/src/adapters/eastmoney/fund.yaml +36 -0
  155. package/src/adapters/eastmoney/hot.yaml +23 -0
  156. package/src/adapters/eastmoney/market.yaml +26 -0
  157. package/src/adapters/eastmoney/search.yaml +25 -0
  158. package/src/adapters/ele/hot.yaml +40 -0
  159. package/src/adapters/ele/search.yaml +47 -0
  160. package/src/adapters/exchangerate/convert.yaml +19 -0
  161. package/src/adapters/exchangerate/list.yaml +25 -0
  162. package/src/adapters/facebook/marketplace.yaml +43 -0
  163. package/src/adapters/facebook/post.yaml +29 -0
  164. package/src/adapters/feishu/calendar.yaml +24 -0
  165. package/src/adapters/feishu/docs.yaml +17 -0
  166. package/src/adapters/feishu/send.yaml +29 -0
  167. package/src/adapters/feishu/tasks.yaml +24 -0
  168. package/src/adapters/futu/hot.yaml +49 -0
  169. package/src/adapters/futu/quote.yaml +46 -0
  170. package/src/adapters/gitee/repos.yaml +34 -0
  171. package/src/adapters/gitee/search.yaml +25 -0
  172. package/src/adapters/gitee/trending.yaml +22 -0
  173. package/src/adapters/github-trending/developers.yaml +33 -0
  174. package/src/adapters/github-trending/weekly.yaml +34 -0
  175. package/src/adapters/gitlab/projects.yaml +34 -0
  176. package/src/adapters/gitlab/search.yaml +24 -0
  177. package/src/adapters/gitlab/trending.yaml +22 -0
  178. package/src/adapters/godot/scene-export.yaml +1 -1
  179. package/src/adapters/hackernews/comments.yaml +36 -0
  180. package/src/adapters/hackernews/item.yaml +28 -0
  181. package/src/adapters/hf/datasets.yaml +34 -0
  182. package/src/adapters/hf/spaces.yaml +34 -0
  183. package/src/adapters/homebrew/info.yaml +15 -0
  184. package/src/adapters/homebrew/search.yaml +27 -0
  185. package/src/adapters/huggingface-papers/daily.yaml +21 -0
  186. package/src/adapters/huggingface-papers/search.yaml +33 -0
  187. package/src/adapters/imdb/box-office.yaml +28 -0
  188. package/src/adapters/infoq/articles.yaml +29 -0
  189. package/src/adapters/infoq/latest.yaml +26 -0
  190. package/src/adapters/instagram/activity.yaml +45 -0
  191. package/src/adapters/instagram/highlights.yaml +48 -0
  192. package/src/adapters/instagram/reels-trending.yaml +51 -0
  193. package/src/adapters/instagram/reels.yaml +34 -0
  194. package/src/adapters/instagram/stories.yaml +29 -0
  195. package/src/adapters/instagram/suggested.yaml +40 -0
  196. package/src/adapters/instagram/tags.yaml +52 -0
  197. package/src/adapters/ip-info/lookup.yaml +15 -0
  198. package/src/adapters/itch-io/popular.yaml +22 -0
  199. package/src/adapters/itch-io/search.yaml +35 -0
  200. package/src/adapters/itch-io/top.yaml +31 -0
  201. package/src/adapters/ithome/hot.yaml +27 -0
  202. package/src/adapters/ithome/latest.yaml +26 -0
  203. package/src/adapters/ithome/news.yaml +21 -0
  204. package/src/adapters/jianyu/search.yaml +42 -0
  205. package/src/adapters/ke/ershoufang.yaml +75 -0
  206. package/src/adapters/ke/xiaoqu.yaml +73 -0
  207. package/src/adapters/kuaishou/hot.yaml +39 -0
  208. package/src/adapters/kuaishou/search.yaml +44 -0
  209. package/src/adapters/linkedin/jobs.yaml +47 -0
  210. package/src/adapters/lobsters/search.yaml +35 -0
  211. package/src/adapters/macos/active-app.yaml +16 -0
  212. package/src/adapters/macos/apps-list.yaml +14 -0
  213. package/src/adapters/macos/apps.yaml +31 -0
  214. package/src/adapters/macos/battery.yaml +26 -0
  215. package/src/adapters/macos/bluetooth.yaml +14 -0
  216. package/src/adapters/macos/brightness.yaml +22 -0
  217. package/src/adapters/macos/caffeinate.yaml +25 -0
  218. package/src/adapters/macos/calendar-create.yaml +81 -0
  219. package/src/adapters/macos/calendar-list.yaml +53 -0
  220. package/src/adapters/macos/calendar-today.yaml +30 -0
  221. package/src/adapters/macos/clipboard.yaml +23 -0
  222. package/src/adapters/macos/contacts-search.yaml +59 -0
  223. package/src/adapters/macos/dark-mode.yaml +19 -0
  224. package/src/adapters/macos/disk-info.yaml +31 -0
  225. package/src/adapters/macos/disk-usage.yaml +14 -0
  226. package/src/adapters/macos/do-not-disturb.yaml +21 -0
  227. package/src/adapters/macos/empty-trash.yaml +16 -0
  228. package/src/adapters/macos/finder-recent.yaml +24 -0
  229. package/src/adapters/macos/finder-selection.yaml +22 -0
  230. package/src/adapters/macos/finder-tags.yaml +40 -0
  231. package/src/adapters/macos/lock-screen.yaml +16 -0
  232. package/src/adapters/macos/mail-send.yaml +54 -0
  233. package/src/adapters/macos/mail-status.yaml +38 -0
  234. package/src/adapters/macos/messages-send.yaml +42 -0
  235. package/src/adapters/macos/music-control.yaml +43 -0
  236. package/src/adapters/macos/music-now.yaml +34 -0
  237. package/src/adapters/macos/notes-list.yaml +30 -0
  238. package/src/adapters/macos/notes-search.yaml +45 -0
  239. package/src/adapters/macos/notification.yaml +27 -0
  240. package/src/adapters/macos/notify.yaml +46 -0
  241. package/src/adapters/macos/open-app.yaml +21 -0
  242. package/src/adapters/macos/open.yaml +24 -0
  243. package/src/adapters/macos/photos-search.yaml +44 -0
  244. package/src/adapters/macos/processes.yaml +14 -0
  245. package/src/adapters/macos/reminder-create.yaml +75 -0
  246. package/src/adapters/macos/reminders-complete.yaml +33 -0
  247. package/src/adapters/macos/reminders-list.yaml +28 -0
  248. package/src/adapters/macos/safari-tabs.yaml +26 -0
  249. package/src/adapters/macos/say.yaml +36 -0
  250. package/src/adapters/macos/screen-lock.yaml +16 -0
  251. package/src/adapters/macos/screenshot.yaml +34 -0
  252. package/src/adapters/macos/shortcuts-list.yaml +14 -0
  253. package/src/adapters/macos/shortcuts-run.yaml +28 -0
  254. package/src/adapters/macos/sleep.yaml +14 -0
  255. package/src/adapters/macos/spotlight.yaml +43 -0
  256. package/src/adapters/macos/system-info.yaml +32 -0
  257. package/src/adapters/macos/trash.yaml +32 -0
  258. package/src/adapters/macos/uptime.yaml +14 -0
  259. package/src/adapters/macos/volume.yaml +19 -0
  260. package/src/adapters/macos/wifi-info.yaml +14 -0
  261. package/src/adapters/macos/wifi.yaml +63 -0
  262. package/src/adapters/maimai/search.yaml +62 -0
  263. package/src/adapters/maoyan/hot.yaml +33 -0
  264. package/src/adapters/maoyan/search.yaml +40 -0
  265. package/src/adapters/mastodon/search.yaml +29 -0
  266. package/src/adapters/mastodon/timeline.yaml +33 -0
  267. package/src/adapters/mastodon/trending.yaml +27 -0
  268. package/src/adapters/mastodon/user.yaml +32 -0
  269. package/src/adapters/medium/article.yaml +22 -0
  270. package/src/adapters/medium/trending.yaml +30 -0
  271. package/src/adapters/meituan/hot.yaml +26 -0
  272. package/src/adapters/meituan/search.yaml +30 -0
  273. package/src/adapters/minimax/chat.yaml +33 -0
  274. package/src/adapters/minimax/models.yaml +18 -0
  275. package/src/adapters/minimax/tts.yaml +33 -0
  276. package/src/adapters/mubu/list.yaml +36 -0
  277. package/src/adapters/mubu/search.yaml +54 -0
  278. package/src/adapters/netease-music/hot.yaml +24 -0
  279. package/src/adapters/netease-music/playlist.yaml +34 -0
  280. package/src/adapters/netease-music/search.yaml +29 -0
  281. package/src/adapters/netease-music/top.yaml +33 -0
  282. package/src/adapters/notion/databases.yaml +41 -0
  283. package/src/adapters/notion/pages.yaml +44 -0
  284. package/src/adapters/notion/search.yaml +41 -0
  285. package/src/adapters/npm/downloads.yaml +28 -0
  286. package/src/adapters/npm/info.yaml +25 -0
  287. package/src/adapters/npm/search.yaml +35 -0
  288. package/src/adapters/npm/versions.yaml +33 -0
  289. package/src/adapters/npm-trends/compare.yaml +19 -0
  290. package/src/adapters/npm-trends/trending.yaml +17 -0
  291. package/src/adapters/nytimes/search.yaml +35 -0
  292. package/src/adapters/nytimes/top.yaml +26 -0
  293. package/src/adapters/obsidian/daily.yaml +23 -0
  294. package/src/adapters/obsidian/open.yaml +26 -0
  295. package/src/adapters/obsidian/search.yaml +28 -0
  296. package/src/adapters/ollama/generate.yaml +33 -0
  297. package/src/adapters/ollama/models.yaml +29 -0
  298. package/src/adapters/ollama/ps.yaml +20 -0
  299. package/src/adapters/openrouter/models.yaml +22 -0
  300. package/src/adapters/openrouter/search.yaml +31 -0
  301. package/src/adapters/perplexity/ask.yaml +33 -0
  302. package/src/adapters/pexels/curated.yaml +31 -0
  303. package/src/adapters/pexels/search.yaml +28 -0
  304. package/src/adapters/pinduoduo/hot.yaml +20 -0
  305. package/src/adapters/pinduoduo/search.yaml +36 -0
  306. package/src/adapters/producthunt/search.yaml +41 -0
  307. package/src/adapters/pypi/info.yaml +16 -0
  308. package/src/adapters/pypi/search.yaml +37 -0
  309. package/src/adapters/pypi/versions.yaml +31 -0
  310. package/src/adapters/quark/ls.yaml +39 -0
  311. package/src/adapters/quark/search.yaml +39 -0
  312. package/src/adapters/qweather/forecast.yaml +37 -0
  313. package/src/adapters/qweather/now.yaml +16 -0
  314. package/src/adapters/reddit/new.yaml +34 -0
  315. package/src/adapters/reddit/rising.yaml +33 -0
  316. package/src/adapters/reddit/top.yaml +40 -0
  317. package/src/adapters/reddit/trending.yaml +25 -0
  318. package/src/adapters/replicate/run.yaml +39 -0
  319. package/src/adapters/replicate/search.yaml +25 -0
  320. package/src/adapters/replicate/trending.yaml +22 -0
  321. package/src/adapters/reuters/latest.yaml +26 -0
  322. package/src/adapters/sinafinance/market.yaml +21 -0
  323. package/src/adapters/slack/messages.yaml +41 -0
  324. package/src/adapters/slack/post.yaml +32 -0
  325. package/src/adapters/slack/search.yaml +28 -0
  326. package/src/adapters/slack/send.yaml +35 -0
  327. package/src/adapters/slack/status.yaml +19 -0
  328. package/src/adapters/slack/users.yaml +37 -0
  329. package/src/adapters/slock/servers.yaml +32 -0
  330. package/src/adapters/spotify/now-playing.yaml +28 -0
  331. package/src/adapters/spotify/playlists.yaml +37 -0
  332. package/src/adapters/spotify/top-tracks.yaml +42 -0
  333. package/src/adapters/sspai/hot.yaml +21 -0
  334. package/src/adapters/sspai/latest.yaml +22 -0
  335. package/src/adapters/stackoverflow/question.yaml +34 -0
  336. package/src/adapters/stackoverflow/tags.yaml +30 -0
  337. package/src/adapters/steam/app-details.yaml +32 -0
  338. package/src/adapters/steam/new-releases.yaml +28 -0
  339. package/src/adapters/steam/search.yaml +36 -0
  340. package/src/adapters/steam/specials.yaml +29 -0
  341. package/src/adapters/steam/wishlist.yaml +36 -0
  342. package/src/adapters/substack/trending.yaml +28 -0
  343. package/src/adapters/taobao/hot.yaml +31 -0
  344. package/src/adapters/taobao/search.yaml +44 -0
  345. package/src/adapters/techcrunch/latest.yaml +22 -0
  346. package/src/adapters/techcrunch/search.yaml +33 -0
  347. package/src/adapters/theverge/latest.yaml +21 -0
  348. package/src/adapters/theverge/search.yaml +33 -0
  349. package/src/adapters/threads/hot.yaml +44 -0
  350. package/src/adapters/threads/search.yaml +47 -0
  351. package/src/adapters/tiktok/trending.yaml +28 -0
  352. package/src/adapters/toutiao/hot.yaml +31 -0
  353. package/src/adapters/toutiao/search.yaml +47 -0
  354. package/src/adapters/twitch/games.yaml +31 -0
  355. package/src/adapters/twitch/search.yaml +39 -0
  356. package/src/adapters/twitch/streams.yaml +38 -0
  357. package/src/adapters/twitch/top.yaml +26 -0
  358. package/src/adapters/twitter/lists.yaml +49 -0
  359. package/src/adapters/twitter/media.yaml +48 -0
  360. package/src/adapters/twitter/mentions.yaml +38 -0
  361. package/src/adapters/twitter/mute.yaml +42 -0
  362. package/src/adapters/twitter/pin.yaml +43 -0
  363. package/src/adapters/twitter/quotes.yaml +43 -0
  364. package/src/adapters/twitter/retweets.yaml +44 -0
  365. package/src/adapters/twitter/spaces.yaml +43 -0
  366. package/src/adapters/twitter/unmute.yaml +42 -0
  367. package/src/adapters/unsplash/random.yaml +27 -0
  368. package/src/adapters/unsplash/search.yaml +28 -0
  369. package/src/adapters/v2ex/search.yaml +36 -0
  370. package/src/adapters/vscode/extensions.yaml +23 -0
  371. package/src/adapters/vscode/install-ext.yaml +26 -0
  372. package/src/adapters/vscode/open.yaml +25 -0
  373. package/src/adapters/wechat-channels/hot.yaml +39 -0
  374. package/src/adapters/wechat-channels/search.yaml +57 -0
  375. package/src/adapters/weibo/trending.yaml +28 -0
  376. package/src/adapters/weixin/hot.yaml +22 -0
  377. package/src/adapters/wikipedia/today.yaml +25 -0
  378. package/src/adapters/xiaohongshu/follow.yaml +35 -0
  379. package/src/adapters/xiaohongshu/hashtag.yaml +44 -0
  380. package/src/adapters/xiaohongshu/hot.yaml +34 -0
  381. package/src/adapters/xiaohongshu/like.yaml +27 -0
  382. package/src/adapters/xiaohongshu/profile.yaml +39 -0
  383. package/src/adapters/xiaohongshu/save.yaml +27 -0
  384. package/src/adapters/xiaohongshu/suggest.yaml +34 -0
  385. package/src/adapters/xiaohongshu/trending.yaml +35 -0
  386. package/src/adapters/xiaohongshu/unfollow.yaml +40 -0
  387. package/src/adapters/xueqiu/market.yaml +25 -0
  388. package/src/adapters/yahoo-finance/quote.yaml +35 -0
  389. package/src/adapters/yahoo-finance/search.yaml +42 -0
  390. package/src/adapters/yahoo-finance/trending.yaml +30 -0
  391. package/src/adapters/ycombinator/launches.yaml +20 -0
  392. package/src/adapters/youtube/playlist.yaml +43 -0
  393. package/src/adapters/youtube/shorts.yaml +42 -0
  394. package/src/adapters/youtube/trending.yaml +41 -0
  395. package/src/adapters/zhihu/answer.yaml +29 -0
  396. package/src/adapters/zhihu/answers.yaml +38 -0
  397. package/src/adapters/zhihu/article.yaml +27 -0
  398. package/src/adapters/zhihu/articles.yaml +38 -0
  399. package/src/adapters/zhihu/collections.yaml +37 -0
  400. package/src/adapters/zhihu/columns.yaml +38 -0
  401. package/src/adapters/zhihu/comment.yaml +42 -0
  402. package/src/adapters/zhihu/followers.yaml +37 -0
  403. package/src/adapters/zhihu/following.yaml +37 -0
  404. package/src/adapters/zhihu/pins.yaml +37 -0
  405. package/src/adapters/zhihu/topic.yaml +35 -0
  406. package/src/adapters/zhihu/topics.yaml +37 -0
  407. package/src/adapters/zhihu/trending.yaml +36 -0
  408. package/src/adapters/zhihu/user.yaml +30 -0
  409. package/src/adapters/zoom/join.yaml +24 -0
  410. package/src/adapters/zoom/start.yaml +17 -0
  411. package/src/hub/external-clis.yaml +343 -0
  412. package/src/hub/index.ts +128 -0
  413. package/src/hub/passthrough.ts +85 -0
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.208.0",
2
+ "version": "0.210.0",
3
3
  "sites": {
4
4
  "1688": {
5
5
  "commands": [
@@ -43,6 +43,12 @@
43
43
  "strategy": "public",
44
44
  "type": "web-api"
45
45
  },
46
+ {
47
+ "name": "latest",
48
+ "description": "Latest 36Kr tech news articles",
49
+ "strategy": "public",
50
+ "type": "web-api"
51
+ },
46
52
  {
47
53
  "name": "news",
48
54
  "description": "36Kr tech news (RSS)",
@@ -178,6 +184,12 @@
178
184
  "description": "Search arXiv papers",
179
185
  "strategy": "public",
180
186
  "type": "web-api"
187
+ },
188
+ {
189
+ "name": "trending",
190
+ "description": "Recent arXiv papers by category (newest submissions)",
191
+ "strategy": "public",
192
+ "type": "web-api"
181
193
  }
182
194
  ]
183
195
  },
@@ -263,6 +275,22 @@
263
275
  }
264
276
  ]
265
277
  },
278
+ "baidu": {
279
+ "commands": [
280
+ {
281
+ "name": "hot",
282
+ "description": "Get Baidu hot search trending topics",
283
+ "strategy": "intercept",
284
+ "type": "web-api"
285
+ },
286
+ {
287
+ "name": "search",
288
+ "description": "Search Baidu for web results",
289
+ "strategy": "intercept",
290
+ "type": "web-api"
291
+ }
292
+ ]
293
+ },
266
294
  "band": {
267
295
  "commands": [
268
296
  {
@@ -332,11 +360,35 @@
332
360
  "description": "BBC News headlines (RSS)",
333
361
  "strategy": "public",
334
362
  "type": "web-api"
363
+ },
364
+ {
365
+ "name": "technology",
366
+ "description": "BBC technology news",
367
+ "strategy": "public",
368
+ "type": "web-api"
369
+ },
370
+ {
371
+ "name": "top",
372
+ "description": "BBC top news headlines",
373
+ "strategy": "public",
374
+ "type": "web-api"
375
+ },
376
+ {
377
+ "name": "world",
378
+ "description": "BBC world news",
379
+ "strategy": "public",
380
+ "type": "web-api"
335
381
  }
336
382
  ]
337
383
  },
338
384
  "bilibili": {
339
385
  "commands": [
386
+ {
387
+ "name": "coin",
388
+ "description": "Bilibili recently coined videos",
389
+ "strategy": "cookie",
390
+ "type": "web-api"
391
+ },
340
392
  {
341
393
  "name": "comments",
342
394
  "description": "Fetch comments on a Bilibili video",
@@ -385,6 +437,18 @@
385
437
  "strategy": "cookie",
386
438
  "type": "web-api"
387
439
  },
440
+ {
441
+ "name": "later",
442
+ "description": "Bilibili watch later list",
443
+ "strategy": "cookie",
444
+ "type": "web-api"
445
+ },
446
+ {
447
+ "name": "live",
448
+ "description": "Bilibili popular live streams",
449
+ "strategy": "public",
450
+ "type": "web-api"
451
+ },
388
452
  {
389
453
  "name": "me",
390
454
  "description": "Current Bilibili user profile info",
@@ -409,6 +473,12 @@
409
473
  "strategy": "cookie",
410
474
  "type": "web-api"
411
475
  },
476
+ {
477
+ "name": "trending",
478
+ "description": "Bilibili trending searches",
479
+ "strategy": "public",
480
+ "type": "web-api"
481
+ },
412
482
  {
413
483
  "name": "user-videos",
414
484
  "description": "List videos published by a Bilibili user",
@@ -417,6 +487,28 @@
417
487
  }
418
488
  ]
419
489
  },
490
+ "binance": {
491
+ "commands": [
492
+ {
493
+ "name": "hot",
494
+ "description": "Top trending coins by 24h trading volume",
495
+ "strategy": "public",
496
+ "type": "web-api"
497
+ },
498
+ {
499
+ "name": "kline",
500
+ "description": "Candlestick (kline) data for a trading pair",
501
+ "strategy": "public",
502
+ "type": "web-api"
503
+ },
504
+ {
505
+ "name": "ticker",
506
+ "description": "Price ticker for a trading pair",
507
+ "strategy": "public",
508
+ "type": "web-api"
509
+ }
510
+ ]
511
+ },
420
512
  "blender": {
421
513
  "commands": [
422
514
  {
@@ -583,6 +675,24 @@
583
675
  "strategy": "public",
584
676
  "type": "web-api"
585
677
  },
678
+ {
679
+ "name": "likes",
680
+ "description": "Get Bluesky liked posts for a user",
681
+ "strategy": "cookie",
682
+ "type": "web-api"
683
+ },
684
+ {
685
+ "name": "notifications",
686
+ "description": "Get Bluesky notifications",
687
+ "strategy": "cookie",
688
+ "type": "web-api"
689
+ },
690
+ {
691
+ "name": "post",
692
+ "description": "Create a Bluesky post",
693
+ "strategy": "cookie",
694
+ "type": "web-api"
695
+ },
586
696
  {
587
697
  "name": "profile",
588
698
  "description": "Get Bluesky user profile info",
@@ -725,6 +835,22 @@
725
835
  }
726
836
  ]
727
837
  },
838
+ "chrome": {
839
+ "commands": [
840
+ {
841
+ "name": "bookmarks",
842
+ "description": "List bookmarks from Chrome's bookmark bar (macOS)",
843
+ "strategy": "public",
844
+ "type": "desktop"
845
+ },
846
+ {
847
+ "name": "tabs",
848
+ "description": "List all open tabs in Google Chrome (macOS)",
849
+ "strategy": "public",
850
+ "type": "desktop"
851
+ }
852
+ ]
853
+ },
728
854
  "claude-code": {
729
855
  "commands": [
730
856
  {
@@ -763,6 +889,48 @@
763
889
  }
764
890
  ]
765
891
  },
892
+ "cnki": {
893
+ "commands": [
894
+ {
895
+ "name": "search",
896
+ "description": "Search CNKI academic papers",
897
+ "strategy": "public",
898
+ "type": "web-api"
899
+ }
900
+ ]
901
+ },
902
+ "cnn": {
903
+ "commands": [
904
+ {
905
+ "name": "technology",
906
+ "description": "CNN technology news",
907
+ "strategy": "public",
908
+ "type": "web-api"
909
+ },
910
+ {
911
+ "name": "top",
912
+ "description": "CNN top stories via RSS",
913
+ "strategy": "public",
914
+ "type": "web-api"
915
+ }
916
+ ]
917
+ },
918
+ "cocoapods": {
919
+ "commands": [
920
+ {
921
+ "name": "info",
922
+ "description": "Get CocoaPods pod details",
923
+ "strategy": "public",
924
+ "type": "web-api"
925
+ },
926
+ {
927
+ "name": "search",
928
+ "description": "Search CocoaPods iOS/macOS libraries",
929
+ "strategy": "public",
930
+ "type": "web-api"
931
+ }
932
+ ]
933
+ },
766
934
  "codex": {
767
935
  "commands": [
768
936
  {
@@ -783,6 +951,22 @@
783
951
  }
784
952
  ]
785
953
  },
954
+ "coinbase": {
955
+ "commands": [
956
+ {
957
+ "name": "prices",
958
+ "description": "Get cryptocurrency spot prices from Coinbase",
959
+ "strategy": "public",
960
+ "type": "web-api"
961
+ },
962
+ {
963
+ "name": "rates",
964
+ "description": "Get cryptocurrency exchange rates from Coinbase",
965
+ "strategy": "public",
966
+ "type": "web-api"
967
+ }
968
+ ]
969
+ },
786
970
  "comfyui": {
787
971
  "commands": [
788
972
  {
@@ -819,6 +1003,12 @@
819
1003
  "strategy": "intercept",
820
1004
  "type": "web-api"
821
1005
  },
1006
+ {
1007
+ "name": "hot",
1008
+ "description": "Coupang trending/popular products",
1009
+ "strategy": "public",
1010
+ "type": "web-api"
1011
+ },
822
1012
  {
823
1013
  "name": "search",
824
1014
  "description": "Search Coupang products",
@@ -827,8 +1017,36 @@
827
1017
  }
828
1018
  ]
829
1019
  },
1020
+ "crates-io": {
1021
+ "commands": [
1022
+ {
1023
+ "name": "info",
1024
+ "description": "Get Rust crate details from crates.io",
1025
+ "strategy": "public",
1026
+ "type": "web-api"
1027
+ },
1028
+ {
1029
+ "name": "search",
1030
+ "description": "Search Rust crates on crates.io",
1031
+ "strategy": "public",
1032
+ "type": "web-api"
1033
+ },
1034
+ {
1035
+ "name": "versions",
1036
+ "description": "List versions of a Rust crate",
1037
+ "strategy": "public",
1038
+ "type": "web-api"
1039
+ }
1040
+ ]
1041
+ },
830
1042
  "ctrip": {
831
1043
  "commands": [
1044
+ {
1045
+ "name": "hot",
1046
+ "description": "Ctrip popular travel destinations",
1047
+ "strategy": "public",
1048
+ "type": "web-api"
1049
+ },
832
1050
  {
833
1051
  "name": "search",
834
1052
  "description": "Search flights on Ctrip",
@@ -863,8 +1081,52 @@
863
1081
  }
864
1082
  ]
865
1083
  },
1084
+ "dangdang": {
1085
+ "commands": [
1086
+ {
1087
+ "name": "hot",
1088
+ "description": "Dangdang bestseller book list",
1089
+ "strategy": "intercept",
1090
+ "type": "web-api"
1091
+ },
1092
+ {
1093
+ "name": "search",
1094
+ "description": "Search books on Dangdang",
1095
+ "strategy": "intercept",
1096
+ "type": "web-api"
1097
+ }
1098
+ ]
1099
+ },
1100
+ "deepseek": {
1101
+ "commands": [
1102
+ {
1103
+ "name": "chat",
1104
+ "description": "Chat with DeepSeek AI (OpenAI-compatible API)",
1105
+ "strategy": "header",
1106
+ "type": "web-api"
1107
+ },
1108
+ {
1109
+ "name": "models",
1110
+ "description": "List available DeepSeek models",
1111
+ "strategy": "header",
1112
+ "type": "web-api"
1113
+ }
1114
+ ]
1115
+ },
866
1116
  "devto": {
867
1117
  "commands": [
1118
+ {
1119
+ "name": "latest",
1120
+ "description": "Latest Dev.to articles",
1121
+ "strategy": "public",
1122
+ "type": "web-api"
1123
+ },
1124
+ {
1125
+ "name": "search",
1126
+ "description": "Search Dev.to articles",
1127
+ "strategy": "public",
1128
+ "type": "web-api"
1129
+ },
868
1130
  {
869
1131
  "name": "tag",
870
1132
  "description": "Latest DEV.to articles for a specific tag",
@@ -885,6 +1147,22 @@
885
1147
  }
886
1148
  ]
887
1149
  },
1150
+ "dianping": {
1151
+ "commands": [
1152
+ {
1153
+ "name": "hot",
1154
+ "description": "Dianping trending restaurants",
1155
+ "strategy": "intercept",
1156
+ "type": "web-api"
1157
+ },
1158
+ {
1159
+ "name": "search",
1160
+ "description": "Search restaurants on Dianping",
1161
+ "strategy": "intercept",
1162
+ "type": "web-api"
1163
+ }
1164
+ ]
1165
+ },
888
1166
  "dictionary": {
889
1167
  "commands": [
890
1168
  {
@@ -947,6 +1225,12 @@
947
1225
  "strategy": "public",
948
1226
  "type": "bridge"
949
1227
  },
1228
+ {
1229
+ "name": "networks",
1230
+ "description": "List Docker networks",
1231
+ "strategy": "public",
1232
+ "type": "desktop"
1233
+ },
950
1234
  {
951
1235
  "name": "ps",
952
1236
  "description": "List running Docker containers",
@@ -958,6 +1242,34 @@
958
1242
  "description": "Run a command in a Docker container",
959
1243
  "strategy": "public",
960
1244
  "type": "bridge"
1245
+ },
1246
+ {
1247
+ "name": "volumes",
1248
+ "description": "List Docker volumes",
1249
+ "strategy": "public",
1250
+ "type": "desktop"
1251
+ }
1252
+ ]
1253
+ },
1254
+ "docker-hub": {
1255
+ "commands": [
1256
+ {
1257
+ "name": "info",
1258
+ "description": "Get Docker Hub image details",
1259
+ "strategy": "public",
1260
+ "type": "web-api"
1261
+ },
1262
+ {
1263
+ "name": "search",
1264
+ "description": "Search Docker Hub images",
1265
+ "strategy": "public",
1266
+ "type": "web-api"
1267
+ },
1268
+ {
1269
+ "name": "tags",
1270
+ "description": "List Docker Hub image tags",
1271
+ "strategy": "public",
1272
+ "type": "web-api"
961
1273
  }
962
1274
  ]
963
1275
  },
@@ -985,6 +1297,12 @@
985
1297
  "strategy": "cookie",
986
1298
  "type": "browser"
987
1299
  },
1300
+ {
1301
+ "name": "group-hot",
1302
+ "description": "Douban group hot topics",
1303
+ "strategy": "cookie",
1304
+ "type": "web-api"
1305
+ },
988
1306
  {
989
1307
  "name": "marks",
990
1308
  "description": "Douban movie marks/ratings for a user",
@@ -997,6 +1315,12 @@
997
1315
  "strategy": "public",
998
1316
  "type": "web-api"
999
1317
  },
1318
+ {
1319
+ "name": "new-movies",
1320
+ "description": "Douban new movies in theaters",
1321
+ "strategy": "public",
1322
+ "type": "web-api"
1323
+ },
1000
1324
  {
1001
1325
  "name": "photos",
1002
1326
  "description": "Get Douban movie posters and stills",
@@ -1026,10 +1350,38 @@
1026
1350
  "description": "Douban movie Top 250",
1027
1351
  "strategy": "cookie",
1028
1352
  "type": "browser"
1353
+ },
1354
+ {
1355
+ "name": "tv-hot",
1356
+ "description": "Douban popular TV shows",
1357
+ "strategy": "public",
1358
+ "type": "web-api"
1029
1359
  }
1030
1360
  ]
1031
1361
  },
1032
- "doubao-web": {
1362
+ "doubao": {
1363
+ "commands": [
1364
+ {
1365
+ "name": "ask",
1366
+ "description": "Ask Doubao AI a question",
1367
+ "strategy": "intercept",
1368
+ "type": "web-api"
1369
+ },
1370
+ {
1371
+ "name": "new",
1372
+ "description": "Start a new Doubao chat conversation",
1373
+ "strategy": "intercept",
1374
+ "type": "web-api"
1375
+ },
1376
+ {
1377
+ "name": "status",
1378
+ "description": "Check Doubao login status",
1379
+ "strategy": "intercept",
1380
+ "type": "web-api"
1381
+ }
1382
+ ]
1383
+ },
1384
+ "doubao-web": {
1033
1385
  "commands": [
1034
1386
  {
1035
1387
  "name": "ask",
@@ -1169,6 +1521,22 @@
1169
1521
  }
1170
1522
  ]
1171
1523
  },
1524
+ "douyu": {
1525
+ "commands": [
1526
+ {
1527
+ "name": "hot",
1528
+ "description": "Douyu trending live streams",
1529
+ "strategy": "public",
1530
+ "type": "web-api"
1531
+ },
1532
+ {
1533
+ "name": "search",
1534
+ "description": "Search Douyu live streams",
1535
+ "strategy": "intercept",
1536
+ "type": "web-api"
1537
+ }
1538
+ ]
1539
+ },
1172
1540
  "drawio": {
1173
1541
  "commands": [
1174
1542
  {
@@ -1179,6 +1547,66 @@
1179
1547
  }
1180
1548
  ]
1181
1549
  },
1550
+ "eastmoney": {
1551
+ "commands": [
1552
+ {
1553
+ "name": "fund",
1554
+ "description": "East Money fund search",
1555
+ "strategy": "public",
1556
+ "type": "web-api"
1557
+ },
1558
+ {
1559
+ "name": "hot",
1560
+ "description": "Eastmoney hot stocks (A-share volume leaders)",
1561
+ "strategy": "public",
1562
+ "type": "web-api"
1563
+ },
1564
+ {
1565
+ "name": "market",
1566
+ "description": "East Money market indices overview",
1567
+ "strategy": "public",
1568
+ "type": "web-api"
1569
+ },
1570
+ {
1571
+ "name": "search",
1572
+ "description": "Search stocks on Eastmoney",
1573
+ "strategy": "public",
1574
+ "type": "web-api"
1575
+ }
1576
+ ]
1577
+ },
1578
+ "ele": {
1579
+ "commands": [
1580
+ {
1581
+ "name": "hot",
1582
+ "description": "Ele.me trending restaurants",
1583
+ "strategy": "intercept",
1584
+ "type": "web-api"
1585
+ },
1586
+ {
1587
+ "name": "search",
1588
+ "description": "Search restaurants and food on Ele.me",
1589
+ "strategy": "intercept",
1590
+ "type": "web-api"
1591
+ }
1592
+ ]
1593
+ },
1594
+ "exchangerate": {
1595
+ "commands": [
1596
+ {
1597
+ "name": "convert",
1598
+ "description": "Get exchange rates (free API, no key needed)",
1599
+ "strategy": "public",
1600
+ "type": "web-api"
1601
+ },
1602
+ {
1603
+ "name": "list",
1604
+ "description": "List all exchange rates for a base currency",
1605
+ "strategy": "public",
1606
+ "type": "web-api"
1607
+ }
1608
+ ]
1609
+ },
1182
1610
  "facebook": {
1183
1611
  "commands": [
1184
1612
  {
@@ -1217,6 +1645,12 @@
1217
1645
  "strategy": "intercept",
1218
1646
  "type": "web-api"
1219
1647
  },
1648
+ {
1649
+ "name": "marketplace",
1650
+ "description": "Search Facebook Marketplace listings",
1651
+ "strategy": "cookie",
1652
+ "type": "web-api"
1653
+ },
1220
1654
  {
1221
1655
  "name": "memories",
1222
1656
  "description": "Get your Facebook memories (On This Day)",
@@ -1229,6 +1663,12 @@
1229
1663
  "strategy": "intercept",
1230
1664
  "type": "web-api"
1231
1665
  },
1666
+ {
1667
+ "name": "post",
1668
+ "description": "Create a Facebook post",
1669
+ "strategy": "cookie",
1670
+ "type": "web-api"
1671
+ },
1232
1672
  {
1233
1673
  "name": "profile",
1234
1674
  "description": "Get Facebook user/page profile info",
@@ -1243,6 +1683,34 @@
1243
1683
  }
1244
1684
  ]
1245
1685
  },
1686
+ "feishu": {
1687
+ "commands": [
1688
+ {
1689
+ "name": "calendar",
1690
+ "description": "List upcoming Feishu/Lark calendar events",
1691
+ "strategy": "public",
1692
+ "type": "bridge"
1693
+ },
1694
+ {
1695
+ "name": "docs",
1696
+ "description": "List recent Feishu/Lark documents",
1697
+ "strategy": "public",
1698
+ "type": "bridge"
1699
+ },
1700
+ {
1701
+ "name": "send",
1702
+ "description": "Send a message via Feishu/Lark CLI",
1703
+ "strategy": "public",
1704
+ "type": "bridge"
1705
+ },
1706
+ {
1707
+ "name": "tasks",
1708
+ "description": "List Feishu/Lark tasks",
1709
+ "strategy": "public",
1710
+ "type": "bridge"
1711
+ }
1712
+ ]
1713
+ },
1246
1714
  "ffmpeg": {
1247
1715
  "commands": [
1248
1716
  {
@@ -1417,6 +1885,22 @@
1417
1885
  }
1418
1886
  ]
1419
1887
  },
1888
+ "futu": {
1889
+ "commands": [
1890
+ {
1891
+ "name": "hot",
1892
+ "description": "Futu hot stocks list",
1893
+ "strategy": "intercept",
1894
+ "type": "web-api"
1895
+ },
1896
+ {
1897
+ "name": "quote",
1898
+ "description": "Get stock quote from Futu",
1899
+ "strategy": "intercept",
1900
+ "type": "web-api"
1901
+ }
1902
+ ]
1903
+ },
1420
1904
  "gcloud": {
1421
1905
  "commands": [
1422
1906
  {
@@ -1571,6 +2055,28 @@
1571
2055
  }
1572
2056
  ]
1573
2057
  },
2058
+ "gitee": {
2059
+ "commands": [
2060
+ {
2061
+ "name": "repos",
2062
+ "description": "Search Gitee repositories",
2063
+ "strategy": "public",
2064
+ "type": "web-api"
2065
+ },
2066
+ {
2067
+ "name": "search",
2068
+ "description": "Search repositories on Gitee",
2069
+ "strategy": "public",
2070
+ "type": "web-api"
2071
+ },
2072
+ {
2073
+ "name": "trending",
2074
+ "description": "Trending repositories on Gitee",
2075
+ "strategy": "public",
2076
+ "type": "web-api"
2077
+ }
2078
+ ]
2079
+ },
1574
2080
  "github-trending": {
1575
2081
  "commands": [
1576
2082
  {
@@ -1578,6 +2084,40 @@
1578
2084
  "description": "GitHub trending repositories (by recent stars)",
1579
2085
  "strategy": "public",
1580
2086
  "type": "web-api"
2087
+ },
2088
+ {
2089
+ "name": "developers",
2090
+ "description": "GitHub trending developers",
2091
+ "strategy": "public",
2092
+ "type": "web-api"
2093
+ },
2094
+ {
2095
+ "name": "weekly",
2096
+ "description": "GitHub trending repositories this week",
2097
+ "strategy": "public",
2098
+ "type": "web-api"
2099
+ }
2100
+ ]
2101
+ },
2102
+ "gitlab": {
2103
+ "commands": [
2104
+ {
2105
+ "name": "projects",
2106
+ "description": "Search GitLab projects",
2107
+ "strategy": "public",
2108
+ "type": "web-api"
2109
+ },
2110
+ {
2111
+ "name": "search",
2112
+ "description": "Search GitLab projects",
2113
+ "strategy": "public",
2114
+ "type": "web-api"
2115
+ },
2116
+ {
2117
+ "name": "trending",
2118
+ "description": "Trending/popular GitLab projects",
2119
+ "strategy": "public",
2120
+ "type": "web-api"
1581
2121
  }
1582
2122
  ]
1583
2123
  },
@@ -1649,6 +2189,18 @@
1649
2189
  "strategy": "public",
1650
2190
  "type": "web-api"
1651
2191
  },
2192
+ {
2193
+ "name": "comments",
2194
+ "description": "Get comments for a Hacker News story",
2195
+ "strategy": "public",
2196
+ "type": "web-api"
2197
+ },
2198
+ {
2199
+ "name": "item",
2200
+ "description": "Get a Hacker News item (story, comment, job, poll)",
2201
+ "strategy": "public",
2202
+ "type": "web-api"
2203
+ },
1652
2204
  {
1653
2205
  "name": "jobs",
1654
2206
  "description": "Hacker News job postings",
@@ -1711,12 +2263,24 @@
1711
2263
  },
1712
2264
  "hf": {
1713
2265
  "commands": [
2266
+ {
2267
+ "name": "datasets",
2268
+ "description": "Search Hugging Face datasets",
2269
+ "strategy": "public",
2270
+ "type": "web-api"
2271
+ },
1714
2272
  {
1715
2273
  "name": "models",
1716
2274
  "description": "Search HuggingFace models",
1717
2275
  "strategy": "public",
1718
2276
  "type": "bridge"
1719
2277
  },
2278
+ {
2279
+ "name": "spaces",
2280
+ "description": "Search Hugging Face Spaces",
2281
+ "strategy": "public",
2282
+ "type": "web-api"
2283
+ },
1720
2284
  {
1721
2285
  "name": "top",
1722
2286
  "description": "Top upvoted Hugging Face papers (daily)",
@@ -1725,6 +2289,38 @@
1725
2289
  }
1726
2290
  ]
1727
2291
  },
2292
+ "homebrew": {
2293
+ "commands": [
2294
+ {
2295
+ "name": "info",
2296
+ "description": "Get Homebrew formula details",
2297
+ "strategy": "public",
2298
+ "type": "web-api"
2299
+ },
2300
+ {
2301
+ "name": "search",
2302
+ "description": "Search Homebrew formulae",
2303
+ "strategy": "public",
2304
+ "type": "web-api"
2305
+ }
2306
+ ]
2307
+ },
2308
+ "huggingface-papers": {
2309
+ "commands": [
2310
+ {
2311
+ "name": "daily",
2312
+ "description": "Daily trending papers on Hugging Face",
2313
+ "strategy": "public",
2314
+ "type": "web-api"
2315
+ },
2316
+ {
2317
+ "name": "search",
2318
+ "description": "Search Hugging Face papers",
2319
+ "strategy": "public",
2320
+ "type": "web-api"
2321
+ }
2322
+ ]
2323
+ },
1728
2324
  "hupu": {
1729
2325
  "commands": [
1730
2326
  {
@@ -1813,6 +2409,12 @@
1813
2409
  },
1814
2410
  "imdb": {
1815
2411
  "commands": [
2412
+ {
2413
+ "name": "box-office",
2414
+ "description": "IMDB box office / popular movies",
2415
+ "strategy": "public",
2416
+ "type": "web-api"
2417
+ },
1816
2418
  {
1817
2419
  "name": "person",
1818
2420
  "description": "IMDb person/actor details via suggestion API",
@@ -1851,6 +2453,22 @@
1851
2453
  }
1852
2454
  ]
1853
2455
  },
2456
+ "infoq": {
2457
+ "commands": [
2458
+ {
2459
+ "name": "articles",
2460
+ "description": "Latest InfoQ articles (Chinese edition)",
2461
+ "strategy": "public",
2462
+ "type": "web-api"
2463
+ },
2464
+ {
2465
+ "name": "latest",
2466
+ "description": "Latest InfoQ articles",
2467
+ "strategy": "public",
2468
+ "type": "web-api"
2469
+ }
2470
+ ]
2471
+ },
1854
2472
  "inkscape": {
1855
2473
  "commands": [
1856
2474
  {
@@ -1875,6 +2493,12 @@
1875
2493
  },
1876
2494
  "instagram": {
1877
2495
  "commands": [
2496
+ {
2497
+ "name": "activity",
2498
+ "description": "Get recent activity/notifications for logged-in Instagram user",
2499
+ "strategy": "intercept",
2500
+ "type": "web-api"
2501
+ },
1878
2502
  {
1879
2503
  "name": "comment",
1880
2504
  "description": "Comment on an Instagram post",
@@ -1911,6 +2535,12 @@
1911
2535
  "strategy": "intercept",
1912
2536
  "type": "web-api"
1913
2537
  },
2538
+ {
2539
+ "name": "highlights",
2540
+ "description": "List story highlights for an Instagram user",
2541
+ "strategy": "intercept",
2542
+ "type": "web-api"
2543
+ },
1914
2544
  {
1915
2545
  "name": "like",
1916
2546
  "description": "Like an Instagram post",
@@ -1941,6 +2571,18 @@
1941
2571
  "strategy": "ui",
1942
2572
  "type": "web-api"
1943
2573
  },
2574
+ {
2575
+ "name": "reels",
2576
+ "description": "Get Instagram trending reels",
2577
+ "strategy": "cookie",
2578
+ "type": "web-api"
2579
+ },
2580
+ {
2581
+ "name": "reels-trending",
2582
+ "description": "Get trending Instagram Reels",
2583
+ "strategy": "intercept",
2584
+ "type": "web-api"
2585
+ },
1944
2586
  {
1945
2587
  "name": "save",
1946
2588
  "description": "Save (bookmark) an Instagram post",
@@ -1959,6 +2601,12 @@
1959
2601
  "strategy": "intercept",
1960
2602
  "type": "web-api"
1961
2603
  },
2604
+ {
2605
+ "name": "stories",
2606
+ "description": "Get Instagram stories for a user",
2607
+ "strategy": "cookie",
2608
+ "type": "web-api"
2609
+ },
1962
2610
  {
1963
2611
  "name": "story",
1964
2612
  "description": "Post a single Instagram story image or video",
@@ -1966,21 +2614,33 @@
1966
2614
  "type": "web-api"
1967
2615
  },
1968
2616
  {
1969
- "name": "unfollow",
1970
- "description": "Unfollow an Instagram user",
2617
+ "name": "suggested",
2618
+ "description": "Get suggested users to follow on Instagram",
1971
2619
  "strategy": "intercept",
1972
2620
  "type": "web-api"
1973
2621
  },
1974
2622
  {
1975
- "name": "unlike",
1976
- "description": "Unlike an Instagram post",
2623
+ "name": "tags",
2624
+ "description": "Browse recent posts for an Instagram hashtag",
1977
2625
  "strategy": "intercept",
1978
2626
  "type": "web-api"
1979
2627
  },
1980
2628
  {
1981
- "name": "unsave",
1982
- "description": "Unsave (remove bookmark) an Instagram post",
1983
- "strategy": "intercept",
2629
+ "name": "unfollow",
2630
+ "description": "Unfollow an Instagram user",
2631
+ "strategy": "intercept",
2632
+ "type": "web-api"
2633
+ },
2634
+ {
2635
+ "name": "unlike",
2636
+ "description": "Unlike an Instagram post",
2637
+ "strategy": "intercept",
2638
+ "type": "web-api"
2639
+ },
2640
+ {
2641
+ "name": "unsave",
2642
+ "description": "Unsave (remove bookmark) an Instagram post",
2643
+ "strategy": "intercept",
1984
2644
  "type": "web-api"
1985
2645
  },
1986
2646
  {
@@ -1991,6 +2651,60 @@
1991
2651
  }
1992
2652
  ]
1993
2653
  },
2654
+ "ip-info": {
2655
+ "commands": [
2656
+ {
2657
+ "name": "lookup",
2658
+ "description": "IP geolocation lookup (free, no key)",
2659
+ "strategy": "public",
2660
+ "type": "web-api"
2661
+ }
2662
+ ]
2663
+ },
2664
+ "itch-io": {
2665
+ "commands": [
2666
+ {
2667
+ "name": "popular",
2668
+ "description": "Popular games on itch.io",
2669
+ "strategy": "public",
2670
+ "type": "web-api"
2671
+ },
2672
+ {
2673
+ "name": "search",
2674
+ "description": "Search itch.io games",
2675
+ "strategy": "public",
2676
+ "type": "web-api"
2677
+ },
2678
+ {
2679
+ "name": "top",
2680
+ "description": "Top rated itch.io games",
2681
+ "strategy": "public",
2682
+ "type": "web-api"
2683
+ }
2684
+ ]
2685
+ },
2686
+ "ithome": {
2687
+ "commands": [
2688
+ {
2689
+ "name": "hot",
2690
+ "description": "IT Home hot news",
2691
+ "strategy": "public",
2692
+ "type": "web-api"
2693
+ },
2694
+ {
2695
+ "name": "latest",
2696
+ "description": "Latest IT Home news articles",
2697
+ "strategy": "public",
2698
+ "type": "web-api"
2699
+ },
2700
+ {
2701
+ "name": "news",
2702
+ "description": "IT Home (IT之家) latest tech news via RSS",
2703
+ "strategy": "public",
2704
+ "type": "web-api"
2705
+ }
2706
+ ]
2707
+ },
1994
2708
  "jd": {
1995
2709
  "commands": [
1996
2710
  {
@@ -2019,6 +2733,16 @@
2019
2733
  }
2020
2734
  ]
2021
2735
  },
2736
+ "jianyu": {
2737
+ "commands": [
2738
+ {
2739
+ "name": "search",
2740
+ "description": "Search Jianyu real estate listings",
2741
+ "strategy": "intercept",
2742
+ "type": "browser"
2743
+ }
2744
+ ]
2745
+ },
2022
2746
  "jike": {
2023
2747
  "commands": [
2024
2748
  {
@@ -2137,6 +2861,22 @@
2137
2861
  }
2138
2862
  ]
2139
2863
  },
2864
+ "ke": {
2865
+ "commands": [
2866
+ {
2867
+ "name": "ershoufang",
2868
+ "description": "Ke.com (Beike) second-hand housing listings",
2869
+ "strategy": "intercept",
2870
+ "type": "browser"
2871
+ },
2872
+ {
2873
+ "name": "xiaoqu",
2874
+ "description": "Ke.com (Beike) neighborhood/community listings",
2875
+ "strategy": "intercept",
2876
+ "type": "browser"
2877
+ }
2878
+ ]
2879
+ },
2140
2880
  "krita": {
2141
2881
  "commands": [
2142
2882
  {
@@ -2165,6 +2905,22 @@
2165
2905
  }
2166
2906
  ]
2167
2907
  },
2908
+ "kuaishou": {
2909
+ "commands": [
2910
+ {
2911
+ "name": "hot",
2912
+ "description": "Kuaishou trending videos",
2913
+ "strategy": "intercept",
2914
+ "type": "web-api"
2915
+ },
2916
+ {
2917
+ "name": "search",
2918
+ "description": "Search Kuaishou videos",
2919
+ "strategy": "intercept",
2920
+ "type": "web-api"
2921
+ }
2922
+ ]
2923
+ },
2168
2924
  "lark": {
2169
2925
  "commands": [
2170
2926
  {
@@ -2287,6 +3043,12 @@
2287
3043
  },
2288
3044
  "linkedin": {
2289
3045
  "commands": [
3046
+ {
3047
+ "name": "jobs",
3048
+ "description": "Search LinkedIn job postings",
3049
+ "strategy": "cookie",
3050
+ "type": "web-api"
3051
+ },
2290
3052
  {
2291
3053
  "name": "manifest",
2292
3054
  "description": "LinkedIn — professional networking and job search",
@@ -2397,6 +3159,12 @@
2397
3159
  "strategy": "public",
2398
3160
  "type": "web-api"
2399
3161
  },
3162
+ {
3163
+ "name": "search",
3164
+ "description": "Search Lobsters stories",
3165
+ "strategy": "public",
3166
+ "type": "web-api"
3167
+ },
2400
3168
  {
2401
3169
  "name": "tag",
2402
3170
  "description": "Lobste.rs stories by tag",
@@ -2405,187 +3173,645 @@
2405
3173
  }
2406
3174
  ]
2407
3175
  },
2408
- "medium": {
3176
+ "macos": {
2409
3177
  "commands": [
2410
3178
  {
2411
- "name": "feed",
2412
- "description": "Medium trending articles by topic",
3179
+ "name": "active-app",
3180
+ "description": "Get the currently active macOS application",
2413
3181
  "strategy": "public",
2414
- "type": "web-api"
3182
+ "type": "desktop"
2415
3183
  },
2416
3184
  {
2417
- "name": "search",
2418
- "description": "Search Medium articles",
3185
+ "name": "apps",
3186
+ "description": "List running applications with name, PID, and bundle ID",
2419
3187
  "strategy": "public",
2420
- "type": "web-api"
3188
+ "type": "desktop"
2421
3189
  },
2422
3190
  {
2423
- "name": "user",
2424
- "description": "Medium user profile and recent articles",
3191
+ "name": "apps-list",
3192
+ "description": "List installed macOS applications",
2425
3193
  "strategy": "public",
2426
- "type": "web-api"
2427
- }
2428
- ]
2429
- },
2430
- "mermaid": {
2431
- "commands": [
3194
+ "type": "desktop"
3195
+ },
2432
3196
  {
2433
- "name": "render",
2434
- "description": "Render Mermaid diagram code to an image file",
3197
+ "name": "battery",
3198
+ "description": "Get battery percentage, charging status, and time remaining",
2435
3199
  "strategy": "public",
2436
3200
  "type": "desktop"
2437
- }
2438
- ]
2439
- },
2440
- "motion-studio": {
2441
- "commands": [
3201
+ },
2442
3202
  {
2443
- "name": "component-get",
2444
- "description": "Fetch a Motion (motion.dev) example component as paste-ready code",
3203
+ "name": "bluetooth",
3204
+ "description": "Check macOS Bluetooth status",
2445
3205
  "strategy": "public",
2446
- "type": "web-api"
2447
- }
2448
- ]
2449
- },
2450
- "musescore": {
2451
- "commands": [
3206
+ "type": "desktop"
3207
+ },
2452
3208
  {
2453
- "name": "convert",
2454
- "description": "Convert a MuseScore file to another format with explicit trim control",
3209
+ "name": "brightness",
3210
+ "description": "Get current screen brightness",
2455
3211
  "strategy": "public",
2456
3212
  "type": "desktop"
2457
3213
  },
2458
3214
  {
2459
- "name": "export",
2460
- "description": "Export a MuseScore file to pdf, png, mp3, wav, midi, or musicxml (format inferred from output extension)",
3215
+ "name": "caffeinate",
3216
+ "description": "Keep Mac awake for a specified duration (prevents display sleep)",
2461
3217
  "strategy": "public",
2462
3218
  "type": "desktop"
2463
3219
  },
2464
3220
  {
2465
- "name": "info",
2466
- "description": "Extract metadata from a MuseScore file (title, composer, parts, measures)",
3221
+ "name": "calendar-create",
3222
+ "description": "Create a new calendar event with title, date, time, and duration",
2467
3223
  "strategy": "public",
2468
3224
  "type": "desktop"
2469
3225
  },
2470
3226
  {
2471
- "name": "instruments",
2472
- "description": "List instruments/parts in a MuseScore file",
3227
+ "name": "calendar-list",
3228
+ "description": "List calendar events for the next N days",
2473
3229
  "strategy": "public",
2474
3230
  "type": "desktop"
2475
3231
  },
2476
3232
  {
2477
- "name": "transpose",
2478
- "description": "Transpose a score by semitones and export",
3233
+ "name": "calendar-today",
3234
+ "description": "List today's calendar events from macOS Calendar.app",
2479
3235
  "strategy": "public",
2480
3236
  "type": "desktop"
2481
- }
2482
- ]
2483
- },
2484
- "neonctl": {
2485
- "commands": [
3237
+ },
2486
3238
  {
2487
- "name": "projects",
2488
- "description": "List Neon database projects",
3239
+ "name": "clipboard",
3240
+ "description": "Get current clipboard text contents",
2489
3241
  "strategy": "public",
2490
- "type": "bridge"
2491
- }
2492
- ]
2493
- },
2494
- "netlify": {
2495
- "commands": [
3242
+ "type": "desktop"
3243
+ },
2496
3244
  {
2497
- "name": "sites",
2498
- "description": "List Netlify sites",
3245
+ "name": "contacts-search",
3246
+ "description": "Search contacts by name, email, or phone",
2499
3247
  "strategy": "public",
2500
- "type": "bridge"
2501
- }
2502
- ]
2503
- },
2504
- "notebooklm": {
2505
- "commands": [
2506
- {
2507
- "name": "current",
2508
- "description": "Get current NotebookLM notebook info",
2509
- "strategy": "intercept",
2510
- "type": "web-api"
3248
+ "type": "desktop"
2511
3249
  },
2512
3250
  {
2513
- "name": "get",
2514
- "description": "Get NotebookLM notebook details",
2515
- "strategy": "intercept",
2516
- "type": "web-api"
3251
+ "name": "dark-mode",
3252
+ "description": "Get current dark mode status",
3253
+ "strategy": "public",
3254
+ "type": "desktop"
2517
3255
  },
2518
3256
  {
2519
- "name": "history",
2520
- "description": "Get NotebookLM chat history for a notebook",
2521
- "strategy": "intercept",
2522
- "type": "web-api"
3257
+ "name": "disk-info",
3258
+ "description": "Get disk names, capacity, and free space for all mounted volumes",
3259
+ "strategy": "public",
3260
+ "type": "desktop"
2523
3261
  },
2524
3262
  {
2525
- "name": "list",
2526
- "description": "List all NotebookLM notebooks",
2527
- "strategy": "intercept",
2528
- "type": "web-api"
3263
+ "name": "disk-usage",
3264
+ "description": "Get disk usage summary",
3265
+ "strategy": "public",
3266
+ "type": "desktop"
2529
3267
  },
2530
3268
  {
2531
- "name": "note-list",
2532
- "description": "List notes in a NotebookLM notebook",
2533
- "strategy": "intercept",
2534
- "type": "web-api"
3269
+ "name": "do-not-disturb",
3270
+ "description": "Toggle macOS Focus/Do Not Disturb mode",
3271
+ "strategy": "public",
3272
+ "type": "desktop"
2535
3273
  },
2536
3274
  {
2537
- "name": "notes-get",
2538
- "description": "Get a specific note from NotebookLM",
2539
- "strategy": "intercept",
2540
- "type": "web-api"
3275
+ "name": "empty-trash",
3276
+ "description": "Empty the macOS Trash",
3277
+ "strategy": "public",
3278
+ "type": "desktop"
2541
3279
  },
2542
3280
  {
2543
- "name": "open",
2544
- "description": "Open a NotebookLM notebook by ID",
2545
- "strategy": "intercept",
2546
- "type": "web-api"
3281
+ "name": "finder-recent",
3282
+ "description": "List files opened in the last 7 days",
3283
+ "strategy": "public",
3284
+ "type": "desktop"
2547
3285
  },
2548
3286
  {
2549
- "name": "rpc",
2550
- "description": "Make a raw RPC call to NotebookLM backend",
2551
- "strategy": "intercept",
2552
- "type": "web-api"
3287
+ "name": "finder-selection",
3288
+ "description": "Get currently selected files in Finder",
3289
+ "strategy": "public",
3290
+ "type": "desktop"
2553
3291
  },
2554
3292
  {
2555
- "name": "shared",
2556
- "description": "List shared NotebookLM notebooks",
2557
- "strategy": "intercept",
2558
- "type": "web-api"
3293
+ "name": "finder-tags",
3294
+ "description": "List Finder tags on a file or directory",
3295
+ "strategy": "public",
3296
+ "type": "desktop"
2559
3297
  },
2560
3298
  {
2561
- "name": "source-fulltext",
2562
- "description": "Get full text of a NotebookLM source",
2563
- "strategy": "intercept",
2564
- "type": "web-api"
3299
+ "name": "lock-screen",
3300
+ "description": "Lock the screen (put display to sleep)",
3301
+ "strategy": "public",
3302
+ "type": "desktop"
2565
3303
  },
2566
3304
  {
2567
- "name": "source-get",
2568
- "description": "Get a specific source from NotebookLM",
2569
- "strategy": "intercept",
2570
- "type": "web-api"
3305
+ "name": "mail-send",
3306
+ "description": "Send an email using Mail.app",
3307
+ "strategy": "public",
3308
+ "type": "desktop"
2571
3309
  },
2572
3310
  {
2573
- "name": "source-guide",
2574
- "description": "Get NotebookLM source study guide",
2575
- "strategy": "intercept",
2576
- "type": "web-api"
3311
+ "name": "mail-status",
3312
+ "description": "Get Mail.app accounts and unread message counts",
3313
+ "strategy": "public",
3314
+ "type": "desktop"
2577
3315
  },
2578
3316
  {
2579
- "name": "source-list",
2580
- "description": "List sources in a NotebookLM notebook",
2581
- "strategy": "intercept",
2582
- "type": "web-api"
3317
+ "name": "messages-send",
3318
+ "description": "Send an iMessage to a contact",
3319
+ "strategy": "public",
3320
+ "type": "desktop"
2583
3321
  },
2584
3322
  {
2585
- "name": "status",
2586
- "description": "Check NotebookLM login status",
2587
- "strategy": "intercept",
2588
- "type": "web-api"
3323
+ "name": "music-control",
3324
+ "description": "Control Apple Music playback (play, pause, next, prev, toggle)",
3325
+ "strategy": "public",
3326
+ "type": "desktop"
3327
+ },
3328
+ {
3329
+ "name": "music-now",
3330
+ "description": "Get currently playing track from Apple Music",
3331
+ "strategy": "public",
3332
+ "type": "desktop"
3333
+ },
3334
+ {
3335
+ "name": "notes-list",
3336
+ "description": "List recent Apple Notes with folder and modification date",
3337
+ "strategy": "public",
3338
+ "type": "desktop"
3339
+ },
3340
+ {
3341
+ "name": "notes-search",
3342
+ "description": "Search Apple Notes by title or content",
3343
+ "strategy": "public",
3344
+ "type": "desktop"
3345
+ },
3346
+ {
3347
+ "name": "notification",
3348
+ "description": "Send a macOS notification",
3349
+ "strategy": "public",
3350
+ "type": "desktop"
3351
+ },
3352
+ {
3353
+ "name": "notify",
3354
+ "description": "Send a macOS notification with title and optional subtitle",
3355
+ "strategy": "public",
3356
+ "type": "desktop"
3357
+ },
3358
+ {
3359
+ "name": "open",
3360
+ "description": "Open a file, URL, or application using macOS open command",
3361
+ "strategy": "public",
3362
+ "type": "desktop"
3363
+ },
3364
+ {
3365
+ "name": "open-app",
3366
+ "description": "Open a macOS application",
3367
+ "strategy": "public",
3368
+ "type": "desktop"
3369
+ },
3370
+ {
3371
+ "name": "photos-search",
3372
+ "description": "Search Apple Photos library by keyword",
3373
+ "strategy": "public",
3374
+ "type": "desktop"
3375
+ },
3376
+ {
3377
+ "name": "processes",
3378
+ "description": "List top processes by CPU usage",
3379
+ "strategy": "public",
3380
+ "type": "desktop"
3381
+ },
3382
+ {
3383
+ "name": "reminder-create",
3384
+ "description": "Create a new reminder in Reminders.app",
3385
+ "strategy": "public",
3386
+ "type": "desktop"
3387
+ },
3388
+ {
3389
+ "name": "reminders-complete",
3390
+ "description": "Mark a reminder as complete in macOS Reminders.app",
3391
+ "strategy": "public",
3392
+ "type": "desktop"
3393
+ },
3394
+ {
3395
+ "name": "reminders-list",
3396
+ "description": "List all reminders from macOS Reminders.app",
3397
+ "strategy": "public",
3398
+ "type": "desktop"
3399
+ },
3400
+ {
3401
+ "name": "safari-tabs",
3402
+ "description": "List all open Safari tabs",
3403
+ "strategy": "public",
3404
+ "type": "desktop"
3405
+ },
3406
+ {
3407
+ "name": "say",
3408
+ "description": "Speak text aloud using macOS text-to-speech",
3409
+ "strategy": "public",
3410
+ "type": "desktop"
3411
+ },
3412
+ {
3413
+ "name": "screen-lock",
3414
+ "description": "Lock the macOS screen",
3415
+ "strategy": "public",
3416
+ "type": "desktop"
3417
+ },
3418
+ {
3419
+ "name": "screenshot",
3420
+ "description": "Take a screenshot and save to file or clipboard",
3421
+ "strategy": "public",
3422
+ "type": "desktop"
3423
+ },
3424
+ {
3425
+ "name": "shortcuts-list",
3426
+ "description": "List all Shortcuts.app shortcuts",
3427
+ "strategy": "public",
3428
+ "type": "desktop"
3429
+ },
3430
+ {
3431
+ "name": "shortcuts-run",
3432
+ "description": "Run a Shortcuts.app shortcut",
3433
+ "strategy": "public",
3434
+ "type": "desktop"
3435
+ },
3436
+ {
3437
+ "name": "sleep",
3438
+ "description": "Put macOS to sleep",
3439
+ "strategy": "public",
3440
+ "type": "desktop"
3441
+ },
3442
+ {
3443
+ "name": "spotlight",
3444
+ "description": "Search files by name using Spotlight index",
3445
+ "strategy": "public",
3446
+ "type": "desktop"
3447
+ },
3448
+ {
3449
+ "name": "system-info",
3450
+ "description": "Get hardware model, processor, memory, and OS version",
3451
+ "strategy": "public",
3452
+ "type": "desktop"
3453
+ },
3454
+ {
3455
+ "name": "trash",
3456
+ "description": "Get Trash item count and list of items",
3457
+ "strategy": "public",
3458
+ "type": "desktop"
3459
+ },
3460
+ {
3461
+ "name": "uptime",
3462
+ "description": "Get system uptime",
3463
+ "strategy": "public",
3464
+ "type": "desktop"
3465
+ },
3466
+ {
3467
+ "name": "volume",
3468
+ "description": "Get system volume settings (output, input, alert levels and mute status)",
3469
+ "strategy": "public",
3470
+ "type": "desktop"
3471
+ },
3472
+ {
3473
+ "name": "wifi",
3474
+ "description": "Get Wi-Fi status or turn Wi-Fi on/off",
3475
+ "strategy": "public",
3476
+ "type": "desktop"
3477
+ },
3478
+ {
3479
+ "name": "wifi-info",
3480
+ "description": "Get current WiFi connection info",
3481
+ "strategy": "public",
3482
+ "type": "desktop"
3483
+ }
3484
+ ]
3485
+ },
3486
+ "maimai": {
3487
+ "commands": [
3488
+ {
3489
+ "name": "search",
3490
+ "description": "Search talents/people on Maimai (requires login)",
3491
+ "strategy": "intercept",
3492
+ "type": "browser"
3493
+ }
3494
+ ]
3495
+ },
3496
+ "maoyan": {
3497
+ "commands": [
3498
+ {
3499
+ "name": "hot",
3500
+ "description": "Maoyan current hot movies (box office)",
3501
+ "strategy": "public",
3502
+ "type": "web-api"
3503
+ },
3504
+ {
3505
+ "name": "search",
3506
+ "description": "Search movies on Maoyan",
3507
+ "strategy": "intercept",
3508
+ "type": "web-api"
3509
+ }
3510
+ ]
3511
+ },
3512
+ "mastodon": {
3513
+ "commands": [
3514
+ {
3515
+ "name": "search",
3516
+ "description": "Search posts on a Mastodon instance",
3517
+ "strategy": "public",
3518
+ "type": "web-api"
3519
+ },
3520
+ {
3521
+ "name": "timeline",
3522
+ "description": "Get Mastodon public timeline",
3523
+ "strategy": "public",
3524
+ "type": "web-api"
3525
+ },
3526
+ {
3527
+ "name": "trending",
3528
+ "description": "Trending posts on a Mastodon instance (default mastodon.social)",
3529
+ "strategy": "public",
3530
+ "type": "web-api"
3531
+ },
3532
+ {
3533
+ "name": "user",
3534
+ "description": "Get Mastodon user profile",
3535
+ "strategy": "public",
3536
+ "type": "web-api"
3537
+ }
3538
+ ]
3539
+ },
3540
+ "medium": {
3541
+ "commands": [
3542
+ {
3543
+ "name": "article",
3544
+ "description": "Read a Medium article as Markdown",
3545
+ "strategy": "public",
3546
+ "type": "web-api"
3547
+ },
3548
+ {
3549
+ "name": "feed",
3550
+ "description": "Medium trending articles by topic",
3551
+ "strategy": "public",
3552
+ "type": "web-api"
3553
+ },
3554
+ {
3555
+ "name": "search",
3556
+ "description": "Search Medium articles",
3557
+ "strategy": "public",
3558
+ "type": "web-api"
3559
+ },
3560
+ {
3561
+ "name": "trending",
3562
+ "description": "Medium trending articles",
3563
+ "strategy": "public",
3564
+ "type": "web-api"
3565
+ },
3566
+ {
3567
+ "name": "user",
3568
+ "description": "Medium user profile and recent articles",
3569
+ "strategy": "public",
3570
+ "type": "web-api"
3571
+ }
3572
+ ]
3573
+ },
3574
+ "meituan": {
3575
+ "commands": [
3576
+ {
3577
+ "name": "hot",
3578
+ "description": "Meituan hot search keywords",
3579
+ "strategy": "public",
3580
+ "type": "web-api"
3581
+ },
3582
+ {
3583
+ "name": "search",
3584
+ "description": "Search restaurants/shops on Meituan",
3585
+ "strategy": "cookie",
3586
+ "type": "web-api"
3587
+ }
3588
+ ]
3589
+ },
3590
+ "mermaid": {
3591
+ "commands": [
3592
+ {
3593
+ "name": "render",
3594
+ "description": "Render Mermaid diagram code to an image file",
3595
+ "strategy": "public",
3596
+ "type": "desktop"
3597
+ }
3598
+ ]
3599
+ },
3600
+ "minimax": {
3601
+ "commands": [
3602
+ {
3603
+ "name": "chat",
3604
+ "description": "MiniMax M2 chat completion (OpenAI-compatible API)",
3605
+ "strategy": "header",
3606
+ "type": "web-api"
3607
+ },
3608
+ {
3609
+ "name": "models",
3610
+ "description": "List available MiniMax models",
3611
+ "strategy": "header",
3612
+ "type": "web-api"
3613
+ },
3614
+ {
3615
+ "name": "tts",
3616
+ "description": "MiniMax text-to-speech generation",
3617
+ "strategy": "header",
3618
+ "type": "web-api"
3619
+ }
3620
+ ]
3621
+ },
3622
+ "motion-studio": {
3623
+ "commands": [
3624
+ {
3625
+ "name": "component-get",
3626
+ "description": "Fetch a Motion (motion.dev) example component as paste-ready code",
3627
+ "strategy": "public",
3628
+ "type": "web-api"
3629
+ }
3630
+ ]
3631
+ },
3632
+ "mubu": {
3633
+ "commands": [
3634
+ {
3635
+ "name": "list",
3636
+ "description": "List Mubu documents",
3637
+ "strategy": "intercept",
3638
+ "type": "web-api"
3639
+ },
3640
+ {
3641
+ "name": "search",
3642
+ "description": "Search Mubu notes",
3643
+ "strategy": "intercept",
3644
+ "type": "web-api"
3645
+ }
3646
+ ]
3647
+ },
3648
+ "musescore": {
3649
+ "commands": [
3650
+ {
3651
+ "name": "convert",
3652
+ "description": "Convert a MuseScore file to another format with explicit trim control",
3653
+ "strategy": "public",
3654
+ "type": "desktop"
3655
+ },
3656
+ {
3657
+ "name": "export",
3658
+ "description": "Export a MuseScore file to pdf, png, mp3, wav, midi, or musicxml (format inferred from output extension)",
3659
+ "strategy": "public",
3660
+ "type": "desktop"
3661
+ },
3662
+ {
3663
+ "name": "info",
3664
+ "description": "Extract metadata from a MuseScore file (title, composer, parts, measures)",
3665
+ "strategy": "public",
3666
+ "type": "desktop"
3667
+ },
3668
+ {
3669
+ "name": "instruments",
3670
+ "description": "List instruments/parts in a MuseScore file",
3671
+ "strategy": "public",
3672
+ "type": "desktop"
3673
+ },
3674
+ {
3675
+ "name": "transpose",
3676
+ "description": "Transpose a score by semitones and export",
3677
+ "strategy": "public",
3678
+ "type": "desktop"
3679
+ }
3680
+ ]
3681
+ },
3682
+ "neonctl": {
3683
+ "commands": [
3684
+ {
3685
+ "name": "projects",
3686
+ "description": "List Neon database projects",
3687
+ "strategy": "public",
3688
+ "type": "bridge"
3689
+ }
3690
+ ]
3691
+ },
3692
+ "netease-music": {
3693
+ "commands": [
3694
+ {
3695
+ "name": "hot",
3696
+ "description": "NetEase Cloud Music hot/trending songs",
3697
+ "strategy": "public",
3698
+ "type": "web-api"
3699
+ },
3700
+ {
3701
+ "name": "playlist",
3702
+ "description": "Get NetEase Cloud Music playlist tracks",
3703
+ "strategy": "public",
3704
+ "type": "web-api"
3705
+ },
3706
+ {
3707
+ "name": "search",
3708
+ "description": "Search songs on NetEase Cloud Music",
3709
+ "strategy": "public",
3710
+ "type": "web-api"
3711
+ },
3712
+ {
3713
+ "name": "top",
3714
+ "description": "NetEase Cloud Music top charts",
3715
+ "strategy": "public",
3716
+ "type": "web-api"
3717
+ }
3718
+ ]
3719
+ },
3720
+ "netlify": {
3721
+ "commands": [
3722
+ {
3723
+ "name": "sites",
3724
+ "description": "List Netlify sites",
3725
+ "strategy": "public",
3726
+ "type": "bridge"
3727
+ }
3728
+ ]
3729
+ },
3730
+ "notebooklm": {
3731
+ "commands": [
3732
+ {
3733
+ "name": "current",
3734
+ "description": "Get current NotebookLM notebook info",
3735
+ "strategy": "intercept",
3736
+ "type": "web-api"
3737
+ },
3738
+ {
3739
+ "name": "get",
3740
+ "description": "Get NotebookLM notebook details",
3741
+ "strategy": "intercept",
3742
+ "type": "web-api"
3743
+ },
3744
+ {
3745
+ "name": "history",
3746
+ "description": "Get NotebookLM chat history for a notebook",
3747
+ "strategy": "intercept",
3748
+ "type": "web-api"
3749
+ },
3750
+ {
3751
+ "name": "list",
3752
+ "description": "List all NotebookLM notebooks",
3753
+ "strategy": "intercept",
3754
+ "type": "web-api"
3755
+ },
3756
+ {
3757
+ "name": "note-list",
3758
+ "description": "List notes in a NotebookLM notebook",
3759
+ "strategy": "intercept",
3760
+ "type": "web-api"
3761
+ },
3762
+ {
3763
+ "name": "notes-get",
3764
+ "description": "Get a specific note from NotebookLM",
3765
+ "strategy": "intercept",
3766
+ "type": "web-api"
3767
+ },
3768
+ {
3769
+ "name": "open",
3770
+ "description": "Open a NotebookLM notebook by ID",
3771
+ "strategy": "intercept",
3772
+ "type": "web-api"
3773
+ },
3774
+ {
3775
+ "name": "rpc",
3776
+ "description": "Make a raw RPC call to NotebookLM backend",
3777
+ "strategy": "intercept",
3778
+ "type": "web-api"
3779
+ },
3780
+ {
3781
+ "name": "shared",
3782
+ "description": "List shared NotebookLM notebooks",
3783
+ "strategy": "intercept",
3784
+ "type": "web-api"
3785
+ },
3786
+ {
3787
+ "name": "source-fulltext",
3788
+ "description": "Get full text of a NotebookLM source",
3789
+ "strategy": "intercept",
3790
+ "type": "web-api"
3791
+ },
3792
+ {
3793
+ "name": "source-get",
3794
+ "description": "Get a specific source from NotebookLM",
3795
+ "strategy": "intercept",
3796
+ "type": "web-api"
3797
+ },
3798
+ {
3799
+ "name": "source-guide",
3800
+ "description": "Get NotebookLM source study guide",
3801
+ "strategy": "intercept",
3802
+ "type": "web-api"
3803
+ },
3804
+ {
3805
+ "name": "source-list",
3806
+ "description": "List sources in a NotebookLM notebook",
3807
+ "strategy": "intercept",
3808
+ "type": "web-api"
3809
+ },
3810
+ {
3811
+ "name": "status",
3812
+ "description": "Check NotebookLM login status",
3813
+ "strategy": "intercept",
3814
+ "type": "web-api"
2589
3815
  },
2590
3816
  {
2591
3817
  "name": "summary",
@@ -2595,6 +3821,28 @@
2595
3821
  }
2596
3822
  ]
2597
3823
  },
3824
+ "notion": {
3825
+ "commands": [
3826
+ {
3827
+ "name": "databases",
3828
+ "description": "List Notion databases",
3829
+ "strategy": "cookie",
3830
+ "type": "web-api"
3831
+ },
3832
+ {
3833
+ "name": "pages",
3834
+ "description": "List recent Notion pages",
3835
+ "strategy": "cookie",
3836
+ "type": "web-api"
3837
+ },
3838
+ {
3839
+ "name": "search",
3840
+ "description": "Search Notion pages via web API",
3841
+ "strategy": "cookie",
3842
+ "type": "web-api"
3843
+ }
3844
+ ]
3845
+ },
2598
3846
  "notion-app": {
2599
3847
  "commands": [
2600
3848
  {
@@ -2627,6 +3875,66 @@
2627
3875
  }
2628
3876
  ]
2629
3877
  },
3878
+ "npm": {
3879
+ "commands": [
3880
+ {
3881
+ "name": "downloads",
3882
+ "description": "Get npm package download stats",
3883
+ "strategy": "public",
3884
+ "type": "web-api"
3885
+ },
3886
+ {
3887
+ "name": "info",
3888
+ "description": "Get npm package details",
3889
+ "strategy": "public",
3890
+ "type": "web-api"
3891
+ },
3892
+ {
3893
+ "name": "search",
3894
+ "description": "Search npm packages",
3895
+ "strategy": "public",
3896
+ "type": "web-api"
3897
+ },
3898
+ {
3899
+ "name": "versions",
3900
+ "description": "List all versions of an npm package",
3901
+ "strategy": "public",
3902
+ "type": "web-api"
3903
+ }
3904
+ ]
3905
+ },
3906
+ "npm-trends": {
3907
+ "commands": [
3908
+ {
3909
+ "name": "compare",
3910
+ "description": "Compare npm package download counts",
3911
+ "strategy": "public",
3912
+ "type": "web-api"
3913
+ },
3914
+ {
3915
+ "name": "trending",
3916
+ "description": "Get trending npm packages",
3917
+ "strategy": "public",
3918
+ "type": "web-api"
3919
+ }
3920
+ ]
3921
+ },
3922
+ "nytimes": {
3923
+ "commands": [
3924
+ {
3925
+ "name": "search",
3926
+ "description": "Search NYTimes articles",
3927
+ "strategy": "public",
3928
+ "type": "web-api"
3929
+ },
3930
+ {
3931
+ "name": "top",
3932
+ "description": "New York Times top stories via RSS",
3933
+ "strategy": "public",
3934
+ "type": "web-api"
3935
+ }
3936
+ ]
3937
+ },
2630
3938
  "obs": {
2631
3939
  "commands": [
2632
3940
  {
@@ -2679,13 +3987,53 @@
2679
3987
  }
2680
3988
  ]
2681
3989
  },
3990
+ "obsidian": {
3991
+ "commands": [
3992
+ {
3993
+ "name": "daily",
3994
+ "description": "Open today's daily note in an Obsidian vault",
3995
+ "strategy": "public",
3996
+ "type": "desktop"
3997
+ },
3998
+ {
3999
+ "name": "open",
4000
+ "description": "Open an Obsidian vault or specific note",
4001
+ "strategy": "public",
4002
+ "type": "desktop"
4003
+ },
4004
+ {
4005
+ "name": "search",
4006
+ "description": "Search for text within an Obsidian vault",
4007
+ "strategy": "public",
4008
+ "type": "desktop"
4009
+ }
4010
+ ]
4011
+ },
2682
4012
  "ollama": {
2683
4013
  "commands": [
4014
+ {
4015
+ "name": "generate",
4016
+ "description": "Generate text with an Ollama model",
4017
+ "strategy": "public",
4018
+ "type": "service"
4019
+ },
2684
4020
  {
2685
4021
  "name": "list",
2686
4022
  "description": "List locally installed Ollama models",
2687
4023
  "strategy": "public",
2688
4024
  "type": "service"
4025
+ },
4026
+ {
4027
+ "name": "models",
4028
+ "description": "List available Ollama models in registry",
4029
+ "strategy": "public",
4030
+ "type": "service"
4031
+ },
4032
+ {
4033
+ "name": "ps",
4034
+ "description": "List running Ollama models",
4035
+ "strategy": "public",
4036
+ "type": "service"
2689
4037
  }
2690
4038
  ]
2691
4039
  },
@@ -2785,6 +4133,22 @@
2785
4133
  }
2786
4134
  ]
2787
4135
  },
4136
+ "openrouter": {
4137
+ "commands": [
4138
+ {
4139
+ "name": "models",
4140
+ "description": "List all available AI models on OpenRouter",
4141
+ "strategy": "public",
4142
+ "type": "web-api"
4143
+ },
4144
+ {
4145
+ "name": "search",
4146
+ "description": "Search OpenRouter AI models",
4147
+ "strategy": "public",
4148
+ "type": "web-api"
4149
+ }
4150
+ ]
4151
+ },
2788
4152
  "pandoc": {
2789
4153
  "commands": [
2790
4154
  {
@@ -2817,6 +4181,48 @@
2817
4181
  }
2818
4182
  ]
2819
4183
  },
4184
+ "perplexity": {
4185
+ "commands": [
4186
+ {
4187
+ "name": "ask",
4188
+ "description": "Ask Perplexity AI a question via API",
4189
+ "strategy": "header",
4190
+ "type": "web-api"
4191
+ }
4192
+ ]
4193
+ },
4194
+ "pexels": {
4195
+ "commands": [
4196
+ {
4197
+ "name": "curated",
4198
+ "description": "Get Pexels curated photos",
4199
+ "strategy": "public",
4200
+ "type": "web-api"
4201
+ },
4202
+ {
4203
+ "name": "search",
4204
+ "description": "Search free stock photos on Pexels",
4205
+ "strategy": "header",
4206
+ "type": "web-api"
4207
+ }
4208
+ ]
4209
+ },
4210
+ "pinduoduo": {
4211
+ "commands": [
4212
+ {
4213
+ "name": "hot",
4214
+ "description": "Pinduoduo hot/trending products",
4215
+ "strategy": "cookie",
4216
+ "type": "web-api"
4217
+ },
4218
+ {
4219
+ "name": "search",
4220
+ "description": "Search Pinduoduo products",
4221
+ "strategy": "cookie",
4222
+ "type": "web-api"
4223
+ }
4224
+ ]
4225
+ },
2820
4226
  "pixiv": {
2821
4227
  "commands": [
2822
4228
  {
@@ -2877,6 +4283,12 @@
2877
4283
  "strategy": "public",
2878
4284
  "type": "web-api"
2879
4285
  },
4286
+ {
4287
+ "name": "search",
4288
+ "description": "Search Product Hunt products",
4289
+ "strategy": "public",
4290
+ "type": "web-api"
4291
+ },
2880
4292
  {
2881
4293
  "name": "today",
2882
4294
  "description": "Today's top Product Hunt launches",
@@ -2891,7 +4303,61 @@
2891
4303
  "name": "databases",
2892
4304
  "description": "List PlanetScale databases",
2893
4305
  "strategy": "public",
2894
- "type": "bridge"
4306
+ "type": "bridge"
4307
+ }
4308
+ ]
4309
+ },
4310
+ "pypi": {
4311
+ "commands": [
4312
+ {
4313
+ "name": "info",
4314
+ "description": "Get PyPI package details",
4315
+ "strategy": "public",
4316
+ "type": "web-api"
4317
+ },
4318
+ {
4319
+ "name": "search",
4320
+ "description": "Search PyPI packages via warehouse API",
4321
+ "strategy": "public",
4322
+ "type": "web-api"
4323
+ },
4324
+ {
4325
+ "name": "versions",
4326
+ "description": "List all versions of a PyPI package",
4327
+ "strategy": "public",
4328
+ "type": "web-api"
4329
+ }
4330
+ ]
4331
+ },
4332
+ "quark": {
4333
+ "commands": [
4334
+ {
4335
+ "name": "ls",
4336
+ "description": "List files in Quark cloud drive",
4337
+ "strategy": "cookie",
4338
+ "type": "web-api"
4339
+ },
4340
+ {
4341
+ "name": "search",
4342
+ "description": "Search files in Quark cloud drive",
4343
+ "strategy": "cookie",
4344
+ "type": "web-api"
4345
+ }
4346
+ ]
4347
+ },
4348
+ "qweather": {
4349
+ "commands": [
4350
+ {
4351
+ "name": "forecast",
4352
+ "description": "Weather forecast from QWeather",
4353
+ "strategy": "public",
4354
+ "type": "web-api"
4355
+ },
4356
+ {
4357
+ "name": "now",
4358
+ "description": "Current weather from QWeather (和风天气, free tier)",
4359
+ "strategy": "public",
4360
+ "type": "web-api"
2895
4361
  }
2896
4362
  ]
2897
4363
  },
@@ -2931,6 +4397,12 @@
2931
4397
  "strategy": "public",
2932
4398
  "type": "web-api"
2933
4399
  },
4400
+ {
4401
+ "name": "new",
4402
+ "description": "Reddit newest posts from all subreddits",
4403
+ "strategy": "public",
4404
+ "type": "web-api"
4405
+ },
2934
4406
  {
2935
4407
  "name": "popular",
2936
4408
  "description": "Reddit popular posts (/r/popular)",
@@ -2943,6 +4415,12 @@
2943
4415
  "strategy": "public",
2944
4416
  "type": "web-api"
2945
4417
  },
4418
+ {
4419
+ "name": "rising",
4420
+ "description": "Reddit rising posts",
4421
+ "strategy": "public",
4422
+ "type": "web-api"
4423
+ },
2946
4424
  {
2947
4425
  "name": "save",
2948
4426
  "description": "Save a Reddit post or comment",
@@ -2973,6 +4451,18 @@
2973
4451
  "strategy": "cookie",
2974
4452
  "type": "web-api"
2975
4453
  },
4454
+ {
4455
+ "name": "top",
4456
+ "description": "Reddit top posts",
4457
+ "strategy": "public",
4458
+ "type": "web-api"
4459
+ },
4460
+ {
4461
+ "name": "trending",
4462
+ "description": "Reddit trending subreddits",
4463
+ "strategy": "public",
4464
+ "type": "web-api"
4465
+ },
2976
4466
  {
2977
4467
  "name": "upvote",
2978
4468
  "description": "Upvote a Reddit post or comment",
@@ -3021,6 +4511,28 @@
3021
4511
  }
3022
4512
  ]
3023
4513
  },
4514
+ "replicate": {
4515
+ "commands": [
4516
+ {
4517
+ "name": "run",
4518
+ "description": "Run a Replicate AI model",
4519
+ "strategy": "cookie",
4520
+ "type": "web-api"
4521
+ },
4522
+ {
4523
+ "name": "search",
4524
+ "description": "Search AI models on Replicate",
4525
+ "strategy": "public",
4526
+ "type": "web-api"
4527
+ },
4528
+ {
4529
+ "name": "trending",
4530
+ "description": "Trending AI models on Replicate",
4531
+ "strategy": "public",
4532
+ "type": "web-api"
4533
+ }
4534
+ ]
4535
+ },
3024
4536
  "reuters": {
3025
4537
  "commands": [
3026
4538
  {
@@ -3029,6 +4541,12 @@
3029
4541
  "strategy": "public",
3030
4542
  "type": "web-api"
3031
4543
  },
4544
+ {
4545
+ "name": "latest",
4546
+ "description": "Latest Reuters news articles",
4547
+ "strategy": "public",
4548
+ "type": "web-api"
4549
+ },
3032
4550
  {
3033
4551
  "name": "manifest",
3034
4552
  "description": "Reuters — international news and wire service",
@@ -3107,6 +4625,12 @@
3107
4625
  },
3108
4626
  "sinafinance": {
3109
4627
  "commands": [
4628
+ {
4629
+ "name": "market",
4630
+ "description": "Sina Finance stock market overview",
4631
+ "strategy": "public",
4632
+ "type": "web-api"
4633
+ },
3110
4634
  {
3111
4635
  "name": "news",
3112
4636
  "description": "Sina Finance 7x24 live news feed",
@@ -3162,6 +4686,42 @@
3162
4686
  "description": "List Slack channels",
3163
4687
  "strategy": "public",
3164
4688
  "type": "bridge"
4689
+ },
4690
+ {
4691
+ "name": "messages",
4692
+ "description": "Read Slack channel messages",
4693
+ "strategy": "cookie",
4694
+ "type": "web-api"
4695
+ },
4696
+ {
4697
+ "name": "post",
4698
+ "description": "Post a message to a Slack channel",
4699
+ "strategy": "cookie",
4700
+ "type": "web-api"
4701
+ },
4702
+ {
4703
+ "name": "search",
4704
+ "description": "Search Slack messages",
4705
+ "strategy": "public",
4706
+ "type": "bridge"
4707
+ },
4708
+ {
4709
+ "name": "send",
4710
+ "description": "Send a message to a Slack channel",
4711
+ "strategy": "public",
4712
+ "type": "bridge"
4713
+ },
4714
+ {
4715
+ "name": "status",
4716
+ "description": "Check Slack CLI auth and workspace status",
4717
+ "strategy": "public",
4718
+ "type": "bridge"
4719
+ },
4720
+ {
4721
+ "name": "users",
4722
+ "description": "List Slack workspace users",
4723
+ "strategy": "cookie",
4724
+ "type": "web-api"
3165
4725
  }
3166
4726
  ]
3167
4727
  },
@@ -3205,6 +4765,16 @@
3205
4765
  }
3206
4766
  ]
3207
4767
  },
4768
+ "slock": {
4769
+ "commands": [
4770
+ {
4771
+ "name": "servers",
4772
+ "description": "List Slock.ai servers (requires login)",
4773
+ "strategy": "intercept",
4774
+ "type": "browser"
4775
+ }
4776
+ ]
4777
+ },
3208
4778
  "smzdm": {
3209
4779
  "commands": [
3210
4780
  {
@@ -3235,11 +4805,45 @@
3235
4805
  },
3236
4806
  "spotify": {
3237
4807
  "commands": [
4808
+ {
4809
+ "name": "now-playing",
4810
+ "description": "Get currently playing track on Spotify",
4811
+ "strategy": "cookie",
4812
+ "type": "web-api"
4813
+ },
4814
+ {
4815
+ "name": "playlists",
4816
+ "description": "Get user's playlists on Spotify",
4817
+ "strategy": "cookie",
4818
+ "type": "web-api"
4819
+ },
3238
4820
  {
3239
4821
  "name": "search",
3240
4822
  "description": "Search Spotify catalog",
3241
4823
  "strategy": "public",
3242
4824
  "type": "web-api"
4825
+ },
4826
+ {
4827
+ "name": "top-tracks",
4828
+ "description": "Get user's top tracks on Spotify",
4829
+ "strategy": "cookie",
4830
+ "type": "web-api"
4831
+ }
4832
+ ]
4833
+ },
4834
+ "sspai": {
4835
+ "commands": [
4836
+ {
4837
+ "name": "hot",
4838
+ "description": "Hot/trending articles on Sspai (少数派)",
4839
+ "strategy": "public",
4840
+ "type": "web-api"
4841
+ },
4842
+ {
4843
+ "name": "latest",
4844
+ "description": "Latest articles on Sspai (少数派)",
4845
+ "strategy": "public",
4846
+ "type": "web-api"
3243
4847
  }
3244
4848
  ]
3245
4849
  },
@@ -3257,12 +4861,24 @@
3257
4861
  "strategy": "public",
3258
4862
  "type": "web-api"
3259
4863
  },
4864
+ {
4865
+ "name": "question",
4866
+ "description": "Get a StackOverflow question with answers",
4867
+ "strategy": "public",
4868
+ "type": "web-api"
4869
+ },
3260
4870
  {
3261
4871
  "name": "search",
3262
4872
  "description": "Search Stack Overflow questions",
3263
4873
  "strategy": "public",
3264
4874
  "type": "web-api"
3265
4875
  },
4876
+ {
4877
+ "name": "tags",
4878
+ "description": "Popular StackOverflow tags",
4879
+ "strategy": "public",
4880
+ "type": "web-api"
4881
+ },
3266
4882
  {
3267
4883
  "name": "unanswered",
3268
4884
  "description": "Top voted unanswered questions on Stack Overflow",
@@ -3283,11 +4899,41 @@
3283
4899
  },
3284
4900
  "steam": {
3285
4901
  "commands": [
4902
+ {
4903
+ "name": "app-details",
4904
+ "description": "Get Steam game details by appid",
4905
+ "strategy": "public",
4906
+ "type": "web-api"
4907
+ },
4908
+ {
4909
+ "name": "new-releases",
4910
+ "description": "Steam new releases",
4911
+ "strategy": "public",
4912
+ "type": "web-api"
4913
+ },
4914
+ {
4915
+ "name": "search",
4916
+ "description": "Search Steam store for games",
4917
+ "strategy": "public",
4918
+ "type": "web-api"
4919
+ },
4920
+ {
4921
+ "name": "specials",
4922
+ "description": "Steam games on special/sale",
4923
+ "strategy": "public",
4924
+ "type": "web-api"
4925
+ },
3286
4926
  {
3287
4927
  "name": "top-sellers",
3288
4928
  "description": "Steam top selling games",
3289
4929
  "strategy": "public",
3290
4930
  "type": "web-api"
4931
+ },
4932
+ {
4933
+ "name": "wishlist",
4934
+ "description": "Get a Steam user's public wishlist",
4935
+ "strategy": "public",
4936
+ "type": "web-api"
3291
4937
  }
3292
4938
  ]
3293
4939
  },
@@ -3310,6 +4956,12 @@
3310
4956
  "description": "Search Substack publications",
3311
4957
  "strategy": "public",
3312
4958
  "type": "web-api"
4959
+ },
4960
+ {
4961
+ "name": "trending",
4962
+ "description": "Trending Substack posts",
4963
+ "strategy": "public",
4964
+ "type": "web-api"
3313
4965
  }
3314
4966
  ]
3315
4967
  },
@@ -3323,6 +4975,70 @@
3323
4975
  }
3324
4976
  ]
3325
4977
  },
4978
+ "taobao": {
4979
+ "commands": [
4980
+ {
4981
+ "name": "hot",
4982
+ "description": "Taobao hot search keywords",
4983
+ "strategy": "public",
4984
+ "type": "web-api"
4985
+ },
4986
+ {
4987
+ "name": "search",
4988
+ "description": "Search Taobao products",
4989
+ "strategy": "intercept",
4990
+ "type": "browser"
4991
+ }
4992
+ ]
4993
+ },
4994
+ "techcrunch": {
4995
+ "commands": [
4996
+ {
4997
+ "name": "latest",
4998
+ "description": "Latest TechCrunch articles via RSS",
4999
+ "strategy": "public",
5000
+ "type": "web-api"
5001
+ },
5002
+ {
5003
+ "name": "search",
5004
+ "description": "Search TechCrunch articles",
5005
+ "strategy": "public",
5006
+ "type": "web-api"
5007
+ }
5008
+ ]
5009
+ },
5010
+ "theverge": {
5011
+ "commands": [
5012
+ {
5013
+ "name": "latest",
5014
+ "description": "Latest The Verge articles via RSS",
5015
+ "strategy": "public",
5016
+ "type": "web-api"
5017
+ },
5018
+ {
5019
+ "name": "search",
5020
+ "description": "Search The Verge articles",
5021
+ "strategy": "public",
5022
+ "type": "web-api"
5023
+ }
5024
+ ]
5025
+ },
5026
+ "threads": {
5027
+ "commands": [
5028
+ {
5029
+ "name": "hot",
5030
+ "description": "Get trending posts from Threads",
5031
+ "strategy": "intercept",
5032
+ "type": "web-api"
5033
+ },
5034
+ {
5035
+ "name": "search",
5036
+ "description": "Search Threads for posts matching a query",
5037
+ "strategy": "intercept",
5038
+ "type": "web-api"
5039
+ }
5040
+ ]
5041
+ },
3326
5042
  "tieba": {
3327
5043
  "commands": [
3328
5044
  {
@@ -3419,6 +5135,12 @@
3419
5135
  "strategy": "intercept",
3420
5136
  "type": "web-api"
3421
5137
  },
5138
+ {
5139
+ "name": "trending",
5140
+ "description": "TikTok trending hashtags and sounds",
5141
+ "strategy": "cookie",
5142
+ "type": "web-api"
5143
+ },
3422
5144
  {
3423
5145
  "name": "unfollow",
3424
5146
  "description": "Unfollow a TikTok user",
@@ -3445,6 +5167,50 @@
3445
5167
  }
3446
5168
  ]
3447
5169
  },
5170
+ "toutiao": {
5171
+ "commands": [
5172
+ {
5173
+ "name": "hot",
5174
+ "description": "Get Toutiao (Jinri Toutiao) hot topics",
5175
+ "strategy": "public",
5176
+ "type": "web-api"
5177
+ },
5178
+ {
5179
+ "name": "search",
5180
+ "description": "Search Toutiao for articles",
5181
+ "strategy": "intercept",
5182
+ "type": "web-api"
5183
+ }
5184
+ ]
5185
+ },
5186
+ "twitch": {
5187
+ "commands": [
5188
+ {
5189
+ "name": "games",
5190
+ "description": "Get top games on Twitch by viewer count",
5191
+ "strategy": "cookie",
5192
+ "type": "web-api"
5193
+ },
5194
+ {
5195
+ "name": "search",
5196
+ "description": "Search Twitch channels",
5197
+ "strategy": "cookie",
5198
+ "type": "web-api"
5199
+ },
5200
+ {
5201
+ "name": "streams",
5202
+ "description": "Get top live streams on Twitch",
5203
+ "strategy": "cookie",
5204
+ "type": "web-api"
5205
+ },
5206
+ {
5207
+ "name": "top",
5208
+ "description": "Top live streams on Twitch via GQL public endpoint",
5209
+ "strategy": "public",
5210
+ "type": "web-api"
5211
+ }
5212
+ ]
5213
+ },
3448
5214
  "twitter": {
3449
5215
  "commands": [
3450
5216
  {
@@ -3514,15 +5280,39 @@
3514
5280
  "type": "web-api"
3515
5281
  },
3516
5282
  {
3517
- "name": "like",
3518
- "description": "Like a tweet",
3519
- "strategy": "cookie",
5283
+ "name": "like",
5284
+ "description": "Like a tweet",
5285
+ "strategy": "cookie",
5286
+ "type": "web-api"
5287
+ },
5288
+ {
5289
+ "name": "likes",
5290
+ "description": "Get a user",
5291
+ "strategy": "cookie",
5292
+ "type": "web-api"
5293
+ },
5294
+ {
5295
+ "name": "lists",
5296
+ "description": "Get Twitter/X lists for a user",
5297
+ "strategy": "intercept",
5298
+ "type": "web-api"
5299
+ },
5300
+ {
5301
+ "name": "media",
5302
+ "description": "Get media tweets from a Twitter/X user",
5303
+ "strategy": "intercept",
5304
+ "type": "web-api"
5305
+ },
5306
+ {
5307
+ "name": "mentions",
5308
+ "description": "Get recent mentions/replies for the logged-in Twitter/X user",
5309
+ "strategy": "intercept",
3520
5310
  "type": "web-api"
3521
5311
  },
3522
5312
  {
3523
- "name": "likes",
3524
- "description": "Get a user",
3525
- "strategy": "cookie",
5313
+ "name": "mute",
5314
+ "description": "Mute a Twitter/X user",
5315
+ "strategy": "intercept",
3526
5316
  "type": "web-api"
3527
5317
  },
3528
5318
  {
@@ -3531,6 +5321,12 @@
3531
5321
  "strategy": "cookie",
3532
5322
  "type": "web-api"
3533
5323
  },
5324
+ {
5325
+ "name": "pin",
5326
+ "description": "Get pinned tweet from a Twitter/X user",
5327
+ "strategy": "intercept",
5328
+ "type": "web-api"
5329
+ },
3534
5330
  {
3535
5331
  "name": "post",
3536
5332
  "description": "Post a new tweet",
@@ -3543,6 +5339,12 @@
3543
5339
  "strategy": "cookie",
3544
5340
  "type": "web-api"
3545
5341
  },
5342
+ {
5343
+ "name": "quotes",
5344
+ "description": "Get quote tweets for a specific tweet",
5345
+ "strategy": "intercept",
5346
+ "type": "web-api"
5347
+ },
3546
5348
  {
3547
5349
  "name": "reply",
3548
5350
  "description": "Reply to a tweet",
@@ -3555,12 +5357,24 @@
3555
5357
  "strategy": "cookie",
3556
5358
  "type": "web-api"
3557
5359
  },
5360
+ {
5361
+ "name": "retweets",
5362
+ "description": "Get users who retweeted a specific tweet",
5363
+ "strategy": "intercept",
5364
+ "type": "web-api"
5365
+ },
3558
5366
  {
3559
5367
  "name": "search",
3560
5368
  "description": "Search tweets by keyword",
3561
5369
  "strategy": "cookie",
3562
5370
  "type": "web-api"
3563
5371
  },
5372
+ {
5373
+ "name": "spaces",
5374
+ "description": "Browse live and upcoming Twitter/X Spaces",
5375
+ "strategy": "intercept",
5376
+ "type": "web-api"
5377
+ },
3564
5378
  {
3565
5379
  "name": "thread",
3566
5380
  "description": "Get a tweet and its conversation thread",
@@ -3596,6 +5410,28 @@
3596
5410
  "description": "Unfollow a user",
3597
5411
  "strategy": "cookie",
3598
5412
  "type": "web-api"
5413
+ },
5414
+ {
5415
+ "name": "unmute",
5416
+ "description": "Unmute a Twitter/X user",
5417
+ "strategy": "intercept",
5418
+ "type": "web-api"
5419
+ }
5420
+ ]
5421
+ },
5422
+ "unsplash": {
5423
+ "commands": [
5424
+ {
5425
+ "name": "random",
5426
+ "description": "Get a random Unsplash photo",
5427
+ "strategy": "public",
5428
+ "type": "web-api"
5429
+ },
5430
+ {
5431
+ "name": "search",
5432
+ "description": "Search free photos on Unsplash",
5433
+ "strategy": "public",
5434
+ "type": "web-api"
3599
5435
  }
3600
5436
  ]
3601
5437
  },
@@ -3655,6 +5491,12 @@
3655
5491
  "strategy": "public",
3656
5492
  "type": "web-api"
3657
5493
  },
5494
+ {
5495
+ "name": "search",
5496
+ "description": "Search V2EX topics via SOV2EX",
5497
+ "strategy": "public",
5498
+ "type": "web-api"
5499
+ },
3658
5500
  {
3659
5501
  "name": "topic",
3660
5502
  "description": "V2EX topic detail",
@@ -3679,6 +5521,28 @@
3679
5521
  }
3680
5522
  ]
3681
5523
  },
5524
+ "vscode": {
5525
+ "commands": [
5526
+ {
5527
+ "name": "extensions",
5528
+ "description": "List installed VS Code extensions with versions",
5529
+ "strategy": "public",
5530
+ "type": "desktop"
5531
+ },
5532
+ {
5533
+ "name": "install-ext",
5534
+ "description": "Install a VS Code extension by identifier",
5535
+ "strategy": "public",
5536
+ "type": "desktop"
5537
+ },
5538
+ {
5539
+ "name": "open",
5540
+ "description": "Open a file or folder in VS Code",
5541
+ "strategy": "public",
5542
+ "type": "desktop"
5543
+ }
5544
+ ]
5545
+ },
3682
5546
  "web": {
3683
5547
  "commands": [
3684
5548
  {
@@ -3689,6 +5553,22 @@
3689
5553
  }
3690
5554
  ]
3691
5555
  },
5556
+ "wechat-channels": {
5557
+ "commands": [
5558
+ {
5559
+ "name": "hot",
5560
+ "description": "WeChat Channels (Video Accounts) trending videos",
5561
+ "strategy": "intercept",
5562
+ "type": "web-api"
5563
+ },
5564
+ {
5565
+ "name": "search",
5566
+ "description": "Search WeChat Channels (Video Accounts) videos",
5567
+ "strategy": "intercept",
5568
+ "type": "web-api"
5569
+ }
5570
+ ]
5571
+ },
3692
5572
  "weibo": {
3693
5573
  "commands": [
3694
5574
  {
@@ -3739,6 +5619,12 @@
3739
5619
  "strategy": "cookie",
3740
5620
  "type": "web-api"
3741
5621
  },
5622
+ {
5623
+ "name": "trending",
5624
+ "description": "Weibo trending topics (real-time hot search)",
5625
+ "strategy": "public",
5626
+ "type": "web-api"
5627
+ },
3742
5628
  {
3743
5629
  "name": "user",
3744
5630
  "description": "Get Weibo user profile by UID",
@@ -3761,6 +5647,12 @@
3761
5647
  "strategy": "cookie",
3762
5648
  "type": "browser"
3763
5649
  },
5650
+ {
5651
+ "name": "hot",
5652
+ "description": "WeChat/Weixin hot articles trending",
5653
+ "strategy": "public",
5654
+ "type": "web-api"
5655
+ },
3764
5656
  {
3765
5657
  "name": "manifest",
3766
5658
  "description": "WeChat Official Accounts — article publishing and search",
@@ -3841,6 +5733,12 @@
3841
5733
  "strategy": "public",
3842
5734
  "type": "web-api"
3843
5735
  },
5736
+ {
5737
+ "name": "today",
5738
+ "description": "Wikipedia featured article of the day",
5739
+ "strategy": "public",
5740
+ "type": "web-api"
5741
+ },
3844
5742
  {
3845
5743
  "name": "trending",
3846
5744
  "description": "Most-read Wikipedia articles (yesterday)",
@@ -3999,6 +5897,30 @@
3999
5897
  "strategy": "intercept",
4000
5898
  "type": "web-api"
4001
5899
  },
5900
+ {
5901
+ "name": "follow",
5902
+ "description": "Follow a Xiaohongshu user",
5903
+ "strategy": "intercept",
5904
+ "type": "web-api"
5905
+ },
5906
+ {
5907
+ "name": "hashtag",
5908
+ "description": "Browse notes under a Xiaohongshu hashtag/topic",
5909
+ "strategy": "intercept",
5910
+ "type": "web-api"
5911
+ },
5912
+ {
5913
+ "name": "hot",
5914
+ "description": "Xiaohongshu trending/hot notes",
5915
+ "strategy": "intercept",
5916
+ "type": "web-api"
5917
+ },
5918
+ {
5919
+ "name": "like",
5920
+ "description": "Like a Xiaohongshu note",
5921
+ "strategy": "intercept",
5922
+ "type": "web-api"
5923
+ },
4002
5924
  {
4003
5925
  "name": "note",
4004
5926
  "description": "Get note content and engagement metrics",
@@ -4011,18 +5933,48 @@
4011
5933
  "strategy": "intercept",
4012
5934
  "type": "web-api"
4013
5935
  },
5936
+ {
5937
+ "name": "profile",
5938
+ "description": "Get a Xiaohongshu user profile",
5939
+ "strategy": "intercept",
5940
+ "type": "web-api"
5941
+ },
4014
5942
  {
4015
5943
  "name": "publish",
4016
5944
  "description": "Publish an image+text note via Xiaohongshu creator center (UI automation)",
4017
5945
  "strategy": "cookie",
4018
5946
  "type": "web-api"
4019
5947
  },
5948
+ {
5949
+ "name": "save",
5950
+ "description": "Save/collect a Xiaohongshu note",
5951
+ "strategy": "intercept",
5952
+ "type": "web-api"
5953
+ },
4020
5954
  {
4021
5955
  "name": "search",
4022
5956
  "description": "Search notes on Xiaohongshu",
4023
5957
  "strategy": "cookie",
4024
5958
  "type": "web-api"
4025
5959
  },
5960
+ {
5961
+ "name": "suggest",
5962
+ "description": "Xiaohongshu search suggestions/autocomplete",
5963
+ "strategy": "intercept",
5964
+ "type": "web-api"
5965
+ },
5966
+ {
5967
+ "name": "trending",
5968
+ "description": "Xiaohongshu trending searches",
5969
+ "strategy": "intercept",
5970
+ "type": "web-api"
5971
+ },
5972
+ {
5973
+ "name": "unfollow",
5974
+ "description": "Unfollow a Xiaohongshu user",
5975
+ "strategy": "intercept",
5976
+ "type": "web-api"
5977
+ },
4026
5978
  {
4027
5979
  "name": "user",
4028
5980
  "description": "Get public notes from a Xiaohongshu user profile",
@@ -4097,6 +6049,12 @@
4097
6049
  "strategy": "cookie",
4098
6050
  "type": "web-api"
4099
6051
  },
6052
+ {
6053
+ "name": "market",
6054
+ "description": "Xueqiu market indices overview",
6055
+ "strategy": "cookie",
6056
+ "type": "web-api"
6057
+ },
4100
6058
  {
4101
6059
  "name": "quote",
4102
6060
  "description": "Xueqiu stock quote",
@@ -4123,6 +6081,38 @@
4123
6081
  }
4124
6082
  ]
4125
6083
  },
6084
+ "yahoo-finance": {
6085
+ "commands": [
6086
+ {
6087
+ "name": "quote",
6088
+ "description": "Get stock quote from Yahoo Finance",
6089
+ "strategy": "public",
6090
+ "type": "web-api"
6091
+ },
6092
+ {
6093
+ "name": "search",
6094
+ "description": "Search Yahoo Finance for tickers and companies",
6095
+ "strategy": "public",
6096
+ "type": "web-api"
6097
+ },
6098
+ {
6099
+ "name": "trending",
6100
+ "description": "Yahoo Finance trending tickers",
6101
+ "strategy": "public",
6102
+ "type": "web-api"
6103
+ }
6104
+ ]
6105
+ },
6106
+ "ycombinator": {
6107
+ "commands": [
6108
+ {
6109
+ "name": "launches",
6110
+ "description": "Latest YC company launches",
6111
+ "strategy": "public",
6112
+ "type": "web-api"
6113
+ }
6114
+ ]
6115
+ },
4126
6116
  "yollomi": {
4127
6117
  "commands": [
4128
6118
  {
@@ -4213,18 +6203,36 @@
4213
6203
  "strategy": "public",
4214
6204
  "type": "web-api"
4215
6205
  },
6206
+ {
6207
+ "name": "playlist",
6208
+ "description": "Get videos from a YouTube playlist",
6209
+ "strategy": "intercept",
6210
+ "type": "web-api"
6211
+ },
4216
6212
  {
4217
6213
  "name": "search",
4218
6214
  "description": "Search YouTube videos",
4219
6215
  "strategy": "public",
4220
6216
  "type": "web-api"
4221
6217
  },
6218
+ {
6219
+ "name": "shorts",
6220
+ "description": "Get YouTube Shorts from a channel or trending",
6221
+ "strategy": "intercept",
6222
+ "type": "web-api"
6223
+ },
4222
6224
  {
4223
6225
  "name": "transcript",
4224
6226
  "description": "Get YouTube video transcript/subtitles",
4225
6227
  "strategy": "public",
4226
6228
  "type": "web-api"
4227
6229
  },
6230
+ {
6231
+ "name": "trending",
6232
+ "description": "Get YouTube trending videos",
6233
+ "strategy": "intercept",
6234
+ "type": "web-api"
6235
+ },
4228
6236
  {
4229
6237
  "name": "video",
4230
6238
  "description": "Get YouTube video info",
@@ -4285,6 +6293,48 @@
4285
6293
  },
4286
6294
  "zhihu": {
4287
6295
  "commands": [
6296
+ {
6297
+ "name": "answer",
6298
+ "description": "Get a specific Zhihu answer by ID",
6299
+ "strategy": "cookie",
6300
+ "type": "web-api"
6301
+ },
6302
+ {
6303
+ "name": "answers",
6304
+ "description": "List answers by a Zhihu user",
6305
+ "strategy": "cookie",
6306
+ "type": "web-api"
6307
+ },
6308
+ {
6309
+ "name": "article",
6310
+ "description": "Get a Zhihu article (zhuanlan) by ID",
6311
+ "strategy": "cookie",
6312
+ "type": "web-api"
6313
+ },
6314
+ {
6315
+ "name": "articles",
6316
+ "description": "List articles by a Zhihu user",
6317
+ "strategy": "cookie",
6318
+ "type": "web-api"
6319
+ },
6320
+ {
6321
+ "name": "collections",
6322
+ "description": "List Zhihu collections (favorites) for a user",
6323
+ "strategy": "cookie",
6324
+ "type": "web-api"
6325
+ },
6326
+ {
6327
+ "name": "columns",
6328
+ "description": "Get articles from a Zhihu column (zhuanlan)",
6329
+ "strategy": "cookie",
6330
+ "type": "web-api"
6331
+ },
6332
+ {
6333
+ "name": "comment",
6334
+ "description": "Get comments on a Zhihu answer or article",
6335
+ "strategy": "cookie",
6336
+ "type": "web-api"
6337
+ },
4288
6338
  {
4289
6339
  "name": "download",
4290
6340
  "description": "Download Zhihu answer/article content as markdown",
@@ -4297,6 +6347,18 @@
4297
6347
  "strategy": "cookie",
4298
6348
  "type": "web-api"
4299
6349
  },
6350
+ {
6351
+ "name": "followers",
6352
+ "description": "List followers of a Zhihu user",
6353
+ "strategy": "cookie",
6354
+ "type": "web-api"
6355
+ },
6356
+ {
6357
+ "name": "following",
6358
+ "description": "List users followed by a Zhihu user",
6359
+ "strategy": "cookie",
6360
+ "type": "web-api"
6361
+ },
4300
6362
  {
4301
6363
  "name": "hot",
4302
6364
  "description": "Zhihu hot topics list",
@@ -4315,6 +6377,12 @@
4315
6377
  "strategy": "cookie",
4316
6378
  "type": "web-api"
4317
6379
  },
6380
+ {
6381
+ "name": "pins",
6382
+ "description": "List Zhihu pins (thoughts/status updates) by a user",
6383
+ "strategy": "cookie",
6384
+ "type": "web-api"
6385
+ },
4318
6386
  {
4319
6387
  "name": "question",
4320
6388
  "description": "Zhihu question with top answers",
@@ -4326,6 +6394,46 @@
4326
6394
  "description": "Search Zhihu questions and answers",
4327
6395
  "strategy": "cookie",
4328
6396
  "type": "web-api"
6397
+ },
6398
+ {
6399
+ "name": "topic",
6400
+ "description": "Get Zhihu topic best answers",
6401
+ "strategy": "cookie",
6402
+ "type": "web-api"
6403
+ },
6404
+ {
6405
+ "name": "topics",
6406
+ "description": "Get top answers for a Zhihu topic",
6407
+ "strategy": "cookie",
6408
+ "type": "web-api"
6409
+ },
6410
+ {
6411
+ "name": "trending",
6412
+ "description": "Zhihu trending topics by category",
6413
+ "strategy": "cookie",
6414
+ "type": "web-api"
6415
+ },
6416
+ {
6417
+ "name": "user",
6418
+ "description": "Get a Zhihu user profile by URL name",
6419
+ "strategy": "cookie",
6420
+ "type": "web-api"
6421
+ }
6422
+ ]
6423
+ },
6424
+ "zoom": {
6425
+ "commands": [
6426
+ {
6427
+ "name": "join",
6428
+ "description": "Join a Zoom meeting by meeting ID",
6429
+ "strategy": "public",
6430
+ "type": "desktop"
6431
+ },
6432
+ {
6433
+ "name": "start",
6434
+ "description": "Start your personal Zoom meeting",
6435
+ "strategy": "public",
6436
+ "type": "desktop"
4329
6437
  }
4330
6438
  ]
4331
6439
  },