MediaGo — 内置嗅探的跨平台视频下载器(桌面端 + Docker)
MediaGo 是一款跨平台视频下载工具,内置资源嗅探能力,无需抓包或配置浏览器扩展即可从页面中挑选并保存视频。底层集成 yt-dlp,支持 YouTube、Bilibili、Twitter/X、Instagram、Reddit 等 1000+ 站点,同时提供浏览器扩展、HTTP API、OpenClaw Skill(AI 助手调用)、内置格式转换与一行命令 Docker 部署。当前稳定版为 v3.5.0。
社区作者 · zZz
它解决什么问题
MediaGo 的定位是「指向页面、挑选内容、保存」的跨平台视频下载器,强调无需抓包(packet capture)、无需配置浏览器扩展、无需折腾命令行工具。界面目前提供英语、简体中文和意大利语。
核心能力:
- 浏览器扩展(Chrome / Edge):在任意网站看到想下载的视频,点击扩展即可发送到 MediaGo。扩展会自动检测视频资源,并在工具栏徽标上显示数量;兼容包括 YouTube、Bilibili 在内的多数主流视频平台。扩展随桌面应用一同发布,可在「Settings → More Settings → Browser extension directory」找到安装目录。
- YouTube 及 1000+ 站点:底层由 yt-dlp 驱动,支持 YouTube、Twitter/X、Instagram、Reddit 等上千个视频站点。
- OpenClaw Skill(AI 助手代下载):配合 Claude Code、Cursor 等 AI 编程助手,安装 MediaGo skill 后只需说「please download this video: <url>」,由 AI 完成其余操作。安装命令为 npx clawhub@latest install mediago。
- HTTP API:MediaGo 暴露完整 HTTP API,脚本、自动化工具和其他应用可直接创建下载任务、查询进度、管理列表;浏览器扩展正是通过同一套 API 与桌面端通信,第三方同样可以接入。
- 内置格式转换:下载完成后无需离开 MediaGo 即可转换格式或画质,不必单独打开 ffmpeg 工具。
步骤 6 · 一行命令
Docker 部署:在服务器上无头安装,然后从同一网络的任意设备访问 Web UI。镜像同时发布于 Docker Hub 与 GHCR,支持 Intel/AMD(amd64)与 ARM(arm64)。桌面版默认同时监听 127.0.0.1 和局域网 IP,同一 Wi-Fi 下的手机、平板也能打开 Web UI。
- v3.5.0 更新要点:浏览器扩展嗅探、yt-dlp 驱动的 1000+ 站点支持、OpenClaw Skill、HTTP API、应用内格式转换、更简单的 Docker 部署(单目录挂载、GHCR 多架构镜像)、更快启动(后端重写、更低内存占用、内置视频播放器)。
界面截图对应:配图 1 为首页界面,配图 2 为首页深色模式,配图 3 为设置页,配图 4 为资源提取(浏览器扩展)界面。
开发与构建:仓库工作流要求 Task v3.51.1 或 v3 发布线中更新的版本。开发入口统一使用 task,Turbo、pnpm :raw 脚本、Go 命令以及 packages/tooling 下的工具均为 Task 与 CI 的实现细节。部署形态的 Web 产品即 Docker 镜像,不存在单独的 Node.js 服务端包。
致谢组件:N_m3u8DL-RE、BBDown、yt-dlp、aria2、mediago-core。
免责声明:项目声明仅用于教育与研究目的,不得用于商业或非法用途;代码与功能仅作为流媒体技术学习参考,使用者需遵守所在司法辖区法律法规;下载内容版权归原权利人所有,应在 24 小时内删除或取得授权;开发者不对使用者行为负责;严禁大规模抓取、干扰平台服务或侵犯他人合法权益;使用即视为已阅读并同意该声明。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
一、Docker 部署(推荐,一行命令) 准备:一台已安装 Docker 的服务器;确定宿主机用于持久化数据的目录路径。
- 从 Docker Hub 拉取并运行(稳定版 v3.5.0):
docker run -d --name mediago -p 8899:8899 -v /path/to/mediago:/app/mediago caorushizi/mediago:3.5.0- 或使用 GHCR(同一镜像,哪个仓库更快就用哪个):
docker run -d --name mediago -p 8899:8899 -v /path/to/mediago:/app/mediago ghcr.io/caorushizi/mediago:3.5.0- 首次运行:容器启动后,在浏览器访问 http://<服务器IP>:8899 打开 Web UI。镜像支持 amd64 与 arm64 两种架构。桌面版默认监听 127.0.0.1 与局域网 IP,同一 Wi-Fi 下的手机、平板可直接访问 Web UI。
二、宝塔面板(BT Panel)一键 Docker 部署
- 使用官方脚本安装宝塔面板。
- 登录面板,点击侧边栏 Docker,按提示完成 Docker 服务初始化。
- 在应用商店中找到 MediaGo,点击 Install(安装),配置域名后即完成部署。
三、桌面端安装 从 Releases 下载对应平台安装包:Windows 安装版、Windows 便携版、macOS Apple Silicon(arm64)、macOS Intel(x64)、Linux(deb)。需要旧版本时查看 GitHub Releases 页面。
四、浏览器扩展安装(Chrome / Edge) 扩展随桌面应用一同发布:打开 Settings → More Settings → Browser extension directory,即可找到扩展的安装目录,然后在浏览器中加载该目录完成安装。安装后扩展会自动检测页面视频资源并在工具栏徽标显示数量。
五、AI 助手 Skill 安装 使用 Claude Code、Cursor 或其他 AI 编程助手时,执行:
npx clawhub@latest install mediago安装后即可对 AI 说「please download this video: <url>」,由 AI 完成后续下载操作。
六、从源码开发(仓库工作流要求 Task v3.51.1 或 v3 发布线中更新的版本) 准备环境:需要 Go 工具链;在 macOS、Linux 或 Windows(PowerShell)上安装 v3 发布线中最新兼容版本。确保 Go 二进制目录已加入 PATH,并在运行仓库命令前先验证:
go install github.com/go-task/task/v3/cmd/task@latesttask --version 在仓库根目录执行主要的克隆并启动流程:
git clone https://github.com/caorushizi/mediago.gitcd mediagotask setup task dev:all
task setup 会安装 Node 工作区以及应用所需的运行时工具;这些工具的版本唯一来源是 packages/tooling/manifests/runtime-deps.json,Task 不会自动升级它们。仅执行
pnpm install 只会安装 Node 工作区包,不会安装 BBDown 等运行时二进制。
只开发 Web 界面可用 task dev:web;仅桌面端开发可用 task dev:electron。提交改动前需运行: task check task test
常见问题提示:不要绕过 task 直接调用 Turbo、pnpm :raw 脚本或
Go 命令,它们属于 Task 与 CI 的内部实现;不要只运行 pnpm install 就期待运行时二进制(如 BBDown)被装好;部署形态的 Web 产品就是 Docker 镜像,没有单独的 Node.js 服务端包;若容器无法访问,检查端口 8899 映射与宿主机防火墙;跨设备访问桌面版时确认与手机/平板处于同一 Wi-Fi 且监听地址包含局域网 IP。