openclaw doctor
게이트웨이와 채널을 위한 상태 점검 + 빠른 수정 도구입니다.
관련 문서:
예시
옵션
--no-workspace-suggestions: 워크스페이스 메모리/검색 제안을 비활성화--yes: 프롬프트 없이 기본값 수락--repair: 프롬프트 없이 권장 복구 적용--fix:--repair의 별칭--force: 필요 시 사용자 지정 서비스 구성을 덮어쓰는 것을 포함한 적극적인 복구 적용--non-interactive: 프롬프트 없이 실행, 안전한 마이그레이션만 수행--generate-gateway-token: 게이트웨이 토큰 생성 및 구성--deep: 추가 게이트웨이 설치를 찾기 위해 시스템 서비스를 스캔
- 대화형 프롬프트(키체인/OAuth 수정 등)는 stdin이 TTY이고
--non-interactive가 설정되지 않은 경우에만 실행됩니다. 헤드리스 실행(cron, Telegram, 터미널 없음)에서는 프롬프트를 건너뜁니다. --fix(--repair의 별칭)는 백업을~/.openclaw/openclaw.json.bak에 기록하고 알 수 없는 config 키를 제거하며, 제거된 각 항목을 나열합니다.- 이제 상태 무결성 검사는 세션 디렉터리의 고아 transcript 파일을 감지하며, 공간을 안전하게 회수하기 위해 이를
.deleted.<timestamp>로 보관할 수 있습니다. - Doctor는 또한
~/.openclaw/cron/jobs.json(또는cron.store)에서 레거시 cron 작업 형식을 스캔하며, 스케줄러가 런타임에 자동 정규화하기 전에 이를 제자리에서 다시 쓸 수 있습니다. - Doctor는 레거시 평면 Talk config(
talk.voiceId,talk.modelId등)를talk.provider+talk.providers.<provider>로 자동 마이그레이션합니다. - 이제
doctor --fix를 반복 실행해도 차이가 객체 키 순서뿐인 경우 Talk 정규화를 보고하거나 적용하지 않습니다. - Doctor에는 메모리 검색 준비 상태 점검이 포함되어 있으며, 임베딩 자격 증명이 없을 경우
openclaw configure --section model을 권장할 수 있습니다. - sandbox 모드가 활성화되어 있지만 Docker를 사용할 수 없는 경우, doctor는 해결 방법(
install Docker또는openclaw config set agents.defaults.sandbox.mode off)과 함께 신호가 강한 경고를 보고합니다. gateway.auth.token/gateway.auth.password가 SecretRef로 관리되고 현재 명령 경로에서 사용할 수 없는 경우, doctor는 읽기 전용 경고를 보고하며 일반 텍스트 대체 자격 증명을 쓰지 않습니다.- 수정 경로에서 채널 SecretRef 검사가 실패하더라도, doctor는 조기 종료하지 않고 계속 진행하며 경고를 보고합니다.
- Telegram
allowFrom사용자 이름 자동 해석(doctor --fix)에는 현재 명령 경로에서 해석 가능한 Telegram 토큰이 필요합니다. 토큰 검사를 사용할 수 없으면 doctor는 경고를 보고하고 해당 실행에서는 자동 해석을 건너뜁니다.
macOS: launchctl env 재정의
이전에 launchctl setenv OPENCLAW_GATEWAY_TOKEN ...(또는 ...PASSWORD)를 실행한 적이 있다면, 그 값이 config 파일을 재정의하여 지속적인 “unauthorized” 오류를 일으킬 수 있습니다.