@jackwener/opencli 1.0.0 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/.github/workflows/build-extension.yml +62 -0
  2. package/.github/workflows/ci.yml +6 -6
  3. package/.github/workflows/e2e-headed.yml +2 -2
  4. package/.github/workflows/pkg-pr-new.yml +2 -2
  5. package/.github/workflows/release.yml +2 -5
  6. package/.github/workflows/security.yml +2 -2
  7. package/CDP.md +1 -1
  8. package/CDP.zh-CN.md +1 -1
  9. package/README.md +35 -8
  10. package/README.zh-CN.md +35 -8
  11. package/SKILL.md +3 -5
  12. package/dist/browser/cdp.d.ts +27 -0
  13. package/dist/browser/cdp.js +295 -0
  14. package/dist/browser/daemon-client.d.ts +1 -1
  15. package/dist/browser/index.d.ts +4 -2
  16. package/dist/browser/index.js +5 -5
  17. package/dist/browser/mcp.d.ts +5 -8
  18. package/dist/browser/mcp.js +9 -10
  19. package/dist/browser/page.d.ts +8 -1
  20. package/dist/browser/page.js +25 -40
  21. package/dist/browser/utils.d.ts +10 -0
  22. package/dist/browser/utils.js +27 -0
  23. package/dist/browser.test.js +48 -7
  24. package/dist/chaoxing.d.ts +58 -0
  25. package/dist/chaoxing.js +225 -0
  26. package/dist/chaoxing.test.d.ts +1 -0
  27. package/dist/chaoxing.test.js +38 -0
  28. package/dist/cli-manifest.json +597 -14
  29. package/dist/cli.d.ts +1 -0
  30. package/dist/cli.js +197 -0
  31. package/dist/clis/apple-podcasts/episodes.d.ts +1 -0
  32. package/dist/clis/apple-podcasts/episodes.js +28 -0
  33. package/dist/clis/apple-podcasts/search.d.ts +1 -0
  34. package/dist/clis/apple-podcasts/search.js +29 -0
  35. package/dist/clis/apple-podcasts/top.d.ts +1 -0
  36. package/dist/clis/apple-podcasts/top.js +34 -0
  37. package/dist/clis/apple-podcasts/utils.d.ts +11 -0
  38. package/dist/clis/apple-podcasts/utils.js +30 -0
  39. package/dist/clis/apple-podcasts/utils.test.d.ts +1 -0
  40. package/dist/clis/apple-podcasts/utils.test.js +57 -0
  41. package/dist/clis/boss/chatlist.d.ts +1 -0
  42. package/dist/clis/boss/chatlist.js +50 -0
  43. package/dist/clis/boss/chatmsg.d.ts +1 -0
  44. package/dist/clis/boss/chatmsg.js +73 -0
  45. package/dist/clis/boss/send.d.ts +1 -0
  46. package/dist/clis/boss/send.js +176 -0
  47. package/dist/clis/chaoxing/assignments.d.ts +1 -0
  48. package/dist/clis/chaoxing/assignments.js +74 -0
  49. package/dist/clis/chaoxing/exams.d.ts +1 -0
  50. package/dist/clis/chaoxing/exams.js +74 -0
  51. package/dist/clis/chatgpt/ask.js +15 -14
  52. package/dist/clis/chatgpt/ax.d.ts +1 -0
  53. package/dist/clis/chatgpt/ax.js +78 -0
  54. package/dist/clis/chatgpt/read.js +5 -6
  55. package/dist/clis/chatwise/history.js +18 -1
  56. package/dist/clis/discord-app/channels.js +33 -21
  57. package/dist/clis/twitter/accept.d.ts +1 -0
  58. package/dist/clis/twitter/accept.js +202 -0
  59. package/dist/clis/twitter/followers.js +30 -22
  60. package/dist/clis/twitter/following.js +19 -14
  61. package/dist/clis/twitter/notifications.js +29 -22
  62. package/dist/clis/twitter/post.js +9 -2
  63. package/dist/clis/twitter/reply-dm.d.ts +1 -0
  64. package/dist/clis/twitter/reply-dm.js +181 -0
  65. package/dist/clis/twitter/search.js +30 -11
  66. package/dist/clis/weread/book.d.ts +1 -0
  67. package/dist/clis/weread/book.js +26 -0
  68. package/dist/clis/weread/highlights.d.ts +1 -0
  69. package/dist/clis/weread/highlights.js +23 -0
  70. package/dist/clis/weread/notebooks.d.ts +1 -0
  71. package/dist/clis/weread/notebooks.js +21 -0
  72. package/dist/clis/weread/notes.d.ts +1 -0
  73. package/dist/clis/weread/notes.js +29 -0
  74. package/dist/clis/weread/ranking.d.ts +1 -0
  75. package/dist/clis/weread/ranking.js +28 -0
  76. package/dist/clis/weread/search.d.ts +1 -0
  77. package/dist/clis/weread/search.js +25 -0
  78. package/dist/clis/weread/shelf.d.ts +1 -0
  79. package/dist/clis/weread/shelf.js +24 -0
  80. package/dist/clis/weread/utils.d.ts +20 -0
  81. package/dist/clis/weread/utils.js +72 -0
  82. package/dist/clis/weread/utils.test.d.ts +1 -0
  83. package/dist/clis/weread/utils.test.js +85 -0
  84. package/dist/clis/xiaohongshu/download.d.ts +1 -1
  85. package/dist/clis/xiaohongshu/download.js +1 -1
  86. package/dist/daemon.js +2 -2
  87. package/dist/doctor.d.ts +0 -21
  88. package/dist/doctor.js +2 -24
  89. package/dist/engine.js +24 -13
  90. package/dist/explore.js +46 -101
  91. package/dist/main.js +4 -203
  92. package/dist/output.d.ts +1 -1
  93. package/dist/registry.d.ts +3 -3
  94. package/dist/runtime.d.ts +1 -4
  95. package/dist/runtime.js +1 -4
  96. package/dist/scripts/framework.d.ts +4 -0
  97. package/dist/scripts/framework.js +21 -0
  98. package/dist/scripts/interact.d.ts +4 -0
  99. package/dist/scripts/interact.js +20 -0
  100. package/dist/scripts/store.d.ts +9 -0
  101. package/dist/scripts/store.js +44 -0
  102. package/dist/setup.js +2 -2
  103. package/dist/synthesize.js +1 -1
  104. package/extension/dist/background.js +392 -0
  105. package/extension/manifest.json +3 -3
  106. package/extension/package.json +1 -1
  107. package/extension/src/background.ts +101 -24
  108. package/extension/src/protocol.ts +1 -1
  109. package/package.json +1 -1
  110. package/src/browser/cdp.ts +295 -0
  111. package/src/browser/daemon-client.ts +1 -1
  112. package/src/browser/index.ts +5 -6
  113. package/src/browser/mcp.ts +14 -15
  114. package/src/browser/page.ts +25 -41
  115. package/src/browser/utils.ts +27 -0
  116. package/src/browser.test.ts +52 -6
  117. package/src/chaoxing.test.ts +45 -0
  118. package/src/chaoxing.ts +268 -0
  119. package/src/cli.ts +185 -0
  120. package/src/clis/antigravity/SKILL.md +5 -0
  121. package/src/clis/apple-podcasts/episodes.ts +28 -0
  122. package/src/clis/apple-podcasts/search.ts +29 -0
  123. package/src/clis/apple-podcasts/top.ts +34 -0
  124. package/src/clis/apple-podcasts/utils.test.ts +72 -0
  125. package/src/clis/apple-podcasts/utils.ts +37 -0
  126. package/src/clis/boss/chatlist.ts +50 -0
  127. package/src/clis/boss/chatmsg.ts +70 -0
  128. package/src/clis/boss/send.ts +193 -0
  129. package/src/clis/chaoxing/README.md +36 -0
  130. package/src/clis/chaoxing/README.zh-CN.md +35 -0
  131. package/src/clis/chaoxing/assignments.ts +88 -0
  132. package/src/clis/chaoxing/exams.ts +88 -0
  133. package/src/clis/chatgpt/ask.ts +14 -15
  134. package/src/clis/chatgpt/ax.ts +81 -0
  135. package/src/clis/chatgpt/read.ts +5 -7
  136. package/src/clis/chatwise/history.ts +15 -1
  137. package/src/clis/discord-app/channels.ts +33 -21
  138. package/src/clis/twitter/accept.ts +213 -0
  139. package/src/clis/twitter/followers.ts +36 -29
  140. package/src/clis/twitter/following.ts +25 -20
  141. package/src/clis/twitter/notifications.ts +34 -27
  142. package/src/clis/twitter/post.ts +9 -2
  143. package/src/clis/twitter/reply-dm.ts +193 -0
  144. package/src/clis/twitter/search.ts +34 -12
  145. package/src/clis/weread/book.ts +28 -0
  146. package/src/clis/weread/highlights.ts +25 -0
  147. package/src/clis/weread/notebooks.ts +23 -0
  148. package/src/clis/weread/notes.ts +31 -0
  149. package/src/clis/weread/ranking.ts +29 -0
  150. package/src/clis/weread/search.ts +26 -0
  151. package/src/clis/weread/shelf.ts +26 -0
  152. package/src/clis/weread/utils.test.ts +104 -0
  153. package/src/clis/weread/utils.ts +74 -0
  154. package/src/clis/xiaohongshu/download.ts +1 -1
  155. package/src/daemon.ts +2 -2
  156. package/src/doctor.ts +2 -19
  157. package/src/engine.ts +20 -13
  158. package/src/explore.ts +51 -100
  159. package/src/main.ts +4 -186
  160. package/src/output.ts +12 -12
  161. package/src/registry.ts +3 -3
  162. package/src/runtime.ts +2 -6
  163. package/src/scripts/framework.ts +20 -0
  164. package/src/scripts/interact.ts +22 -0
  165. package/src/scripts/store.ts +40 -0
  166. package/src/setup.ts +2 -2
  167. package/src/synthesize.ts +1 -1
  168. package/tests/e2e/public-commands.test.ts +68 -1
  169. package/dist/clis/grok/debug.d.ts +0 -1
  170. package/dist/clis/grok/debug.js +0 -45
  171. package/src/clis/grok/debug.ts +0 -49
@@ -137,6 +137,119 @@
137
137
  "domain": "localhost",
138
138
  "columns": []
139
139
  },
140
+ {
141
+ "site": "apple-podcasts",
142
+ "name": "episodes",
143
+ "description": "List recent episodes of an Apple Podcast (use ID from search)",
144
+ "strategy": "public",
145
+ "browser": false,
146
+ "args": [
147
+ {
148
+ "name": "id",
149
+ "type": "str",
150
+ "required": true,
151
+ "positional": true,
152
+ "help": "Podcast ID (collectionId from search output)"
153
+ },
154
+ {
155
+ "name": "limit",
156
+ "type": "int",
157
+ "default": 15,
158
+ "required": false,
159
+ "help": "Max episodes to show"
160
+ }
161
+ ],
162
+ "type": "ts",
163
+ "modulePath": "apple-podcasts/episodes.js",
164
+ "columns": [
165
+ "title",
166
+ "duration",
167
+ "date"
168
+ ]
169
+ },
170
+ {
171
+ "site": "apple-podcasts",
172
+ "name": "search",
173
+ "description": "Search Apple Podcasts",
174
+ "strategy": "public",
175
+ "browser": false,
176
+ "args": [
177
+ {
178
+ "name": "keyword",
179
+ "type": "str",
180
+ "required": true,
181
+ "positional": true,
182
+ "help": "Search keyword"
183
+ },
184
+ {
185
+ "name": "limit",
186
+ "type": "int",
187
+ "default": 10,
188
+ "required": false,
189
+ "help": "Max results"
190
+ }
191
+ ],
192
+ "type": "ts",
193
+ "modulePath": "apple-podcasts/search.js",
194
+ "columns": [
195
+ "id",
196
+ "title",
197
+ "author",
198
+ "episodes",
199
+ "genre"
200
+ ]
201
+ },
202
+ {
203
+ "site": "apple-podcasts",
204
+ "name": "top",
205
+ "description": "Top podcasts chart on Apple Podcasts",
206
+ "strategy": "public",
207
+ "browser": false,
208
+ "args": [
209
+ {
210
+ "name": "limit",
211
+ "type": "int",
212
+ "default": 20,
213
+ "required": false,
214
+ "help": "Number of podcasts (max 100)"
215
+ },
216
+ {
217
+ "name": "country",
218
+ "type": "str",
219
+ "default": "us",
220
+ "required": false,
221
+ "help": "Country code (e.g. us, cn, gb, jp)"
222
+ }
223
+ ],
224
+ "type": "ts",
225
+ "modulePath": "apple-podcasts/top.js",
226
+ "columns": [
227
+ "rank",
228
+ "title",
229
+ "author",
230
+ "id"
231
+ ]
232
+ },
233
+ {
234
+ "site": "apple-podcasts",
235
+ "name": "utils",
236
+ "description": "",
237
+ "strategy": "cookie",
238
+ "browser": true,
239
+ "args": [],
240
+ "type": "ts",
241
+ "modulePath": "apple-podcasts/utils.js"
242
+ },
243
+ {
244
+ "site": "apple-podcasts",
245
+ "name": "utils.test",
246
+ "description": "",
247
+ "strategy": "cookie",
248
+ "browser": true,
249
+ "args": [],
250
+ "type": "ts",
251
+ "modulePath": "apple-podcasts/utils.test.js"
252
+ },
140
253
  {
141
254
  "site": "barchart",
142
255
  "name": "flow",
@@ -740,6 +853,78 @@
740
853
  "url"
741
854
  ]
742
855
  },
856
+ {
857
+ "site": "boss",
858
+ "name": "chatlist",
859
+ "description": "BOSS直聘查看聊天列表(招聘端)",
860
+ "strategy": "cookie",
861
+ "browser": true,
862
+ "args": [
863
+ {
864
+ "name": "page",
865
+ "type": "int",
866
+ "default": 1,
867
+ "required": false,
868
+ "help": "Page number"
869
+ },
870
+ {
871
+ "name": "limit",
872
+ "type": "int",
873
+ "default": 20,
874
+ "required": false,
875
+ "help": "Number of results"
876
+ },
877
+ {
878
+ "name": "job_id",
879
+ "type": "str",
880
+ "default": "0",
881
+ "required": false,
882
+ "help": "Filter by job ID (0=all)"
883
+ }
884
+ ],
885
+ "type": "ts",
886
+ "modulePath": "boss/chatlist.js",
887
+ "domain": "www.zhipin.com",
888
+ "columns": [
889
+ "name",
890
+ "job",
891
+ "last_msg",
892
+ "last_time",
893
+ "uid",
894
+ "security_id"
895
+ ]
896
+ },
897
+ {
898
+ "site": "boss",
899
+ "name": "chatmsg",
900
+ "description": "BOSS直聘查看与候选人的聊天消息",
901
+ "strategy": "cookie",
902
+ "browser": true,
903
+ "args": [
904
+ {
905
+ "name": "uid",
906
+ "type": "str",
907
+ "required": true,
908
+ "help": "Encrypted UID (from chatlist)"
909
+ },
910
+ {
911
+ "name": "page",
912
+ "type": "int",
913
+ "default": 1,
914
+ "required": false,
915
+ "help": "Page number"
916
+ }
917
+ ],
918
+ "type": "ts",
919
+ "modulePath": "boss/chatmsg.js",
920
+ "domain": "www.zhipin.com",
921
+ "columns": [
922
+ "from",
923
+ "type",
924
+ "text",
925
+ "time"
926
+ ]
927
+ },
743
928
  {
744
929
  "site": "boss",
745
930
  "name": "detail",
@@ -857,6 +1042,127 @@
857
1042
  "url"
858
1043
  ]
859
1044
  },
1045
+ {
1046
+ "site": "boss",
1047
+ "name": "send",
1048
+ "description": "BOSS直聘发送聊天消息",
1049
+ "strategy": "cookie",
1050
+ "browser": true,
1051
+ "args": [
1052
+ {
1053
+ "name": "uid",
1054
+ "type": "str",
1055
+ "required": true,
1056
+ "help": "Encrypted UID of the candidate (from chatlist)"
1057
+ },
1058
+ {
1059
+ "name": "text",
1060
+ "type": "str",
1061
+ "required": true,
1062
+ "help": "Message text to send"
1063
+ }
1064
+ ],
1065
+ "type": "ts",
1066
+ "modulePath": "boss/send.js",
1067
+ "domain": "www.zhipin.com",
1068
+ "columns": [
1069
+ "status",
1070
+ "detail"
1071
+ ]
1072
+ },
1073
+ {
1074
+ "site": "chaoxing",
1075
+ "name": "assignments",
1076
+ "description": "学习通作业列表",
1077
+ "strategy": "cookie",
1078
+ "browser": true,
1079
+ "args": [
1080
+ {
1081
+ "name": "course",
1082
+ "type": "string",
1083
+ "required": false,
1084
+ "help": "按课程名过滤(模糊匹配)"
1085
+ },
1086
+ {
1087
+ "name": "status",
1088
+ "type": "string",
1089
+ "default": "all",
1090
+ "required": false,
1091
+ "help": "按状态过滤",
1092
+ "choices": [
1093
+ "all",
1094
+ "pending",
1095
+ "submitted",
1096
+ "graded"
1097
+ ]
1098
+ },
1099
+ {
1100
+ "name": "limit",
1101
+ "type": "int",
1102
+ "default": 20,
1103
+ "required": false,
1104
+ "help": "最大返回数量"
1105
+ }
1106
+ ],
1107
+ "type": "ts",
1108
+ "modulePath": "chaoxing/assignments.js",
1109
+ "domain": "mooc2-ans.chaoxing.com",
1110
+ "columns": [
1111
+ "rank",
1112
+ "course",
1113
+ "title",
1114
+ "deadline",
1115
+ "status",
1116
+ "score"
1117
+ ]
1118
+ },
1119
+ {
1120
+ "site": "chaoxing",
1121
+ "name": "exams",
1122
+ "description": "学习通考试列表",
1123
+ "strategy": "cookie",
1124
+ "browser": true,
1125
+ "args": [
1126
+ {
1127
+ "name": "course",
1128
+ "type": "string",
1129
+ "required": false,
1130
+ "help": "按课程名过滤(模糊匹配)"
1131
+ },
1132
+ {
1133
+ "name": "status",
1134
+ "type": "string",
1135
+ "default": "all",
1136
+ "required": false,
1137
+ "help": "按状态过滤",
1138
+ "choices": [
1139
+ "all",
1140
+ "upcoming",
1141
+ "ongoing",
1142
+ "finished"
1143
+ ]
1144
+ },
1145
+ {
1146
+ "name": "limit",
1147
+ "type": "int",
1148
+ "default": 20,
1149
+ "required": false,
1150
+ "help": "最大返回数量"
1151
+ }
1152
+ ],
1153
+ "type": "ts",
1154
+ "modulePath": "chaoxing/exams.js",
1155
+ "domain": "mooc2-ans.chaoxing.com",
1156
+ "columns": [
1157
+ "rank",
1158
+ "course",
1159
+ "title",
1160
+ "start",
1161
+ "end",
1162
+ "status",
1163
+ "score"
1164
+ ]
1165
+ },
860
1166
  {
861
1167
  "site": "chatgpt",
862
1168
  "name": "ask",
@@ -887,6 +1193,16 @@
887
1193
  "Text"
888
1194
  ]
889
1195
  },
1196
+ {
1197
+ "site": "chatgpt",
1198
+ "name": "ax",
1199
+ "description": "",
1200
+ "strategy": "cookie",
1201
+ "browser": true,
1202
+ "args": [],
1203
+ "type": "ts",
1204
+ "modulePath": "chatgpt/ax.js"
1205
+ },
890
1206
  {
891
1207
  "site": "chatgpt",
892
1208
  "name": "new",
@@ -1956,20 +2272,6 @@
1956
2272
  "response"
1957
2273
  ]
1958
2274
  },
1959
- {
1960
- "site": "grok",
1961
- "name": "debug",
1962
- "description": "Debug grok page structure",
1963
- "strategy": "cookie",
1964
- "browser": true,
1965
- "args": [],
1966
- "type": "ts",
1967
- "modulePath": "grok/debug.js",
1968
- "domain": "grok.com",
1969
- "columns": [
1970
- "data"
1971
- ]
1972
- },
1973
2275
  {
1974
2276
  "site": "hackernews",
1975
2277
  "name": "top",
@@ -3545,6 +3847,37 @@
3545
3847
  "url"
3546
3848
  ]
3547
3849
  },
3850
+ {
3851
+ "site": "twitter",
3852
+ "name": "accept",
3853
+ "description": "Auto-accept DM requests containing specific keywords",
3854
+ "strategy": "ui",
3855
+ "browser": true,
3856
+ "args": [
3857
+ {
3858
+ "name": "keyword",
3859
+ "type": "string",
3860
+ "required": true,
3861
+ "help": "Keywords to match (comma-separated for OR, e.g. "
3862
+ },
3863
+ {
3864
+ "name": "max",
3865
+ "type": "int",
3866
+ "default": 20,
3867
+ "required": false,
3868
+ "help": "Maximum number of requests to accept (default: 20)"
3869
+ }
3870
+ ],
3871
+ "type": "ts",
3872
+ "modulePath": "twitter/accept.js",
3873
+ "domain": "x.com",
3874
+ "columns": [
3875
+ "index",
3876
+ "status",
3877
+ "user",
3878
+ "message"
3879
+ ]
3880
+ },
3548
3881
  {
3549
3882
  "site": "twitter",
3550
3883
  "name": "article",
@@ -3866,6 +4199,37 @@
3866
4199
  "created_at"
3867
4200
  ]
3868
4201
  },
4202
+ {
4203
+ "site": "twitter",
4204
+ "name": "reply-dm",
4205
+ "description": "Send a message to recent DM conversations",
4206
+ "strategy": "ui",
4207
+ "browser": true,
4208
+ "args": [
4209
+ {
4210
+ "name": "text",
4211
+ "type": "string",
4212
+ "required": true,
4213
+ "help": "Message text to send (e.g. "
4214
+ },
4215
+ {
4216
+ "name": "max",
4217
+ "type": "int",
4218
+ "default": 20,
4219
+ "required": false,
4220
+ "help": "Maximum number of conversations to reply to (default: 20)"
4221
+ }
4222
+ ],
4223
+ "type": "ts",
4224
+ "modulePath": "twitter/reply-dm.js",
4225
+ "domain": "x.com",
4226
+ "columns": [
4227
+ "index",
4228
+ "status",
4229
+ "user",
4230
+ "message"
4231
+ ]
4232
+ },
3869
4233
  {
3870
4234
  "site": "twitter",
3871
4235
  "name": "reply",
@@ -4384,6 +4748,225 @@
4384
4748
  "url"
4385
4749
  ]
4386
4750
  },
4751
+ {
4752
+ "site": "weread",
4753
+ "name": "book",
4754
+ "description": "View book details on WeRead",
4755
+ "strategy": "cookie",
4756
+ "browser": true,
4757
+ "args": [
4758
+ {
4759
+ "name": "bookId",
4760
+ "type": "str",
4761
+ "required": true,
4762
+ "positional": true,
4763
+ "help": "Book ID (numeric, from search or shelf results)"
4764
+ }
4765
+ ],
4766
+ "type": "ts",
4767
+ "modulePath": "weread/book.js",
4768
+ "domain": "weread.qq.com",
4769
+ "columns": [
4770
+ "title",
4771
+ "author",
4772
+ "publisher",
4773
+ "intro",
4774
+ "category",
4775
+ "rating"
4776
+ ]
4777
+ },
4778
+ {
4779
+ "site": "weread",
4780
+ "name": "highlights",
4781
+ "description": "List your highlights (underlines) in a book",
4782
+ "strategy": "cookie",
4783
+ "browser": true,
4784
+ "args": [
4785
+ {
4786
+ "name": "bookId",
4787
+ "type": "str",
4788
+ "required": true,
4789
+ "positional": true,
4790
+ "help": "Book ID (from shelf or search results)"
4791
+ },
4792
+ {
4793
+ "name": "limit",
4794
+ "type": "int",
4795
+ "default": 20,
4796
+ "required": false,
4797
+ "help": "Max results"
4798
+ }
4799
+ ],
4800
+ "type": "ts",
4801
+ "modulePath": "weread/highlights.js",
4802
+ "domain": "weread.qq.com",
4803
+ "columns": [
4804
+ "chapter",
4805
+ "text",
4806
+ "createTime"
4807
+ ]
4808
+ },
4809
+ {
4810
+ "site": "weread",
4811
+ "name": "notebooks",
4812
+ "description": "List books that have highlights or notes",
4813
+ "strategy": "cookie",
4814
+ "browser": true,
4815
+ "args": [],
4816
+ "type": "ts",
4817
+ "modulePath": "weread/notebooks.js",
4818
+ "domain": "weread.qq.com",
4819
+ "columns": [
4820
+ "title",
4821
+ "author",
4822
+ "noteCount",
4823
+ "bookId"
4824
+ ]
4825
+ },
4826
+ {
4827
+ "site": "weread",
4828
+ "name": "notes",
4829
+ "description": "List your notes (thoughts) on a book",
4830
+ "strategy": "cookie",
4831
+ "browser": true,
4832
+ "args": [
4833
+ {
4834
+ "name": "bookId",
4835
+ "type": "str",
4836
+ "required": true,
4837
+ "positional": true,
4838
+ "help": "Book ID (from shelf or search results)"
4839
+ },
4840
+ {
4841
+ "name": "limit",
4842
+ "type": "int",
4843
+ "default": 20,
4844
+ "required": false,
4845
+ "help": "Max results"
4846
+ }
4847
+ ],
4848
+ "type": "ts",
4849
+ "modulePath": "weread/notes.js",
4850
+ "domain": "weread.qq.com",
4851
+ "columns": [
4852
+ "chapter",
4853
+ "text",
4854
+ "review",
4855
+ "createTime"
4856
+ ]
4857
+ },
4858
+ {
4859
+ "site": "weread",
4860
+ "name": "ranking",
4861
+ "description": "WeRead book rankings by category",
4862
+ "strategy": "public",
4863
+ "browser": false,
4864
+ "args": [
4865
+ {
4866
+ "name": "category",
4867
+ "type": "str",
4868
+ "default": "all",
4869
+ "required": false,
4870
+ "positional": true,
4871
+ "help": "Category: all (default), rising, or numeric category ID"
4872
+ },
4873
+ {
4874
+ "name": "limit",
4875
+ "type": "int",
4876
+ "default": 20,
4877
+ "required": false,
4878
+ "help": "Max results"
4879
+ }
4880
+ ],
4881
+ "type": "ts",
4882
+ "modulePath": "weread/ranking.js",
4883
+ "domain": "weread.qq.com",
4884
+ "columns": [
4885
+ "rank",
4886
+ "title",
4887
+ "author",
4888
+ "category",
4889
+ "readingCount",
4890
+ "bookId"
4891
+ ]
4892
+ },
4893
+ {
4894
+ "site": "weread",
4895
+ "name": "search",
4896
+ "description": "Search books on WeRead",
4897
+ "strategy": "public",
4898
+ "browser": false,
4899
+ "args": [
4900
+ {
4901
+ "name": "keyword",
4902
+ "type": "str",
4903
+ "required": true,
4904
+ "positional": true,
4905
+ "help": "Search keyword"
4906
+ },
4907
+ {
4908
+ "name": "limit",
4909
+ "type": "int",
4910
+ "default": 10,
4911
+ "required": false,
4912
+ "help": "Max results"
4913
+ }
4914
+ ],
4915
+ "type": "ts",
4916
+ "modulePath": "weread/search.js",
4917
+ "domain": "weread.qq.com",
4918
+ "columns": [
4919
+ "rank",
4920
+ "title",
4921
+ "author",
4922
+ "bookId"
4923
+ ]
4924
+ },
4925
+ {
4926
+ "site": "weread",
4927
+ "name": "shelf",
4928
+ "description": "List books on your WeRead bookshelf",
4929
+ "strategy": "cookie",
4930
+ "browser": true,
4931
+ "args": [
4932
+ {
4933
+ "name": "limit",
4934
+ "type": "int",
4935
+ "default": 20,
4936
+ "required": false,
4937
+ "help": "Max results"
4938
+ }
4939
+ ],
4940
+ "type": "ts",
4941
+ "modulePath": "weread/shelf.js",
4942
+ "domain": "weread.qq.com",
4943
+ "columns": [
4944
+ "title",
4945
+ "author",
4946
+ "progress",
4947
+ "bookId"
4948
+ ]
4949
+ },
4950
+ {
4951
+ "site": "weread",
4952
+ "name": "utils",
4953
+ "description": "",
4954
+ "strategy": "cookie",
4955
+ "browser": false,
4956
+ "args": [],
4957
+ "type": "ts",
4958
+ "modulePath": "weread/utils.js"
4959
+ },
4960
+ {
4961
+ "site": "weread",
4962
+ "name": "utils.test",
4963
+ "description": "",
4964
+ "strategy": "cookie",
4965
+ "browser": true,
4966
+ "args": [],
4967
+ "type": "ts",
4968
+ "modulePath": "weread/utils.test.js"
4969
+ },
4387
4970
  {
4388
4971
  "site": "xiaohongshu",
4389
4972
  "name": "creator-note-detail",
package/dist/cli.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare function runCli(BUILTIN_CLIS: string, USER_CLIS: string): void;