자동화 호스트와 동의 앵커를 분리한다: 매트릭스, 런북, 공동 증빙
OpenClaw를 값싼 헤드리스 Linux VPS에 올려두고, Apple Silicon 임대 Mac은 VNC로 직접 화면을 열어 운용하는 이중 구조는 2026년에도 흔하다. 그런데 장애의 중심은 종종 패키지 설치 실패가 아니라, 아키텍처 다이어그램에 적히지 않은 책임 분리다. 즉 어떤 호스트가 macOS 전용 동의면—OAuth 루프백, QR 로그인, 시스템 설정 승인, DevTools에 가까운 브라우저 자동화—을 수행할지 명시되지 않으면, Linux 쪽 로그만으로는 재현성이 깨진다. Gateway 프로세스는 Linux에서도 뜰 수 있지만, 브라우저 동일 출처와 키체인 가정을 억지로 이관하면 운 좋게 한 번 돈 것처럼 보이는 유령 성공이 쌓인다. 이 글은 반복되는 통증을 여섯 유형으로 나누고, 역량 매트릭스로 경계를 고정한 뒤, 버전 동결부터 롤백 증거까지 열 단계 런북을 제시한다. 마지막으로 SSH 텍스트와 VNC 육안을 짧은 시간 창에서 맞추는 20분 공동 인수 표를 둔다. 심화는 공식 Docker Compose, CLI/Gateway 설치 판단표, 로컬 Mac·SSH 클라우드·VNC 원격 비교로 이어진다.
5.x 계열로 올리는 팀은 npm 해석 오류를 의심하기 쉬운데, 실제 현장에서는 세션 경계가 더 자주 범인이다. 데스크톱 세션이 없는 Ubuntu 서버에서는 문서에 나온 시스템 설정 클릭을 그대로 재현할 수 없다. 반대로 임대 Mac을 SSH 포트 포워딩만으로 건드리면 브라우저 OAuth가 끝났는지 추측에 의존하게 된다. Linux는 systemd 사용자 유닛과 시스템 유닛 사이에서 프록시나 환경 블록이 갈라지고, macOS는 launchd 도메인과 TCC가 키체인·브라우저 프로필 가시성을 결정한다. OpenClaw Gateway와 마켓플레이스 하드닝 플러그인이 브라우저 경로로 기울수록, 감사팀은 UI 토글과 JSON 타임스탬프의 정합을 요구한다. 첫 유형은 PATH·런타임 분열이다. nvm, fnm, 배포판 번들 node가 공존하면 doctor와 실제 프로세스의 시맨틱 버전이 어긋난다. Linux에선 glibc·OpenSSL 조합이 조용히 네이티브 빌드를 깨뜨린다. 재설치 루프 전에 절대 경로 캡처가 우선이다. 둘째는 GUI 없이 OAuth·QR을 밀어붙이는 유형이다. 루프백 리스너와 같은 머신의 브라우저라는 전제가 깨지면 Gateway 로그는 타임아웃뿐이고 SSH 화면에는 클릭 대상이 없다. 여기엔 VNC 필수 라벨을 붙이는 편이 저렴하다. 셋째는 DevTools MCP·파일 피커처럼 OS마다 미세하게 다른 자동화다. 넷째는 systemd 대 launchd 세션 차이로 환경 변수가 한쪽만 비는 패턴이다. 다섯째는 증빙 부족이다. 여섯째는 Linux 시간 단가의 매력에 속아 동의 한 번이 며칠짜리 스크립트 실험으로 번지는 비용 착시다.
PATH·Node 표류: doctor와 Gateway 본체의 node 불일치. Linux에선 glibc/OpenSSL도 원인. 재설치 전 절대 경로로 고정.
GUI 없는 OAuth/QR: 루프백 전제 붕괴로 타임아웃 로그만 쌓임. 돌파가 아니라 VNC 필수로 표기.
브라우저 자동화 스택: MCP·피커는 OS별 함정. 동일 사용자 데스크톱이 없으면 주입 성공 같은 거짓 신호.
systemd vs launchd: 사용자/시스템 단위 환경 불일치, macOS에선 sudo 사용자 교차로 키체인 단절.
증거 간극: 감사 JSON과 UI 토글 시각 일치 요구. SSH 텍스트만으론 약함.
비용 착시: 저렴한 Linux 시간이 동의 공수 폭증을 가린다.
| 역량 | 헤드리스 Linux | macOS+임대 VNC |
|---|---|---|
| CLI 설치·데몬 | 강함: systemd·컨테이너로 반복 용이 | 가능. 슬립·임대 시간대 주의 |
| 루프백 Gateway 검증 | curl·ss는 강하나 브라우저 동일 출처는 설계 필요 | 강함: 로컬 브라우저=프로세스 |
| OAuth·QR·IM 로그인 | UI 없으면 고위험 | 필수 동일 사용자 GUI |
| 키체인·TCC류 동의 | 해당 없음(요구 자체가 오류) | 필수 |
| Chrome DevTools MCP | 헤드리스 가능하나 피커 함정 | 권장 체크리스트 |
| 감사 증빙 | 로그·메트릭 중심 | 로그+UI 토글 |
| 비용 구조 | 시간 단가 낮음·스크립트 교반 리스크 | 시간 단가 높음·티켓 시간 단축 |
표를 읽을 때 질문은 프로세스 기동 여부가 아니라 제3자가 같은 절차로 증빙까지 재현할 수 있느냐다. Linux는 아웃바운드 안정·수평 확장에 강하고 macOS+VNC는 동의 종료와 브라우저 로컬 검증의 닻이다. Gateway를 공개한다면 먼저 루프백 또는 사설 바인드를 확정하고 TLS 종료는 리버스 프록시에 맡기며 키 파일 권한을 널리 읽히게 두지 않는다. 이중 리스너는 성공/실패 로그가 교차해 원인 추적을 늦춘다. ss·lsof 표를 버전 스냅샷과 같은 묶음으로 보관하라. 임대 Mac에서는 동일 사용자 GUI 세션에 가두면 launchd 라벨·브라우저 프로필·키체인이 정렬된다. sudo로 사용자를 넘나들면 콘솔 캐시가 남아 설정이 바뀌었는데도 화면만 오래된 것처럼 보이는 고전 문제가 돌아온다. OPENCLAW_HOME류를 여러 호스트에서 쓸 때 OS 의미 차로 rsync가 캐시를 덮어쓰지 않도록 접두사를 분리하라.
헤드리스는 스케일을 늘리고, macOS+VNC는 클릭과 육안 증언을 남긴다. 둘 다 문서에 있어야 티켓이 닫힌다.
동결·백업: openclaw --version, node 절대 경로, 리스너, 설정 루트. Linux는 배포판·glibc·OpenSSL, Mac은 임대 ID·launchd 라벨.
역할 선언: Linux=릴레이 또는 순수 Gateway, macOS+VNC=동의 앵커. 모호함이 이중 리스너를 낳는다.
단일 Node 진입: doctor 캡처로 어떤 node인지 고정.
최소 CLI 설치: 릴리스 노트 우선. HTTPS_PROXY는 아웃바운드 프록시 글과 맞춘 뒤 핸드셰이크 오류를 읽는다.
디렉터리 온보딩: 로그·플러그인·홈 이름을 초기에 분리.
데몬·리스너: Linux는 systemd 사용자 또는 컨테이너, Mac은 launchd. ss/lsof 표를 즉시보낸다.
VNC 필수 단계 티켓화: 시스템 프롬프트, QR, 키체인, 동일 출처 증명은 GUI 세션.
스모크: 최소 채팅, doctor, 콘솔 푸터. Browser MCP는 전용 체크리스트.
교차 호스트 시각: OAuth 완료·Gateway 성공 라인·감사 JSON을 2분 이내로 대조.
롤백 증거: 포트 표, unit 대 plist 차이, 두 계열 로그. PID가 다르면 이중 인스턴스 의심.
openclaw --version command -v node; node -p "process.version" openclaw doctor openclaw gateway status || true command -v ss >/dev/null && ss -lntp || true lsof -nP -iTCP -sTCP:LISTEN 2>/dev/null | rg -i "openclaw|gateway|18789" || true
명령 이름은 설치판에 따른다. doctor에 폐지 필드 경고가 뜨면 SNS 조각이 아니라 마이그레이션 표를 정본으로 삼는다. Linux 리스너 매트릭스는 리버스 프록시 가이드와 세트로 보관하고, macOS에선 키체인 단계 중 사용자 교차 sudo를 피한다. 증빙 번들에 스크린샷을 넣을 때 타임존·NTP 오프셋을 한 줄 메모하면 OAuth 시각 오판을 줄인다. 플러그인 마켓 하드닝이 강해질수록 서명·권한 설명이 GUI 쪽으로 기울어 Linux 단독 완결 설계는 범위를 의도적으로 자르지 않으면 깨지기 쉽다.
| 검사 | VNC(macOS) | SSH(Linux 또는 Mac) | 합격 |
|---|---|---|---|
| 고유 리스너 | 브라우저 콘솔 선택 | ss/lsof 단일 primary | 유령 PID 없음 |
| doctor 클린 | 터미널 스샷 | 텍스트 로그 아카이브 | 버전 매트릭스 일치 |
| 프라이버시·키체인 | 시스템 설정 토글 | 대체 없음 | 도구 목록 일치 |
| OAuth 콜백 | 브라우저 완료 시각 | Gateway 성공 라인 | 2분 이내 스큐 |
| 최소 채팅 스모크 | 테스트 전송 | 감사 또는 트랜스크립트 | E2E 비어 있지 않음 |
표는 온보딩 의식이 아니라 인시던트 분기를 한 번에 줄이는 짧은 훈련이다. 빈 Gateway 콘솔이면 첫 분기는 리스너 중복, 둘째는 다른 macOS 사용자의 낡은 브라우저 캐시, 셋째는 기업 프록시 MITM이다. 증거 요구가 각각 달라 한 번에 표를 채우면 주간으로 같은 티켓이 부활하지 않는다. 임대 Mac을 쓰는 이유는 성능뿐 아니라 감사 언어가 화면과 로그 둘 다로 이동했기 때문이다. 릴리스가 빠른 해엔 버전 동결+리스너 표 묶음이 가장 싼 보험이다.
여기서는 공급자별 관리 콘솔 클릭 순서나 SLA 세부까지 다루지 않는다. 다루는 것은 Gateway·브라우저 동의면을 가로지르는 호스트 책임 분할과, 이를 20분 안에 검사 가능한 최소 증빙 번들이다. 쿠버네티스 전역 설계나 비용 전역 최적화는 다른 장문이 맞다. 여기서 고정할 것은 어떤 증거를 어떤 OS 계열이 짊어지는지 한 줄이다. 선이 서 있으면 Linux 확장과 macOS 동의 종료는 대립이 아니라 보완이 된다. 선이 없으면 이중 바인드와 환경 변수 유령이 팀을 붙잡는다.
볼륨 배치와 이식 하한.
읽기 →Windows, SSH 클라우드 Mac, 임대 VNC Mac.
읽기 →GUI 세션이 필수인 경우.
읽기 →브라우저 동의면·QR·macOS 전용 권한을 범위에서 뺄 수 있으면 가능합니다. 필수라면 macOS+VNC는 선택이 아니라 고정 닻입니다.
도움은 되지만 지연·다중 홉은 OAuth·DevTools 불안정을 키웁니다. 같은 머신 GUI가 티켓을 더 빨리 닫습니다.
간헐 성공과 서로 다른 PID가 남습니다. 리슨 표부터 고정하고 설정 루트를 하나로 묶으세요.
격리·이전에는 유리하지만 TCC는 주지 않습니다. 필요하면 Docker 가이드와 이 매트릭스를 함께 읽으세요.
목록가격보다 증빙 단가가 비용을 가른다. 헤드리스 Linux는 자동화를 키우고 macOS+VNC는 동의를 닫는다. 자사 하드는 감가와 당번을 안으로 가져온다. Apple Silicon 원격 Mac을 임대하면 가동은 외주하고 디렉터리 설계 주도권은 유지한다. 2026년 OpenClaw는 시각적 트리아지와 감사 가능한 자동화가 전면이다.
5절 동일 사용자 VNC 인수 패턴에는 VNCMac을 사용: 구매 Mac 클라우드 구매, 연결 도움말 헬프 센터.