Sobre o projeto
OpenCLI é uma ferramenta de linha de comando que conecta sites, sessões de navegador, aplicativos Electron e ferramentas locais em interfaces determinísticas para humanos e agentes de IA. Ela oferece três principais superfícies de automação: adaptadores integrados para sites populares, controle de navegador por agentes de IA e um hub CLI para ferramentas locais.
**Capacidades Principais**
1. **Adaptadores Integrados**: O OpenCLI vem com adaptadores para mais de 100 sites, incluindo Bilibili, Zhihu, Xiaohongshu, Reddit, HackerNews, Twitter/X, LinkedIn, Amazon, Upwork, Midjourney e muitos outros. Cada adaptador expõe comandos específicos do site, como `opencli bilibili hot`, `opencli twitter trending` ou `opencli hackernews top`.
2. **Controle de Navegador por Agentes de IA**: Instale a skill `opencli-browser` em agentes de IA (Claude Code, Cursor, etc.) para permitir que eles naveguem, cliquem, digitem, preencham formulários, extraiam dados e inspecionem qualquer página através da sua sessão do Chrome com login. O agente usa snapshots estruturados do DOM em vez de capturas de tela para interação confiável.
3. **CLI Hub**: Passagem unificada para ferramentas de linha de comando existentes, como `gh`, `docker`, `vercel`, `wrangler`, `obsidian`, `longbridge`, `lark-cli`, `ntn` (Notion), `dws` (DingTalk), `wecom-cli`, `tg`, `discord` e `wx`. Registre ferramentas personalizadas com `opencli external register`.
4. **Adaptadores para Aplicativos Desktop**: Controle aplicativos Electron como Cursor, Trae CN, Codex, Antigravity, ChatGPT App, ChatWise, Qoder, Discord, Doubao e Trae SOLO via Chrome DevTools Protocol.
**Instalação**
O OpenCLI requer Node.js >= 20.18.1. Instale via npm (`npm install -g @jackwener/opencli`) ou use o aplicativo desktop OpenCLIApp para macOS/Windows. Uma extensão do Chrome (Browser Bridge) conecta o OpenCLI ao seu navegador, disponível na Chrome Web Store ou por instalação manual.
**Primitivas de Automação de Navegador**
O comando `opencli browser` fornece primitivas para automação de navegador: `open`, `state`, `click`, `type`, `fill`, `select`, `keys`, `wait`, `get`, `find`, `extract`, `frames`, `screenshot`, `scroll`, `back`, `eval`, `network`, `tab list`, `tab new`, `tab select`, `tab close`, `init`, `verify` e `close`. As sessões são gerenciadas com nomes explícitos de sessão, e as abas podem ser alvo individualmente.
**Desenvolvimento de Adaptadores**
Escreva novos adaptadores de ponta a ponta usando a skill `opencli-adapter-author`. O fluxo de trabalho inclui reconhecimento do site, descoberta de endpoints, seleção de autenticação (PUBLIC/COOKIE/INTERCEPT/UI/LOCAL), decodificação de campos e verificação. O conhecimento do site persiste localmente para reutilização entre adaptadores.
**Suporte a Download**
Baixe imagens, vídeos e artigos de plataformas suportadas, incluindo Xiaohongshu, Bilibili, Twitter, Douban, Pixiv, 1688, Xiaoyuzhou (áudio e transcrições), Zhihu (artigos Markdown) e Weixin (artigos WeChat). Downloads de vídeo exigem `yt-dlp`.
**Formatos de Saída**
Todos os comandos suportam `--format` com `table` (padrão), `json`, `yaml`, `md` e `csv` para envio via pipe para jq, LLMs ou planilhas.
**Plugins**
Estenda o OpenCLI com plugins da comunidade via `opencli plugin install github:user/repo`. Os plugins disponíveis incluem GitHub Trending, agregador de tendências multiplataforma, artigos quentes do Juejin, VK wall/feed/search e publicador de artigos do X.
**Configuração**
Variáveis de ambiente controlam seleção de perfil, posicionamento da janela (primeiro plano/segundo plano), persistência de sessão, timeouts, endpoints CDP e registro verbose. Os códigos de saída seguem o padrão Unix `sysexits.h` para integração com CI/scripts.
**Licença**: Apache-2.0
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.