Files
opencli/README.zh-CN.md
T
jackwener 7ec04c66cb docs: deep review fixes — sync command tables to actual 47 commands
- Command count 46 → 47 (added following)
- bilibili row: add 'following' command
- github row: remove non-existent 'trending', change mode to Public
- SKILL.md: add following, xueqiu hot/search commands
- Fix github section from 'trending=browser' to 'public'
2026-03-15 18:41:14 +08:00

5.4 KiB
Raw Blame History

OpenCLI

把任何网站变成你的命令行工具。
零风控 · 复用 Chrome 登录 · AI 自动发现接口

English

npm

OpenCLI 通过 Chrome 浏览器 + Playwright MCP Bridge 扩展,将任何网站变成命令行工具。不存密码、不泄 token,直接复用浏览器已登录状态。

✨ 亮点

  • 🌐 47 个命令,17 个站点 — B站、知乎、小红书、Twitter、Reddit、雪球(xueqiu)、GitHub、V2EX、Hacker News、BBC、微博、BOSS直聘、Yahoo Finance、路透社、什么值得买、携程、YouTube
  • 🔐 零风控 — 复用 Chrome 登录态,无需存储任何凭证
  • 🤖 AI 原生 — explore 自动发现 API,synthesize 生成适配器,cascade 探测认证策略
  • 🚀 动态加载引擎 — 只需将 .ts 或 .yaml 适配器放入 clis/ 文件夹即可自动注册生效
  • 📝 双引擎架构设计:
    • YAML 声明式引擎:大部分适配器只需极简的 ~30 行 YAML 声明
    • 原生浏览器注入引擎:提供高级 TS API(installInterceptor、autoScroll)轻松实现 XHR 劫持、GraphQL 解包及状态库注入

🚀 快速开始

npm 全局安装(推荐)

npm install -g @jackwener/opencli

直接使用:

opencli list                              # 查看所有命令
opencli hackernews top --limit 5          # 公共 API,无需浏览器
opencli bilibili hot --limit 5            # 浏览器命令
opencli zhihu hot -f json                 # JSON 输出

从源码安装

git clone git@github.com:jackwener/opencli.git
cd opencli && npm install
npx tsx src/main.ts list

更新

# npm 全局更新
npm update -g @jackwener/opencli

# 或直接安装最新版
npm install -g @jackwener/opencli@latest

📋 前置要求

浏览器命令需要:

  1. Chrome 浏览器正在运行,且已登录目标网站(如 bilibili.com、zhihu.com、xiaohongshu.com)
  2. 安装 Playwright MCP Bridge 扩展
  3. 在 MCP 配置中设置 PLAYWRIGHT_MCP_EXTENSION_TOKEN(从扩展设置页获取):
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest", "--extension"],
      "env": {
        "PLAYWRIGHT_MCP_EXTENSION_TOKEN": "<your-token>"
      }
    }
  }
}

公共 API 命令(hackernews、github search、v2ex)无需浏览器。

⚠️ 重要:浏览器命令复用你的 Chrome 登录状态。运行命令前,你必须已在 Chrome 中登录目标网站。如果获取到空数据或报错,请先检查登录状态。

📦 内置命令

站点 命令 模式
bilibili hot search me favorite history feed user-videos subtitle dynamic ranking following 🔐 浏览器
zhihu hot search question 🔐 浏览器
xiaohongshu search notifications feed me user 🔐 浏览器
xueqiu feed hot-stock hot search stock watchlist 🔐 浏览器
twitter trending bookmarks profile search timeline 🔐 浏览器
reddit hot frontpage search subreddit 🔐 浏览器
weibo hot 🔐 浏览器
boss search 🔐 浏览器
youtube search 🔐 浏览器
yahoo-finance quote 🔐 浏览器
reuters search 🔐 浏览器
smzdm search 🔐 浏览器
ctrip search 🔐 浏览器
github search 🌐 公共 API
v2ex hot latest topic 🌐 公共 API
hackernews top 🌐 公共 API
bbc news 🌐 公共 API

🎨 输出格式

opencli bilibili hot -f table   # 默认:表格
opencli bilibili hot -f json    # JSON(可 pipe 给 jq 或 AI agent)
opencli bilibili hot -f md      # Markdown
opencli bilibili hot -f csv     # CSV
opencli bilibili hot -v         # 详细模式:展示 pipeline 每步数据

🧠 AI Agent 工作流

# 1. Deep Explore — 网络拦截 → 响应分析 → 能力推理 → 框架检测
opencli explore https://example.com --site mysite

# 2. Synthesize — 从探索成果物生成 evaluate-based YAML 适配器
opencli synthesize mysite

# 3. Generate — 一键完成:探索 → 合成 → 注册
opencli generate https://example.com --goal "hot"

# 4. Strategy Cascade — 自动降级探测:PUBLIC → COOKIE → HEADER
opencli cascade https://api.example.com/data

探索结果输出到 .opencli/explore/<site>/:

  • manifest.json — 站点元数据、框架检测结果
  • endpoints.json — 评分排序的 API 端点,含响应 schema
  • capabilities.json — 推理出的能力及置信度
  • auth.json — 认证策略建议

🔧 创建新命令

查看 CLI-CREATOR.md 了解完整的适配器开发指南(YAML pipeline + TypeScript)。

版本发布

# 升级版本号
npm version patch   # 0.1.0 → 0.1.1
npm version minor   # 0.1.0 → 0.2.0
npm version major   # 0.1.0 → 1.0.0

# 推送 tag,GitHub Actions 自动发 release 并发布到 npm
git push --follow-tags

📄 License

MIT