Communitygithub.com

browser-automation

데스크톱 및 브라우저 자동화를 위한 기술로, Playwright/agent-browser를 통한 웹 페이지 조작과 OpenReverse를 통한 Windows 데스크톱 앱 제어를 지원합니다.

browser-automation란 무엇인가요?

이 스킬은 AI 에이전트(Claude Code, Codex, Cursor 등)가 Playwright/agent-browser 도구를 사용하여 웹 브라우저를 자동으로 제어하고, OpenReverse 프레임워크를 사용하여 Windows 데스크톱 애플리케이션을 조작할 수 있도록 지원합니다. 주요 사용 사례로는 웹 페이지 요소 클릭/폼 작성/스크린샷, IDA Pro, x64dbg, Wireshark와 같은 역공학 도구의 GUI 자동화, 네트워크 트래픽 캡처 등이 포함됩니다. 스킬은 사용 전에 tool-index.md를 확인하여 실제 도구 경로를 검증하고, 도구가 없을 경우 자동 부트스트랩(bootstrap)을 실행하거나 수동 설치를 안내합니다. 작업 흐름은 주로 1) 도구 경로 확인 → 2) 스냅샷/작업 실행 → 3) 결과 수집 → 4) 작업 완료 후 정리(close) 순서로 진행되며, 각 단계를 반드시 실행해야 합니다.

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

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

데스크톱 및 브라우저 자동화 (Desktop & Browser Automation)

즉시 실행 요구사항 (읽은 후 바로 실행)

  1. 지금: 현재 작업이 이 스킬의 적용 범위에 해당하는지 확인
  2. 지금: ../tool-index.md를 읽고 도구 가용성 및 실제 경로 검증
  3. 다음: 도구가 없으면 부트스트랩을 호출하고, 경로를 추측하지 않음
  4. 실행: "워크플로"의 첫 단계로 진입하여 실행하고, 확인 상태에 머무르지 않음

적용 범위

다음 시나리오의 작업에 이 스킬을 사용합니다:

브라우저 시나리오 (Playwright / agent-browser)

  • 웹 페이지 열기 및 페이지 요소 조작 (클릭, 폼 작성, 제출)
  • 페이지 콘텐츠 스크래핑 또는 스크린샷
  • 로그인 플로우 자동화
  • 침투 테스트 중 웹 페이지와 상호작용 (페이로드 전송, XSS 트리거)
  • 캡차 페이지 자동화 처리
  • 대량 폼 제출

데스크톱 애플리케이션 시나리오 (OpenReverse)

  • Windows 데스크톱 애플리케이션 조작 (IDA Pro, x64dbg, Wireshark 등)
  • 시각 기반 상호작용 필요 (CUA 모드)
  • 구조화된 UI 조작 필요 (UIA 모드)
  • 데스크톱 앱의 네트워크 트래픽 관찰 (내장 mitmproxy)
  • 역공학 도구의 GUI 자동화
  • 블랙박스 테스트 데스크톱 소프트웨어

다른 도구와의 역할 분담

시나리오사용 도구
웹 페이지 조작 (브라우저 내)Playwright / agent-browser
데스크톱 앱 조작 (Windows GUI)OpenReverse
패킷 캡처, HTTP 요청 수집anything-analyzer 또는 OpenReverse network lane
JS 중단점, Hook, CDP 디버깅jshookmcp
서명 알고리즘 식별, 환경 복제js-reverse

간단한 판단 기준:

  • 대상이 웹 페이지 → Playwright
  • 대상이 Windows 데스크톱 앱 → OpenReverse
  • 둘 다 필요 → 조합 사용

파트 1: 브라우저 자동화 (Playwright / agent-browser)

핵심 워크플로

# 1. 페이지 열기
agent-browser open <url>

# 2. 상호작용 가능한 요소 가져오기 (@e1, @e2... 참조 반환)
agent-browser snapshot -i

# 3. 참조를 사용하여 요소 조작
agent-browser click @e1
agent-browser fill @e2 "text"

# 4. 완료 후 닫기
agent-browser close

명령어 참조

# 네비게이션
agent-browser open <url>
agent-browser close

# 페이지 스냅샷
agent-browser snapshot        # 전체 접근성 트리
agent-browser snapshot -i     # 상호작용 가능한 요소만 (권장)

# 상호작용 조작
agent-browser click @e1
agent-browser fill @e2 "text"
agent-browser type @e2 "text"
agent-browser press Enter
agent-browser scroll down 500

# 정보 가져오기
agent-browser get text @e1
agent-browser get title
agent-browser get url

# 대기
agent-browser wait @e1
agent-browser wait 2000
agent-browser wait --load networkidle

주의사항

  • 반드시 agent-browser close를 실행해야 프로세스 누수를 방지
  • 작업 전에 snapshot을 먼저 실행하고, 요소 참조를 추측하지 말 것
  • 폼 제출 후 wait --load networkidle로 페이지 안정화

파트 2: 데스크톱 애플리케이션 자동화 (OpenReverse)

개요

OpenReverse는 AI 에이전트를 위한 데스크톱 상호작용 및 증거 수집 프레임워크로, 다음을 지원합니다:

  • UIA 모드: Windows UI Automation, 구조화된 데스크톱 컨트롤 조작
  • CUA 모드: 시각 기반 상호작용 (Computer Use Agent), 복잡한 GUI에 적합
  • 네트워크 관찰: 내장 mitmproxy 프록시 + 로컬 캡처

상호작용 모드 선택

모드적합한 시나리오내부 기술
UIA대상 앱이 표준 Windows 컨트롤 사용 (버튼, 텍스트 박스, 리스트)Windows UI Automation API
CUA대상 앱 UI가 복잡하거나 비표준 컨트롤 사용 (IDA의 디스어셈블리 뷰, 커스텀 렌더링 UI)시각 인식 + 마우스/키보드

네트워크 관찰 모드

모드적합한 시나리오
프록시 레인대상 앱이 프록시를 구성할 수 있는 경우 (권장)
로컬 레인대상 앱이 프록시를 사용할 수 없어 로컬 캡처가 필요한 경우

설치 및 구성

# 1. 프로젝트 클론
git clone https://github.com/zhexulong/openreverse.git
cd openreverse

# 2. 의존성 설치
npm install

# 3. 에이전트 호스트에 연동 (Claude Code / Codex / Zed)
npm run init:agents -- --target=all /path/to/project

# 4. CUA 런타임 설치 (시각 기반 모드 필요시)
npm run install:cua-runtime
npm run doctor:cua-runtime

# 5. 네트워크 관찰 의존성 설치 (패킷 캡처 필요시)
npm run install:mitmproxy
npm run doctor:network

일반적인 조합

요구사항구성
데스크톱 앱만 조작UIA 또는 CUA, 네트워크 레인 미사용
데스크톱 앱 조작 + 패킷 캡처UIA/CUA + 프록시 레인
데스크톱 앱 조작 + 로컬 캡처UIA/CUA + 로컬 레인

역공학 시나리오 예시

시나리오: IDA Pro를 자동화하여 배치 분석 수행

1. OpenReverse CUA 모드로 IDA Pro 열기
2. 대상 바이너리 자동 로드
3. 분석 완료 대기
4. UI 조작을 통해 함수 목록 내보내기
5. 동시에 network lane으로 IDA의 네트워크 동작 관찰 (예: Lumina 요청)
시나리오: x64dbg 디버깅 자동화

1. OpenReverse UIA 모드로 x64dbg 시작
2. 대상 프로그램 로드
3. 중단점 설정
4. 실행 후 레지스터/메모리 변화 관찰
5. 스크린샷 저장하여 증거 확보

온디맨드 부트스트랩 (On-Demand Bootstrap)

자동화 가능 경계

도구자동 설치 가능설치 방법설명
Playwright✓npm + npx playwright install브라우저 자동화 엔진
agent-browser CLI✓npm install -g agent-browser브라우저 조작 CLI
Node.js✓winget선행 의존성
OpenReverse✗수동 clone + npm install실험 단계, 의존성 무거움
mitmproxy✗수동 설치OpenReverse 네트워크 관찰 의존성

부트스트랩 트리거

  • 브라우저 조작에 Playwright 부재 → 자동 부트스트랩
  • 데스크톱 조작에 OpenReverse 필요 → 사용자에게 수동 설치 안내 (전체 단계 제공)

OpenReverse 수동 설치 안내

AI가 데스크톱 앱 자동화가 필요하지만 OpenReverse가 설치되지 않은 것을 감지한 경우:

⚠️ **데스크톱 앱 자동화를 위해 OpenReverse가 필요합니다**

**설치 단계**:
1. `git clone https://github.com/zhexulong/openreverse.git`
2. `cd openreverse && npm install`
3. `npm run init:agents -- --target=all <프로젝트 경로>`
4. 시각 모드 필요시: `npm run install:cua-runtime`
5. 네트워크 관찰 필요시: `npm run install:mitmproxy`

**검증**: `npm run doctor:cua-runtime` 및 `npm run doctor:network`

라우팅 컨텍스트

상위 진입점: skills/SKILL.md (총괄), routing.md 적용 시나리오: 브라우저 또는 데스크톱 앱 자동화가 필요한 모든 작업 하위 출력:

  • 캡처된 요청 분석 필요 → anything-analyzer 또는 js-reverse
  • JS 디버깅/Hook 필요 → jshookmcp
  • 서명 알고리즘 복원 필요 → js-reverse
  • 데스크톱 앱이 역공학 도구 → ida-reverse/

동일 레벨 연관 모듈: js-reverse (브라우저 조작 후 JS 분석 필요), ida-reverse (OpenReverse로 IDA GUI 자동화 가능)

작업 완료 자가 점검 (완료 선언 전 반드시 통과)

  • 워크플로의 각 단계를 실제로 실행했습니까? (읽기만 한 것이 아닌가?)
  • tool-index를 기반으로 실제 도구 경로를 사용했습니까?
  • 재현 가능한 증거를 산출했습니까? (명령어/스크립트/스크린샷/보고서)?
  • RULES에서 요구하는 체크리스트 항목을 완료하고 기록했습니까?

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.

관련 스킬