跳到主要内容
项目档案命令行工具

OpenCLI 使用指南:将网站与 Electron 应用转为 CLI 的 AI 原生运行时 - 安装与命令详解

OpenCLI 是一个通用 CLI 中心,可将任何网站、Electron 应用或本地工具转换为标准化命令行接口。支持 79+ 网站适配器、实时浏览器控制、AI 代理集成,具有账户安全和反检测能力。本文详细介绍项目定位、安装步骤、使用方法和适用场景,帮助您快速上手这一确定性自动化工具。

29,459JavaScriptStar 于 2026年3月21日2026年9月19日 更新

AI 总结

OpenCLI 是一个通用 CLI 中心与 AI 原生运行时,可将任何网站、Electron 应用或本地工具转换为标准化命令行接口,为人类用户和 AI 代理提供确定性的自动化能力,支持 79+ 网站和应用适配。

中文项目介绍

OpenCLI 是一个创新的命令行工具平台,其核心定位是将非标准 CLI 接口的数字化服务(网站、桌面应用)转化为统一、可脚本化的命令行界面。它解决了传统自动化工具面临的多个痛点:网站界面变化导致脚本失效、需要维护登录状态、反检测机制阻止自动化、以及 AI 代理难以与图形界面交互等问题。 项目通过三种主要方式实现:一是提供 79+ 个预置适配器覆盖主流网站(Bilibili、知乎、小红书、Reddit 等)和 Electron 应用(Cursor、ChatGPT);二是通过 `opencli browser` 让 AI 代理直接控制实时浏览器;三是提供 `explore`、`synthesize`、`generate` 等工具从真实行为自动生成新适配器。 适用场景包括:个人效率(快速获取数据、自动化重复操作)、AI 代理工作流(通过标准化接口交互网络服务)、开发运维(统一管理 gh、docker 等工具)、桌面应用自动化、研究数据收集、CI/CD 集成。技术特征上,它复用浏览器登录状态保证账户安全,内置反检测机制,采用零 LLM 成本架构(运行时无 token 消耗),输出确定性结构化数据,并通过动态加载支持适配器热注册。

详细信息与使用说明

1. 项目定位与用途

OpenCLI 定位为"通用 CLI 中心与 AI 原生运行时",核心用途是将任何数字化服务(网站、Electron 应用、本地二进制工具)转化为标准化、确定性的命令行接口。它不仅是人类用户的高效自动化工具,更是 AI 代理与外部世界交互的统一入口。通过提供一致的命令语法、输出结构和发现机制,OpenCLI 消除了图形界面与脚本环境之间的鸿沟,使得复杂工作流可被简洁表达、复用和集成到更大自动化系统中。项目强调"确定性"——相同命令始终产生相同结构的输出,这使其天然适合管道操作、脚本编写和 CI/CD 环境。

2. 解决的问题

OpenCLI 系统解决三类问题:一是接口不统一,不同网站和应用各有独特交互方式,难以用统一脚本控制;二是状态维护困难,自动化需保持登录状态但直接处理凭证不安全;三是反自动化机制,许多网站检测并阻止机器人行为。此外,AI 代理缺乏与图形界面交互的标准能力。OpenCLI 通过适配器抽象层统一接口,复用用户已登录浏览器实例保证账户安全,内置全面反检测策略(修补 navigator.webdriver、伪造插件列表等),并为 AI 提供探索、学习和执行工具的标准路径(AGENT.md 集成),从而系统性地解决这些挑战。

3. 适用场景

适用场景包括:个人效率工具,如快速获取社交媒体热门内容、下载文章或媒体;AI 代理工作流,让 LLM 代理通过 opencli 技能直接操作浏览器或调用网站功能;开发与运维,将 gh、docker 等 CLI 工具注册到 OpenCLI 实现统一发现和管理;桌面应用自动化,通过 CDP 协议控制 Electron 应用(Cursor、Notion);研究与数据收集,利用确定性输出进行可重复的网络数据采集;CI/CD 集成,在流水线中运行可靠的自动化任务。项目特别适合需要频繁与多个网络服务交互、且要求稳定性和可维护性的自动化场景。

4. 安装方式

安装分为两步:首先通过 npm 全局安装 OpenCLI 核心:`npm install -g @jackwener/opencli`,要求 Node.js 20+ 环境。其次需安装浏览器桥接扩展,这是 OpenCLI 与 Chrome/Chromium 通信的桥梁:从 GitHub Releases 下载最新 `opencli-extension.zip`,解压后进入 `chrome://extensions`,启用开发者模式,点击"加载已解压的扩展程序"并选择解压目录。安装完成后运行 `opencli doctor` 自动诊断并启动所需服务(本地守护进程、扩展连接等)。项目还提供 Bun 运行时支持,可通过 `bun src/main.ts` 直接运行开发版本。

5. 使用方式

基础使用:`opencli list` 查看所有可用命令;`opencli <site> <command>` 执行适配器,如 `opencli bilibili hot --limit 5`;`opencli doctor` 诊断连接问题。高级用法:`opencli browser` 启动实时浏览器控制模式,支持点击、输入、截图等交互;`opencli register <cli>` 将本地二进制工具注册为 OpenCLI 命令;`opencli record` 开始录制浏览器操作并生成适配器。AI 代理集成:通过 `skills/opencli-explorer/SKILL.md` 和 `skills/opencli-browser/SKILL.md` 两个技能点,代理可自动发现网站 API、生成适配器或直接操作浏览器。适配器开发:将 `.ts` 文件放入 `clis/` 文件夹即可自动注册,项目提供动态加载机制。

6. 补充说明与实现特点

OpenCLI 采用模块化架构,核心模块包括 browser(浏览器桥接与 CDP 控制)、download(文章与媒体下载)、pipeline(数据处理管道)和 clis(适配器动态加载系统)。技术上,它使用 Chrome DevTools Protocol 与浏览器通信,通过 JavaScript 注入实现 DOM 快照、表单状态提取和反检测脚本。适配器系统支持热加载,开发者只需放置 TypeScript 文件即可注册新命令。项目包含完整的测试套件(Vitest)和评估框架(autoresearch 目录),用于衡量适配器质量和浏览器操作可靠性。值得注意的是,OpenCLI 设计为"零 LLM 成本"——所有适配器执行不消耗 token,仅在生成阶段可能涉及 AI。输出始终为结构化 JSON,确保可管道化和脚本友好性。

思维导图

OpenCLI
核心功能
适配器系统
实时浏览器控制
适配器生成工作流
外部 CLI 集成
技术模块
browser 模块
download 模块
pipeline 模块
clis 适配器系统
AI 集成
技能点
AGENT.md 标准
安全与可靠性
账户安全(复用登录状态)
反检测机制(webdriver 修补等)
自愈设置(doctor 命令)
确定性输出(结构化 JSON)
开发与测试
TypeScript 架构(ES2022)
Vitest 测试套件
autoresearch 评估框架
可靠性预设(presets)
部署与使用
npm 全局安装
浏览器扩展加载
opencli doctor 验证
list/run 命令集

常见问题

OpenCLI 是什么?

OpenCLI 是一个通用 CLI 中心与 AI 原生运行时,可将网站、Electron 应用和本地工具转换为标准化命令行接口,为人类和 AI 代理提供确定性的自动化能力,支持 79+ 网站和应用适配。

如何安装 OpenCLI?

通过 npm 全局安装:`npm install -g @jackwener/opencli`(需 Node.js 20+),然后从 GitHub Releases 下载浏览器扩展并加载到 Chrome,最后运行 `opencli doctor` 验证设置。

OpenCLI 支持哪些网站和应用?

内置 79+ 个适配器,覆盖 Bilibili、知乎、小红书、Reddit、HackerNews、Twitter/X 等全球及中文平台,以及 Cursor、ChatGPT、Notion 等 Electron 应用,还支持通过 `opencli register` 集成任意本地 CLI 工具。

AI 代理如何使用 OpenCLI?

AI 代理可通过两个技能点集成:`skills/opencli-explorer/SKILL.md` 用于发现 API 和生成适配器,`skills/opencli-browser/SKILL.md` 用于直接控制浏览器。所有操作通过 AGENT.md 标准暴露,实现无缝工具调用。

OpenCLI 是否安全?是否会消耗 LLM tokens?

OpenCLI 复用用户已登录的浏览器状态,凭证不离境;内置反检测机制绕过指纹识别。运行时零 LLM 成本——不消耗 tokens,仅在适配器生成阶段可能涉及 AI,执行阶段完全本地确定。