jackwener--opencli
9b395f5cc3
E2E Headed Chrome / e2e-headed (macos-15) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (ubuntu-latest) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (windows-latest) (push) Has been cancelled
CI / build (macos-latest) (push) Has been cancelled
CI / build (ubuntu-latest) (push) Has been cancelled
CI / build (windows-latest) (push) Has been cancelled
CI / unit-test (push) Has been cancelled
CI / bun-test (push) Has been cancelled
CI / adapter-test (push) Has been cancelled
CI / smoke-test (macos-latest) (push) Has been cancelled
CI / smoke-test (ubuntu-latest) (push) Has been cancelled
Security Audit / audit (push) Has been cancelled
Build Chrome Extension / build (push) Has been cancelled
Trigger Website Rebuild (Docs Updated) / dispatch (push) Has been cancelled
290 行
13 KiB
TypeScript
290 行
13 KiB
TypeScript
import { defineConfig } from 'vitepress'
|
|
|
|
export default defineConfig({
|
|
base: '/docs/',
|
|
title: 'OpenCLI',
|
|
description: 'Make any website or Electron App your CLI — AI-powered, account-safe, self-healing.',
|
|
|
|
head: [
|
|
['meta', { property: 'og:title', content: 'OpenCLI Documentation' }],
|
|
['meta', { property: 'og:description', content: 'Make any website or Electron App your CLI.' }],
|
|
['meta', { name: 'twitter:card', content: 'summary_large_image' }],
|
|
],
|
|
|
|
locales: {
|
|
root: {
|
|
label: 'English',
|
|
lang: 'en',
|
|
themeConfig: {
|
|
nav: [
|
|
{ text: 'Guide', link: '/guide/getting-started' },
|
|
{ text: 'Adapters', link: '/adapters/' },
|
|
{ text: 'Developer', link: '/developer/contributing' },
|
|
{ text: 'Advanced', link: '/advanced/cdp' },
|
|
],
|
|
sidebar: {
|
|
'/guide/': [
|
|
{
|
|
text: 'Guide',
|
|
items: [
|
|
{ text: 'Getting Started', link: '/guide/getting-started' },
|
|
{ text: 'Installation', link: '/guide/installation' },
|
|
{ text: 'Comparison', link: '/comparison' },
|
|
{ text: 'Browser Bridge', link: '/guide/browser-bridge' },
|
|
{ text: 'Remote Orchestration', link: '/guide/remote-orchestration' },
|
|
{ text: 'Troubleshooting', link: '/guide/troubleshooting' },
|
|
{ text: 'Add an Electron App CLI', link: '/guide/electron-app-cli' },
|
|
{ text: 'Extending OpenCLI', link: '/guide/extending-opencli' },
|
|
{ text: 'Plugins', link: '/guide/plugins' },
|
|
],
|
|
},
|
|
],
|
|
'/adapters/': [
|
|
{
|
|
text: 'Adapters Overview',
|
|
items: [
|
|
{ text: 'All Adapters', link: '/adapters/' },
|
|
],
|
|
},
|
|
{
|
|
text: 'Browser Adapters',
|
|
collapsed: false,
|
|
items: [
|
|
{ text: 'Twitter / X', link: '/adapters/browser/twitter' },
|
|
{ text: 'Reddit', link: '/adapters/browser/reddit' },
|
|
{ text: 'Tieba', link: '/adapters/browser/tieba' },
|
|
{ text: 'Bilibili', link: '/adapters/browser/bilibili' },
|
|
{ text: 'Zhihu', link: '/adapters/browser/zhihu' },
|
|
{ text: 'Xiaohongshu', link: '/adapters/browser/xiaohongshu' },
|
|
{ text: 'Rednote', link: '/adapters/browser/rednote' },
|
|
{ text: 'WeChat Channels (视频号)', link: '/adapters/browser/wechat-channels' },
|
|
{ text: 'Xiaoe', link: '/adapters/browser/xiaoe' },
|
|
{ text: 'Weibo', link: '/adapters/browser/weibo' },
|
|
{ text: 'YouTube', link: '/adapters/browser/youtube' },
|
|
{ text: 'Xueqiu', link: '/adapters/browser/xueqiu' },
|
|
{ text: 'V2EX', link: '/adapters/browser/v2ex' },
|
|
{ text: 'Bloomberg', link: '/adapters/browser/bloomberg' },
|
|
{ text: 'LinkedIn', link: '/adapters/browser/linkedin' },
|
|
{ text: 'Coupang', link: '/adapters/browser/coupang' },
|
|
{ text: 'BOSS Zhipin', link: '/adapters/browser/boss' },
|
|
{ text: '51job', link: '/adapters/browser/51job' },
|
|
{ text: 'PowerChina', link: '/adapters/browser/powerchina' },
|
|
{ text: 'Ctrip', link: '/adapters/browser/ctrip' },
|
|
{ text: 'Booking.com', link: '/adapters/browser/booking' },
|
|
{ text: 'GeoGebra', link: '/adapters/browser/geogebra' },
|
|
{ text: 'Reuters', link: '/adapters/browser/reuters' },
|
|
{ text: 'HLTV', link: '/adapters/browser/hltv' },
|
|
{ text: 'SMZDM', link: '/adapters/browser/smzdm' },
|
|
{ text: 'Jike', link: '/adapters/browser/jike' },
|
|
{ text: 'Jimeng', link: '/adapters/browser/jimeng' },
|
|
{ text: 'Yollomi', link: '/adapters/browser/yollomi' },
|
|
{ text: 'LINUX DO', link: '/adapters/browser/linux-do' },
|
|
{ text: 'Band', link: '/adapters/browser/band' },
|
|
{ text: 'Chaoxing', link: '/adapters/browser/chaoxing' },
|
|
{ text: 'Grok', link: '/adapters/browser/grok' },
|
|
{ text: 'Kimi', link: '/adapters/browser/kimi' },
|
|
{ text: 'Amazon', link: '/adapters/browser/amazon' },
|
|
{ text: '1688', link: '/adapters/browser/1688' },
|
|
{ text: 'Gitee', link: '/adapters/browser/gitee' },
|
|
{ text: 'Gemini', link: '/adapters/browser/gemini' },
|
|
{ text: 'Claude', link: '/adapters/browser/claude' },
|
|
{ text: 'Yuanbao', link: '/adapters/browser/yuanbao' },
|
|
{ text: 'NotebookLM', link: '/adapters/browser/notebooklm' },
|
|
{ text: 'WeRead', link: '/adapters/browser/weread' },
|
|
{ text: 'Douban', link: '/adapters/browser/douban' },
|
|
{ text: 'Sina Blog', link: '/adapters/browser/sinablog' },
|
|
{ text: 'Substack', link: '/adapters/browser/substack' },
|
|
{ text: 'Pixiv', link: '/adapters/browser/pixiv' },
|
|
{ text: 'Douban', link: '/adapters/browser/douban' },
|
|
{ text: 'Doubao', link: '/adapters/browser/doubao' },
|
|
{ text: 'Facebook', link: '/adapters/browser/facebook' },
|
|
{ text: 'Google', link: '/adapters/browser/google' },
|
|
{ text: 'IMDb', link: '/adapters/browser/imdb' },
|
|
{ text: 'Indeed', link: '/adapters/browser/indeed' },
|
|
{ text: 'Upwork', link: '/adapters/browser/upwork' },
|
|
{ text: 'Instagram', link: '/adapters/browser/instagram' },
|
|
{ text: 'JD.com', link: '/adapters/browser/jd' },
|
|
{ text: 'Medium', link: '/adapters/browser/medium' },
|
|
{ text: 'Mercury', link: '/adapters/browser/mercury' },
|
|
{ text: 'Mubu', link: '/adapters/browser/mubu' },
|
|
{ text: 'TikTok', link: '/adapters/browser/tiktok' },
|
|
{ text: 'Web (Generic)', link: '/adapters/browser/web' },
|
|
{ text: 'Weixin', link: '/adapters/browser/weixin' },
|
|
{ text: 'Xianyu', link: '/adapters/browser/xianyu' },
|
|
{ text: 'Quark', link: '/adapters/browser/quark' },
|
|
{ text: 'Uiverse', link: '/adapters/browser/uiverse' },
|
|
{ text: 'Nowcoder', link: '/adapters/browser/nowcoder' },
|
|
{ text: 'Eastmoney', link: '/adapters/browser/eastmoney' },
|
|
{ text: 'TDX', link: '/adapters/browser/tdx' },
|
|
{ text: 'THS', link: '/adapters/browser/ths' },
|
|
{ text: 'Dianping', link: '/adapters/browser/dianping' },
|
|
{ text: 'Slock', link: '/adapters/browser/slock' },
|
|
],
|
|
},
|
|
{
|
|
text: 'Public API Adapters',
|
|
collapsed: false,
|
|
items: [
|
|
{ text: 'HackerNews', link: '/adapters/browser/hackernews' },
|
|
{ text: 'Dev.to', link: '/adapters/browser/devto' },
|
|
{ text: 'Juejin', link: '/adapters/browser/juejin' },
|
|
{ text: 'Dictionary', link: '/adapters/browser/dictionary' },
|
|
{ text: 'BBC', link: '/adapters/browser/bbc' },
|
|
{ text: 'Apple Podcasts', link: '/adapters/browser/apple-podcasts' },
|
|
{ text: 'Xiaoyuzhou', link: '/adapters/browser/xiaoyuzhou' },
|
|
{ text: 'Yahoo Finance', link: '/adapters/browser/yahoo-finance' },
|
|
{ text: 'Internet Archive', link: '/adapters/browser/archive' },
|
|
{ text: 'arXiv', link: '/adapters/browser/arxiv' },
|
|
{ text: 'dblp', link: '/adapters/browser/dblp' },
|
|
{ text: 'PubMed', link: '/adapters/browser/pubmed' },
|
|
{ text: 'Semantic Scholar', link: '/adapters/browser/semanticscholar' },
|
|
{ text: 'paperreview.ai', link: '/adapters/browser/paperreview' },
|
|
{ text: 'Barchart', link: '/adapters/browser/barchart' },
|
|
{ text: 'Hugging Face', link: '/adapters/browser/hf' },
|
|
{ text: 'Sina Finance', link: '/adapters/browser/sinafinance' },
|
|
{ text: 'Spotify', link: '/adapters/browser/spotify' },
|
|
{ text: 'Jira', link: '/adapters/browser/jira' },
|
|
{ text: 'Confluence', link: '/adapters/browser/confluence' },
|
|
{ text: 'Chess.com', link: '/adapters/browser/chess' },
|
|
{ text: 'Stack Overflow', link: '/adapters/browser/stackoverflow' },
|
|
{ text: 'Wikipedia', link: '/adapters/browser/wikipedia' },
|
|
{ text: 'LessWrong', link: '/adapters/browser/lesswrong' },
|
|
{ text: 'Lobsters', link: '/adapters/browser/lobsters' },
|
|
{ text: 'Steam', link: '/adapters/browser/steam' },
|
|
],
|
|
},
|
|
{
|
|
text: 'Desktop Adapters',
|
|
collapsed: false,
|
|
items: [
|
|
{ text: 'Cursor', link: '/adapters/desktop/cursor' },
|
|
{ text: 'Trae CN', link: '/adapters/desktop/trae-cn' },
|
|
{ text: 'Codex', link: '/adapters/desktop/codex' },
|
|
{ text: 'Antigravity', link: '/adapters/desktop/antigravity' },
|
|
{ text: 'ChatGPT', link: '/adapters/desktop/chatgpt' },
|
|
{ text: 'ChatWise', link: '/adapters/desktop/chatwise' },
|
|
{ text: 'Discord', link: '/adapters/desktop/discord' },
|
|
{ text: 'Doubao App', link: '/adapters/desktop/doubao-app' },
|
|
{ text: 'Trae SOLO', link: '/adapters/desktop/trae-solo' },
|
|
],
|
|
},
|
|
],
|
|
'/developer/': [
|
|
{
|
|
text: 'Developer Guide',
|
|
items: [
|
|
{ text: 'Contributing', link: '/developer/contributing' },
|
|
{ text: 'Testing', link: '/developer/testing' },
|
|
{ text: 'Architecture', link: '/developer/architecture' },
|
|
{ text: 'YAML Adapter Guide (Deprecated)', link: '/developer/yaml-adapter' },
|
|
{ text: 'TypeScript Adapter Guide', link: '/developer/ts-adapter' },
|
|
{ text: 'AI Workflow', link: '/developer/ai-workflow' },
|
|
],
|
|
},
|
|
{
|
|
text: 'Conventions',
|
|
items: [
|
|
{ text: 'Listing↔Detail ID Pairing', link: '/conventions/listing-detail-id-pairing' },
|
|
{ text: 'Convention Audit', link: '/conventions/convention-audit' },
|
|
],
|
|
},
|
|
],
|
|
'/conventions/': [
|
|
{
|
|
text: 'Conventions',
|
|
items: [
|
|
{ text: 'Listing↔Detail ID Pairing', link: '/conventions/listing-detail-id-pairing' },
|
|
{ text: 'Convention Audit', link: '/conventions/convention-audit' },
|
|
],
|
|
},
|
|
],
|
|
'/advanced/': [
|
|
{
|
|
text: 'Advanced',
|
|
items: [
|
|
{ text: 'Chrome DevTools Protocol', link: '/advanced/cdp' },
|
|
{ text: 'Electron Apps', link: '/advanced/electron' },
|
|
{ text: 'Remote Chrome', link: '/advanced/remote-chrome' },
|
|
{ text: 'Download Support', link: '/advanced/download' },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
},
|
|
},
|
|
zh: {
|
|
label: '中文',
|
|
lang: 'zh-CN',
|
|
link: '/zh/',
|
|
themeConfig: {
|
|
nav: [
|
|
{ text: '指南', link: '/zh/guide/getting-started' },
|
|
{ text: '适配器', link: '/zh/adapters/' },
|
|
{ text: '开发者', link: '/zh/developer/contributing' },
|
|
{ text: '进阶', link: '/zh/advanced/cdp' },
|
|
],
|
|
sidebar: {
|
|
'/zh/guide/': [
|
|
{
|
|
text: '指南',
|
|
items: [
|
|
{ text: '快速开始', link: '/zh/guide/getting-started' },
|
|
{ text: '安装', link: '/zh/guide/installation' },
|
|
{ text: 'Browser Bridge', link: '/zh/guide/browser-bridge' },
|
|
{ text: '给新 Electron 应用生成 CLI', link: '/zh/guide/electron-app-cli' },
|
|
{ text: '扩展 OpenCLI', link: '/zh/guide/extending-opencli' },
|
|
{ text: '插件', link: '/zh/guide/plugins' },
|
|
],
|
|
},
|
|
],
|
|
'/zh/adapters/': [
|
|
{
|
|
text: '适配器概览',
|
|
items: [
|
|
{ text: '所有适配器', link: '/zh/adapters/' },
|
|
],
|
|
},
|
|
],
|
|
'/zh/developer/': [
|
|
{
|
|
text: '开发者指南',
|
|
items: [
|
|
{ text: '贡献指南', link: '/zh/developer/contributing' },
|
|
],
|
|
},
|
|
],
|
|
'/zh/advanced/': [
|
|
{
|
|
text: '进阶',
|
|
items: [
|
|
{ text: 'Chrome DevTools Protocol', link: '/zh/advanced/cdp' },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
themeConfig: {
|
|
search: {
|
|
provider: 'local',
|
|
},
|
|
|
|
socialLinks: [
|
|
{ icon: 'github', link: 'https://github.com/jackwener/opencli' },
|
|
{ icon: 'npm', link: 'https://www.npmjs.com/package/@jackwener/opencli' },
|
|
],
|
|
|
|
editLink: {
|
|
pattern: 'https://github.com/jackwener/opencli/edit/main/docs/:path',
|
|
text: 'Edit this page on GitHub',
|
|
},
|
|
|
|
footer: {
|
|
message: 'Released under the Apache-2.0 License.',
|
|
copyright: 'Copyright © 2024-present jackwener',
|
|
},
|
|
},
|
|
})
|