resolveAuthProfileOrderresolveApiKeyForProfilemodels status --probedoctor-auth
Stabiele redencodes voor probes
okexcluded_by_auth_ordermissing_credentialinvalid_expiresexpiredunresolved_refno_model
Tokenreferenties
Tokenreferenties (type: "token") ondersteunen inline token en/of tokenRef.
Geschiktheidsregels
- Een tokenprofiel is niet geschikt wanneer zowel
tokenalstokenRefontbreken. expiresis optioneel.- Als
expiresaanwezig is, moet het een eindig getal groter dan0zijn. - Als
expiresongeldig is (NaN,0, negatief, niet-eindig of verkeerd type), is het profiel niet geschikt metinvalid_expires. - Als
expiresin het verleden ligt, is het profiel niet geschikt metexpired. tokenRefomzeilt de validatie vanexpiresniet.
Resolutieregels
- De semantiek van de resolver komt overeen met de geschiktheidssemantiek voor
expires. - Voor geschikte profielen kan tokenmateriaal worden opgelost vanuit een inline waarde of
tokenRef. - Niet-oplosbare refs produceren
unresolved_refin de uitvoer vanmodels status --probe.
Portabiliteit van agentkopieën
Overerving van agentauthenticatie is read-through. Wanneer een agent geen lokaal profiel heeft, kan deze tijdens runtime profielen oplossen vanuit de standaard-/hoofdagentopslag zonder geheim materiaal naar zijn eigenauth-profiles.json te kopiëren.
Expliciete kopieerstromen, zoals openclaw agents add, gebruiken dit portabiliteitsbeleid:
api_key-profielen zijn portable tenzijcopyToAgents: false.token-profielen zijn portable tenzijcopyToAgents: false.oauth-profielen zijn standaard niet portable, omdat vernieuwingstokens eenmalig bruikbaar of rotatiegevoelig kunnen zijn.- OAuth-stromen die eigendom zijn van de provider mogen zich alleen aanmelden met
copyToAgents: truewanneer bekend is dat het kopiëren van vernieuwingsmateriaal tussen agents veilig is.
Configuratie-only authroutes
auth.profiles-items met mode: "aws-sdk" zijn routeringsmetadata, geen opgeslagen referenties. Ze zijn geldig wanneer de doelprovider models.providers.<id>.auth: "aws-sdk" gebruikt of de door de Plugin beheerde Amazon Bedrock-installatie de AWS SDK-route gebruikt. Deze profiel-id’s mogen voorkomen in auth.order en sessie-overschrijvingen, zelfs wanneer er geen overeenkomend item bestaat in auth-profiles.json.
Schrijf geen type: "aws-sdk" naar auth-profiles.json. Als een oudere installatie zo’n marker heeft, verplaatst openclaw doctor --fix deze naar auth.profiles en verwijdert de marker uit de referentieopslag.
Expliciete filtering van authvolgorde
- Wanneer
auth.order.<provider>of de volgorde-overschrijving van de authopslag voor een provider is ingesteld, probetmodels status --probealleen profiel-id’s die in de opgeloste authvolgorde voor die provider blijven. - Een opgeslagen profiel voor die provider dat uit de expliciete volgorde is weggelaten, wordt later niet stilzwijgend geprobeerd. Probe-uitvoer rapporteert het met
reasonCode: excluded_by_auth_orderen de detailmeldingExcluded by auth.order for this provider.
Resolutie van probedoelen
- Probedoelen kunnen afkomstig zijn van authprofielen, omgevingsreferenties of
models.json. - Als een provider referenties heeft maar OpenClaw er geen probeerbare modelkandidaat voor kan oplossen, rapporteert
models status --probestatus: no_modelmetreasonCode: no_model.
Ontdekking van externe CLI-referenties
- Runtime-only referenties die eigendom zijn van externe CLI’s worden alleen ontdekt wanneer de provider, runtime of het authprofiel binnen scope is voor de huidige bewerking, of wanneer er al een opgeslagen lokaal profiel voor die externe bron bestaat.
- Aanroepers van authopslag moeten een expliciete ontdekkingsmodus voor externe CLI’s kiezen:
nonevoor alleen persistente/Plugin-auth,existingvoor het vernieuwen van al opgeslagen externe CLI-profielen, ofscopedvoor een concrete provider-/profielset. - Read-only-/statuspaden geven
allowKeychainPrompt: falsedoor; ze gebruiken alleen bestandsgedragen externe CLI-referenties en lezen of hergebruiken geen macOS Keychain-resultaten.
Beleidsbewaking voor OAuth SecretRef
- SecretRef-invoer is alleen bedoeld voor statische referenties.
- Als een profielreferentie
type: "oauth"is, worden SecretRef-objecten niet ondersteund voor het referentiemateriaal van dat profiel. - Als
auth.profiles.<id>.mode"oauth"is, wordt door SecretRef ondersteundekeyRef/tokenRef-invoer voor dat profiel geweigerd. - Overtredingen zijn harde fouten in authresolutiepaden voor opstarten/herladen.
Legacy-compatibele berichten
Voor scriptcompatibiliteit blijft deze eerste regel van probefouten ongewijzigd:Auth profile credentials are missing or expired.
Mensvriendelijke details en stabiele redencodes kunnen op volgende regels worden toegevoegd.