설정 가이드
세 부분이 함께 동작합니다. Chrome 확장 프로그램, 사용자 컴퓨터의 서버, 그리고 wcr 명령(CLI 및 MCP 서버)입니다. 모든 것이 로컬에서 실행됩니다.
your AI assistant / script ──▶ wcr ──HTTP──▶ local server ◀──WebSocket── Chrome extension ──▶ ChatGPT, Gemini, …
127.0.0.1:8787얼리 액세스
WebCodeReview는 아직 일반에 공개되어 설치할 수 있는 상태가 아닙니다. wcr 명령줄 도구(npm 패키지 @webcodereview/cli)와 Chrome 웹 스토어 등록은 곧 제공될 예정입니다. 얼리 액세스 사용자는 이메일로 설치 안내를 받습니다. 대기자 명단에 등록하세요. 이 페이지의 나머지는 두 부분을 모두 설치한 뒤에 참고하는 자료입니다.
1. 서버와 wcr
Node.js 20 이상이 필요합니다. 서버는 127.0.0.1:8787에서만 수신 대기합니다. 처음 실행하면 페어링 토큰을 생성해 ~/.config/webcodereview/token에 저장합니다. wcr은 WCR_TOKEN 또는 해당 파일에서 토큰을 읽습니다. 서버는 백그라운드에서 시작되며(로그: ~/.config/webcodereview/server.log), WCR_PORT(기본값 8787)에서 응답하는 것이 없을 때(예: wcr status 실행 시) 시작됩니다. wcr serve로 포그라운드에서 실행할 수도 있습니다.
2. Chrome 확장 프로그램
사용하려는 AI 사이트에 로그인해 둔 Chrome 프로필에 확장 프로그램을 설치한 다음, 같은 프로필에서 각 사이트에 로그인하세요. 처음 설치하면 확장 프로그램이 환영 페이지를 엽니다.
3. 확장 프로그램과 서버 페어링
- 터미널에서
wcr setup을 실행하세요. 필요하면 서버를 시작하고, Chrome에서 확장 프로그램의 페어링 페이지를 엽니다. Chrome을 대신 열 수 없는 경우에는 해야 할 일을 알려 줍니다. - 페어링 토큰은 페이지 주소의
#뒤에 담겨 확장 프로그램에 전달되므로 네트워크로 전송되지 않습니다. 직접 복사하거나 붙여 넣을 것은 없습니다. - 그러면 팝업에 “이 컴퓨터의 wcr에 연결됨”라고 표시됩니다.
토큰이 더 이상 유효하지 않으면 팝업에 “페어링이 더 이상 유효하지 않음”라고 표시됩니다. wcr setup을 다시 실행하세요. 다음으로 연결을 확인할 수 있습니다.
wcr status한 번에 하나의 브라우저 또는 프로필만 연결할 수 있습니다. 두 번째가 연결하면 첫 번째는 꺼지며, 그 팝업에 “다른 브라우저가 연결을 가져감”라고 표시되고 “이 브라우저 사용” 버튼이 나타납니다.
4. 요청: wcr ask
# one provider
wcr ask claude "Review this function for race conditions: ..."
# several providers in parallel (comma-separated), prompt from a file
wcr ask chatgpt,gemini,claude -f review.md
# prompt from stdin, per-provider timeout in seconds, raw JSON output
git diff | wcr ask chatgpt,deepseek -t 240 --json제공자: chatgpt, gemini, claude, deepseek, grok. 기본 타임아웃은 제공자당 180초입니다. 한 제공자가 실패해도(로그인되지 않음, 인증 확인 화면, 타임아웃) 나머지는 결과를 돌려주며, 종료 코드는 0이 아닙니다.
다섯 제공자(ChatGPT, Gemini, Claude, DeepSeek, Grok) 모두 2026-10-12에 실제 사이트에서 검증했습니다. 채팅 사이트는 페이지를 자주 바꾸므로, 확장 프로그램이 업데이트될 때까지 제공자가 작동하지 않을 수 있습니다.
5. AI 코딩 어시스턴트에서 사용하기 (MCP)
wcr mcp는 표준 stdio MCP 서버이므로 어떤 MCP 클라이언트에서도 실행할 수 있습니다. 도구는 다음과 같습니다.
| 도구 | 용도 |
|---|---|
wcr_review_submit + wcr_review_result | 여러 제공자에 대한 리뷰를 시작한 뒤 폴링합니다(폴링마다 최대 50초 대기). 기본적으로 이것을 사용하세요. |
wcr_ask, wcr_ask_many | 블로킹 방식이며 호출당 30~180초가 걸립니다. 도구 타임아웃이 긴 클라이언트에서만 사용하세요. |
wcr_automate | 브라우저 자동화입니다. allowDomains가 필수입니다. 확장 프로그램에서 WebCodeReview에 로그인되어 있어야 합니다. |
wcr_status | 확장 프로그램이 연결되어 있나요? |
중요한 것은 클라이언트의 호출당 도구 타임아웃입니다. 3개 제공자 리뷰는 최대 약 270초가 걸릴 수 있기 때문입니다. 리뷰 작업은 서버 메모리에 있으므로 재시작하면 사라지고, 개별적으로 취소할 수 없습니다.
자동 브라우징에는 로그인이 필요합니다
코드 리뷰에는 계정이 필요 없습니다. 자동 브라우징만 계정이 필요한 유일한 기능입니다. 확장 프로그램 팝업을 열고, “자동 브라우징” 행(로그인하기 전에는 “로그인 후 사용할 수 있습니다”라고 표시됩니다)에서 “Google 계정으로 계속하기” 버튼을 클릭한 다음 Chrome 자체 창에서 Google 계정을 선택하세요. 그런 다음 “자동 브라우징” 스위치를 켜면 Chrome이 모든 웹사이트에 대한 액세스 허용을 요청합니다. 팝업 상단의 “로그인” 칩에서도 로그인을 시작할 수 있습니다. 원클릭 로그인이 작동하지 않으면 “웹사이트에서 로그인하기” 버튼을 사용하고 webcodereview.com/device에서 브라우저를 승인하세요. 스위치를 끄면 자동화는 중지되지만 해당 권한은 철회되지 않습니다. 완전히 취소하려면 chrome://extensions를 열어 WebCodeReview를 선택하고 사이트 액세스를 변경하세요.
Claude Code (테스트 완료)
claude mcp add wcr -- wcr mcp
# add --scope user to make it available in every project실제 도구 호출로 처음부터 끝까지 테스트했습니다. 330초짜리 도구 호출이 정상적으로 반환되었습니다(Claude Code v2.1.222에서 측정).
Codex (아직 검증되지 않음)
codex mcp add wcr -- wcr mcp또는 ~/.codex/config.toml에:
[mcp_servers.wcr]
command = "wcr"
args = ["mcp"]
tool_timeout_sec = 120 # optional: the 60 s default is enough for wcr_review_result (waits <= 50 s)설정을 다시 읽어 본 것이 전부이며, Codex를 통한 도구 호출은 테스트하지 않았습니다. 기본 타임아웃 60초는 해당 문서에서 가져온 값이며 측정하지 않았습니다. 여러 제공자에 대한 리뷰에는 wcr_review_submit과 wcr_review_result를 사용하세요.
Cursor (아직 검증되지 않음)
~/.cursor/mcp.json(또는 프로젝트의 .cursor/mcp.json)에 추가하세요.
{ "mcpServers": { "wcr": { "command": "wcr", "args": ["mcp"] } } }전혀 테스트하지 않았습니다. 포럼에는 Cursor가 호출을 약 60초에서 끊고 이를 설정으로 바꿀 수 없다는 보고가 있지만, 직접 측정한 것은 아닙니다. 여러 제공자에 대한 리뷰에는 wcr_review_submit과 wcr_review_result를 사용하세요.
에이전트에게 사용할 때를 알려 주세요
리뷰는 30~180초가 걸리고 사용자의 채팅 계정을 사용하므로, 모든 수정이 아니라 영향이 크거나 보안에 민감한 변경에만 사용하도록 에이전트에게 요청하세요. 자료 전체를 프롬프트에 넣되 비밀 정보는 절대 넣지 말고, 답변은 확인된 결과가 아니라 검토해야 할 독립적인 의견으로 취급하세요. 결과에 프롬프트가 이미 제출되었을 수 있다고 나오면, 묻지 않고 다시 보내지 마세요. 서버 저장소에는 CLAUDE.md, AGENTS.md 또는 Cursor 규칙에 넣을 수 있는 완성된 문구가 agent-guide.md로 들어 있습니다.
보안 참고 사항
- 서버는 루프백에만 바인딩되며, 모든 호출에 페어링 토큰을 요구합니다.
- 브라우저의
Origin헤더가 있는 요청, JSON이 아닌 POST, 예상하지 못한Host헤더는 거부하므로, 방문 중인 웹 페이지가 서버를 조종할 수 없습니다. - 자동 브라우징에는 명시적인 도메인 허용 목록과, 확장 프로그램 팝업에서 직접 부여하는 추가 권한이 필요합니다.
- 확장 프로그램이 데이터로 하는 일은 개인정보 처리방침을 참고하세요.