
你有没有想过,每天花在浏览器上的时间有多少是在重复操作?
打开 B 站看看热门视频,切到知乎刷刷热榜,再去小红书搜点资料……这些动作我们每天都在做,但有没有想过,如果能让 AI 帮你做这些事,会是什么体验?
最近 GitHub 上有个项目,把这件事变成了现实。它叫 OpenCLI,做的事情简单粗暴:把网站和桌面应用都变成命令行工具。
Github地址:
两条路,殊途同归

类似的思路其实之前就有了。CLI-Anything 就是其中一个,它的做法很直接——从源码入手,扫描软件的源代码,把 GUI 操作映射到底层 API,然后用 Python Click 框架自动生成一套命令行界面。
这种方式对 GIMP、Blender、Audacity 这类开源软件很管用,毕竟有源码,有 API 文档,可以"逆向工程"。
但 OpenCLI 选了一条完全不同的路。
它不看源码,也不翻 API 文档。它直接从浏览器入手——通过 Chrome 去操作目标网站,把你平时在浏览器里点来点去的动作,变成一条条命令。
打个比方:CLI-Anything 像是拆开机器的工程师,研究内部结构。OpenCLI 更像是一个用得特别熟的老用户,机器外壳没动,但他知道每个按钮按下去会发生什么。
这两条路合起来,基本上啥软件都能搞定了。
它是怎么做到的?
OpenCLI 的架构设计有点意思。

它会在你的 Chrome 浏览器里装一个轻量级扩展(Browser Bridge),然后在本地起一个小型守护进程(Daemon)。这两个东西通过 WebSocket 连着,把你的命令翻译成浏览器操作。
整个过程大概是这样的:
你在终端敲命令 → 本地 Daemon 接收 → WebSocket 传给 Chrome 扩展 → 扩展在浏览器里执行 → 结果返回终端
比如你敲 opencli bilibili hot,Daemon 就把这个指令发给 Chrome 扩展,扩展打开 B 站,抓取热门视频数据,格式化后显示在你的终端里。
最关键的是:它复用的是你 Chrome 里已经登录的账号。
你在 B 站登录了,OpenCLI 就能用你的身份去获取数据。不用单独配 Cookie,不用申请 API Key。你的密码和凭据从头到尾都没离开过浏览器。
Daemon 设计得也挺克制——空闲 5 分钟自动退出,默认只监听 localhost:19825,不会一直挂在后台吃资源。
三个为 AI 设计的命令
OpenCLI 里最值得关注的是它为 AI Agent 专门设计的三个命令。
第一个是 explore。
给它一个网站 URL,它会自动去发现这个网站有哪些 API 可以调用。不是静态扫描,而是真的打开浏览器,点击、滚动、观察网络请求,把能用的 API 端点全部记录下来。
第二个是 synthesize。
拿到 explore 的结果后,自动生成对应的 CLI 适配器。你不用写一行代码,它替你把 API 包装成命令行工具。
第三个是 cascade。
自动探测目标网站的认证策略。它会从最简单的公开 API 开始试,试不通就升级到 Cookie 认证,再不行就拦截网络请求提取签名……一共五个级别,一级一级往上试。
这三个命令组合起来,意味着一件很酷的事:AI Agent 拿到一个它从没见过的网站,也能自己摸索出怎么用命令行操控它。
这才是 OpenCLI 真正值得关注的地方——它不只是给人用的 CLI 工具,它是给 AI 用的"万能遥控器"。
现在能做什么?
目前 OpenCLI 已经内置了 80 多个命令,覆盖 30 多个站点和应用。
网站方面:
- B 站的热门、搜索、字幕提取
- 知乎的热榜、搜索
- 小红书的笔记下载
- Twitter/X 的时间线、书签
- Reddit 的热帖
- YouTube 的视频信息
- 雪球的股票数据
- BOSS 直聘的职位搜索
桌面应用方面:
- Cursor IDE
- ChatGPT 客户端
- Notion
- Discord
- 飞书
- 微信
- 网易云音乐
- 超星学习通
- 微信读书
每个命令都支持多种输出格式:json、yaml、markdown、csv。Agent 拿到的是结构化数据,可以直接处理。
opencli bilibili hot -f json | jq '.[]'
opencli zhihu hot -f yaml
opencli twitter bookmarks -f md
对 Agent 来说,这些命令就像是一个一个标准化的"插口",插上就能用。
Electron 应用的突破
OpenCLI 最近的一个大更新,是支持了所有 Electron 应用的 CLI 化。
你可能不知道,现在有多少桌面应用是基于 Electron 构建的。飞书、VS Code、Slack、Discord、Notion、Figma 桌面版、微信开发者工具……几乎你能叫得出名字的现代桌面应用,有一大半跑的都是 Chromium 内核。
OpenCLI 利用 Chrome DevTools Protocol(CDP)直接和这些应用的内核通信。原理和浏览器扩展类似,但针对 Electron 做了特殊处理。
这意味着什么?理论上,所有 Electron 应用都可以被命令行化。
为什么这件事很重要?
CLI 正在成为 Agent 时代的标准交互协议。
GUI 是给人类设计的——按钮、菜单、弹窗,都是为了让人看得懂、点得着。但 AI 不需要这些。AI 需要的是结构化的输入输出,是明确的命令和返回。
OpenCLI 做的事情,本质上是在 GUI 和 AI 之间搭了一座桥。它让 AI 能够操控那些原本只有人类才能使用的软件。
而且因为它复用浏览器里已登录的账号,你不需要为每个服务都配置一遍权限。这在企业场景里特别有价值——很多内部系统没有开放 API,但员工每天都在浏览器里用。OpenCLI 可以让 AI Agent 接管这些操作,而不需要 IT 部门去改造系统。
Github地址:
写在最后
OpenCLI 目前还在快速迭代,GitHub 上的 Star 数已经超过 5k,社区贡献的命令也在不断增加。
如果你经常要批量处理网站数据,或者想让 AI 帮你自动化一些浏览器操作,这个项目可以看看。
毕竟,能用一行命令搞定的事,谁愿意点十几次鼠标呢?
关注
觉得有用?点个关注,每天分享一个有趣的工具或技术。有什么想让我写的,评论区告诉我。