Ten dokument definiuje kanoniczne semantyki kwalifikowalności i rozwiązywania poświadczeń używane w:Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
resolveAuthProfileOrderresolveApiKeyForProfilemodels status --probedoctor-auth
Stabilne kody przyczyn sondowania
okexcluded_by_auth_ordermissing_credentialinvalid_expiresexpiredunresolved_refno_model
Poświadczenia tokenów
Poświadczenia tokenów (type: "token") obsługują wbudowane token i/lub tokenRef.
Reguły kwalifikowalności
- Profil tokenu nie kwalifikuje się, gdy brakuje zarówno
token, jak itokenRef. expiresjest opcjonalne.- Jeśli
expireswystępuje, musi być skończoną liczbą większą niż0. - Jeśli
expiresjest nieprawidłowe (NaN,0, wartość ujemna, nieskończona lub niewłaściwego typu), profil nie kwalifikuje się zinvalid_expires. - Jeśli
expiresjest w przeszłości, profil nie kwalifikuje się zexpired. tokenRefnie omija walidacjiexpires.
Reguły rozwiązywania
- Semantyka resolvera odpowiada semantyce kwalifikowalności dla
expires. - Dla kwalifikujących się profili materiał tokenu może zostać rozwiązany z wartości wbudowanej lub
tokenRef. - Nierozwiązywalne odwołania generują
unresolved_refw wynikumodels status --probe.
Przenośność kopii agentów
Dziedziczenie uwierzytelniania agenta działa przez odczyt pośredni. Gdy agent nie ma profilu lokalnego, może w czasie wykonywania rozwiązywać profile z domyślnego/głównego magazynu agenta bez kopiowania materiału sekretnego do własnegoauth-profiles.json.
Jawne przepływy kopiowania, takie jak openclaw agents add, używają tej polityki przenośności:
- Profile
api_keysą przenośne, chyba żecopyToAgents: false. - Profile
tokensą przenośne, chyba żecopyToAgents: false. - Profile
oauthdomyślnie nie są przenośne, ponieważ tokeny odświeżania mogą być jednorazowe lub wrażliwe na rotację. - Przepływy OAuth należące do dostawcy mogą włączyć tę opcję przez
copyToAgents: truetylko wtedy, gdy wiadomo, że kopiowanie materiału odświeżania między agentami jest bezpieczne.
Trasy uwierzytelniania wyłącznie w konfiguracji
Wpisyauth.profiles z mode: "aws-sdk" są metadanymi routingu, a nie przechowywanymi poświadczeniami. Są prawidłowe, gdy docelowy dostawca używa models.providers.<id>.auth: "aws-sdk" albo wbudowanej domyślnej trasy AWS SDK dla Amazon Bedrock. Te identyfikatory profili mogą występować w auth.order i nadpisaniach sesji nawet wtedy, gdy nie istnieje pasujący wpis w auth-profiles.json.
Nie zapisuj type: "aws-sdk" w auth-profiles.json. Jeśli starsza instalacja ma taki znacznik, openclaw doctor --fix przenosi go do auth.profiles i usuwa znacznik z magazynu poświadczeń.
Jawne filtrowanie kolejności uwierzytelniania
- Gdy dla dostawcy ustawiono
auth.order.<provider>lub nadpisanie kolejności w magazynie uwierzytelniania,models status --probesonduje tylko identyfikatory profili, które pozostają w rozwiązanej kolejności uwierzytelniania dla tego dostawcy. - Przechowywany profil dla tego dostawcy, który pominięto w jawnej kolejności, nie jest później po cichu próbowany. Wynik sondowania zgłasza go z
reasonCode: excluded_by_auth_orderoraz szczegółemExcluded by auth.order for this provider.
Rozwiązywanie celu sondowania
- Cele sondowania mogą pochodzić z profili uwierzytelniania, poświadczeń środowiskowych lub
models.json. - Jeśli dostawca ma poświadczenia, ale OpenClaw nie może rozwiązać dla niego możliwego do sondowania kandydata modelu,
models status --probezgłaszastatus: no_modelzreasonCode: no_model.
Wykrywanie poświadczeń zewnętrznego CLI
- Poświadczenia wyłącznie czasu wykonywania należące do zewnętrznych CLI są wykrywane tylko wtedy, gdy dostawca, środowisko wykonywania lub profil uwierzytelniania znajduje się w zakresie bieżącej operacji, albo gdy istnieje już przechowywany profil lokalny dla tego zewnętrznego źródła.
- Wywołujący magazyn uwierzytelniania powinni wybrać jawny tryb wykrywania zewnętrznego CLI:
nonedla wyłącznie utrwalonego uwierzytelniania/uwierzytelniania Plugin,existingdo odświeżania już przechowywanych profili zewnętrznego CLI alboscopeddla konkretnego zestawu dostawców/profili. - Ścieżki tylko do odczytu/statusu przekazują
allowKeychainPrompt: false; używają wyłącznie poświadczeń zewnętrznego CLI opartych na plikach i nie odczytują ani nie używają ponownie wyników macOS Keychain.
Strażnik polityki SecretRef dla OAuth
- Dane wejściowe SecretRef są przeznaczone wyłącznie dla statycznych poświadczeń.
- Jeśli poświadczenie profilu ma
type: "oauth", obiekty SecretRef nie są obsługiwane dla materiału poświadczeń tego profilu. - Jeśli
auth.profiles.<id>.modeto"oauth", dane wejściowekeyRef/tokenRefoparte na SecretRef dla tego profilu są odrzucane. - Naruszenia są twardymi błędami w ścieżkach rozwiązywania uwierzytelniania podczas uruchamiania/ponownego ładowania.
Komunikaty zgodne ze starszymi wersjami
Dla zgodności ze skryptami błędy sondowania zachowują ten pierwszy wiersz bez zmian:Auth profile credentials are missing or expired.
Przyjazne dla użytkownika szczegóły i stabilne kody przyczyn mogą być dodawane w kolejnych wierszach.