① 원격 Mac에서 OpenClaw 설치 방식 비교(스크립트/Docker/npm)와 권장
원격 Mac에서 OpenClaw를 쓰는 대표적인 세 가지 방식은 아래와 같습니다.
| 방식 | 장점 | 단점 | 적합한 경우 |
|---|---|---|---|
| 공식 설치 스크립트 | 한 줄 명령, 시스템 전역 바이너리 | 쉘·네트워크 필요 | 빠른 체험·단일 노드 CI |
| Docker | 격리·재현성, 호스트 오염 없음 | Mac에 Docker 필요, 레이어 추가 | CI 러너·다중 프로젝트 |
| npm(글로벌) | 기존 Node 활용, 업데이트 간편 | Node 버전 일치 필요, 글로벌 설치 | Node 중심 스택 |
원격 Mac CI 권장: 전용 빌드 노드(예: MacPull Mac Mini M4)에서는 설치 스크립트를 추천합니다. SSH 한 번 접속 후 스크립트 실행하면 PATH에 openclaw가 들어갑니다. CI를 이미 컨테이너로 통일했거나 격리가 필요하면 Docker, 파이프라인이 Node 기반이고 Node 버전을 고정(예: 18 LTS)할 수 있을 때만 npm을 사용하세요. 설치 후 openclaw --version, openclaw doctor로 동작을 확인하세요.
② ClawHub 스킬 설치와 openclaw.json 설정 요점
ClawHub는 의존성 사전 풀·검증 등 OpenClaw를 확장하는 스킬을 제공합니다. ClawHub 레지스트리 또는 커스텀 소스에서 스킬을 설치한 뒤 openclaw.json에서 연결합니다.
openclaw skill add <skill-id> 또는 Git URL. 사용 스택(npm, CocoaPods 등)을 지원하는 스킬인지 확인하세요.skills(활성 스킬 ID 목록)와 스킬별 옵션(사전 풀 대상, 타임아웃 등)을 설정하세요.gateway/model; 불안정한 네트워크 대비 retry(attempts, minDelay, maxDelay); 의존성 루트 경로로 사전 풀 디렉터리를 지정하세요.openclaw.json을 커밋해 CI와 로컬 개발이 동일한 스킬 세트를 쓰도록 하세요. 변경 후 openclaw status로 스킬 로드를 확인하세요.
③ CI와 결합한 의존성 사전 풀·검증 스킬 선정과 설정
CI에서는 (1) 메인 빌드 단계 전에 의존성을 사전 풀하고 (2) 필요 시 버전·체크섬을 검증해 빌드 재현성을 높이는 스킬을 고릅니다.
- 사전 풀: 워밍업 단계(또는 스케줄)에서
npm install,pod install등을 실행하는 스킬을 선택하세요. lockfile·설정(package-lock.json,Podfile.lock등)을 가리키게 하세요. - 검증: 기준선 대비 버전·해시를 검사해 그래프가 어긋나면 CI가 빠르게 실패하도록 하는 스킬을 쓰세요.
openclaw.json에서 사전 풀과 동일한 루트로 설정하세요. - CI 연동: GitHub Actions 등에서 빌드 잡 전에
openclaw pull(또는 스킬 엔트리포인트)을 실행하는 잡을 추가하고, 빌드와 동일한 Node/ruby 버전을 사용하세요. 잡 간 의존성 디렉터리 캐시 재사용을 권장합니다.
이렇게 하면 메인 빌드 단계가 네트워크 크리티컬 패스에서 벗어나고, 실패가 예측 가능해집니다. 원격 Mac에서는 브랜치·스케줄당 한 번 사전 풀을 돌린 뒤, 일반 CI는 캐시에서만 설치하거나 검증만 하면 됩니다.
④ 흔한 오류와 점검(Node 버전·권한·네트워크)
원격 Mac에서 OpenClaw를 CI용으로 돌릴 때 자주 나오는 이슈입니다.
- Node 버전: OpenClaw 또는 ClawHub 스킬이 특정 Node(예: 18+)를 요구할 수 있습니다. CI에서
nvm사용 또는NODE_VERSION설정 후openclaw전에node -v실행. 불일치 시 "module not found" 또는 런타임 오류로 나타납니다. - 권한: 설치 스크립트·Docker가
/usr/local또는 프로젝트 디렉터리에 쓰기 권한을 요구할 수 있습니다. 설치 경로·저장소에 쓸 수 있는 사용자로 실행하고, CI에서는 가급적 root를 피하세요. Docker 사용 시 프로젝트를 올바른 uid/gid로 바인드 마운트하세요. - 네트워크: 원격 Mac에서 타임아웃·DNS 실패가 흔합니다.
openclaw.json에서 재시도(retry.attempts,retry.maxDelay)를 늘리고, 국경 간 노드라면 npm/Git용 미러·프록시를 사용하세요(미러·CI 최적화 가이드 참고).openclaw doctor로 연결·설정을 점검하세요.
⑤ 요약과 권장
원격 Mac에 설치 스크립트(또는 Docker)로 OpenClaw를 올리고, ClawHub 스킬을 추가해 openclaw.json으로 사전 풀·검증을 설정한 뒤, CI에서 빌드 전에 OpenClaw를 실행하고 의존성을 캐시하세요. Node 버전·권한·네트워크는 위 단계로 해결할 수 있습니다. 전용 원격 Mac(예: Mac Mini M4)을 쓰면 OpenClaw와 CI를 위한 안정적인 단일 테넌트 환경을 확보할 수 있습니다—공유 러너 노이즈 없이, 네트워크·디스크가 예측 가능합니다.