jackwener 81c8ad522b docs: add npm install, update guide, Chinese README
- README.md: npm install -g as primary, update instructions, release guide
- README.zh-CN.md: full Chinese version with same structure
- SKILL.md: updated install section with npm global install
- Both READMEs link to each other
2026-03-15 07:20:27 +08:00

OpenCLI

Make any website your CLI.
Zero risk · Reuse Chrome login · AI-powered discovery

中文文档

npm

OpenCLI turns any website into a command-line tool by bridging your Chrome browser through Playwright MCP. No passwords stored, no tokens leaked — it just rides your existing browser session.

✨ Highlights

  • 🌐 25+ commands, 13 sites — Bilibili, Zhihu, GitHub, Twitter/X, Reddit, V2EX, Xiaohongshu, Hacker News…
  • 🔐 Account-safe — Reuses Chrome's logged-in state; your credentials never leave the browser
  • 🤖 AI Agent ready — explore discovers APIs, synthesize generates adapters, cascade finds auth strategies
  • 📝 Declarative YAML — Most adapters are ~30 lines of YAML pipeline
  • 🔌 TypeScript escape hatch — Complex adapters (XHR interception, GraphQL) in TS

🚀 Quick Start

npm install -g @jackwener/opencli

Then use directly:

opencli list                              # See all commands
opencli hackernews top --limit 5          # Public API, no browser
opencli bilibili hot --limit 5            # Browser command
opencli zhihu hot -f json                 # JSON output

Install from source

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

Update

# npm global
npm update -g @jackwener/opencli

# Or reinstall to latest
npm install -g @jackwener/opencli@latest

📋 Prerequisites

Browser commands need:

  1. Chrome running with the target site logged in
  2. Playwright MCP Bridge extension installed
  3. Click the extension icon to approve connection (or set PLAYWRIGHT_MCP_EXTENSION_TOKEN to auto-approve)

Public API commands (hackernews, github search, v2ex) need no browser at all.

📦 Built-in Commands

Site Commands Mode
bilibili hot search me favorite history feed user-videos 🔐 Browser
zhihu hot search question 🔐 Browser
xiaohongshu search feed 🔐 Browser
twitter trending 🔐 Browser
reddit hot 🔐 Browser
github trending search 🔐 / 🌐
v2ex hot latest topic 🌐 Public
hackernews top 🌐 Public

🎨 Output Formats

opencli bilibili hot -f table   # Default: rich table
opencli bilibili hot -f json    # JSON (pipe to jq, feed to AI)
opencli bilibili hot -f md      # Markdown
opencli bilibili hot -f csv     # CSV
opencli bilibili hot -v         # Verbose: show pipeline steps

🧠 AI Agent Workflow

# 1. Deep Explore — discover APIs, infer capabilities, detect framework
opencli explore https://example.com --site mysite

# 2. Synthesize — generate YAML adapters from explore artifacts
opencli synthesize mysite

# 3. Generate — one-shot: explore → synthesize → register
opencli generate https://example.com --goal "hot"

# 4. Strategy Cascade — auto-probe: PUBLIC → COOKIE → HEADER
opencli cascade https://api.example.com/data

Explore outputs to .opencli/explore/<site>/:

  • manifest.json — site metadata, framework detection
  • endpoints.json — scored API endpoints with response schemas
  • capabilities.json — inferred capabilities with confidence scores
  • auth.json — authentication strategy recommendations

🔧 Create New Commands

See SKILL.md for the full adapter guide (YAML pipeline + TypeScript).

Releasing New Versions

# Bump version
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

# Push tag to trigger GitHub Actions auto-release
git push --follow-tags

The CI will automatically build, create a GitHub release, and publish to npm.

📄 License

MIT

S
Description
Make Any Website & Tool Your CLI. A universal CLI Hub and AI-native runtime. Transform any website, Electron app, or local binary into a standardized command-line interface. Built for AI Agents to discover, learn, and execute tools seamlessly via a unified AGENT.md integration.
https://opencli.info/
Readme
1.7 MiB
0 Stars 1 Watchers 0 Forks
Languages
TypeScript 97.9%
JavaScript 1.9%
Shell 0.2%