@jackwener/opencli 1.0.1 → 1.0.4
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/.github/workflows/build-extension.yml +80 -0
- package/.github/workflows/ci.yml +6 -6
- package/.github/workflows/docs.yml +52 -0
- package/.github/workflows/e2e-headed.yml +2 -2
- package/.github/workflows/pkg-pr-new.yml +2 -2
- package/.github/workflows/release.yml +2 -5
- package/.github/workflows/security.yml +2 -2
- package/CDP.md +1 -1
- package/CDP.zh-CN.md +1 -1
- package/README.md +42 -34
- package/README.zh-CN.md +42 -34
- package/SKILL.md +3 -5
- package/dist/browser/cdp.d.ts +42 -0
- package/dist/browser/cdp.js +339 -0
- package/dist/browser/daemon-client.d.ts +3 -1
- package/dist/browser/daemon-client.js +4 -0
- package/dist/browser/dom-helpers.d.ts +20 -0
- package/dist/browser/dom-helpers.js +109 -0
- package/dist/browser/index.d.ts +3 -0
- package/dist/browser/index.js +4 -0
- package/dist/browser/mcp.d.ts +1 -0
- package/dist/browser/mcp.js +10 -5
- package/dist/browser/page.d.ts +7 -0
- package/dist/browser/page.js +39 -123
- package/dist/browser/utils.d.ts +10 -0
- package/dist/browser/utils.js +27 -0
- package/dist/browser.test.js +49 -1
- package/dist/build-manifest.js +3 -1
- package/dist/build-manifest.test.js +34 -0
- package/dist/capabilityRouting.d.ts +2 -0
- package/dist/capabilityRouting.js +30 -0
- package/dist/capabilityRouting.test.d.ts +1 -0
- package/dist/capabilityRouting.test.js +42 -0
- package/dist/chaoxing.d.ts +58 -0
- package/dist/chaoxing.js +225 -0
- package/dist/chaoxing.test.d.ts +1 -0
- package/dist/chaoxing.test.js +45 -0
- package/dist/cli-manifest.json +885 -48
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +234 -0
- package/dist/clis/antigravity/serve.d.ts +14 -0
- package/dist/clis/antigravity/serve.js +263 -0
- package/dist/clis/bilibili/download.js +4 -14
- package/dist/clis/boss/chatlist.d.ts +1 -0
- package/dist/clis/boss/chatlist.js +50 -0
- package/dist/clis/boss/chatmsg.d.ts +1 -0
- package/dist/clis/boss/chatmsg.js +73 -0
- package/dist/clis/boss/resume.d.ts +1 -0
- package/dist/clis/boss/resume.js +249 -0
- package/dist/clis/boss/send.d.ts +1 -0
- package/dist/clis/boss/send.js +176 -0
- package/dist/clis/chaoxing/assignments.d.ts +1 -0
- package/dist/clis/chaoxing/assignments.js +74 -0
- package/dist/clis/chaoxing/exams.d.ts +1 -0
- package/dist/clis/chaoxing/exams.js +74 -0
- package/dist/clis/chatgpt/ask.js +15 -14
- package/dist/clis/chatgpt/ax.d.ts +1 -0
- package/dist/clis/chatgpt/ax.js +78 -0
- package/dist/clis/chatgpt/read.js +5 -6
- package/dist/clis/hf/top.d.ts +1 -0
- package/dist/clis/hf/top.js +119 -0
- package/dist/clis/jike/comment.d.ts +1 -0
- package/dist/clis/jike/comment.js +107 -0
- package/dist/clis/jike/create.d.ts +1 -0
- package/dist/clis/jike/create.js +106 -0
- package/dist/clis/jike/feed.d.ts +1 -0
- package/dist/clis/jike/feed.js +67 -0
- package/dist/clis/jike/like.d.ts +1 -0
- package/dist/clis/jike/like.js +61 -0
- package/dist/clis/jike/notifications.d.ts +1 -0
- package/dist/clis/jike/notifications.js +169 -0
- package/dist/clis/jike/post.yaml +58 -0
- package/dist/clis/jike/repost.d.ts +1 -0
- package/dist/clis/jike/repost.js +103 -0
- package/dist/clis/jike/search.d.ts +1 -0
- package/dist/clis/jike/search.js +67 -0
- package/dist/clis/jike/shared.d.ts +19 -0
- package/dist/clis/jike/shared.js +25 -0
- package/dist/clis/jike/topic.yaml +52 -0
- package/dist/clis/jike/user.yaml +51 -0
- package/dist/clis/smzdm/search.js +28 -39
- package/dist/clis/stackoverflow/bounties.yaml +29 -0
- package/dist/clis/stackoverflow/hot.yaml +28 -0
- package/dist/clis/stackoverflow/search.yaml +32 -0
- package/dist/clis/stackoverflow/unanswered.yaml +28 -0
- package/dist/clis/twitter/download.js +6 -16
- package/dist/clis/twitter/post.js +9 -2
- package/dist/clis/twitter/search.js +14 -33
- package/dist/clis/xiaohongshu/download.d.ts +1 -1
- package/dist/clis/xiaohongshu/download.js +4 -4
- package/dist/clis/zhihu/download.js +3 -3
- package/dist/doctor.d.ts +7 -0
- package/dist/doctor.js +16 -0
- package/dist/download/index.d.ts +12 -8
- package/dist/download/index.js +11 -3
- package/dist/download/index.test.d.ts +1 -0
- package/dist/download/index.test.js +14 -0
- package/dist/engine.js +25 -14
- package/dist/explore.d.ts +1 -0
- package/dist/explore.js +48 -103
- package/dist/generate.js +1 -0
- package/dist/interceptor.js +3 -2
- package/dist/main.js +4 -193
- package/dist/output.d.ts +2 -1
- package/dist/output.js +3 -1
- package/dist/pipeline/executor.test.js +1 -0
- package/dist/pipeline/steps/download.js +14 -18
- package/dist/registry.d.ts +4 -3
- package/dist/registry.js +5 -2
- package/dist/runtime.d.ts +4 -1
- package/dist/runtime.js +2 -2
- package/dist/scripts/framework.d.ts +4 -0
- package/dist/scripts/framework.js +21 -0
- package/dist/scripts/interact.d.ts +4 -0
- package/dist/scripts/interact.js +20 -0
- package/dist/scripts/store.d.ts +9 -0
- package/dist/scripts/store.js +44 -0
- package/dist/synthesize.js +1 -1
- package/dist/types.d.ts +12 -0
- package/dist/verify.d.ts +6 -1
- package/dist/verify.js +54 -2
- package/docs/.vitepress/config.mts +193 -0
- package/docs/adapters/browser/apple-podcasts.md +28 -0
- package/docs/adapters/browser/bbc.md +26 -0
- package/docs/adapters/browser/bilibili.md +38 -0
- package/docs/adapters/browser/boss.md +28 -0
- package/docs/adapters/browser/coupang.md +28 -0
- package/docs/adapters/browser/ctrip.md +27 -0
- package/docs/adapters/browser/github.md +26 -0
- package/docs/adapters/browser/hackernews.md +26 -0
- package/docs/adapters/browser/linkedin.md +27 -0
- package/docs/adapters/browser/reddit.md +41 -0
- package/docs/adapters/browser/reuters.md +27 -0
- package/docs/adapters/browser/smzdm.md +27 -0
- package/docs/adapters/browser/twitter.md +47 -0
- package/docs/adapters/browser/v2ex.md +32 -0
- package/docs/adapters/browser/weibo.md +27 -0
- package/docs/adapters/browser/xiaohongshu.md +32 -0
- package/docs/adapters/browser/xiaoyuzhou.md +28 -0
- package/docs/adapters/browser/xueqiu.md +32 -0
- package/docs/adapters/browser/yahoo-finance.md +26 -0
- package/docs/adapters/browser/youtube.md +29 -0
- package/docs/adapters/browser/zhihu.md +30 -0
- package/docs/adapters/desktop/antigravity.md +46 -0
- package/docs/adapters/desktop/chatgpt.md +43 -0
- package/docs/adapters/desktop/chatwise.md +38 -0
- package/docs/adapters/desktop/codex.md +32 -0
- package/docs/adapters/desktop/cursor.md +33 -0
- package/docs/adapters/desktop/discord.md +28 -0
- package/docs/adapters/desktop/feishu.md +20 -0
- package/docs/adapters/desktop/neteasemusic.md +31 -0
- package/docs/adapters/desktop/notion.md +29 -0
- package/docs/adapters/desktop/wechat.md +28 -0
- package/docs/adapters/index.md +49 -0
- package/docs/advanced/cdp.md +103 -0
- package/docs/advanced/download.md +63 -0
- package/docs/advanced/electron.md +125 -0
- package/docs/advanced/remote-chrome.md +72 -0
- package/docs/developer/ai-workflow.md +66 -0
- package/docs/developer/architecture.md +90 -0
- package/docs/developer/contributing.md +136 -0
- package/docs/developer/testing.md +237 -0
- package/docs/developer/ts-adapter.md +87 -0
- package/docs/developer/yaml-adapter.md +108 -0
- package/docs/guide/browser-bridge.md +38 -0
- package/docs/guide/getting-started.md +56 -0
- package/docs/guide/installation.md +37 -0
- package/docs/guide/troubleshooting.md +56 -0
- package/docs/index.md +35 -0
- package/docs/zh/adapters/index.md +5 -0
- package/docs/zh/advanced/cdp.md +3 -0
- package/docs/zh/developer/contributing.md +24 -0
- package/docs/zh/guide/browser-bridge.md +25 -0
- package/docs/zh/guide/getting-started.md +40 -0
- package/docs/zh/guide/installation.md +37 -0
- package/docs/zh/index.md +29 -0
- package/extension/dist/background.js +386 -438
- package/extension/manifest.json +2 -2
- package/extension/package-lock.json +1156 -0
- package/extension/src/background.test.ts +151 -0
- package/extension/src/background.ts +124 -53
- package/extension/src/protocol.ts +3 -1
- package/package.json +7 -3
- package/src/browser/cdp.ts +367 -0
- package/src/browser/daemon-client.ts +7 -1
- package/src/browser/dom-helpers.ts +116 -0
- package/src/browser/index.ts +4 -0
- package/src/browser/mcp.ts +14 -6
- package/src/browser/page.ts +47 -124
- package/src/browser/utils.ts +27 -0
- package/src/browser.test.ts +56 -0
- package/src/build-manifest.test.ts +36 -0
- package/src/build-manifest.ts +2 -1
- package/src/capabilityRouting.test.ts +47 -0
- package/src/capabilityRouting.ts +28 -0
- package/src/chaoxing.test.ts +53 -0
- package/src/chaoxing.ts +268 -0
- package/src/cli.ts +205 -0
- package/src/clis/antigravity/SKILL.md +5 -0
- package/src/clis/antigravity/serve.ts +329 -0
- package/src/clis/bilibili/download.ts +4 -15
- package/src/clis/boss/chatlist.ts +50 -0
- package/src/clis/boss/chatmsg.ts +70 -0
- package/src/clis/boss/resume.ts +262 -0
- package/src/clis/boss/send.ts +193 -0
- package/src/clis/chaoxing/README.md +36 -0
- package/src/clis/chaoxing/README.zh-CN.md +35 -0
- package/src/clis/chaoxing/assignments.ts +88 -0
- package/src/clis/chaoxing/exams.ts +88 -0
- package/src/clis/chatgpt/ask.ts +14 -15
- package/src/clis/chatgpt/ax.ts +81 -0
- package/src/clis/chatgpt/read.ts +5 -7
- package/src/clis/hf/top.ts +141 -0
- package/src/clis/jike/comment.ts +113 -0
- package/src/clis/jike/create.ts +113 -0
- package/src/clis/jike/feed.ts +74 -0
- package/src/clis/jike/like.ts +65 -0
- package/src/clis/jike/notifications.ts +185 -0
- package/src/clis/jike/post.yaml +58 -0
- package/src/clis/jike/repost.ts +114 -0
- package/src/clis/jike/search.ts +74 -0
- package/src/clis/jike/shared.ts +36 -0
- package/src/clis/jike/topic.yaml +52 -0
- package/src/clis/jike/user.yaml +51 -0
- package/src/clis/smzdm/search.ts +30 -39
- package/src/clis/stackoverflow/bounties.yaml +29 -0
- package/src/clis/stackoverflow/hot.yaml +28 -0
- package/src/clis/stackoverflow/search.yaml +32 -0
- package/src/clis/stackoverflow/unanswered.yaml +28 -0
- package/src/clis/twitter/download.ts +6 -17
- package/src/clis/twitter/post.ts +9 -2
- package/src/clis/twitter/search.ts +15 -33
- package/src/clis/xiaohongshu/download.ts +4 -4
- package/src/clis/zhihu/download.ts +3 -3
- package/src/doctor.ts +18 -2
- package/src/download/index.test.ts +16 -0
- package/src/download/index.ts +22 -4
- package/src/engine.ts +20 -13
- package/src/explore.ts +54 -103
- package/src/generate.ts +1 -0
- package/src/interceptor.ts +3 -2
- package/src/main.ts +4 -180
- package/src/output.ts +15 -13
- package/src/pipeline/executor.test.ts +1 -0
- package/src/pipeline/steps/download.ts +14 -17
- package/src/registry.ts +9 -5
- package/src/runtime.ts +3 -2
- package/src/scripts/framework.ts +20 -0
- package/src/scripts/interact.ts +22 -0
- package/src/scripts/store.ts +40 -0
- package/src/synthesize.ts +1 -1
- package/src/types.ts +9 -0
- package/src/verify.ts +64 -3
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Reddit
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `reddit.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli reddit hot` | |
|
|
10
|
+
| `opencli reddit frontpage` | |
|
|
11
|
+
| `opencli reddit popular` | |
|
|
12
|
+
| `opencli reddit search` | |
|
|
13
|
+
| `opencli reddit subreddit` | |
|
|
14
|
+
| `opencli reddit read` | |
|
|
15
|
+
| `opencli reddit user` | |
|
|
16
|
+
| `opencli reddit user-posts` | |
|
|
17
|
+
| `opencli reddit user-comments` | |
|
|
18
|
+
| `opencli reddit upvote` | |
|
|
19
|
+
| `opencli reddit save` | |
|
|
20
|
+
| `opencli reddit comment` | |
|
|
21
|
+
| `opencli reddit subscribe` | |
|
|
22
|
+
| `opencli reddit saved` | |
|
|
23
|
+
| `opencli reddit upvoted` | |
|
|
24
|
+
|
|
25
|
+
## Usage Examples
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Quick start
|
|
29
|
+
opencli reddit hot --limit 5
|
|
30
|
+
|
|
31
|
+
# JSON output
|
|
32
|
+
opencli reddit hot -f json
|
|
33
|
+
|
|
34
|
+
# Verbose mode
|
|
35
|
+
opencli reddit hot -v
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Prerequisites
|
|
39
|
+
|
|
40
|
+
- Chrome running and **logged into** reddit.com
|
|
41
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Reuters
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `reuters.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli reuters search` | |
|
|
10
|
+
|
|
11
|
+
## Usage Examples
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Quick start
|
|
15
|
+
opencli reuters search --limit 5
|
|
16
|
+
|
|
17
|
+
# JSON output
|
|
18
|
+
opencli reuters search -f json
|
|
19
|
+
|
|
20
|
+
# Verbose mode
|
|
21
|
+
opencli reuters search -v
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Prerequisites
|
|
25
|
+
|
|
26
|
+
- Chrome running and **logged into** reuters.com
|
|
27
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# SMZDM (什么值得买)
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `smzdm.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli smzdm search` | |
|
|
10
|
+
|
|
11
|
+
## Usage Examples
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Quick start
|
|
15
|
+
opencli smzdm search --limit 5
|
|
16
|
+
|
|
17
|
+
# JSON output
|
|
18
|
+
opencli smzdm search -f json
|
|
19
|
+
|
|
20
|
+
# Verbose mode
|
|
21
|
+
opencli smzdm search -v
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Prerequisites
|
|
25
|
+
|
|
26
|
+
- Chrome running and **logged into** smzdm.com
|
|
27
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Twitter / X
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `twitter.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli twitter trending` | |
|
|
10
|
+
| `opencli twitter bookmarks` | |
|
|
11
|
+
| `opencli twitter profile` | |
|
|
12
|
+
| `opencli twitter search` | |
|
|
13
|
+
| `opencli twitter timeline` | |
|
|
14
|
+
| `opencli twitter thread` | |
|
|
15
|
+
| `opencli twitter following` | |
|
|
16
|
+
| `opencli twitter followers` | |
|
|
17
|
+
| `opencli twitter notifications` | |
|
|
18
|
+
| `opencli twitter post` | |
|
|
19
|
+
| `opencli twitter reply` | |
|
|
20
|
+
| `opencli twitter delete` | |
|
|
21
|
+
| `opencli twitter like` | |
|
|
22
|
+
| `opencli twitter article` | |
|
|
23
|
+
| `opencli twitter follow` | |
|
|
24
|
+
| `opencli twitter unfollow` | |
|
|
25
|
+
| `opencli twitter bookmark` | |
|
|
26
|
+
| `opencli twitter unbookmark` | |
|
|
27
|
+
| `opencli twitter download` | |
|
|
28
|
+
| `opencli twitter accept` | |
|
|
29
|
+
| `opencli twitter reply-dm` | |
|
|
30
|
+
|
|
31
|
+
## Usage Examples
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Quick start
|
|
35
|
+
opencli twitter trending --limit 5
|
|
36
|
+
|
|
37
|
+
# JSON output
|
|
38
|
+
opencli twitter trending -f json
|
|
39
|
+
|
|
40
|
+
# Verbose mode
|
|
41
|
+
opencli twitter trending -v
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Prerequisites
|
|
45
|
+
|
|
46
|
+
- Chrome running and **logged into** twitter.com
|
|
47
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# V2EX
|
|
2
|
+
|
|
3
|
+
**Mode**: 🌐 / 🔐 · **Domain**: `v2ex.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli v2ex hot` | |
|
|
10
|
+
| `opencli v2ex latest` | |
|
|
11
|
+
| `opencli v2ex topic` | |
|
|
12
|
+
| `opencli v2ex daily` | |
|
|
13
|
+
| `opencli v2ex me` | |
|
|
14
|
+
| `opencli v2ex notifications` | |
|
|
15
|
+
|
|
16
|
+
## Usage Examples
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Quick start
|
|
20
|
+
opencli v2ex hot --limit 5
|
|
21
|
+
|
|
22
|
+
# JSON output
|
|
23
|
+
opencli v2ex hot -f json
|
|
24
|
+
|
|
25
|
+
# Verbose mode
|
|
26
|
+
opencli v2ex hot -v
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Prerequisites
|
|
30
|
+
|
|
31
|
+
- Chrome running and **logged into** v2ex.com
|
|
32
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Weibo (微博)
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `weibo.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli weibo hot` | |
|
|
10
|
+
|
|
11
|
+
## Usage Examples
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Quick start
|
|
15
|
+
opencli weibo hot --limit 5
|
|
16
|
+
|
|
17
|
+
# JSON output
|
|
18
|
+
opencli weibo hot -f json
|
|
19
|
+
|
|
20
|
+
# Verbose mode
|
|
21
|
+
opencli weibo hot -v
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Prerequisites
|
|
25
|
+
|
|
26
|
+
- Chrome running and **logged into** weibo.com
|
|
27
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Xiaohongshu (小红书)
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `xiaohongshu.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli xiaohongshu search` | |
|
|
10
|
+
| `opencli xiaohongshu notifications` | |
|
|
11
|
+
| `opencli xiaohongshu feed` | |
|
|
12
|
+
| `opencli xiaohongshu me` | |
|
|
13
|
+
| `opencli xiaohongshu user` | |
|
|
14
|
+
| `opencli xiaohongshu download` | |
|
|
15
|
+
|
|
16
|
+
## Usage Examples
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Quick start
|
|
20
|
+
opencli xiaohongshu search --limit 5
|
|
21
|
+
|
|
22
|
+
# JSON output
|
|
23
|
+
opencli xiaohongshu search -f json
|
|
24
|
+
|
|
25
|
+
# Verbose mode
|
|
26
|
+
opencli xiaohongshu search -v
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Prerequisites
|
|
30
|
+
|
|
31
|
+
- Chrome running and **logged into** xiaohongshu.com
|
|
32
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Xiaoyuzhou (小宇宙)
|
|
2
|
+
|
|
3
|
+
**Mode**: 🌐 Public · **Domain**: `xiaoyuzhou.fm`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli xiaoyuzhou podcast` | |
|
|
10
|
+
| `opencli xiaoyuzhou podcast-episodes` | |
|
|
11
|
+
| `opencli xiaoyuzhou episode` | |
|
|
12
|
+
|
|
13
|
+
## Usage Examples
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Quick start
|
|
17
|
+
opencli xiaoyuzhou podcast --limit 5
|
|
18
|
+
|
|
19
|
+
# JSON output
|
|
20
|
+
opencli xiaoyuzhou podcast -f json
|
|
21
|
+
|
|
22
|
+
# Verbose mode
|
|
23
|
+
opencli xiaoyuzhou podcast -v
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Prerequisites
|
|
27
|
+
|
|
28
|
+
- No browser required — uses public API
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Xueqiu (雪球)
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `xueqiu.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli xueqiu feed` | |
|
|
10
|
+
| `opencli xueqiu hot-stock` | |
|
|
11
|
+
| `opencli xueqiu hot` | |
|
|
12
|
+
| `opencli xueqiu search` | |
|
|
13
|
+
| `opencli xueqiu stock` | |
|
|
14
|
+
| `opencli xueqiu watchlist` | |
|
|
15
|
+
|
|
16
|
+
## Usage Examples
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Quick start
|
|
20
|
+
opencli xueqiu feed --limit 5
|
|
21
|
+
|
|
22
|
+
# JSON output
|
|
23
|
+
opencli xueqiu feed -f json
|
|
24
|
+
|
|
25
|
+
# Verbose mode
|
|
26
|
+
opencli xueqiu feed -v
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Prerequisites
|
|
30
|
+
|
|
31
|
+
- Chrome running and **logged into** xueqiu.com
|
|
32
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Yahoo Finance
|
|
2
|
+
|
|
3
|
+
**Mode**: 🌐 Public · **Domain**: `finance.yahoo.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli yahoo-finance quote` | |
|
|
10
|
+
|
|
11
|
+
## Usage Examples
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Quick start
|
|
15
|
+
opencli yahoo-finance quote --limit 5
|
|
16
|
+
|
|
17
|
+
# JSON output
|
|
18
|
+
opencli yahoo-finance quote -f json
|
|
19
|
+
|
|
20
|
+
# Verbose mode
|
|
21
|
+
opencli yahoo-finance quote -v
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Prerequisites
|
|
25
|
+
|
|
26
|
+
- No browser required — uses public API
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# YouTube
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `youtube.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli youtube search` | |
|
|
10
|
+
| `opencli youtube video` | |
|
|
11
|
+
| `opencli youtube transcript` | |
|
|
12
|
+
|
|
13
|
+
## Usage Examples
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Quick start
|
|
17
|
+
opencli youtube search --limit 5
|
|
18
|
+
|
|
19
|
+
# JSON output
|
|
20
|
+
opencli youtube search -f json
|
|
21
|
+
|
|
22
|
+
# Verbose mode
|
|
23
|
+
opencli youtube search -v
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Prerequisites
|
|
27
|
+
|
|
28
|
+
- Chrome running and **logged into** youtube.com
|
|
29
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Zhihu
|
|
2
|
+
|
|
3
|
+
**Mode**: 🔐 Browser · **Domain**: `zhihu.com`
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
| Command | Description |
|
|
8
|
+
|---------|-------------|
|
|
9
|
+
| `opencli zhihu hot` | |
|
|
10
|
+
| `opencli zhihu search` | |
|
|
11
|
+
| `opencli zhihu question` | |
|
|
12
|
+
| `opencli zhihu download` | |
|
|
13
|
+
|
|
14
|
+
## Usage Examples
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
# Quick start
|
|
18
|
+
opencli zhihu hot --limit 5
|
|
19
|
+
|
|
20
|
+
# JSON output
|
|
21
|
+
opencli zhihu hot -f json
|
|
22
|
+
|
|
23
|
+
# Verbose mode
|
|
24
|
+
opencli zhihu hot -v
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Prerequisites
|
|
28
|
+
|
|
29
|
+
- Chrome running and **logged into** zhihu.com
|
|
30
|
+
- [Browser Bridge extension](/guide/browser-bridge) installed
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Antigravity
|
|
2
|
+
|
|
3
|
+
🔥 **CLI All Electron Apps! The Most Powerful Update Has Arrived!** 🔥
|
|
4
|
+
|
|
5
|
+
Turn your local Antigravity desktop application into a programmable AI node via Chrome DevTools Protocol (CDP). This allows you to compose complex LLM workflows entirely through the terminal by manipulating the actual UI natively, bypassing any API restrictions.
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
Start the Antigravity desktop app with the Chrome DevTools `remote-debugging-port` flag:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Start Antigravity in the background
|
|
13
|
+
/Applications/Antigravity.app/Contents/MacOS/Electron \
|
|
14
|
+
--remote-debugging-port=9224
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
> Depending on your installation, the executable might be named differently, e.g., `Antigravity` instead of `Electron`.
|
|
18
|
+
|
|
19
|
+
Then set the target port:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9224"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Commands
|
|
26
|
+
|
|
27
|
+
### `opencli antigravity status`
|
|
28
|
+
Check the Chromium CDP connection. Returns the current window title and active internal URL.
|
|
29
|
+
|
|
30
|
+
### `opencli antigravity send <message>`
|
|
31
|
+
Send a text prompt to the AI. Automatically locates the Lexical editor input box, types the prompt securely, and hits Enter.
|
|
32
|
+
|
|
33
|
+
### `opencli antigravity read`
|
|
34
|
+
Scrape the entire current conversation history block as pure text.
|
|
35
|
+
|
|
36
|
+
### `opencli antigravity new`
|
|
37
|
+
Click the "New Conversation" button to instantly clear the UI state and start fresh.
|
|
38
|
+
|
|
39
|
+
### `opencli antigravity extract-code`
|
|
40
|
+
Extract any multi-line code blocks from the current conversation view. Ideal for automated script extraction (e.g. `opencli antigravity extract-code > script.sh`).
|
|
41
|
+
|
|
42
|
+
### `opencli antigravity model <name>`
|
|
43
|
+
Quickly target and switch the active LLM engine. Example: `opencli antigravity model claude` or `opencli antigravity model gemini`.
|
|
44
|
+
|
|
45
|
+
### `opencli antigravity watch`
|
|
46
|
+
A long-running, streaming process that continuously polls the Antigravity UI for chat updates and outputs them in real-time to standard output.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# ChatGPT
|
|
2
|
+
|
|
3
|
+
Control the **ChatGPT macOS Desktop App** directly from the terminal. OpenCLI supports two automation approaches for ChatGPT.
|
|
4
|
+
|
|
5
|
+
## Approach 1: AppleScript (Default, No Setup)
|
|
6
|
+
|
|
7
|
+
The current built-in commands use native AppleScript automation — no extra launch flags needed.
|
|
8
|
+
|
|
9
|
+
### Prerequisites
|
|
10
|
+
1. Install the official [ChatGPT Desktop App](https://openai.com/chatgpt/mac/) from OpenAI.
|
|
11
|
+
2. Grant **Accessibility permissions** to your terminal app in **System Settings → Privacy & Security → Accessibility**.
|
|
12
|
+
|
|
13
|
+
### Commands
|
|
14
|
+
- `opencli chatgpt status`: Check if the ChatGPT app is currently running.
|
|
15
|
+
- `opencli chatgpt new`: Activate ChatGPT and press `Cmd+N` to start a new conversation.
|
|
16
|
+
- `opencli chatgpt send "message"`: Copy your message to clipboard, activate ChatGPT, paste, and submit.
|
|
17
|
+
- `opencli chatgpt read`: Copy the last AI response via `Cmd+Shift+C` and return it as text.
|
|
18
|
+
|
|
19
|
+
## Approach 2: CDP (Advanced, Electron Debug Mode)
|
|
20
|
+
|
|
21
|
+
ChatGPT Desktop is also an Electron app and can be launched with a remote debugging port:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
/Applications/ChatGPT.app/Contents/MacOS/ChatGPT \
|
|
25
|
+
--remote-debugging-port=9224
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9224"
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
> The CDP approach enables future advanced commands like DOM inspection, model switching, and code extraction.
|
|
33
|
+
|
|
34
|
+
## How It Works
|
|
35
|
+
|
|
36
|
+
- **AppleScript mode**: Uses `osascript` and `pbcopy`/`pbpaste` for clipboard-based text transfer.
|
|
37
|
+
- **CDP mode**: Connects via Chrome DevTools Protocol to the Electron renderer process.
|
|
38
|
+
|
|
39
|
+
## Limitations
|
|
40
|
+
|
|
41
|
+
- macOS only (AppleScript dependency)
|
|
42
|
+
- AppleScript mode requires Accessibility permissions
|
|
43
|
+
- `read` command copies the last response — earlier messages need manual scroll
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# ChatWise
|
|
2
|
+
|
|
3
|
+
Control the **ChatWise Desktop App** from the terminal via Chrome DevTools Protocol (CDP). ChatWise is an Electron-based multi-LLM client supporting GPT-4, Claude, Gemini, and more.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
1. Install [ChatWise](https://chatwise.app/).
|
|
8
|
+
2. Launch with remote debugging port:
|
|
9
|
+
```bash
|
|
10
|
+
/Applications/ChatWise.app/Contents/MacOS/ChatWise \
|
|
11
|
+
--remote-debugging-port=9228
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Setup
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9228"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Commands
|
|
21
|
+
|
|
22
|
+
### Diagnostics
|
|
23
|
+
- `opencli chatwise status`: Check CDP connection status.
|
|
24
|
+
- `opencli chatwise screenshot`: Export DOM + accessibility snapshot.
|
|
25
|
+
|
|
26
|
+
### Chat
|
|
27
|
+
- `opencli chatwise new`: Start a new conversation (`Cmd+N`).
|
|
28
|
+
- `opencli chatwise send "message"`: Send a message to the active chat.
|
|
29
|
+
- `opencli chatwise read`: Read the current conversation.
|
|
30
|
+
- `opencli chatwise ask "prompt"`: Send + wait for response + return it (one-shot).
|
|
31
|
+
|
|
32
|
+
### AI Features
|
|
33
|
+
- `opencli chatwise model`: Get the current AI model.
|
|
34
|
+
- `opencli chatwise model gpt-4`: Switch to a different model.
|
|
35
|
+
|
|
36
|
+
### Organization
|
|
37
|
+
- `opencli chatwise history`: List conversations from the sidebar.
|
|
38
|
+
- `opencli chatwise export`: Export conversation as Markdown.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Codex
|
|
2
|
+
|
|
3
|
+
Control the **OpenAI Codex Desktop App** headless or headfully via Chrome DevTools Protocol (CDP). Because Codex is built on Electron, OpenCLI can directly drive its internal UI, automate slash commands, and manipulate its AI agent threads.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
1. You must have the official OpenAI Codex app installed.
|
|
8
|
+
2. Launch it via the terminal and expose the remote debugging port:
|
|
9
|
+
```bash
|
|
10
|
+
# macOS
|
|
11
|
+
/Applications/Codex.app/Contents/MacOS/Codex --remote-debugging-port=9222
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Setup
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
export OPENCLI_CODEX_CDP_ENDPOINT="http://127.0.0.1:9222"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Commands
|
|
21
|
+
|
|
22
|
+
### Diagnostics
|
|
23
|
+
- `opencli codex status`: Checks connection and reads the current active window URL/title.
|
|
24
|
+
- `opencli codex dump`: Dumps the full UI DOM and Accessibility tree into `/tmp`.
|
|
25
|
+
|
|
26
|
+
### Agent Manipulation
|
|
27
|
+
- `opencli codex new`: Simulates `Cmd+N` to start a completely fresh and isolated Git Worktree thread context.
|
|
28
|
+
- `opencli codex send "message"`: Robustly finds the active Thread Composer and injects your text.
|
|
29
|
+
- *Pro-tip*: You can trigger internal shortcuts, e.g., `opencli codex send "/review"`.
|
|
30
|
+
- `opencli codex read`: Extracts the entire current thread history and AI reasoning logs.
|
|
31
|
+
- `opencli codex extract-diff`: Automatically scrapes any visual Patch chunks and Code Diffs.
|
|
32
|
+
- `opencli codex model`: Get the currently active AI model.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Cursor
|
|
2
|
+
|
|
3
|
+
Control the **Cursor IDE** from the terminal via Chrome DevTools Protocol (CDP). Since Cursor is built on Electron (VS Code fork), OpenCLI can drive its internal UI, automate Composer interactions, and manipulate chat sessions.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
1. Install [Cursor](https://cursor.sh/).
|
|
8
|
+
2. Launch it with the remote debugging port:
|
|
9
|
+
```bash
|
|
10
|
+
/Applications/Cursor.app/Contents/MacOS/Cursor --remote-debugging-port=9226
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Setup
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9226"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Commands
|
|
20
|
+
|
|
21
|
+
### Diagnostics
|
|
22
|
+
- `opencli cursor status`: Check CDP connection status.
|
|
23
|
+
- `opencli cursor dump`: Dump the full DOM and Accessibility snapshot to `/tmp/cursor-dom.html` and `/tmp/cursor-snapshot.json`.
|
|
24
|
+
|
|
25
|
+
### Chat Manipulation
|
|
26
|
+
- `opencli cursor new`: Press `Cmd+N` to start a new file/tab.
|
|
27
|
+
- `opencli cursor send "message"`: Inject text into the active Composer/Chat input and submit.
|
|
28
|
+
- `opencli cursor read`: Extract the full conversation history from the active chat panel.
|
|
29
|
+
|
|
30
|
+
### AI Features
|
|
31
|
+
- `opencli cursor composer "prompt"`: Open the Composer panel (`Cmd+I`) and send a prompt for inline AI editing.
|
|
32
|
+
- `opencli cursor model`: Get the currently active AI model (e.g., `claude-4.5-sonnet`).
|
|
33
|
+
- `opencli cursor extract-code`: Extract all code blocks from the current conversation.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Discord
|
|
2
|
+
|
|
3
|
+
Control the **Discord Desktop App** from the terminal via Chrome DevTools Protocol (CDP).
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
Launch with remote debugging port:
|
|
8
|
+
```bash
|
|
9
|
+
/Applications/Discord.app/Contents/MacOS/Discord --remote-debugging-port=9232
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## Setup
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9232"
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Commands
|
|
19
|
+
|
|
20
|
+
| Command | Description |
|
|
21
|
+
|---------|-------------|
|
|
22
|
+
| `opencli discord status` | Check CDP connection |
|
|
23
|
+
| `opencli discord send "message"` | Send a message in the active channel |
|
|
24
|
+
| `opencli discord read` | Read recent messages |
|
|
25
|
+
| `opencli discord channels` | List channels in the current server |
|
|
26
|
+
| `opencli discord servers` | List all joined servers |
|
|
27
|
+
| `opencli discord search "query"` | Search messages (Cmd+F) |
|
|
28
|
+
| `opencli discord members` | List online members |
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Feishu (飞书/Lark)
|
|
2
|
+
|
|
3
|
+
Control **Feishu/Lark Desktop** from the terminal via AppleScript.
|
|
4
|
+
|
|
5
|
+
> **Note:** Feishu uses a custom `Lark Framework` (Chromium-based but NOT Electron). CDP is not available, so this adapter uses AppleScript + clipboard.
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
1. Feishu/Lark must be running and logged in
|
|
10
|
+
2. Terminal must have **Accessibility permission**
|
|
11
|
+
|
|
12
|
+
## Commands
|
|
13
|
+
|
|
14
|
+
| Command | Description |
|
|
15
|
+
|---------|-------------|
|
|
16
|
+
| `opencli feishu status` | Check if Feishu/Lark is running |
|
|
17
|
+
| `opencli feishu send "msg"` | Send message in active chat (paste + Enter) |
|
|
18
|
+
| `opencli feishu read` | Read current chat (Cmd+A → Cmd+C) |
|
|
19
|
+
| `opencli feishu search "query"` | Global search (Cmd+K) |
|
|
20
|
+
| `opencli feishu new` | New message/document (Cmd+N) |
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# NeteaseMusic (网易云音乐)
|
|
2
|
+
|
|
3
|
+
Control **NeteaseMusic** (网易云音乐) from the terminal via Chrome DevTools Protocol (CDP). The app uses Chromium Embedded Framework (CEF).
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
Launch with remote debugging port:
|
|
8
|
+
```bash
|
|
9
|
+
/Applications/NeteaseMusic.app/Contents/MacOS/NeteaseMusic --remote-debugging-port=9234
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## Setup
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9234"
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Commands
|
|
19
|
+
|
|
20
|
+
| Command | Description |
|
|
21
|
+
|---------|-------------|
|
|
22
|
+
| `opencli neteasemusic status` | Check CDP connection |
|
|
23
|
+
| `opencli neteasemusic playing` | Current song info (title, artist, album) |
|
|
24
|
+
| `opencli neteasemusic play` | Play / Pause toggle |
|
|
25
|
+
| `opencli neteasemusic next` | Skip to next song |
|
|
26
|
+
| `opencli neteasemusic prev` | Go to previous song |
|
|
27
|
+
| `opencli neteasemusic search "query"` | Search songs, artists |
|
|
28
|
+
| `opencli neteasemusic playlist` | Show current playback queue |
|
|
29
|
+
| `opencli neteasemusic like` | Like / unlike current song |
|
|
30
|
+
| `opencli neteasemusic lyrics` | Get lyrics of current song |
|
|
31
|
+
| `opencli neteasemusic volume [0-100]` | Get or set volume |
|