目录
使用 OpenCLI 实现命令行操控网站与 AI 结合
OpenCLI 是一个开源的命令行工具,可以让你通过命令行直接操控网站,让 AI 像调用 API 一样与互联网进行交互。本文将介绍 OpenCLI 的安装、配置、使用方式以及如何与 AI 协同工作完成自动化任务。
1. 安装 OpenCLI
前提
- Node.js: >= 21.0.0
- Chrome 浏览器
安装步骤
- 使用 npm 安装 OpenCLI:
$ npm install -g @jackwener/opencli
- 安装浏览器扩展,具体步骤请参见 OpenCLI GitHub Releases,因为 OpenCLI 需要复用浏览器的登录状态。
验证安装
运行以下命令检查是否安装成功:
$ opencli doctor
测试使用
- 查看 OpenCLI 支持的命令列表:
$ opencli list
- 获取 HackerNews 的热门新闻:
$ opencli hackernews top --limit 5
- 获取 Bilibili 的热门视频:
$ opencli bilibili hot --limit 5
2. 与 AI 结合使用
OpenCLI 还支持与 AI 一起使用,帮助你自动化一些网站操作任务。
安装 Skill
使用以下命令安装 OpenCLI 相关技能:
$ npx skills add jackwener/opencli
如果只想安装特定技能,可以选择性地安装:
$ 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 opencli-usage
$ npx skills add jackwener/opencli --skill smart-search
编写自己的 Adapter
你可以使用 AI 帮助编写适配器 (adapter),以便让 AI 完成更多个性化的操作任务。例如,获取淘宝最近一周的消费情况,并编写一个适配器。
首先,在 AI 客户端中编写适配器脚本:
$ opencli taobao consume-stats --help
Usage: opencli taobao consume-stats [options]
淘宝消费统计(最近一周订单)
Options:
--days [value] 查询天数 (默认7天) (default: "7")
--status [value] 订单状态 (default: "all")
-f, --format <fmt> Output format: table, plain, json, yaml, md, csv (default: "table")
-v, --verbose Debug output (default: false)
-h, --help display help for command
你可以选择不同的输出格式,例如:table、json、yaml 等。
与 AI 配合使用
AI 可以通过以下命令直接调用已编写好的适配器脚本来执行任务:
$ opencli taobao consume-stats --days 7 --status shipped
3. 解决的问题
OpenCLI 主要解决了以下几个问题:
- 缺少 API 时的替代方案:当网站没有开发公开 API 时,OpenCLI 允许你基于浏览器登录状态来自动化抓取数据。
- 自动化任务:通过编写适配器,用户可以将网站操作自动化,获取各种格式的数据,并可与 AI 一起使用,帮助完成更加个性化的任务。
- 支持多种数据格式:OpenCLI 支持输出多种数据格式,如 JSON、YAML、CSV 等,可以满足不同系统或 AI 的需求。
4. 总结
OpenCLI 是一个强大的工具,结合 AI 的能力可以自动化各类网站操作任务。它解决了传统 API 的限制,使得用户可以在没有公开 API 的情况下,依然能够获取到网站的数据,并实现高效的自动化流程。