
tacosyhorchata/pilot
Browser automation이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Chrome extension + MCP server - AI Agent는 실제 브라우저에서 탭을 제어하고 이미 로그인했습니다
개요
기본적으로 Native Playwright-backed browser sessions. QA 자동화에 필요한 Chrome 확장 없음. - (과태): 고립된 Playwright 브라우저 문맥. 병렬 QA 자동화 및 안정적인 스크린 샷을위한 지원 경로입니다. - (legacy/opt-in): 기존 쿠키와 로그인 세션이 필요할 때 실제 크롬 프로파일에 연결됩니다. 네이티브 모드는 chrome.tabs.captureVisibleTab()을 완전히 피합니다. 따라서 스크린 샷은 크롬에 의존하지 않습니다. 이것은 능동적이거나 확장 된 서비스 작업자가 신선합니다. 1. — Claude 부호, Cursor, 또는 어떤 MCP 클라이언트는 stdio를 통해 연결합니다 2. Localhost 3. 4. 5., Chrome 연장 붙잡는 API가 아닙니다 "Open https://example.com, 스크린 샷을 찍고 페이지를 요약하십시오." 확장 설치 없음. Chrome 전경 필요조건 없음. 전체 네이티브 모드 작동, 스트레스 명령 및 정리 체크를 위해, docs/native-mode.md를 참조하십시오. 다른 도구 덤프 50K + 페이지 당 chars 당신의 컨텍스트 창. 파일럿은 작은 것들을 유지:
개요(AI 번역)
기본적으로 Native Playwright-backed browser sessions. QA 자동화에 필요한 Chrome 확장 없음.
파일럿에는 두 개의 브라우저 백엔드가 있습니다.
- Native mode (기본값): 격리된 Playwright 브라우저 컨텍스트. 병렬 QA 자동화 및 안정적인 스크린 샷을위한 지원 경로입니다.
- Extension mode (legacy/opt-in): 기존 쿠키와 로그인 세션이 필요할 때 실제 크롬 프로파일에 연결됩니다.
네이티브 모드는 chrome.tabs.captureVisibleTab()를 완전히 피합니다. 그래서 스크린 샷은 크롬에 의존하지 않습니다. 이것은 능동적이거나 확장 된 서비스 작업자가 신선합니다.
어떻게 작동합니까?
- **Pilot은 MCP 서버 ** - Claude Code, Cursor 또는 MCP 클라이언트가 stdio를 통해 연결됩니다.
- **첫 번째 파일럿 프로세스가 브로커 ** 로컬 호스트에
- **Later Pilot 프로세스는 브로커 클라이언트로 연결 **
- 각 세션은 고립 된 기본 브라우저 context/page를 가져옵니다.
- Screenshots는 Chrome 확장 캡처 API가 아닌 Playwright에서 왔습니다.
빠른 시작
##1. MCP 서버 추가
현지 체크 아웃:
2. 그것을 사용하십시오
“Open https://example.com, 스크린 샷을 찍고 페이지를 요약하십시오.”
확장 설치 없음.
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
pilot — browser automation MCP for AI agents
Native Playwright-backed browser sessions by default. No Chrome extension required for QA automation.
Pilot has two browser backends:
- Native mode (default): isolated Playwright browser contexts. This is the supported path for parallel QA automation and reliable screenshots.
- Extension mode (legacy/opt-in): connects to your real Chrome profile when you need existing cookies and logged-in sessions.
Native mode avoids chrome.tabs.captureVisibleTab() entirely, so screenshots do not depend on Chrome being foregrounded, a tab being visibly active, or the extension service worker being fresh.
How it works
AI Agent → MCP Server → Broker on 127.0.0.1:3131 → Native browser session
(stdio) (first process owns broker) (Playwright context/page)
- Pilot runs as an MCP server — Claude Code, Cursor, or any MCP client connects via stdio
- The first Pilot process becomes the broker on localhost
- Later Pilot processes connect as broker clients
- Each session gets an isolated native browser context/page
- Screenshots come from Playwright, not the Chrome extension capture API
Quick Start
1. Add the MCP server
codex mcp add pilot \
--env PILOT_BROWSER_MODE=native \
--env PILOT_PROFILE=full \
-- npx -y pilot-mcp
For a local checkout:
npm install
npm run build
codex mcp add pilot \
--env PILOT_BROWSER_MODE=native \
--env PILOT_PROFILE=full \
-- node /absolute/path/to/pilot/dist/index.js
2. Use it
“Open https://example.com, take a screenshot, and summarize the page.”
No extension install. No Chrome foreground requirement.
For full native-mode operations, stress commands, and cleanup checks, see docs/native-mode.md.
Lean snapshots
Other tools dump 50K+ chars per page into your context window. Pilot keeps things small:
Other tools: navigate(58K) → navigate(58K) → answer = 116K chars
Pilot: navigate(2K) → navigate(2K) → snapshot(9K) = 13K chars
snapshot_diff shows only what changed between actions — no redundant re-reads.
Less context = faster responses, cheaper API calls, fewer hallucinations.
Pilot vs @playwright/mcp
| Pilot | @playwright/mcp | |
|---|---|---|
| Browser | Native Playwright context by default; real Chrome via legacy extension | New Chromium instance |
| Auth state | Native isolated by default; extension mode can use real Chrome cookies | Anonymous — manual setup |
설치
npx -y pilot-mcp설정
{
"mcpServers": {
"pilot": {
"command": "npx",
"args": ["-y", "pilot-mcp"],
"env": { "PILOT_PROFILE": "standard" }
}
}
}