이 페이지에서는 모델 제공자 인증(API 키, OAuth, Claude CLI 재사용, Anthropic 설정 토큰)을 다룹니다. Gateway 연결 인증(토큰, 비밀번호, 신뢰할 수 있는 프록시)은 구성 및 신뢰할 수 있는 프록시 인증을 참조하세요.
- 전체 OAuth 흐름 및 저장소 구조: /concepts/oauth
- SecretRef 기반 인증(
env/file/exec제공자): 비밀 관리 models status --probe에서 사용하는 자격 증명 적격성/사유 코드: 인증 자격 증명 의미 체계
권장 설정: API 키(모든 제공자)
- 제공자 콘솔에서 API 키를 생성합니다.
- Gateway 호스트(
openclaw gateway를 실행하는 머신)에 키를 설정합니다.
- Gateway가 systemd/launchd에서 실행되는 경우 데몬이 읽을 수 있도록 키를
~/.openclaw/.env에 저장합니다.
- Gateway 프로세스(또는 데몬)를 다시 시작한 후 다시 확인합니다.
openclaw onboard를 사용하여 데몬용 API 키를 저장할 수도 있습니다. 전체 환경 변수 로드 우선순위(env.shellEnv, ~/.openclaw/.env, systemd/launchd)는 환경 변수를 참조하세요.
Anthropic: Claude CLI 재사용
Anthropic 설정 토큰 인증은 계속 지원됩니다. Claude CLI 재사용(claude -p 방식의 사용)도 이 통합에서 공식적으로 허용됩니다. 호스트에서 Claude CLI 로그인을 사용할 수 있는 경우 로컬/데스크톱 사용에는 이 방법을 권장합니다. 장기간 실행되는 Gateway 호스트에서는 서버 측 결제를 명시적으로 제어할 수 있는 Anthropic API 키가 여전히 가장 예측 가능한 선택입니다.
Claude CLI 재사용을 위한 호스트 설정:
claude-cli 백엔드를 통해 Anthropic 모델 선택을 라우팅하고 이에 해당하는 OpenClaw 인증 프로필을 저장하도록 설정합니다.
claude가 PATH에 없다면 Claude Code를 설치하거나 agents.defaults.cliBackends.claude-cli.command를 바이너리 경로로 설정하세요.
수동 토큰 입력
모든 제공자에서 사용할 수 있으며 에이전트별 SQLite 인증 저장소에 기록하고 구성을 업데이트합니다.openclaw-agent.sqlite에서 인증 프로필을 읽습니다. 엔드포인트 세부 정보(baseUrl, api, 모델 ID, 헤더, 시간 제한)는 인증 프로필이 아니라 openclaw.json 또는 models.json의 models.providers.<id> 아래에 있어야 합니다.
이전 설치에 auth-profiles.json, auth-state.json 또는 { "openrouter": { "apiKey": "..." } } 같은 평면 구조가 아직 남아 있다면 openclaw doctor --fix를 실행하여 SQLite로 가져오세요. doctor는 원본 JSON 파일 옆에 타임스탬프가 지정된 백업을 보관합니다.
Bedrock의 auth: "aws-sdk" 같은 외부 인증 경로는 자격 증명이 아닙니다. 이름이 지정된 Bedrock 경로의 경우 openclaw.json에서 auth.profiles.<id>.mode: "aws-sdk"를 설정하세요. 인증 프로필 저장소에 type: "aws-sdk"를 기록하면 안 됩니다. openclaw doctor --fix는 자격 증명 저장소의 레거시 AWS SDK 마커를 구성 메타데이터로 마이그레이션합니다.
SecretRef 기반 자격 증명
api_key자격 증명은keyRef: { source, provider, id }를 사용할 수 있습니다.token자격 증명은tokenRef: { source, provider, id }를 사용할 수 있습니다.- OAuth 모드 프로필은 SecretRef 자격 증명을 거부합니다.
auth.profiles.<id>.mode가"oauth"이면 해당 프로필의 SecretRef 기반keyRef/tokenRef가 거부됩니다.
모델 인증 상태 확인
1, 곧 만료되는 경우 2를 반환합니다.
--probe-provider, --probe-profile, --probe-timeout, --probe-concurrency 또는 --probe-max-tokens 추가):
- 검사 행은 인증 프로필, 환경 자격 증명 또는
models.json에서 가져올 수 있습니다. auth.order.<provider>에서 저장된 프로필이 누락된 경우 검사는 해당 프로필을 시도하지 않고excluded_by_auth_order를 보고합니다.- 인증이 존재하지만 OpenClaw가 해당 제공자에서 검사 가능한 모델을 확인할 수 없는 경우 검사는
status: no_model을 보고합니다. - 속도 제한 대기 시간은 모델 범위로 적용될 수 있습니다. 한 모델에서 대기 중인 프로필도 같은 제공자의 다른 모델에는 계속 사용될 수 있습니다.
API 키 교체(Gateway)
일부 제공자는 호출이 제공자 속도 제한에 걸리면 구성된 대체 키로 요청을 다시 시도합니다. 제공자별 키 우선순위:OPENCLAW_LIVE_<PROVIDER>_KEY(단일 재정의, 하나의 키로 고정)<PROVIDER>_API_KEYS(쉼표/공백/세미콜론으로 구분된 목록)<PROVIDER>_API_KEY<PROVIDER>_API_KEY_*(이 접두사가 있는 모든 환경 변수)
google, google-vertex)는 추가로 GOOGLE_API_KEY를 대체 값으로 사용합니다. 결합된 목록은 사용 전에 중복을 제거합니다.
OpenClaw는 오류 메시지가 rate_limit, rate limit, 429, quota exceeded/quota_exceeded, resource exhausted/resource_exhausted 또는 too many requests와 일치하는 경우에만 다음 키로 교체합니다. 다른 오류에는 대체 키를 사용하여 다시 시도하지 않습니다. 모든 키가 실패하면 마지막 시도에서 발생한 최종 오류가 반환됩니다.
ThrottlingException, concurrency limit reached 또는 workers_ai ... quota limit exceeded 같은 제공자별 문구는 장애 조치/재시도 분류(반복 실패 시 모델이나 제공자 전환)에 사용되며, 이는 위의 API 키 교체와는 별도의 메커니즘입니다.Gateway 실행 중 제공자 인증 제거
Gateway 제어 영역을 통해 제공자 인증을 제거하면 OpenClaw는 해당 제공자의 저장된 인증 프로필을 삭제하고, 선택된 모델 제공자가 제거된 제공자와 일치하는 활성 채팅/에이전트 실행을 중단합니다. 중단된 실행은stopReason: "auth-revoked"와 함께 일반적인 취소/수명 주기 이벤트를 내보내므로 연결된 클라이언트는 자격 증명이 제거되어 실행이 중지되었음을 표시할 수 있습니다.
사용할 자격 증명 제어
OpenAI 및 레거시 openai-codex ID
OpenAI API 키 프로필과 ChatGPT/Codex OAuth 프로필은 모두 표준 제공자 ID openai를 사용합니다. 새 구성에는 openai:* 프로필 ID와 auth.order.openai를 사용하세요.
이전 구성, 인증 프로필 ID 또는 auth.order.openai-codex에서 openai-codex가 보이면 레거시 마이그레이션 입력으로 취급하세요. 새 openai-codex 프로필을 만들면 안 됩니다. 다음을 실행하세요.
openai-codex:* 프로필 ID와 auth.order.openai-codex 항목을 표준 openai 경로로 다시 작성합니다. OpenAI 전용 모델/런타임 라우팅은 OpenAI를 참조하세요.
로그인 중(CLI)
--profile-id를 사용하면 동일한 제공자의 여러 OAuth 로그인을 하나의 에이전트 내에서 분리하여 유지할 수 있습니다.
--force는 선택한 에이전트 디렉터리에서 해당 제공자의 저장된 인증 프로필을 삭제한 다음 동일한 인증 흐름을 다시 실행합니다. 저장된 프로필이 멈췄거나 만료되었거나 잘못된 계정에 연결된 경우 사용하세요. 제공자의 자격 증명을 폐기하지는 않습니다.
세션별(채팅 명령)
/model <alias-or-id>@<profileId>는 현재 세션에 특정 제공자 자격 증명을 고정합니다(프로필 ID 예:anthropic:default,anthropic:work)./model(또는/model list)은 간략한 선택기를 표시하며,/model status는 전체 보기(후보 + 다음 인증 프로필, 구성된 경우 제공자 엔드포인트 세부 정보 포함)를 표시합니다.
/new 또는 /reset을 전송하여 새 세션을 시작하세요. 기존 세션은 재설정할 때까지 현재 모델/프로필 선택을 유지합니다.
에이전트별(CLI 재정의)
인증 순서 재정의는 해당 에이전트의 SQLite 인증 상태에 저장됩니다.--agent <id>를 사용하고, 구성된 기본 에이전트를 사용하려면 생략하세요. openclaw models status --probe는 누락된 저장 프로필을 조용히 건너뛰지 않고 excluded_by_auth_order로 표시합니다.
문제 해결
”자격 증명을 찾을 수 없음”
Gateway 호스트에 Anthropic API 키를 구성하거나 Anthropic 설정 토큰 경로를 설정한 후 다시 확인하세요.토큰 만료 예정/만료됨
openclaw models status를 실행하여 만료 예정인 프로필을 확인하세요. Anthropic 토큰 프로필이 누락되었거나 만료된 경우 설정 토큰을 통해 갱신하거나 Anthropic API 키로 마이그레이션하세요.