콘텐츠로 이동

[보관] 40. OpenClaw 설치 재개 — V1·V2 PASS, V3 보류 (인터랙티브 auth 필요)

시각: 2026-04-28 13:43~13:55 KST 선행: 38-openclaw-install-attempt.md (placeholder 발견 후 중단·“셋업 단계 종료” 선언)

entry 38은 OpenClaw 설치를 placeholder 발견 시점에 멈추고 “01~38 = 셋업 종료, 39+ = 메타 결정만” 경계를 그었다. 그러나 OpenClaw 설치는 04-day0-setup.md STEP 3의 진짜 마지막 관문이며 미완 상태였음 — 38의 종료 선언은 조기 판단이었다. 본 entry로 OpenClaw 설치를 마무리해 그 경계를 사후 정정한다. 본 entry 이후의 history/ 분리 룰(인덱스 §38번 이후 표)은 본 entry 완료 시점부터 적용.

P1 진입 직전 마지막 관문 — OpenClaw 설치. 사용자가 공식 URL https://openclaw.ai/ 재제공 → 38 placeholder 발견 시점 이후의 진행.

설치 — 4단계 (모두 ~/.openclaw/로 격리, C3)

섹션 제목: “설치 — 4단계 (모두 ~/.openclaw/로 격리, C3)”
  1. placeholder 함정: npm i -g openclaw0.0.1 빈 placeholder 패키지를 받음. README가 Empty placeholder package., index.jsmodule.exports = {}. dist-tags 확인 시 latest2026.4.26 정상 — --prefix와 결합 시 npm이 0.0.1로 잘못 해석됨. openclaw@2026.4.26 명시 필요.
  2. 권한 우회: /usr/local/lib/node_modules는 sudo 필요 → C3 격리 정신 그대로 --prefix ~/.openclaw + --cache /tmp/npm-cache-oc로 user-local 설치. sudo 회피.
  3. Node 22+ 요구: 시스템 Node 20.17 → OpenClaw 거부 (Node.js v22.12+ is required). nvm·brew 둘 다 부재. https://nodejs.org/dist/v22.22.2/node-v22.22.2-darwin-arm64.tar.gz 직접 받아 ~/.openclaw/node/에 풀어서 격리. 시스템 Node 미변경.
  4. Wrapper 작성: ~/.openclaw/openclaw-shim.shPATH=~/.openclaw/node/bin:$PATH로 bundled Node 22 사용해 ~/.openclaw/bin/openclaw 실행. 셸 alias로 사용자가 openclaw라고만 부를 수 있게.
#결과근거
V1 (공식 문서에 anthropic 명시)PASSopenclaw.ai/install + README + capability model providers 출력 (anthropic, count=23, available=true)
V2 (config로 백엔드 지정 가능)PASSagents.defaults.model = anthropic/claude-opus-4-7 set 성공 (Hermes와 동일 모델로 통일). config get 검증됨
V3 (스모크 — “안녕” 응답)보류두 번 시도, 둘 다 agents/auth-profiles: read anthropic credentials from claude cli keychain만 찍힌 뒤 99% CPU로 무한루프. lsof 결과 네트워크 연결 0 → API 호출까지 못 감. auth status 결과 missingProvidersInUse: ["anthropic"], providers: [], oauth.providers: [].
V4 (사용량 페이지 종량제 차감 0)미수행V3 통과 후 점검

핵심 발견 — configured: true 신호의 함정

섹션 제목: “핵심 발견 — configured: true 신호의 함정”

capability model providers는 anthropic을 configured: true로 표시하지만, 이는 Claude CLI keychain에 자격증명이 존재한다는 뜻일 뿐 OpenClaw가 그 자격증명으로 자기 auth profile을 완성한 상태가 아님. auth statusmissingProvidersInUse: ["anthropic"] 명시. → V2 통과 판정 기준에 “auth 완성 여부”를 추가해야 함 (config 키만 봐선 안 됨).

  • ~/.openclaw/ 하위에만 설치 (lib·node·bin·shim·config)
  • 시스템 /usr/local/·~/.npm 미변경
  • 사용자 ~/.claude/·~/.hermes/ 미접근
  • 다른 user 계정 jeongkoo도 자체 ~/.openclaw/로 openclaw-gateway 운용 중 (서로 격리됨, hamsters 사용자 측엔 무영향)
  • placeholder 함정 우회: 명시 버전(@2026.4.26) 강제. dist-tags가 정상이어도 prefix install로 숨은 함정 있음.
  • Node 격리 binary: nvm을 안 쓴 이유 = nvm은 ~/.zshrc·~/.bashrc 수정. C3 격리 원칙 위반. tarball 직접 풀이가 더 깨끗.
  • smoke 디버깅 단념: keychain access GUI prompt가 보이지 않게 떠 있을 가능성, OAuth flow 미시작, OpenClaw 첫 사용자 기록 부족 등. 인터랙티브 1회면 끝나는 일에 추가 시간 쓰지 않기로 판단. 사용자 액션으로 넘김.
  • history commit 시점: 통과 안 됐어도 적는다(실패한 시도도 commit한다 — 로깅 컨벤션). 다음 세션이 V3부터 재개할 수 있게 정확한 상태 남김.

사용자 액션 (P1 진입 전 마지막 관문)

섹션 제목: “사용자 액션 (P1 진입 전 마지막 관문)”
Terminal window
~/.openclaw/openclaw-shim.sh capability model auth login --provider anthropic

— 인터랙티브로 anthropic OAuth 또는 API key 입력. 완료 후:

Terminal window
~/.openclaw/openclaw-shim.sh capability model auth status
# providers에 anthropic profile 1개 이상, missingProvidersInUse=[] 확인
~/.openclaw/openclaw-shim.sh capability model run --local --model anthropic/claude-opus-4-7 --prompt "안녕, 한 줄로 자기소개해줘"
# V3 통과 — 한 줄 한국어 응답 받기
Terminal window
# ~/.zshrc에 추가
alias openclaw=~/.openclaw/openclaw-shim.sh
  • V3·V4 통과 commit (38-compat-A-result.md)
  • 04-day0-setup.md STEP 3 체크
  • P1 doc 시각 채우기 + Step 1 진입