Communitygithub.com

Automação (Desktop & Browser Automation)

Automatiza operações em navegadores web e aplicações desktop no Windows, usando Playwright/agent-browser para páginas web e OpenReverse para interfaces nativas.

O que é Automação (Desktop & Browser Automation)?

Este skill capacita agentes de IA a automatizar tanto navegadores web quanto aplicações desktop no Windows. Para navegadores, utiliza Playwright e o CLI agent-browser, permitindo abrir páginas, clicar em elementos, preencher formulários, capturar screenshots e aguardar carregamentos de forma estruturada. Para aplicações desktop, emprega o OpenReverse, que oferece dois modos: UIA (para controles Windows padrão, como botões e listas) e CUA (modo visual para interfaces complexas, como IDA Pro ou x64dbg). Além disso, o OpenReverse inclui um observador de rede integrado com mitmproxy para capturar tráfego local ou via proxy. O skill fornece fluxos de trabalho claros, comandos de exemplo e uma guia de auto-instalação para ferramentas como Playwright, agent-browser, OpenReverse e suas dependências, assegurando que o agente possa executar tarefas de automação sem adivinhar caminhos ou configurações.

Funciona com✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/browser-automation

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Automação (Desktop & Browser Automation) faz?

AÇÃO REQUERIDA (leia e execute imediatamente)

  1. AGORA: Confirme se a tarefa atual se enquadra no escopo deste skill
  2. AGORA: Leia ../tool-index.md e valide a disponibilidade e caminhos reais das ferramentas
  3. PRÓXIMO: Se faltar ferramentas, execute o bootstrap – não adivinhe caminhos
  4. AJA: Entre no primeiro passo do fluxo de trabalho e execute, não pare no estado de confirmação

Escopo de Aplicação

Use este skill quando a tarefa se enquadrar nos cenários abaixo:

Cenários de Navegador (Playwright / agent-browser)

  • Abrir páginas web e interagir com elementos (cliques, preenchimento de formulários, envio)
  • Extrair conteúdo de páginas ou tirar screenshots
  • Automatizar fluxos de login
  • Interagir com páginas web durante testes de penetração (enviar payloads, disparar XSS)
  • Processamento automatizado de páginas com CAPTCHA
  • Envio em lote de formulários

Cenários de Aplicação Desktop (OpenReverse)

  • Operar aplicações Windows (IDA Pro, x64dbg, Wireshark, etc.)
  • Interação orientada por visão (modo CUA)
  • Operações estruturadas de UI (modo UIA)
  • Observação de tráfego de rede de aplicações desktop (mitmproxy integrado)
  • Automação de GUI de ferramentas de engenharia reversa
  • Teste de caixa preta em softwares desktop

Divisão de Responsabilidades com Outras Ferramentas

CenárioFerramenta
Operar páginas web (dentro do navegador)Playwright / agent-browser
Operar aplicações desktop (GUI Windows)OpenReverse
Capturar pacotes, análise de requisições HTTPanything-analyzer ou network lane do OpenReverse
Debug de JS, Hook, CDPjshookmcp
Localizar algoritmos de assinatura, recriar ambientejs-reverse

Regra simples:

  • Alvo é página web → Playwright
  • Alvo é aplicação desktop Windows → OpenReverse
  • Ambos → Combinação dos dois

Parte 1: Automação de Navegador (Playwright / agent-browser)

Fluxo de Trabalho Principal

# 1. Abrir página
agent-browser open <url>

# 2. Obter elementos interativos (retorna referências @e1, @e2...)
agent-browser snapshot -i

# 3. Operar elementos usando referências
agent-browser click @e1
agent-browser fill @e2 "texto"

# 4. Fechar ao finalizar
agent-browser close

Referência de Comandos

# Navegação
agent-browser open <url>
agent-browser close

# Snapshot da página
agent-browser snapshot                 # Árvore de acessibilidade completa
agent-browser snapshot -i              # Apenas elementos interativos (recomendado)

# Interações
agent-browser click @e1
agent-browser fill @e2 "texto"
agent-browser type @e2 "texto"
agent-browser press Enter
agent-browser scroll down 500

# Obter informações
agent-browser get text @e1
agent-browser get title
agent-browser get url

# Aguardar
agent-browser wait @e1
agent-browser wait 2000
agent-browser wait --load networkidle

Observações

  • Obrigatório executar agent-browser close, senão há vazamento de processo
  • Tire snapshot antes de operar – não adivinhe referências de elementos
  • Após submeter formulários, use wait --load networkidle para aguardar estabilização

Parte 2: Automação de Aplicação Desktop (OpenReverse)

Visão Geral

OpenReverse é um framework de interação desktop e coleta de evidências voltado para Agentes de IA, com suporte a:

  • Modo UIA: Windows UI Automation – operação estruturada de controles desktop
  • Modo CUA: Interação baseada em visão (Computer Use Agent), ideal para GUIs complexas
  • Observação de Rede: Proxy mitmproxy integrado + captura local

Escolha do Modo de Interação

ModoCenário AdequadoBase
UIAAplicações com controles Windows padrão (botões, caixas de texto, listas)Windows UI Automation API
CUAAplicações com UI complexa ou controles não padrão (exibição de desmontagem do IDA, interfaces customizadas)Reconhecimento visual + teclado/mouse

Modos de Observação de Rede

ModoCenário Adequado
Proxy LaneAplicação pode configurar proxy (recomendado)
Local LaneAplicação não pode usar proxy – captura local

Instalação e Configuração

# 1. Clone o projeto
git clone https://github.com/zhexulong/openreverse.git
cd openreverse

# 2. Instale dependências
npm install

# 3. Conecte ao host do agente (Claude Code / Codex / Zed)
npm run init:agents -- --target=all /caminho/para/projeto

# 4. Instale o runtime CUA (se precisar do modo visual)
npm run install:cua-runtime
npm run doctor:cua-runtime

# 5. Instale dependências de observação de rede (se precisar capturar pacotes)
npm run install:mitmproxy
npm run doctor:network

Combinações Comuns

RequisitoConfiguração
Apenas operar aplicação desktopUIA ou CUA, sem network lane
Operar aplicação desktop + capturar pacotesUIA/CUA + proxy lane
Operar aplicação desktop + captura localUIA/CUA + local lane

Exemplos para Engenharia Reversa

Cenário: Automatizar IDA Pro para análise em lote

1. Use OpenReverse modo CUA para abrir IDA Pro
2. Carregue automaticamente o binário alvo
3. Aguarde a conclusão da análise
4. Exporte a lista de funções via UI
5. Simultaneamente, use network lane para observar o comportamento de rede do IDA (ex.: requisições Lumina)
Cenário: Automatizar x64dbg para debug

1. Use OpenReverse modo UIA para iniciar x64dbg
2. Carregue o programa alvo
3. Defina breakpoints
4. Execute e observe alterações em registradores/memória
5. Tire screenshot para evidências

Bootstrap Sob Demanda (On-Demand Bootstrap)

Limites de Automação

FerramentaInstalação AutomáticaMétodo de InstalaçãoObservação
Playwright✓npm + npx playwright installMotor de automação de navegador
agent-browser CLI✓npm install -g agent-browserCLI para operações no navegador
Node.js✓wingetDependência prévia
OpenReverse✗Clone manual + npm installEm fase experimental, dependências pesadas
mitmproxy✗Instalação manualDependência da observação de rede do OpenReverse

Gatilho de Bootstrap

  • Operações com navegador sem Playwright → bootstrap automático
  • Operações desktop sem OpenReverse → guiar usuário na instalação manual (fornecer passos completos)

Guia de Instalação Manual do OpenReverse

Se o AI detectar necessidade de automação desktop mas o OpenReverse não estiver instalado:

⚠️ **OpenReverse necessário para automação desktop**

**Passos de instalação**:
1. `git clone https://github.com/zhexulong/openreverse.git`
2. `cd openreverse && npm install`
3. `npm run init:agents -- --target=all <caminho/do/seu/projeto>`
4. Para modo visual: `npm run install:cua-runtime`
5. Para observação de rede: `npm run install:mitmproxy`

**Verificação**: `npm run doctor:cua-runtime` e `npm run doctor:network`

Contexto de Roteamento

Entrada upstream: skills/SKILL.md (controle geral), routing.md Cenários de aplicação: Qualquer tarefa que exija automação de navegador ou aplicação desktop Saída downstream:

  • Requisições capturadas precisam de análise → anything-analyzer ou js-reverse
  • Necessidade de debug/Hook em JS → jshookmcp
  • Necessidade de reconstruir algoritmo de assinatura → js-reverse
  • Aplicação desktop é ferramenta de engenharia reversa → ida-reverse/

Módulos associados no mesmo nível: js-reverse (após operações no navegador pode ser necessário analisar JS), ida-reverse (OpenReverse pode automatizar GUI do IDA)


Auto-verificação de Conclusão (MUST passar antes de declarar conclusão)

  • Eu executei cada passo do fluxo de trabalho (não apenas li)?
  • Eu usei caminhos reais de ferramentas com base no tool-index?
  • Eu produzi evidências reproduzíveis (comandos/scripts/screenshots/relatórios)?
  • Eu completei e registrei os itens do Checklist exigido pelas REGRAS?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

go-rust-reverse

Use for reverse engineering stripped Go and Rust binaries including runtime recognition, pclntab/moduel data recovery, panic strings, and idiomatic decompilation recovery.

Habilidades Relacionadas