本文介绍AI时代软件长出第二套界面——命令行(CLI),让AI Agent能直接操作软件。重点解析开源项目OpenCLI,它通过浏览器扩展和本地守护进程,将B站、小红书、知乎等66+平台变成CLI工具,复用电登录态,无需API密钥。核心亮点:运行时不消耗大模型Token,确定性输出,适合开发者、AI自动化爱好者构建无需图形界面的工作流。
Tags:
本文字数 2229,阅读大约需 4 分钟
不知道大家最近有没有注意到一个现象。
Obsidian 出了 CLI,飞书出了 CLI,即梦也出了 CLI。
如果你不知道 CLI 是什么,没关系,一句话解释:CLI 就是命令行界面,你在终端里敲一行文字命令,软件就替你执行对应的操作。
和我们日常用的图形界面(GUI)不同,CLI 没有按钮,没有图标,只有文字,就像这样👇
这东西不是新概念,程序员已经用了几十年了。
但奇怪的是,最近这几个月,好像大家都开始密集推出自己的命令行工具,为什么?
软件正在长出第二套界面
要回答这个问题,得先搞清楚一件事:
这些 CLI,不是给人用的。
是给 AI 用的。
你想一下,我们人类操作软件,靠的是什么?眼睛看屏幕上的按钮,手指点击、拖拽、滑动。
整套 GUI 界面就是围绕人的视觉和手指设计的。
但 AI 呢?它没有眼睛,也没有手指。
你让一个 AI Agent 帮你发条微博,它不可能像人一样打开浏览器、找到输入框、点击发送。(当然,也可以使用 Browser-Use 这类工具,让 AI 自己去操作浏览器,但不灵活,而且慢。)
AI 需要的不是图形界面,而是文字界面。
大语言模型的输入和输出都是文本。文本进,文本出,这恰好就是 CLI 的工作方式一样,敲一行命令,它返回一段文字结果。
而且 CLI 天然可以组合。
在命令行里有一个概念叫「管道」,长这样 👉 | 。
通过管道可以轻松把多个命令串起来:A 的输出,直接变成 B 的输入,B 的输出再传给 C。一条命令,串起一整条工作流。
这不就是 AI Agent 干的事吗?
所以你看,Obsidian 做 CLI、飞书做 CLI——它们不是在给程序员造新工具,而是在给 AI Agent 铺路。
当一个软件有了 CLI,就等于在它原有的「人类入口」之外,新开了一个「AI 入口」。
今天的软件有两类用户:一类是人,一类是 AI。GUI 服务人,CLI 服务 AI。
一个开源项目,要把所有网站都 CLI 化
但问题来了。
飞书出了 CLI,那微博呢?知乎呢?B 站呢?豆瓣呢?
大部分网站和应用,暂时不会主动去做一套 CLI,但 AI Agent 操作它们的需求已经出现了。
在这个趋势下,我在 GitHub 上发现了一个开源项目——OpenCLIhttps://github.com/jackwener/opencli
这个项目的介绍是:
将任何网站、Electron 应用或本地工具变成您的命令行界面(CLI)。
目前 OpenCLI 已经适配了 66 个以上的平台,覆盖范围包括:
• 社交媒体:Twitter、Reddit、Instagram、Facebook、TikTok • 中文平台:B 站、小红书、知乎、豆瓣、微博、即刻、V2EX、贴吧 • 内容平台:YouTube、Medium、Substack、Hacker News、ArXiv • 工作工具:BOSS 直聘、飞书、钉钉、企业微信 • 金融资讯:雪球、Yahoo Finance、Bloomberg、Barchart • 桌面应用:Cursor、Notion、ChatGPT、Discord、豆包
这份清单还在持续增长。
它是怎么做到的?
你可能会好奇:这些网站又没有提供官方 API,OpenCLI 是怎么操作它们的?
原理并不复杂。
OpenCLI 通过一个 Chrome 浏览器扩展和一个本地运行的小型守护进程,跟你的浏览器建立连接。
关键在于:它复用的是你浏览器里已经登录好的状态。
也就是说,你平时在 Chrome 里登录了 B 站,OpenCLI 就能通过这个登录态来获取数据。你不需要提供密码,不需要申请 API Key,你的凭证也不会离开浏览器。
安装步骤也非常简单:
npm install -g @jackwener/opencli一行命令全局安装。
然后在你的浏览器里安装一个扩展,可以在 OpenCLI 发布页下载 github.com/jackwener/opencli/releases
打开浏览器的扩展页面,从左上角导入已经解压后的扩展文件👇
如果能顺利看到这个扩展,就说明已经安装好了。
接下来,就可以直接通过 opencli 命令行轻松调用各个应用的 CLI 了。
比如:
opencli bilibili hot --limit 5这行命令会返回 B 站当前的 5 条热门视频。
opencli zhihu hot -f json这行命令会返回知乎热榜,并且以 JSON 格式输出,这个格式对 AI 来说特别友好,可以直接解析和处理。
opencli hackernews top --limit 10获取 Hacker News 前 10 条热帖。这个命令甚至不需要浏览器登录,因为 Hacker News 本身就是公开的。
opencli xiaohongshu download link --output ./xhs轻松下载小红书视频。
不过下载视频,需要先安装 yt-dlp 这个命令行工具,可以执行命令安装:pip install -U yt-dlp
你也可以用它操作桌面应用,比如 Obsidian:
opencli obsidian search query="Claude Code"直接在终端返回 Obsidian 里搜索到的内容。
甚至可以控制 Cursor、Codex、Antigravity 这类代码编辑器:
这意味着什么?一个 AI Agent 可以通过命令行操作你的 IDE,让 AI 控制 AI。
不消耗 Token,确定性输出
OpenCLI 有两个特性值得单独说一下。
第一,运行时不消耗大模型 Token。
这一点很重要。很多浏览器自动化工具(比如 Browser-Use)是基于大模型驱动的——AI 实时「看」网页,理解页面结构,再做出操作。每次运行都在消耗 Token。
OpenCLI 不一样。它的每个命令背后是一个写好的适配器(YAML 或 TypeScript),不需要大模型参与。跑一万次命令,LLM 成本是零。
第二,确定性输出。
同一个命令,每次执行返回的数据结构是一样的。可以把它写进脚本,放进 CI/CD 流水线,可以用管道和其它工具组合。
还有很多其他亮点👇
另一个值得关注的项目
在「万物 CLI」这个方向上,还有一个项目值得提一下:CLI-Anything,来自香港大学数据科学实验室。
它和 OpenCLI 走的是完全不同的路线。
简单来说:OpenCLI 是「手工打造」,每个平台都有人写好适配器,开箱即用;CLI-Anything 是「AI 自动生成」,给它一个软件的源码,它能自己造出一套 CLI 来。
两个项目方向不同,但指向同一件事:让 AI 能操作一切工具。
写在最后
今天的软件世界里,几乎所有产品都是围绕人的感官设计的——好看的界面、顺手的交互、流畅的动画。
但 AI 不在乎这些。
AI 需要的是一个可以用文字对话的接口,一个稳定的、结构化的、可组合的接口,这就是 CLI。
所以我们看到Obsidian 做了 CLI、飞书做了 CLI,OpenCLI 试图把所有网站都 CLI 化,CLI-Anything 想让 AI 自己给任何软件生成 CLI。
也许再过几年回头看,这一波「万物 CLI」的趋势,就是 AI Agent 真正开始接管日常工作的起点。
到那时候,人和软件之间可能不再需要界面,你只需要描述你想要的结果,剩下的事,AI 会通过 CLI 替你完成。
以上,就是本文全部内容,如果觉得这篇文章对你有启发,点赞、比心、分享三连就是对我最大的支持,谢谢~
• 用 Gemini 解锁 YouTube 新用法,信息获取效率提升 10 倍
• 有了 NotebookLM 后,还需要 Obsidian 吗?
• 我试了 NotebookLM 学习法后,彻底抛弃传统学习方式
• 我用 NotebookLM 解锁 PPT 的 5 种玩法,实现了 PPT 自由
没有评论:
发表评论