@jackwener/opencli 1.5.7 → 1.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -0
- package/README.md +17 -1
- package/README.zh-CN.md +17 -1
- package/dist/browser/base-page.d.ts +48 -0
- package/dist/browser/base-page.js +160 -0
- package/dist/browser/cdp.js +4 -106
- package/dist/browser/daemon-client.d.ts +1 -7
- package/dist/browser/daemon-client.js +2 -9
- package/dist/browser/discover.d.ts +1 -4
- package/dist/browser/discover.js +1 -4
- package/dist/browser/errors.d.ts +4 -0
- package/dist/browser/errors.js +20 -0
- package/dist/browser/index.d.ts +1 -1
- package/dist/browser/index.js +1 -1
- package/dist/browser/page.d.ts +6 -35
- package/dist/browser/page.js +10 -189
- package/dist/browser/tabs.js +5 -5
- package/dist/browser.test.js +15 -15
- package/dist/cli-manifest.json +294 -22
- package/dist/clis/amazon/bestsellers.d.ts +21 -0
- package/dist/clis/amazon/bestsellers.js +130 -0
- package/dist/clis/amazon/bestsellers.test.js +20 -0
- package/dist/clis/amazon/discussion.d.ts +20 -0
- package/dist/clis/amazon/discussion.js +91 -0
- package/dist/clis/amazon/discussion.test.js +36 -0
- package/dist/clis/amazon/offer.d.ts +23 -0
- package/dist/clis/amazon/offer.js +140 -0
- package/dist/clis/amazon/offer.test.d.ts +1 -0
- package/dist/clis/amazon/offer.test.js +29 -0
- package/dist/clis/amazon/product.d.ts +18 -0
- package/dist/clis/amazon/product.js +92 -0
- package/dist/clis/amazon/product.test.d.ts +1 -0
- package/dist/clis/amazon/product.test.js +24 -0
- package/dist/clis/amazon/search.d.ts +18 -0
- package/dist/clis/amazon/search.js +87 -0
- package/dist/clis/amazon/search.test.d.ts +1 -0
- package/dist/clis/amazon/search.test.js +22 -0
- package/dist/clis/amazon/shared.d.ts +64 -0
- package/dist/clis/amazon/shared.js +255 -0
- package/dist/clis/amazon/shared.test.d.ts +1 -0
- package/dist/clis/amazon/shared.test.js +33 -0
- package/dist/clis/gemini/ask.d.ts +1 -0
- package/dist/clis/gemini/ask.js +40 -0
- package/dist/clis/gemini/image.d.ts +1 -0
- package/dist/clis/gemini/image.js +105 -0
- package/dist/clis/gemini/new.d.ts +1 -0
- package/dist/clis/gemini/new.js +20 -0
- package/dist/clis/gemini/utils.d.ts +34 -0
- package/dist/clis/gemini/utils.js +463 -0
- package/dist/clis/gemini/utils.test.d.ts +1 -0
- package/dist/clis/gemini/utils.test.js +31 -0
- package/dist/clis/notebooklm/compat.test.d.ts +1 -1
- package/dist/clis/notebooklm/compat.test.js +3 -3
- package/dist/clis/notebooklm/current.js +2 -3
- package/dist/clis/notebooklm/get.js +2 -3
- package/dist/clis/notebooklm/history.js +2 -3
- package/dist/clis/notebooklm/note-list.js +2 -3
- package/dist/clis/notebooklm/notes-get.js +2 -3
- package/dist/clis/notebooklm/open.d.ts +1 -0
- package/dist/clis/notebooklm/open.js +41 -0
- package/dist/clis/notebooklm/open.test.d.ts +1 -0
- package/dist/clis/notebooklm/open.test.js +63 -0
- package/dist/clis/notebooklm/source-fulltext.js +2 -3
- package/dist/clis/notebooklm/source-get.js +2 -3
- package/dist/clis/notebooklm/source-guide.js +2 -3
- package/dist/clis/notebooklm/source-list.js +2 -3
- package/dist/clis/notebooklm/status.js +1 -2
- package/dist/clis/notebooklm/summary.js +2 -3
- package/dist/clis/notebooklm/utils.d.ts +2 -1
- package/dist/clis/notebooklm/utils.js +20 -21
- package/dist/clis/xiaohongshu/creator-note-detail.test.js +11 -11
- package/dist/clis/xiaohongshu/creator-notes-summary.test.js +6 -6
- package/dist/clis/xiaohongshu/creator-notes.test.js +22 -22
- package/dist/commanderAdapter.js +6 -3
- package/dist/commanderAdapter.test.js +33 -0
- package/dist/commands/daemon.js +1 -1
- package/dist/commands/daemon.test.js +1 -1
- package/dist/doctor.d.ts +1 -2
- package/dist/doctor.js +7 -8
- package/dist/explore.js +1 -1
- package/dist/extension-manifest-regression.test.js +1 -0
- package/dist/output.js +28 -0
- package/dist/output.test.js +15 -0
- package/dist/pipeline/executor.js +2 -7
- package/dist/pipeline/steps/browser.js +1 -1
- package/dist/pipeline/template.js +25 -3
- package/dist/record.d.ts +50 -0
- package/dist/record.js +298 -57
- package/dist/record.test.d.ts +1 -0
- package/dist/record.test.js +293 -0
- package/dist/registry.d.ts +2 -0
- package/dist/registry.js +1 -0
- package/dist/registry.test.js +10 -0
- package/dist/runtime.js +3 -3
- package/dist/snapshotFormatter.d.ts +1 -1
- package/dist/snapshotFormatter.js +4 -4
- package/dist/snapshotFormatter.test.d.ts +1 -1
- package/dist/snapshotFormatter.test.js +2 -2
- package/dist/types.d.ts +3 -1
- package/dist/types.js +1 -1
- package/docs/.vitepress/config.mts +2 -0
- package/docs/adapters/browser/amazon.md +53 -0
- package/docs/adapters/browser/gemini.md +72 -0
- package/docs/adapters/browser/notebooklm.md +5 -5
- package/docs/adapters/index.md +3 -1
- package/extension/dist/background.js +614 -794
- package/extension/manifest.json +2 -1
- package/extension/src/background.test.ts +7 -163
- package/extension/src/background.ts +7 -156
- package/extension/src/cdp.test.ts +75 -0
- package/extension/src/cdp.ts +77 -3
- package/extension/src/protocol.ts +1 -5
- package/package.json +1 -1
- package/skills/opencli-explorer/SKILL.md +847 -0
- package/skills/opencli-oneshot/SKILL.md +216 -0
- package/skills/opencli-usage/SKILL.md +71 -0
- package/skills/opencli-usage/browser.md +429 -0
- package/skills/opencli-usage/desktop.md +118 -0
- package/skills/opencli-usage/plugins.md +82 -0
- package/skills/opencli-usage/public-api.md +149 -0
- package/src/browser/base-page.ts +197 -0
- package/src/browser/cdp.ts +7 -131
- package/src/browser/daemon-client.ts +3 -14
- package/src/browser/discover.ts +1 -4
- package/src/browser/errors.ts +22 -0
- package/src/browser/index.ts +1 -1
- package/src/browser/page.ts +13 -212
- package/src/browser/tabs.ts +5 -5
- package/src/browser.test.ts +15 -15
- package/src/clis/amazon/bestsellers.test.ts +22 -0
- package/src/clis/amazon/bestsellers.ts +180 -0
- package/src/clis/amazon/discussion.test.ts +38 -0
- package/src/clis/amazon/discussion.ts +131 -0
- package/src/clis/amazon/offer.test.ts +35 -0
- package/src/clis/amazon/offer.ts +185 -0
- package/src/clis/amazon/product.test.ts +26 -0
- package/src/clis/amazon/product.ts +131 -0
- package/src/clis/amazon/search.test.ts +24 -0
- package/src/clis/amazon/search.ts +128 -0
- package/src/clis/amazon/shared.test.ts +37 -0
- package/src/clis/amazon/shared.ts +316 -0
- package/src/clis/gemini/ask.ts +46 -0
- package/src/clis/gemini/image.ts +115 -0
- package/src/clis/gemini/new.ts +22 -0
- package/src/clis/gemini/utils.test.ts +36 -0
- package/src/clis/gemini/utils.ts +523 -0
- package/src/clis/notebooklm/compat.test.ts +3 -3
- package/src/clis/notebooklm/current.ts +2 -3
- package/src/clis/notebooklm/get.ts +1 -3
- package/src/clis/notebooklm/history.ts +1 -3
- package/src/clis/notebooklm/note-list.ts +1 -3
- package/src/clis/notebooklm/notes-get.ts +1 -3
- package/src/clis/notebooklm/open.test.ts +78 -0
- package/src/clis/notebooklm/open.ts +61 -0
- package/src/clis/notebooklm/source-fulltext.ts +1 -3
- package/src/clis/notebooklm/source-get.ts +1 -3
- package/src/clis/notebooklm/source-guide.ts +1 -3
- package/src/clis/notebooklm/source-list.ts +1 -3
- package/src/clis/notebooklm/status.ts +1 -2
- package/src/clis/notebooklm/summary.ts +1 -3
- package/src/clis/notebooklm/utils.ts +29 -20
- package/src/clis/xiaohongshu/creator-note-detail.test.ts +11 -11
- package/src/clis/xiaohongshu/creator-notes-summary.test.ts +6 -6
- package/src/clis/xiaohongshu/creator-notes.test.ts +22 -22
- package/src/commanderAdapter.test.ts +47 -0
- package/src/commanderAdapter.ts +7 -3
- package/src/commands/daemon.test.ts +1 -1
- package/src/commands/daemon.ts +1 -1
- package/src/doctor.ts +7 -8
- package/src/explore.ts +1 -1
- package/src/extension-manifest-regression.test.ts +1 -0
- package/src/output.test.ts +17 -0
- package/src/output.ts +27 -0
- package/src/pipeline/executor.ts +2 -7
- package/src/pipeline/steps/browser.ts +1 -1
- package/src/pipeline/template.ts +27 -4
- package/src/record.test.ts +362 -0
- package/src/record.ts +341 -62
- package/src/registry.test.ts +12 -0
- package/src/registry.ts +3 -0
- package/src/runtime.ts +3 -3
- package/src/snapshotFormatter.test.ts +2 -2
- package/src/snapshotFormatter.ts +4 -4
- package/src/types.ts +3 -1
- package/.agents/skills/cross-project-adapter-migration/SKILL.md +0 -249
- package/.agents/workflows/cross-project-adapter-migration.md +0 -54
- package/SKILL.md +0 -879
- package/dist/clis/notebooklm/bind-current.js +0 -29
- package/dist/clis/notebooklm/bind-current.test.d.ts +0 -1
- package/dist/clis/notebooklm/bind-current.test.js +0 -35
- package/dist/clis/notebooklm/binding.test.js +0 -44
- package/src/clis/notebooklm/bind-current.test.ts +0 -43
- package/src/clis/notebooklm/bind-current.ts +0 -36
- package/src/clis/notebooklm/binding.test.ts +0 -53
- /package/dist/browser/{mcp.d.ts → bridge.d.ts} +0 -0
- /package/dist/browser/{mcp.js → bridge.js} +0 -0
- /package/dist/clis/{notebooklm/bind-current.d.ts → amazon/bestsellers.test.d.ts} +0 -0
- /package/dist/clis/{notebooklm/binding.test.d.ts → amazon/discussion.test.d.ts} +0 -0
- /package/src/browser/{mcp.ts → bridge.ts} +0 -0
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
# Browser-based Commands
|
|
2
|
+
|
|
3
|
+
Commands that require Chrome browser with login state.
|
|
4
|
+
|
|
5
|
+
## Bilibili (哔哩哔哩)
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
opencli bilibili hot --limit 10 # B站热门视频
|
|
9
|
+
opencli bilibili search "rust" # 搜索视频 (query positional)
|
|
10
|
+
opencli bilibili me # 我的信息
|
|
11
|
+
opencli bilibili favorite # 我的收藏
|
|
12
|
+
opencli bilibili history --limit 20 # 观看历史
|
|
13
|
+
opencli bilibili feed --limit 10 # 动态时间线
|
|
14
|
+
opencli bilibili user-videos --uid 12345 # 用户投稿
|
|
15
|
+
opencli bilibili subtitle --bvid BV1xxx # 获取视频字幕 (支持 --lang zh-CN)
|
|
16
|
+
opencli bilibili dynamic --limit 10 # 动态
|
|
17
|
+
opencli bilibili ranking --limit 10 # 排行榜
|
|
18
|
+
opencli bilibili following --limit 20 # 我的关注列表 (支持 --uid 查看他人)
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Zhihu (知乎)
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
opencli zhihu hot --limit 10 # 知乎热榜
|
|
25
|
+
opencli zhihu search "AI" # 搜索 (query positional)
|
|
26
|
+
opencli zhihu question 34816524 # 问题详情和回答 (id positional)
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Xiaohongshu (小红书)
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
opencli xiaohongshu search "美食" # 搜索笔记 (query positional)
|
|
33
|
+
opencli xiaohongshu notifications # 通知(mentions/likes/connections)
|
|
34
|
+
opencli xiaohongshu feed --limit 10 # 推荐 Feed
|
|
35
|
+
opencli xiaohongshu user xxx # 用户主页 (id positional)
|
|
36
|
+
opencli xiaohongshu creator-notes --limit 10 # 创作者笔记列表
|
|
37
|
+
opencli xiaohongshu creator-note-detail --note-id xxx # 笔记详情
|
|
38
|
+
opencli xiaohongshu creator-notes-summary # 笔记数据概览
|
|
39
|
+
opencli xiaohongshu creator-profile # 创作者资料
|
|
40
|
+
opencli xiaohongshu creator-stats # 创作者数据统计
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Xueqiu (雪球)
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
opencli xueqiu hot-stock --limit 10 # 雪球热门股票榜
|
|
47
|
+
opencli xueqiu stock --symbol SH600519 # 查看股票实时行情
|
|
48
|
+
opencli xueqiu watchlist # 获取自选股/持仓列表
|
|
49
|
+
opencli xueqiu feed # 我的关注 timeline
|
|
50
|
+
opencli xueqiu hot --limit 10 # 雪球热榜
|
|
51
|
+
opencli xueqiu search "特斯拉" # 搜索 (query positional)
|
|
52
|
+
opencli xueqiu earnings-date SH600519 # 股票财报发布日期 (symbol positional)
|
|
53
|
+
opencli xueqiu fund-holdings # 蛋卷基金持仓明细 (支持 --account 过滤)
|
|
54
|
+
opencli xueqiu fund-snapshot # 蛋卷基金快照(总资产、子账户、持仓)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Twitter/X
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
opencli twitter trending --limit 10 # 热门话题
|
|
61
|
+
opencli twitter bookmarks --limit 20 # 获取收藏的书签推文
|
|
62
|
+
opencli twitter search "AI" # 搜索推文 (query positional)
|
|
63
|
+
opencli twitter profile elonmusk # 用户资料
|
|
64
|
+
opencli twitter timeline --limit 20 # 时间线
|
|
65
|
+
opencli twitter thread 1234567890 # 推文 thread(原文 + 回复)
|
|
66
|
+
opencli twitter article 1891511252174299446 # 推文长文内容
|
|
67
|
+
opencli twitter follow elonmusk # 关注用户
|
|
68
|
+
opencli twitter unfollow elonmusk # 取消关注
|
|
69
|
+
opencli twitter bookmark https://x.com/... # 收藏推文
|
|
70
|
+
opencli twitter unbookmark https://x.com/... # 取消收藏
|
|
71
|
+
opencli twitter post "Hello world" # 发布推文 (text positional)
|
|
72
|
+
opencli twitter like https://x.com/... # 点赞推文 (url positional)
|
|
73
|
+
opencli twitter reply https://x.com/... "Nice!" # 回复推文 (url + text positional)
|
|
74
|
+
opencli twitter delete https://x.com/... # 删除推文 (url positional)
|
|
75
|
+
opencli twitter block elonmusk # 屏蔽用户 (username positional)
|
|
76
|
+
opencli twitter unblock elonmusk # 取消屏蔽 (username positional)
|
|
77
|
+
opencli twitter followers elonmusk # 用户的粉丝列表 (user positional)
|
|
78
|
+
opencli twitter following elonmusk # 用户的关注列表 (user positional)
|
|
79
|
+
opencli twitter notifications --limit 20 # 通知列表
|
|
80
|
+
opencli twitter hide-reply https://x.com/... # 隐藏回复 (url positional)
|
|
81
|
+
opencli twitter download elonmusk # 下载用户媒体 (username positional, 支持 --tweet-url)
|
|
82
|
+
opencli twitter accept "群,微信" # 自动接受含关键词的 DM 请求 (query positional)
|
|
83
|
+
opencli twitter reply-dm "消息内容" # 批量回复 DM (text positional)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Reddit
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
opencli reddit hot --limit 10 # 热门帖子
|
|
90
|
+
opencli reddit hot --subreddit programming # 指定子版块
|
|
91
|
+
opencli reddit frontpage --limit 10 # 首页 /r/all
|
|
92
|
+
opencli reddit popular --limit 10 # /r/popular 热门
|
|
93
|
+
opencli reddit search "AI" --sort top --time week # 搜索(支持排序+时间过滤)
|
|
94
|
+
opencli reddit subreddit rust --sort top --time month # 子版块浏览(支持时间过滤)
|
|
95
|
+
opencli reddit read --post-id 1abc123 # 阅读帖子 + 评论
|
|
96
|
+
opencli reddit user spez # 用户资料(karma、注册时间)
|
|
97
|
+
opencli reddit user-posts spez # 用户发帖历史
|
|
98
|
+
opencli reddit user-comments spez # 用户评论历史
|
|
99
|
+
opencli reddit upvote --post-id xxx --direction up # 投票(up/down/none)
|
|
100
|
+
opencli reddit save --post-id xxx # 收藏帖子
|
|
101
|
+
opencli reddit comment --post-id xxx "Great!" # 发表评论 (text positional)
|
|
102
|
+
opencli reddit subscribe --subreddit python # 订阅子版块
|
|
103
|
+
opencli reddit saved --limit 10 # 我的收藏
|
|
104
|
+
opencli reddit upvoted --limit 10 # 我的赞
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## V2EX (Browser Features)
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
opencli v2ex daily # 每日签到
|
|
111
|
+
opencli v2ex me # 我的信息
|
|
112
|
+
opencli v2ex notifications --limit 10 # 通知
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Weibo (微博)
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
opencli weibo hot --limit 10 # 微博热搜
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## BOSS直聘
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
opencli boss search "AI agent" # 搜索职位 (query positional)
|
|
125
|
+
opencli boss detail --security-id xxx # 职位详情
|
|
126
|
+
opencli boss recommend --limit 10 # 推荐职位
|
|
127
|
+
opencli boss joblist --limit 10 # 职位列表
|
|
128
|
+
opencli boss greet --security-id xxx # 打招呼
|
|
129
|
+
opencli boss batchgreet --job-id xxx # 批量打招呼
|
|
130
|
+
opencli boss send --uid xxx "消息内容" # 发消息 (text positional)
|
|
131
|
+
opencli boss chatlist --limit 10 # 聊天列表
|
|
132
|
+
opencli boss chatmsg --security-id xxx # 聊天记录
|
|
133
|
+
opencli boss invite --security-id xxx # 邀请沟通
|
|
134
|
+
opencli boss mark --security-id xxx # 标记管理
|
|
135
|
+
opencli boss exchange --security-id xxx # 交换联系方式
|
|
136
|
+
opencli boss resume # 简历管理
|
|
137
|
+
opencli boss stats # 数据统计
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## YouTube
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
opencli youtube search "rust" # 搜索视频 (query positional)
|
|
144
|
+
opencli youtube video "https://www.youtube.com/watch?v=xxx" # 视频元数据
|
|
145
|
+
opencli youtube transcript "https://www.youtube.com/watch?v=xxx" # 获取视频字幕/转录
|
|
146
|
+
opencli youtube transcript "xxx" --lang zh-Hans --mode raw # 指定语言 + 原始时间戳模式
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## Yahoo Finance
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
opencli yahoo-finance quote --symbol AAPL # 股票行情
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Sina Finance
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
opencli sinafinance news --limit 10 --type 1 # 7x24实时快讯
|
|
159
|
+
# Types: 0=全部 1=A股 2=宏观 3=公司 4=数据 5=市场 6=国际 7=观点 8=央行 9=其它
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
## Reuters (路透社)
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
opencli reuters search "AI" # 路透社搜索 (query positional)
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
## SMZDM (什么值得买)
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
opencli smzdm search "耳机" # 搜索好价 (query positional)
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
## Ctrip (携程)
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
opencli ctrip search "三亚" # 搜索目的地 (query positional)
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
## Barchart
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
opencli barchart quote --symbol AAPL # 股票行情
|
|
184
|
+
opencli barchart options --symbol AAPL # 期权链
|
|
185
|
+
opencli barchart greeks --symbol AAPL # 期权 Greeks
|
|
186
|
+
opencli barchart flow --limit 20 # 异常期权活动
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## Jike (即刻)
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
opencli jike feed --limit 10 # 动态流
|
|
193
|
+
opencli jike search "AI" # 搜索 (query positional)
|
|
194
|
+
opencli jike create "内容" # 发布动态 (text positional)
|
|
195
|
+
opencli jike like xxx # 点赞 (id positional)
|
|
196
|
+
opencli jike comment xxx "评论" # 评论 (id + text positional)
|
|
197
|
+
opencli jike repost xxx # 转发 (id positional)
|
|
198
|
+
opencli jike notifications # 通知
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
## Linux.do (Browser Features)
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
opencli linux-do categories --limit 20 # 分类列表
|
|
205
|
+
opencli linux-do category dev 7 # 分类内话题 (slug + id positional)
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## WeRead (微信读书)
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
opencli weread shelf --limit 10 # 书架
|
|
212
|
+
opencli weread search "AI" # 搜索图书 (query positional)
|
|
213
|
+
opencli weread book xxx # 图书详情 (book-id positional)
|
|
214
|
+
opencli weread highlights xxx # 划线笔记 (book-id positional)
|
|
215
|
+
opencli weread notes xxx # 想法笔记 (book-id positional)
|
|
216
|
+
opencli weread ranking --limit 10 # 排行榜
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
## Jimeng (即梦 AI)
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
opencli jimeng generate --prompt "描述" # AI 生图
|
|
223
|
+
opencli jimeng history --limit 10 # 生成历史
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
## Chaoxing (超星学习通)
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
opencli chaoxing assignments # 作业列表
|
|
230
|
+
opencli chaoxing exams # 考试列表
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
## Douban (豆瓣)
|
|
234
|
+
|
|
235
|
+
```bash
|
|
236
|
+
opencli douban search "三体" # 搜索 (query positional)
|
|
237
|
+
opencli douban top250 # 豆瓣 Top 250
|
|
238
|
+
opencli douban subject 1234567 # 条目详情 (id positional)
|
|
239
|
+
opencli douban photos 30382501 # 图片列表 / 直链(默认海报)
|
|
240
|
+
opencli douban download 30382501 # 下载海报 / 剧照
|
|
241
|
+
opencli douban marks --limit 10 # 我的标记
|
|
242
|
+
opencli douban reviews --limit 10 # 短评
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
## Facebook
|
|
246
|
+
|
|
247
|
+
```bash
|
|
248
|
+
opencli facebook feed --limit 10 # 动态流
|
|
249
|
+
opencli facebook profile username # 用户资料 (id positional)
|
|
250
|
+
opencli facebook search "AI" # 搜索 (query positional)
|
|
251
|
+
opencli facebook friends # 好友列表
|
|
252
|
+
opencli facebook groups # 群组
|
|
253
|
+
opencli facebook events # 活动
|
|
254
|
+
opencli facebook notifications # 通知
|
|
255
|
+
opencli facebook memories # 回忆
|
|
256
|
+
opencli facebook add-friend username # 添加好友 (id positional)
|
|
257
|
+
opencli facebook join-group groupid # 加入群组 (id positional)
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
## Instagram
|
|
261
|
+
|
|
262
|
+
```bash
|
|
263
|
+
opencli instagram explore # 探索
|
|
264
|
+
opencli instagram profile username # 用户资料 (id positional)
|
|
265
|
+
opencli instagram search "AI" # 搜索 (query positional)
|
|
266
|
+
opencli instagram user username # 用户详情 (id positional)
|
|
267
|
+
opencli instagram followers username # 粉丝 (id positional)
|
|
268
|
+
opencli instagram following username # 关注 (id positional)
|
|
269
|
+
opencli instagram follow username # 关注用户 (id positional)
|
|
270
|
+
opencli instagram unfollow username # 取消关注 (id positional)
|
|
271
|
+
opencli instagram like postid # 点赞 (id positional)
|
|
272
|
+
opencli instagram unlike postid # 取消点赞 (id positional)
|
|
273
|
+
opencli instagram comment postid "评论" # 评论 (id + text positional)
|
|
274
|
+
opencli instagram save postid # 收藏 (id positional)
|
|
275
|
+
opencli instagram unsave postid # 取消收藏 (id positional)
|
|
276
|
+
opencli instagram saved # 已收藏列表
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
## TikTok
|
|
280
|
+
|
|
281
|
+
```bash
|
|
282
|
+
opencli tiktok explore # 探索
|
|
283
|
+
opencli tiktok search "AI" # 搜索 (query positional)
|
|
284
|
+
opencli tiktok profile username # 用户资料 (id positional)
|
|
285
|
+
opencli tiktok user username # 用户详情 (id positional)
|
|
286
|
+
opencli tiktok following username # 关注列表 (id positional)
|
|
287
|
+
opencli tiktok follow username # 关注 (id positional)
|
|
288
|
+
opencli tiktok unfollow username # 取消关注 (id positional)
|
|
289
|
+
opencli tiktok like videoid # 点赞 (id positional)
|
|
290
|
+
opencli tiktok unlike videoid # 取消点赞 (id positional)
|
|
291
|
+
opencli tiktok comment videoid "评论" # 评论 (id + text positional)
|
|
292
|
+
opencli tiktok save videoid # 收藏 (id positional)
|
|
293
|
+
opencli tiktok unsave videoid # 取消收藏 (id positional)
|
|
294
|
+
opencli tiktok live # 直播
|
|
295
|
+
opencli tiktok notifications # 通知
|
|
296
|
+
opencli tiktok friends # 朋友
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
## Medium
|
|
300
|
+
|
|
301
|
+
```bash
|
|
302
|
+
opencli medium feed --limit 10 # 动态流
|
|
303
|
+
opencli medium search "AI" # 搜索 (query positional)
|
|
304
|
+
opencli medium user username # 用户主页 (id positional)
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
## Substack
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
opencli substack feed --limit 10 # 订阅动态
|
|
311
|
+
opencli substack search "AI" # 搜索 (query positional)
|
|
312
|
+
opencli substack publication name # 出版物详情 (id positional)
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
## Sinablog (新浪博客)
|
|
316
|
+
|
|
317
|
+
```bash
|
|
318
|
+
opencli sinablog hot --limit 10 # 热门
|
|
319
|
+
opencli sinablog search "AI" # 搜索 (query positional)
|
|
320
|
+
opencli sinablog article url # 文章详情
|
|
321
|
+
opencli sinablog user username # 用户主页 (id positional)
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
## Coupang (쿠팡)
|
|
325
|
+
|
|
326
|
+
```bash
|
|
327
|
+
opencli coupang search "耳机" # 搜索商品 (query positional, 支持 --filter rocket)
|
|
328
|
+
opencli coupang add-to-cart 12345 # 加入购物车 (product-id positional, 或 --url)
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
## Yollomi (browser — 需在 Chrome 登录 yollomi.com)
|
|
332
|
+
|
|
333
|
+
```bash
|
|
334
|
+
opencli yollomi models --type image # 列出图像模型与积分
|
|
335
|
+
opencli yollomi generate "提示词" --model z-image-turbo # 文生图
|
|
336
|
+
opencli yollomi video "提示词" --model kling-2-1 # 视频
|
|
337
|
+
opencli yollomi upload ./photo.jpg # 上传得 URL,供 img2img / 工具链使用
|
|
338
|
+
opencli yollomi remove-bg <image-url> # 去背景(免费)
|
|
339
|
+
opencli yollomi edit <image-url> "改成油画风格" # Qwen 图像编辑
|
|
340
|
+
opencli yollomi background <image-url> # AI 背景生成 (5 credits)
|
|
341
|
+
opencli yollomi face-swap --source <url> --target <url> # 换脸 (3 credits)
|
|
342
|
+
opencli yollomi object-remover <image-url> <mask-url> # AI 去除物体 (3 credits)
|
|
343
|
+
opencli yollomi restore <image-url> # AI 修复老照片 (4 credits)
|
|
344
|
+
opencli yollomi try-on --person <url> --cloth <url> # 虚拟试衣 (3 credits)
|
|
345
|
+
opencli yollomi upscale <image-url> # AI 超分辨率 (1 credit, 支持 --scale 2/4)
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
## Doubao Web (豆包)
|
|
349
|
+
|
|
350
|
+
```bash
|
|
351
|
+
opencli doubao status # 检查豆包页面状态
|
|
352
|
+
opencli doubao new # 新建对话
|
|
353
|
+
opencli doubao send "你好" # 发送消息 (text positional)
|
|
354
|
+
opencli doubao read # 读取对话记录
|
|
355
|
+
opencli doubao ask "问题" # 一键提问并等回复 (text positional)
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
## Grok
|
|
359
|
+
|
|
360
|
+
```bash
|
|
361
|
+
opencli grok ask --prompt "问题" # 提问 Grok(兼容默认路径)
|
|
362
|
+
opencli grok ask --prompt "问题" --web # 显式 grok.com consumer web UI 路径
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
## Pixiv
|
|
366
|
+
|
|
367
|
+
```bash
|
|
368
|
+
opencli pixiv ranking --limit 20 # 插画排行榜 (支持 --mode daily/weekly/monthly)
|
|
369
|
+
opencli pixiv search "風景" # 搜索插画 (query positional)
|
|
370
|
+
opencli pixiv user 12345 # 画师资料 (uid positional)
|
|
371
|
+
opencli pixiv illusts 12345 # 画师作品列表 (user-id positional)
|
|
372
|
+
opencli pixiv detail 12345 # 插画详情 (id positional)
|
|
373
|
+
opencli pixiv download 12345 # 下载插画 (illust-id positional)
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
## Web
|
|
377
|
+
|
|
378
|
+
```bash
|
|
379
|
+
opencli web read --url "https://..." # 抓取任意网页并导出为 Markdown
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
## Weixin (微信公众号)
|
|
383
|
+
|
|
384
|
+
```bash
|
|
385
|
+
opencli weixin download --url "https://mp.weixin.qq.com/s/xxx" # 下载公众号文章为 Markdown
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
## JD (京东)
|
|
389
|
+
|
|
390
|
+
```bash
|
|
391
|
+
opencli jd item 100291143898 # 商品详情 (sku positional, 含价格/主图/规格)
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
## LinkedIn
|
|
395
|
+
|
|
396
|
+
```bash
|
|
397
|
+
opencli linkedin search "AI engineer" # 搜索职位 (query positional, 支持 --location/--company/--remote)
|
|
398
|
+
opencli linkedin timeline --limit 20 # 首页动态流
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
## Bloomberg (Browser - Full Article)
|
|
402
|
+
|
|
403
|
+
```bash
|
|
404
|
+
opencli bloomberg news "https://..." # 阅读 Bloomberg 文章全文 (link positional, browser)
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
## Kimi
|
|
408
|
+
|
|
409
|
+
```bash
|
|
410
|
+
opencli kimi status # 检查 Kimi 页面状态
|
|
411
|
+
opencli kimi new # 新建对话
|
|
412
|
+
opencli kimi ask "问题" # 提问 (prompt positional)
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
## DeepSeek
|
|
416
|
+
|
|
417
|
+
```bash
|
|
418
|
+
opencli deepseek status # 检查 DeepSeek 页面状态
|
|
419
|
+
opencli deepseek new # 新建对话
|
|
420
|
+
opencli deepseek ask "问题" # 提问 (prompt positional)
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
## Qwen (通义千问)
|
|
424
|
+
|
|
425
|
+
```bash
|
|
426
|
+
opencli qwen status # 检查 Qwen 页面状态
|
|
427
|
+
opencli qwen new # 新建对话
|
|
428
|
+
opencli qwen ask "问题" # 提问 (prompt positional)
|
|
429
|
+
```
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Desktop Adapter Commands
|
|
2
|
+
|
|
3
|
+
Commands that interact with desktop applications via CDP (Chrome DevTools Protocol) on Electron apps, or external CLI tools.
|
|
4
|
+
|
|
5
|
+
## GitHub (via gh CLI)
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
opencli gh repo list # 列出仓库 (passthrough to gh)
|
|
9
|
+
opencli gh pr list --limit 5 # PR 列表
|
|
10
|
+
opencli gh issue list # Issue 列表
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Cursor (desktop — CDP via Electron)
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
opencli cursor status # 检查连接
|
|
17
|
+
opencli cursor send "message" # 发送消息
|
|
18
|
+
opencli cursor read # 读取回复
|
|
19
|
+
opencli cursor new # 新建对话
|
|
20
|
+
opencli cursor dump # 导出 DOM 调试信息
|
|
21
|
+
opencli cursor composer # Composer 模式
|
|
22
|
+
opencli cursor model claude # 切换模型
|
|
23
|
+
opencli cursor extract-code # 提取代码块
|
|
24
|
+
opencli cursor ask "question" # 一键提问并等回复
|
|
25
|
+
opencli cursor screenshot # 截图
|
|
26
|
+
opencli cursor history # 对话历史
|
|
27
|
+
opencli cursor export # 导出对话
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Codex (desktop — headless CLI agent)
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
opencli codex status # 检查连接
|
|
34
|
+
opencli codex send "message" # 发送消息
|
|
35
|
+
opencli codex read # 读取回复
|
|
36
|
+
opencli codex new # 新建对话
|
|
37
|
+
opencli codex dump # 导出调试信息
|
|
38
|
+
opencli codex extract-diff # 提取 diff
|
|
39
|
+
opencli codex model gpt-4 # 切换模型
|
|
40
|
+
opencli codex ask "question" # 一键提问并等回复
|
|
41
|
+
opencli codex screenshot # 截图
|
|
42
|
+
opencli codex history # 对话历史
|
|
43
|
+
opencli codex export # 导出对话
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## ChatGPT (desktop — macOS AppleScript/CDP)
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
opencli chatgpt status # 检查应用状态
|
|
50
|
+
opencli chatgpt new # 新建对话
|
|
51
|
+
opencli chatgpt send "message" # 发送消息
|
|
52
|
+
opencli chatgpt read # 读取回复
|
|
53
|
+
opencli chatgpt ask "question" # 一键提问并等回复
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## ChatWise (desktop — multi-LLM client)
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
opencli chatwise status # 检查连接
|
|
60
|
+
opencli chatwise new # 新建对话
|
|
61
|
+
opencli chatwise send "message" # 发送消息
|
|
62
|
+
opencli chatwise read # 读取回复
|
|
63
|
+
opencli chatwise ask "question" # 一键提问并等回复
|
|
64
|
+
opencli chatwise model claude # 切换模型
|
|
65
|
+
opencli chatwise history # 对话历史
|
|
66
|
+
opencli chatwise export # 导出对话
|
|
67
|
+
opencli chatwise screenshot # 截图
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Notion (desktop — CDP via Electron)
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
opencli notion status # 检查连接
|
|
74
|
+
opencli notion search "keyword" # 搜索页面
|
|
75
|
+
opencli notion read # 读取当前页面
|
|
76
|
+
opencli notion new # 新建页面
|
|
77
|
+
opencli notion write "content" # 写入内容
|
|
78
|
+
opencli notion sidebar # 侧边栏导航
|
|
79
|
+
opencli notion favorites # 收藏列表
|
|
80
|
+
opencli notion export # 导出
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Discord App (desktop — CDP via Electron)
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
opencli discord-app status # 检查连接
|
|
87
|
+
opencli discord-app send "message" # 发送消息
|
|
88
|
+
opencli discord-app read # 读取消息
|
|
89
|
+
opencli discord-app channels # 频道列表
|
|
90
|
+
opencli discord-app servers # 服务器列表
|
|
91
|
+
opencli discord-app search "keyword" # 搜索
|
|
92
|
+
opencli discord-app members # 成员列表
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Doubao App 豆包桌面版 (desktop — CDP via Electron)
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
opencli doubao-app status # 检查连接
|
|
99
|
+
opencli doubao-app new # 新建对话
|
|
100
|
+
opencli doubao-app send "message" # 发送消息
|
|
101
|
+
opencli doubao-app read # 读取回复
|
|
102
|
+
opencli doubao-app ask "question" # 一键提问并等回复
|
|
103
|
+
opencli doubao-app screenshot # 截图
|
|
104
|
+
opencli doubao-app dump # 导出 DOM 调试信息
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Antigravity (Electron/CDP)
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
opencli antigravity status # 检查 CDP 连接
|
|
111
|
+
opencli antigravity send "hello" # 发送文本到当前 agent 聊天框
|
|
112
|
+
opencli antigravity read # 读取整个聊天记录面板
|
|
113
|
+
opencli antigravity new # 清空聊天、开启新对话
|
|
114
|
+
opencli antigravity dump # 导出 DOM 和快照调试信息
|
|
115
|
+
opencli antigravity extract-code # 自动抽取 AI 回复中的代码块
|
|
116
|
+
opencli antigravity model claude # 切换底层模型
|
|
117
|
+
opencli antigravity watch # 流式监听增量消息
|
|
118
|
+
```
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Plugin System & Advanced Features
|
|
2
|
+
|
|
3
|
+
## Management Commands
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
opencli list # List all commands (including External CLIs)
|
|
7
|
+
opencli list --json # JSON output
|
|
8
|
+
opencli list -f yaml # YAML output
|
|
9
|
+
opencli install <name> # Auto-install an external CLI (e.g., gh, obsidian)
|
|
10
|
+
opencli register <name> # Register a local custom CLI for unified discovery
|
|
11
|
+
opencli validate # Validate all CLI definitions
|
|
12
|
+
opencli validate bilibili # Validate specific site
|
|
13
|
+
opencli doctor # Diagnose browser bridge (auto-starts daemon, includes live test)
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## AI Agent Workflow
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Deep Explore: network intercept → response analysis → capability inference
|
|
20
|
+
opencli explore <url> --site <name>
|
|
21
|
+
|
|
22
|
+
# Synthesize: generate evaluate-based YAML pipelines from explore artifacts
|
|
23
|
+
opencli synthesize <site>
|
|
24
|
+
|
|
25
|
+
# Generate: one-shot explore → synthesize → register
|
|
26
|
+
opencli generate <url> --goal "hot"
|
|
27
|
+
|
|
28
|
+
# Record: YOU operate the page, opencli captures every API call → YAML candidates
|
|
29
|
+
opencli record <url> # 录制,site name 从域名推断
|
|
30
|
+
opencli record <url> --site mysite # 指定 site name
|
|
31
|
+
opencli record <url> --timeout 120000 # 自定义超时(毫秒,默认 60000)
|
|
32
|
+
opencli record <url> --poll 1000 # 缩短轮询间隔(毫秒,默认 2000)
|
|
33
|
+
opencli record <url> --out .opencli/record/x # 自定义输出目录
|
|
34
|
+
|
|
35
|
+
# Strategy Cascade: auto-probe PUBLIC → COOKIE → HEADER
|
|
36
|
+
opencli cascade <api-url>
|
|
37
|
+
|
|
38
|
+
# Explore with interactive fuzzing (click buttons to trigger lazy APIs)
|
|
39
|
+
opencli explore <url> --auto --click "字幕,CC,评论"
|
|
40
|
+
|
|
41
|
+
# Validate: validate adapter definitions
|
|
42
|
+
opencli validate
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Output Formats
|
|
46
|
+
|
|
47
|
+
All built-in commands support `--format` / `-f` with `table`, `json`, `yaml`, `md`, and `csv`.
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
opencli list -f yaml # YAML command registry
|
|
51
|
+
opencli bilibili hot -f table # Default: rich table
|
|
52
|
+
opencli bilibili hot -f json # JSON (pipe to jq, feed to AI agent)
|
|
53
|
+
opencli bilibili hot -f yaml # YAML (readable structured output)
|
|
54
|
+
opencli bilibili hot -f md # Markdown
|
|
55
|
+
opencli bilibili hot -f csv # CSV
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Verbose Mode
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
opencli bilibili hot -v # Show each pipeline step and data flow
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Environment Variables
|
|
65
|
+
|
|
66
|
+
| Variable | Default | Description |
|
|
67
|
+
|----------|---------|-------------|
|
|
68
|
+
| `OPENCLI_DAEMON_PORT` | 19825 | Daemon listen port |
|
|
69
|
+
| `OPENCLI_BROWSER_CONNECT_TIMEOUT` | 30 | Browser connection timeout (sec) |
|
|
70
|
+
| `OPENCLI_BROWSER_COMMAND_TIMEOUT` | 45 | Command execution timeout (sec) |
|
|
71
|
+
| `OPENCLI_BROWSER_EXPLORE_TIMEOUT` | 120 | Explore timeout (sec) |
|
|
72
|
+
| `OPENCLI_VERBOSE` | — | Show daemon/extension logs |
|
|
73
|
+
|
|
74
|
+
## Troubleshooting
|
|
75
|
+
|
|
76
|
+
| Issue | Solution |
|
|
77
|
+
|-------|----------|
|
|
78
|
+
| `npx not found` | Install Node.js: `brew install node` |
|
|
79
|
+
| `Extension not connected` | 1) Chrome must be open 2) Install opencli Browser Bridge extension |
|
|
80
|
+
| `Target page context` error | Add `navigate:` step before `evaluate:` in YAML |
|
|
81
|
+
| Empty table data | Check if evaluate returns correct data path |
|
|
82
|
+
| Daemon issues | `curl localhost:19825/status` to check, `curl localhost:19825/logs` for extension logs |
|