tech官小西

OpenCLI 深度评测:把任意网站变成 CLI 命令 —— 以及它和同类工具的横评

AI Agent 生态正在爆发式增长,各类让 LLM 操作浏览器、写代码、管理基础设施的终端工具层出不穷。最新搅动社区的是 OpenCLI —— 注意,我说的不是 opencli.co 上的那个 CLI 目录站,而是 GitHub 上 jackwener/OpenCLI,一个 1.8 万 Star 的项目,口号是"让任意网站和工具变成你的 CLI"。

在深入体验了它的代码库、文档和实际运行效果之后,以下是我对 OpenCLI 的深度分析:它做对了什么、它差在哪里、以及它是否能在 Claude Code、browser-use、Aider 等工具组成的 AI 原生工作流中占据一席之地。

OpenCLI(jackwener/OpenCLI)是什么?

OpenCLI 是一个 Node.js CLI 工具(npm 包名 @jackwener/opencli),能把网站、Electron 桌面应用和本地二进制工具转化为确定性的命令行接口。它 2026 年 3 月上线,迅速积累了 18,400+ Star1,800+ Fork

核心理念:不用手动点网页,直接 opencli bilibili hotopencli twitter trending 就能拿到结构化 JSON 输出。需要认证的站点,OpenCLI 通过轻量级 Browser Bridge 扩展复用你已有的 Chrome 登录状态 —— 不需要 API Key,不需要 OAuth,不需要管理 Token。

三种运行模式

  1. 内置适配器(90+ 站点): 小红书、B站、Twitter/X、Reddit、HackerNews、知乎、Amazon、1688、Spotify 等预构建命令。大部分走公开 API 或抓取服务端渲染页面 —— 不需要浏览器。

  2. AI Agent 浏览器自动化: 给 AI Agent(Claude Code、Cursor 等)安装 opencli-adapter-author 技能后,Agent 可以通过 CDP 在你已登录的 Chrome 中导航、点击、输入、提取、检查页面。Agent 在底层调用 opencli browser openclicktypeextractwait

  3. CLI Hub + 桌面应用控制: 注册外部 CLI(ghdockerobsidian)实现统一发现。通过 CDP 直接控制 Cursor、Codex、ChatGPT 桌面版、Notion、Discord 等 Electron 应用。

关键技术指标

属性
运行时 Node.js >= 21 / Bun >= 1.0
协议 Apache 2.0
浏览器桥接 Chrome 扩展 + 本地守护进程(端口 19825)
认证策略 复用 Chrome 登录状态(无 API Token)
运行时 LLM 开销 零 —— 不消耗 Token
输出格式 确定性、结构化、可管道化
多配置文件 支持 --profile 切换多个 Chrome 配置

同类工具横评:五维度对比

OpenCLI 不是凭空出现的。让我们从五个维度与最相关的替代方案比较。

竞品概览

工具 GitHub Star 语言 核心定位 认证模型
OpenCLI (jackwener) 18,400 JavaScript/Node 网站 → CLI + 桌面控制 + CLI Hub 复用 Chrome 登录
browser-use 91,500 Python LLM 驱动的浏览器自动化 会话式
Claude Code 119,700 Shell/Python 终端中的 Agent 编程 API Key
Aider 44,200 Python AI 结对编程 API Key
Goose 43,600 Rust 可扩展 AI Agent(超越代码建议) API Key
LLM (simonw) 11,800 Python 命令行访问大模型 API Key
OpenCLI.co N/A(目录站) 面向 Agent 的精选 CLI 目录 N/A

维度一:Web 交互能力

这是 OpenCLI 最强的维度。browser-use 擅长 LLM 驱动的自主浏览器控制(视觉 + DOM),OpenCLI 采取的是根本不同的路径:确定性适配器优先,浏览器回退其次。

  • OpenCLIopencli bilibili hot --limit 5 每次输出同样的 JSON。适配器坏了?opencli-autofix 技能可以修复。没有适配器的站点?原始浏览器原语(opencli browser open/click/type/extract)可用。
  • browser-use:用 LLM 视觉解读页面 —— 灵活但非确定性,每次运行都消耗 Token,且可能对元素选择器产生幻觉。
  • Claude Code / Aider / Goose:主要是代码编辑 Agent,几乎没有直接的 Web 交互能力。

判断:大规模数据提取场景,OpenCLI 在可靠性和成本上完胜。一次性探索性浏览需要 LLM 级理解的场景,browser-use 更优。

维度二:AI Agent 集成深度

OpenCLI 明确为 AI Agent 构建。opencli-adapter-author 技能提供完整工作流:站点侦察 → API 发现 → 字段解码 → 适配器编写 → 验证。这是其他工具缺失的结构化、可重复流程。

  • OpenCLI:安装技能 → 用自然语言描述需求 → Agent 处理一切
  • browser-use:作为 Python 库设计,不是可插入 Claude Code 等现有 Agent 的技能
  • Claude Code:有浏览器工具,但对中文网站和复杂多步提取不够成熟

判断:OpenCLI 在 Web 自动化的 AI Agent 集成上深度最高,尤其是对中文平台生态(B站、小红书、知乎、抖音)的支持远超西方中心化工具。

维度三:桌面应用控制

这是独有能力。OpenCLI 通过 CDP 驱动 Electron 应用(Cursor、ChatGPT 桌面版、Notion、Discord)。本次对比中没有其他工具提供同等级别的桌面应用控制。

判断:OpenCLI 是唯一一个在同一框架下打通浏览器和桌面应用自动化的工具。

维度四:成本与确定性

工具 单次运行成本 确定性 CI 友好度
OpenCLI $0(无 LLM Token) 高(同命令 = 同输出)
browser-use ~$0.01-0.05(LLM Token) 低(依赖 LLM) 脆弱
Claude Code $0.05-0.50(Claude API) 部分
Aider $0.02-0.20(模型 API) 部分

OpenCLI 的运行时零成本模型在批量操作场景下是真实优势。运行 opencli bilibili hot 1 万次不花一分钱;运行 browser-use 1 万次则要花费数百美元的 LLM Token。

维度五:生态与成熟度

OpenCLI 很年轻(2026 年 3 月创建)但增长迅速。两个月积累 90+ 适配器令人印象深刻。但需要注意:

  • 98 个 Open Issues 表明有成长阵痛
  • 文档质量好但部分适配器质量参差
  • Chrome Browser Bridge 扩展增加了安装摩擦
  • Node.js >= 21 的要求相对严格

OpenCLI vs. OpenCLI.co:命名混淆问题

有两个"OpenCLI"项目,解决的问题完全不同:

  • jackwener/OpenCLI(opencli.info):一个可执行工具,把网站变成 CLI 命令。有活跃的 GitHub 仓库。通过 npm 安装。
  • OpenCLI.co(opencli.co):一个收录了 126 个 CLI 工具的目录/注册站,面向"AI Agent 开发者"策划。提供搜索、安装命令和分类 —— 像是 AI Agent 领域的 Homebrew。由 Khosla Lab 构建。本身不是 CLI 工具,而是元目录。

命名撞车是不幸的。OpenCLI.co 适合发现(找到适合任务的 CLI),而 jackwener/OpenCLI 适合执行(实际运行网站命令)。它们互补而非竞争。

是否应该引入 OpenCLI?

适合引入的场景

  • 经常从中文平台提取数据(B站、小红书、知乎、抖音、1688、闲鱼)
  • 需要 CLI 方式访问已认证的 Web 会话,不想管理 API Token
  • 需要从终端自动化 Electron 桌面应用
  • 运行批量 Web 操作,LLM Token 成本会很高
  • 构建 AI Agent,需要结构化、确定性的 Web 数据

不适合引入的场景

  • 只用有良好公共 API 的西方平台(GitHub、Stripe、Vercel —— 直接用原生 CLI 就好)
  • 需要 LLM 级视觉理解任意网页(用 browser-use)
  • 系统锁死无法安装 Chrome 扩展
  • 需要 Python-only 技术栈(OpenCLI 是 Node.js/Bun)

我当前系统的评估

看我自己的一套 —— Apple M4 Max, macOS,已经在跑 Claude Code、Cursor、gh 和 uv —— OpenCLI 确实填补了一个真实缺口。我目前用 browser-harness 做 CDP 浏览器自动化,但它是更底层的工具,没有适配器生态。OpenCLI 的 90+ 中文平台预构建适配器直接解决了之前我踩过坑的场景(BOSS直聘的字体反爬、社交平台的登录墙)。

OpenCLI 优化配置指南

如果决定采用 OpenCLI,以下是最大化其价值的方式:

# 安装
npm install -g @jackwener/opencli

# 从 Chrome Web Store 安装 Browser Bridge 扩展
# 安装后验证连接
opencli doctor

# 多 Chrome 配置文件设置(如果使用多个配置文件)
opencli profile list
opencli profile rename <contextId> work
opencli profile use work

# 安装 AI Agent 技能(给 Claude Code 或 Cursor 用)
npx skills add jackwener/opencli --skill opencli-adapter-author
npx skills add jackwener/opencli --skill opencli-autofix
npx skills add jackwener/opencli --skill opencli-browser
npx skills add jackwener/opencli --skill smart-search

# 注册已有 CLI 到统一发现
opencli external register gh
opencli external register docker
opencli external register uv

# 验证
opencli list
opencli hackernews top --limit 3
opencli bilibili hot --limit 3

与现有 Agent 工作流的集成

OpenCLI 的技能系统可以干净地嵌入 Claude Code 和 Cursor。关键洞察:用内置适配器做常规数据提取(零成本、确定性),浏览器原语做新颖交互的回退(Agent 驱动、灵活)。这种混合策略最大化了覆盖面同时最小化了 LLM Token 消耗。

对于 Hermes Agent,opencli-adapter-author 技能可以视为专用浏览器自动化模块 —— 用更高层的、站点感知的适配器补充现有的 browser-harness CDP 集成。

值得设置的环境变量

# 在 ~/.zshrc 或等效文件中
export OPENCLI_DAEMON_PORT=19825          # 默认值,一般不用改
export OPENCLI_BROWSER_COMMAND_TIMEOUT=120 # 慢站点加大超时
export OPENCLI_VERBOSE=0                   # 设为 1 进入调试模式

局限性与风险

  1. 单点故障: Chrome Browser Bridge 意味着 Chrome 崩溃或扩展断连时,所有基于浏览器的命令都会失败。opencli doctor 可以诊断,但仍是运行时依赖。

  2. 适配器维护负担: 网站频繁变动。98 个 Open Issue 说明维护压力。opencli-autofix 技能可以缓解,但需要 LLM 来修复 —— 这抵消了零成本优势。

  3. 安全攻击面: 复用 Chrome 会话意味着 OpenCLI 命令以你的完整认证上下文运行。恶意或损坏的适配器理论上可能执行非预期操作。确定性设计有助于审计(你可以查看命令做了什么),但需要保持警惕。

  4. Node.js 生态锁定: 如果你的技术栈是 Python-only,仅为 OpenCLI 加装 Node.js 21+ 可能不值得。browser-use 更自然地融入 Python 工作流。

  5. 项目年轻: 两个月大,快速迭代意味着 API 可能变更。CI 环境中锁定版本是明智之举。

结论

jackwener 的 OpenCLI 是一个雄心勃勃的项目,它兑现了承诺:网站变成 CLI 命令,桌面应用可从终端控制,AI Agent 获得了一个结构化、零成本的 Web 交互方式。它对中文平台的适配器生态是无可匹敌的,与现有 AI Agent 的技能化集成设计也很周到。

它不是 browser-use(后者在 LLM 驱动的视觉理解上更优)或 Claude Code(后者关于代码而非 Web 数据)的替代品。它占据了一个独特的生态位:确定性的、零成本的 Web 自动化,深度支持中文平台。对于同时穿梭于中西方技术生态的开发者,OpenCLI 填补了其他工具无法覆盖的空白。

真正的威力在于组合:OpenCLI 负责结构化数据提取,browser-use 负责视觉推理,Claude Code 负责代码编辑,Aider 负责结对编程。这就是正在成型的 AI 原生开发者技术栈 —— 而 OpenCLI 在其中赢得了一席之地。