Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,7 @@ To load the source Browser Bridge extension:
| **xiaohongshu** | `search` `note` `comments` `feed` `user` `download` `publish` `notifications` `creator-notes` `creator-notes-summary` `creator-note-detail` `creator-profile` `creator-stats` |
| **rednote** | `search` `note` `comments` `user` `download` `feed` `notifications` |
| **bilibili** | `hot` `search` `history` `feed` `ranking` `download` `comments` `dynamic` `favorite` `following` `me` `subtitle` `video` `user-videos` |
| **douyu** | `search` `watch` `follow` `unfollow` `danmaku` `daily-task` |
| **tieba** | `hot` `posts` `search` `read` |
| **hupu** | `hot` `search` `detail` `mentions` `reply` `like` `unlike` |
| **twitter** | `trending` `search` `timeline` `tweets` `lists` `list-tweets` `list-add` `list-remove` `bookmarks` `post` `download` `profile` `article` `like` `likes` `notifications` `reply` `reply-dm` `thread` `follow` `unfollow` `followers` `following` `block` `unblock` `bookmark` `unbookmark` `delete` `hide-reply` `accept` |
Expand Down
1 change: 1 addition & 0 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,7 @@ npm link
| **hupu** | `hot` `search` `detail` `mentions` `reply` `like` `unlike` | 浏览器 |
| **cursor** | `status` `send` `read` `new` `dump` `composer` `model` `extract-code` `ask` `screenshot` `history` `export` | 桌面端 |
| **bilibili** | `hot` `search` `me` `favorite` `history` `feed` `subtitle` `video` `comments` `dynamic` `ranking` `following` `user-videos` `download` | 浏览器 |
| **douyu** | `search` `watch` `follow` `unfollow` `danmaku` `daily-task` | 公开 / 浏览器 |
| **codex** | `status` `send` `read` `new` `dump` `extract-diff` `model` `ask` `screenshot` `projects` `history` `export` | 桌面端 |
| **chatwise** | `status` `new` `send` `read` `ask` `model` `history` `export` `screenshot` | 桌面端 |
| **doubao** | `status` `new` `send` `read` `ask` `history` `detail` `meeting-summary` `meeting-transcript` | 浏览器 |
Expand Down
322 changes: 322 additions & 0 deletions cli-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -8704,6 +8704,328 @@
"sourceFile": "douyin/videos.js",
"navigateBefore": "https://creator.douyin.com"
},
{
"site": "douyu",
"name": "daily-task",
"aliases": [
"task"
],
"description": "随机打开斗鱼直播间完成关注、弹幕、直播观看和视频观看每日任务",
"access": "write",
"example": "opencli douyu daily-task --window foreground --keep-tab true -f yaml",
"domain": "www.douyu.com",
"strategy": "ui",
"browser": true,
"args": [
{
"name": "message1",
"type": "str",
"default": "打卡",
"required": false,
"help": "First danmaku text, max 50 chars"
},
{
"name": "message2",
"type": "str",
"default": "主播加油",
"required": false,
"help": "Second danmaku text, max 50 chars"
},
{
"name": "source",
"type": "str",
"default": "https://www.douyu.com/directory/all",
"required": false,
"help": "Directory/category URL used as the random room source"
},
{
"name": "pool",
"type": "int",
"default": 80,
"required": false,
"help": "Maximum candidate rooms to sample from"
},
{
"name": "delay",
"type": "int",
"default": 3,
"required": false,
"help": "Seconds to wait between the two danmaku messages"
},
{
"name": "watch-minutes",
"type": "int",
"default": 40,
"required": false,
"help": "Minutes to keep the selected live room playing after task actions"
},
{
"name": "check-interval",
"type": "int",
"default": 30,
"required": false,
"help": "Seconds between playback keepalive checks"
},
{
"name": "video-source",
"type": "str",
"default": "https://v.douyu.com/video/videotag/list?tagId=15",
"required": false,
"help": "Douyu video listing URL used as the video source"
},
{
"name": "video-pool",
"type": "int",
"default": 120,
"required": false,
"help": "Maximum candidate videos to sample from"
},
{
"name": "video-watch-minutes",
"type": "int",
"default": 15,
"required": false,
"help": "Minutes of actual video playback progress to accumulate after live watching"
},
{
"name": "video-check-interval",
"type": "int",
"default": 20,
"required": false,
"help": "Seconds between video playback progress checks"
},
{
"name": "max-videos",
"type": "int",
"default": 5,
"required": false,
"help": "Maximum videos to use if shorter videos end before target time"
},
{
"name": "timeout",
"type": "int",
"default": 3900,
"required": false,
"help": "Runtime timeout in seconds; must exceed live and video watch time"
},
{
"name": "verify",
"type": "bool",
"default": true,
"required": false,
"help": "Hover account avatar and collect task/experience evidence after watching"
},
{
"name": "strict-verify",
"type": "bool",
"default": true,
"required": false,
"help": "Fail when the task/experience panel cannot be verified"
},
{
"name": "dry-run",
"type": "bool",
"default": false,
"required": false,
"help": "Only choose and open the room; do not follow or send danmaku"
}
],
"columns": [
"room",
"streamer",
"title",
"follow_result",
"danmaku1",
"danmaku2",
"live_watch",
"video_watch",
"videos",
"verification",
"verification_evidence",
"status",
"url"
],
"type": "js",
"modulePath": "douyu/daily-task.js",
"sourceFile": "douyu/daily-task.js",
"navigateBefore": false,
"siteSession": "persistent"
},
{
"site": "douyu",
"name": "danmaku",
"aliases": [
"send"
],
"description": "向斗鱼直播间发送普通弹幕",
"access": "write",
"example": "opencli douyu danmaku 6979222 \"hello\" -f yaml",
"domain": "www.douyu.com",
"strategy": "ui",
"browser": true,
"args": [
{
"name": "room",
"type": "str",
"required": true,
"positional": true,
"help": "Douyu room id or room URL"
},
{
"name": "text",
"type": "str",
"required": true,
"positional": true,
"help": "Danmaku text, max 50 chars"
}
],
"columns": [
"room",
"streamer",
"text",
"result",
"url"
],
"type": "js",
"modulePath": "douyu/danmaku.js",
"sourceFile": "douyu/danmaku.js",
"navigateBefore": false,
"siteSession": "persistent"
},
{
"site": "douyu",
"name": "follow",
"description": "关注斗鱼直播间主播",
"access": "write",
"example": "opencli douyu follow 6979222 -f yaml",
"domain": "www.douyu.com",
"strategy": "ui",
"browser": true,
"args": [
{
"name": "room",
"type": "str",
"required": true,
"positional": true,
"help": "Douyu room id or room URL"
}
],
"columns": [
"room",
"streamer",
"result",
"url"
],
"type": "js",
"modulePath": "douyu/follow.js",
"sourceFile": "douyu/follow.js",
"navigateBefore": false,
"siteSession": "persistent"
},
{
"site": "douyu",
"name": "search",
"description": "搜索斗鱼直播间",
"access": "read",
"example": "opencli douyu search 英雄联盟 --limit 10 -f yaml",
"domain": "www.douyu.com",
"strategy": "public",
"browser": false,
"args": [
{
"name": "query",
"type": "str",
"required": true,
"positional": true,
"help": "Search keyword"
},
{
"name": "limit",
"type": "int",
"default": 20,
"required": false,
"help": "Number of live room results to return (1-50)"
}
],
"columns": [
"rank",
"room",
"streamer",
"title",
"category",
"hot",
"live_status",
"url"
],
"type": "js",
"modulePath": "douyu/search.js",
"sourceFile": "douyu/search.js"
},
{
"site": "douyu",
"name": "unfollow",
"description": "取消关注斗鱼直播间主播",
"access": "write",
"example": "opencli douyu unfollow 6979222 -f yaml",
"domain": "www.douyu.com",
"strategy": "ui",
"browser": true,
"args": [
{
"name": "room",
"type": "str",
"required": true,
"positional": true,
"help": "Douyu room id or room URL"
}
],
"columns": [
"room",
"streamer",
"result",
"url"
],
"type": "js",
"modulePath": "douyu/unfollow.js",
"sourceFile": "douyu/unfollow.js",
"navigateBefore": false,
"siteSession": "persistent"
},
{
"site": "douyu",
"name": "watch",
"description": "打开斗鱼直播间并返回当前直播状态",
"access": "read",
"example": "opencli douyu watch 6979222 -f yaml",
"domain": "www.douyu.com",
"strategy": "cookie",
"browser": true,
"args": [
{
"name": "room",
"type": "str",
"required": true,
"positional": true,
"help": "Douyu room id or room URL"
}
],
"columns": [
"room",
"title",
"streamer",
"category",
"followers",
"live_status",
"live_status_reason",
"video_status",
"url"
],
"type": "js",
"modulePath": "douyu/watch.js",
"sourceFile": "douyu/watch.js",
"navigateBefore": false,
"siteSession": "persistent"
},
{
"site": "eastmoney",
"name": "announcement",
Expand Down
Loading