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.
openclaw doctor is het reparatie- en migratiehulpmiddel voor OpenClaw. Het herstelt verouderde configuratie/status, controleert de gezondheid en geeft uitvoerbare reparatiestappen.
Snel starten
Headless- en automatiseringsmodi
- --yes
- --repair
- --repair --force
- --non-interactive
- --deep
Wat het doet (samenvatting)
Gezondheid, UI en updates
Gezondheid, UI en updates
- Optionele pre-flight-update voor git-installaties (alleen interactief).
- Versheidscontrole van het UI-protocol (bouwt Control UI opnieuw wanneer het protocolschema nieuwer is).
- Gezondheidscontrole + herstartprompt.
- Samenvatting van Skills-status (geschikt/ontbrekend/geblokkeerd) en pluginstatus.
Configuratie en migraties
Configuratie en migraties
- Configuratienormalisatie voor verouderde waarden.
- Talk-configuratiemigratie van verouderde platte
talk.*-velden naartalk.provider+talk.providers.<provider>. - Browsermigratiecontroles voor verouderde Chrome-extensieconfiguraties en Chrome MCP-gereedheid.
- Waarschuwingen voor OpenCode-provideroverschrijvingen (
models.providers.opencode/models.providers.opencode-go). - Waarschuwingen voor Codex OAuth-shadowing (
models.providers.openai-codex). - Controle van OAuth TLS-vereisten voor OpenAI Codex OAuth-profielen.
- Verouderde statusmigratie op schijf (sessies/agentmap/WhatsApp-auth).
- Migratie van verouderde Plugin-manifestcontractsleutels (
speechProviders,realtimeTranscriptionProviders,realtimeVoiceProviders,mediaUnderstandingProviders,imageGenerationProviders,videoGenerationProviders,webFetchProviders,webSearchProviders→contracts). - Migratie van verouderde cronopslag (
jobId,schedule.cron, velden voor levering/payload op topniveau, payloadprovider, eenvoudigenotify: truewebhook-fallbacktaken). - Migratie van verouderd agent-runtimebeleid naar
agents.defaults.agentRuntimeenagents.list[].agentRuntime. - Opschonen van verouderde pluginconfiguratie wanneer plugins zijn ingeschakeld; wanneer
plugins.enabled=false, worden verouderde pluginverwijzingen behandeld als inerte containmentconfiguratie en bewaard.
Status en integriteit
Status en integriteit
- Inspectie van sessievergrendelingsbestanden en opschoning van verouderde vergrendelingen.
- Reparatie van sessietranscripten voor dubbele prompt-herschrijftakken die zijn gemaakt door getroffen 2026.4.24-builds.
- Integriteits- en machtigingscontroles voor status (sessies, transcripten, statusmap).
- Machtigingscontroles voor configuratiebestanden (chmod 600) bij lokale uitvoering.
- Gezondheid van modelauthenticatie: controleert OAuth-verval, kan bijna vervallen tokens vernieuwen en rapporteert cooldown-/uitgeschakelde statussen van auth-profielen.
- Detectie van extra werkruimtemap (
~/openclaw).
Gateway, services en supervisors
Gateway, services en supervisors
- Reparatie van sandboximage wanneer sandboxing is ingeschakeld.
- Migratie van verouderde services en detectie van extra gateways.
- Migratie van verouderde Matrix-kanaalstatus (in
--fix/--repair-modus). - Gateway-runtimecontroles (service geïnstalleerd maar niet actief; gecachet launchd-label).
- Waarschuwingen voor kanaalstatus (gepeild via de actieve gateway).
- Audit van supervisorconfiguratie (launchd/systemd/schtasks) met optionele reparatie.
- Opschoning van ingesloten proxy-omgeving voor gatewayservices die tijdens installatie of update shellwaarden voor
HTTP_PROXY/HTTPS_PROXY/NO_PROXYhebben vastgelegd. - Best-practicecontroles voor Gateway-runtime (Node versus Bun, paden van versiebeheerders).
- Diagnostiek voor Gateway-poortconflicten (standaard
18789).
Authenticatie, beveiliging en koppeling
Authenticatie, beveiliging en koppeling
- Beveiligingswaarschuwingen voor open DM-beleid.
- Gateway-authenticatiecontroles voor lokale tokenmodus (biedt tokengeneratie aan wanneer er geen tokenbron bestaat; overschrijft geen token-SecretRef-configuraties).
- Detectie van problemen met apparaatkoppeling (openstaande eerste koppelverzoeken, openstaande rol-/scope-upgrades, verouderde drift in lokale apparaat-token-cache en authdrift in gekoppelde records).
Werkruimte en shell
Werkruimte en shell
- systemd-lingercontrole op Linux.
- Controle van de grootte van het bootstrapbestand voor de werkruimte (waarschuwingen voor afkapping/bijna-limiet voor contextbestanden).
- Statuscontrole en automatische installatie/upgrade van shellaanvulling.
- Gereedheidscontrole van embeddingprovider voor geheugenzoekopdrachten (lokaal model, externe API-sleutel of QMD-binary).
- Controles voor broninstallaties (mismatch in pnpm-werkruimte, ontbrekende UI-assets, ontbrekende tsx-binary).
- Schrijft bijgewerkte configuratie + wizardmetadata.
Backfill en reset voor Dreams-UI
De Dreams-scene van de Control UI bevat acties Backfill, Reset en Clear Grounded voor de gegronde dreaming-workflow. Deze acties gebruiken gateway-RPC-methoden in doctor-stijl, maar ze maken geen deel uit van de reparatie/migratie via deopenclaw doctor CLI.
Wat ze doen:
- Backfill scant historische
memory/YYYY-MM-DD.md-bestanden in de actieve werkruimte, voert de gegronde REM-dagboekpass uit en schrijft omkeerbare backfill-items naarDREAMS.md. - Reset verwijdert alleen die gemarkeerde backfill-dagboekitems uit
DREAMS.md. - Clear Grounded verwijdert alleen gefaseerde, uitsluitend gegronde kortetermijnitems die uit historische replay kwamen en nog geen live recall of dagelijkse ondersteuning hebben opgebouwd.
- ze bewerken
MEMORY.mdniet - ze voeren geen volledige doctor-migraties uit
- ze zetten gegronde kandidaten niet automatisch klaar in de live opslag voor kortetermijnpromotie, tenzij je eerst expliciet het gefaseerde CLI-pad uitvoert
DREAMS.md het beoordelingsoppervlak blijft.
Gedetailleerd gedrag en rationale
0. Optionele update (git-installaties)
0. Optionele update (git-installaties)
1. Configuratienormalisatie
1. Configuratienormalisatie
messages.ackReaction zonder kanaalspecifieke overschrijving), normaliseert doctor ze naar het huidige schema.Dat omvat verouderde platte Talk-velden. De huidige openbare Talk-configuratie is talk.provider + talk.providers.<provider>. Doctor herschrijft oude vormen talk.voiceId / talk.voiceAliases / talk.modelId / talk.outputFormat / talk.apiKey naar de providermap.2. Migraties van verouderde configuratiesleutels
2. Migraties van verouderde configuratiesleutels
openclaw doctor uit te voeren.Doctor zal:- Uitleggen welke verouderde sleutels zijn gevonden.
- De toegepaste migratie tonen.
~/.openclaw/openclaw.jsonherschrijven met het bijgewerkte schema.
openclaw doctor --fix.Huidige migraties:routing.allowFrom→channels.whatsapp.allowFromrouting.groupChat.requireMention→channels.whatsapp/telegram/imessage.groups."*".requireMentionrouting.groupChat.historyLimit→messages.groupChat.historyLimitrouting.groupChat.mentionPatterns→messages.groupChat.mentionPatternsrouting.queue→messages.queuerouting.bindings→bindingsop topniveaurouting.agents/routing.defaultAgentId→agents.list+agents.list[].default- verouderde
talk.voiceId/talk.voiceAliases/talk.modelId/talk.outputFormat/talk.apiKey→talk.provider+talk.providers.<provider> routing.agentToAgent→tools.agentToAgentrouting.transcribeAudio→tools.media.audio.modelsmessages.tts.<provider>(openai/elevenlabs/microsoft/edge) →messages.tts.providers.<provider>messages.tts.provider: "edge"enmessages.tts.providers.edge→messages.tts.provider: "microsoft"enmessages.tts.providers.microsoftchannels.discord.voice.tts.<provider>(openai/elevenlabs/microsoft/edge) →channels.discord.voice.tts.providers.<provider>channels.discord.accounts.<id>.voice.tts.<provider>(openai/elevenlabs/microsoft/edge) →channels.discord.accounts.<id>.voice.tts.providers.<provider>plugins.entries.voice-call.config.tts.<provider>(openai/elevenlabs/microsoft/edge) →plugins.entries.voice-call.config.tts.providers.<provider>plugins.entries.voice-call.config.tts.provider: "edge"enplugins.entries.voice-call.config.tts.providers.edge→provider: "microsoft"enproviders.microsoftplugins.entries.voice-call.config.provider: "log"→"mock"plugins.entries.voice-call.config.twilio.from→plugins.entries.voice-call.config.fromNumberplugins.entries.voice-call.config.streaming.sttProvider→plugins.entries.voice-call.config.streaming.providerplugins.entries.voice-call.config.streaming.openaiApiKey|sttModel|silenceDurationMs|vadThreshold→plugins.entries.voice-call.config.streaming.providers.openai.*bindings[].match.accountID→bindings[].match.accountId- Voor kanalen met benoemde
accountsmaar achtergebleven topniveau-kanaalwaarden voor één account, verplaats die account-scoped waarden naar het gepromoveerde account dat voor dat kanaal is gekozen (accounts.defaultvoor de meeste kanalen; Matrix kan een bestaand overeenkomend benoemd/standaarddoel behouden) identity→agents.list[].identityagent.*→agents.defaults+tools.*(tools/elevated/exec/sandbox/subagents)agent.model/allowedModels/modelAliases/modelFallbacks/imageModelFallbacks→agents.defaults.models+agents.defaults.model.primary/fallbacks+agents.defaults.imageModel.primary/fallbacks- verwijder
agents.defaults.llm; gebruikmodels.providers.<id>.timeoutSecondsvoor time-outs van trage providers/modellen browser.ssrfPolicy.allowPrivateNetwork→browser.ssrfPolicy.dangerouslyAllowPrivateNetworkbrowser.profiles.*.driver: "extension"→"existing-session"- verwijder
browser.relayBindHost(verouderde instelling voor extensierelay) - verouderde
models.providers.*.api: "openai"→"openai-completions"(gateway-opstart slaat ook providers over waarvanapiis ingesteld op een toekomstige of onbekende enumwaarde in plaats van gesloten te falen)
- Als twee of meer items in
channels.<channel>.accountszijn geconfigureerd zonderchannels.<channel>.defaultAccountofaccounts.default, waarschuwt doctor dat fallbackroutering een onverwacht account kan kiezen. - Als
channels.<channel>.defaultAccountis ingesteld op een onbekende account-ID, waarschuwt doctor en toont het de geconfigureerde account-ID’s.
2b. OpenCode-provideroverschrijvingen
2b. OpenCode-provideroverschrijvingen
models.providers.opencode, opencode-zen of opencode-go handmatig hebt toegevoegd, overschrijft dit de ingebouwde OpenCode-catalogus van @mariozechner/pi-ai. Daardoor kunnen modellen naar de verkeerde API worden gedwongen of kunnen kosten op nul worden gezet. Doctor waarschuwt zodat je de overschrijving kunt verwijderen en API-routering + kosten per model kunt herstellen.2c. Browsermigratie en Chrome MCP-gereedheid
2c. Browsermigratie en Chrome MCP-gereedheid
browser.profiles.*.driver: "extension"wordt"existing-session"browser.relayBindHostwordt verwijderd
defaultProfile: "user" of een geconfigureerd existing-session-profiel gebruikt:- controleert of Google Chrome op dezelfde host is geinstalleerd voor standaardprofielen met automatische verbinding
- controleert de gedetecteerde Chrome-versie en waarschuwt wanneer die lager is dan Chrome 144
- herinnert je eraan om foutopsporing op afstand in de inspectiepagina van de browser in te schakelen (bijvoorbeeld
chrome://inspect/#remote-debugging,brave://inspect/#remote-debuggingofedge://inspect/#remote-debugging)
- een op Chromium gebaseerde browser 144+ op de gateway-/node-host
- de browser die lokaal draait
- foutopsporing op afstand ingeschakeld in die browser
- goedkeuring van de eerste toestemmingsprompt voor koppelen in de browser
responsebody, PDF-export, downloadonderschepping en batchacties vereisen nog steeds een beheerde browser of een raw CDP-profiel.Deze controle is niet van toepassing op Docker-, sandbox-, remote-browser- of andere headless-flows. Die blijven raw CDP gebruiken.2d. OAuth TLS-vereisten
2d. OAuth TLS-vereisten
UNABLE_TO_GET_ISSUER_CERT_LOCALLY, verlopen certificaat of zelfondertekend certificaat), toont doctor platformspecifieke herstelrichtlijnen. Op macOS met een Homebrew Node is de oplossing meestal brew postinstall ca-certificates. Met --deep wordt de test uitgevoerd, zelfs als de Gateway gezond is.2e. Codex OAuth-provideroverschrijvingen
2e. Codex OAuth-provideroverschrijvingen
models.providers.openai-codex, kunnen die het ingebouwde Codex OAuth-providerpad overschaduwen dat nieuwere releases automatisch gebruiken. Doctor waarschuwt wanneer het die oude transportinstellingen naast Codex OAuth ziet, zodat je de verouderde transportoverschrijving kunt verwijderen of herschrijven en het ingebouwde routerings-/fallbackgedrag kunt terugkrijgen. Aangepaste proxy’s en overschrijvingen met alleen headers worden nog steeds ondersteund en activeren deze waarschuwing niet.2f. Waarschuwingen voor Codex Plugin-routes
2f. Waarschuwingen voor Codex Plugin-routes
openai-codex/* nog steeds via de standaard PI-runner worden opgelost. Die combinatie is geldig wanneer je Codex OAuth-/abonnementsauthenticatie via PI wilt gebruiken, maar is gemakkelijk te verwarren met de native Codex app-server-harness. Doctor waarschuwt en verwijst naar de expliciete app-server-vorm: openai/* plus agentRuntime.id: "codex" of OPENCLAW_AGENT_RUNTIME=codex.Doctor herstelt dit niet automatisch omdat beide routes geldig zijn:openai-codex/*+ PI betekent “gebruik Codex OAuth-/abonnementsauthenticatie via de normale OpenClaw-runner.”openai/*+runtime: "codex"betekent “voer de ingesloten beurt uit via de native Codex app-server.”/codex ...betekent “beheer of koppel een native Codex-gesprek vanuit chat.”/acp ...ofruntime: "acp"betekent “gebruik de externe ACP/acpx-adapter.”
3. Verouderde statusmigraties (schijfindeling)
3. Verouderde statusmigraties (schijfindeling)
- Sessiesopslag + transcripties:
- van
~/.openclaw/sessions/naar~/.openclaw/agents/<agentId>/sessions/
- van
- Agent-map:
- van
~/.openclaw/agent/naar~/.openclaw/agents/<agentId>/agent/
- van
- WhatsApp-authenticatiestatus (Baileys):
- van verouderde
~/.openclaw/credentials/*.json(behalveoauth.json) - naar
~/.openclaw/credentials/whatsapp/<accountId>/...(standaard account-id:default)
- van verouderde
openclaw doctor. Normalisatie van praatprovider/provider-map vergelijkt nu op structurele gelijkheid, zodat verschillen die alleen door sleutelvolgorde komen niet langer herhaalde doctor --fix-wijzigingen zonder effect veroorzaken.3a. Verouderde Plugin-manifestmigraties
3a. Verouderde Plugin-manifestmigraties
speechProviders, realtimeTranscriptionProviders, realtimeVoiceProviders, mediaUnderstandingProviders, imageGenerationProviders, videoGenerationProviders, webFetchProviders, webSearchProviders). Wanneer ze worden gevonden, biedt doctor aan om ze naar het object contracts te verplaatsen en het manifestbestand ter plekke te herschrijven. Deze migratie is idempotent; als de sleutel contracts al dezelfde waarden heeft, wordt de verouderde sleutel verwijderd zonder de gegevens te dupliceren.3b. Verouderde Cron-opslagmigraties
3b. Verouderde Cron-opslagmigraties
~/.openclaw/cron/jobs.json, of cron.store wanneer overschreven) op oude taakvormen die de scheduler nog steeds voor compatibiliteit accepteert.Huidige Cron-opschoningen omvatten:jobId→idschedule.cron→schedule.expr- payloadvelden op het hoogste niveau (
message,model,thinking, …) →payload - leveringsvelden op het hoogste niveau (
deliver,channel,to,provider, …) →delivery - payload-
provider-leveringsaliassen → explicietedelivery.channel - eenvoudige verouderde
notify: trueWebhook-terugvaltaken → explicietedelivery.mode="webhook"metdelivery.to=cron.webhook
notify: true-taken alleen automatisch wanneer dat kan zonder het gedrag te wijzigen. Als een taak verouderde notificatie-terugval combineert met een bestaande niet-Webhook-leveringsmodus, waarschuwt doctor en laat die taak staan voor handmatige beoordeling.3c. Opschoning van sessievergrendelingen
3c. Opschoning van sessievergrendelingen
--fix / --repair verwijdert doctor verouderde vergrendelingsbestanden automatisch; anders wordt er een opmerking afgedrukt met de instructie om opnieuw uit te voeren met --fix.3d. Reparatie van sessietranscript-branches
3d. Reparatie van sessietranscript-branches
--fix / --repair maakt doctor naast het origineel een back-up van elk getroffen bestand en herschrijft doctor het transcript naar de actieve branch, zodat Gateway-geschiedenis en geheugenlezers geen dubbele beurten meer zien.4. Integriteitscontroles van status (sessiepersistentie, routering en veiligheid)
4. Integriteitscontroles van status (sessiepersistentie, routering en veiligheid)
- Statusmap ontbreekt: waarschuwt voor catastrofaal statusverlies, vraagt om de map opnieuw aan te maken en herinnert je eraan dat ontbrekende gegevens niet kunnen worden hersteld.
- Machtigingen van statusmap: verifieert schrijfbaarheid; biedt aan om machtigingen te herstellen (en geeft een
chown-hint wanneer een mismatch in eigenaar/groep wordt gedetecteerd). - macOS-cloudgesynchroniseerde statusmap: waarschuwt wanneer de status onder iCloud Drive (
~/Library/Mobile Documents/com~apple~CloudDocs/...) of~/Library/CloudStorage/...uitkomt, omdat paden met synchronisatie tragere I/O en lock-/synchronisatieraces kunnen veroorzaken. - Linux SD- of eMMC-statusmap: waarschuwt wanneer de status uitkomt op een
mmcblk*-mountbron, omdat willekeurige I/O op SD- of eMMC-opslag trager kan zijn en sneller kan slijten onder sessie- en referentiewrites. - Sessiemappen ontbreken:
sessions/en de sessiestoremap zijn vereist om geschiedenis te bewaren enENOENT-crashes te voorkomen. - Transcript-mismatch: waarschuwt wanneer recente sessie-items ontbrekende transcriptbestanden hebben.
- Hoofdsessie “1-line JSONL”: markeert wanneer het hoofdtranscript slechts één regel heeft (geschiedenis wordt niet opgebouwd).
- Meerdere statusmappen: waarschuwt wanneer meerdere
~/.openclaw-mappen bestaan in homedirectory’s of wanneerOPENCLAW_STATE_DIRergens anders naar verwijst (geschiedenis kan worden gesplitst tussen installaties). - Herinnering voor externe modus: als
gateway.mode=remoteis, herinnert doctor je eraan om het op de externe host uit te voeren (de status staat daar). - Machtigingen van configuratiebestand: waarschuwt als
~/.openclaw/openclaw.jsonleesbaar is voor groep/wereld en biedt aan dit aan te scherpen naar600.
5. Gezondheid van modelauthenticatie (OAuth-verval)
5. Gezondheid van modelauthenticatie (OAuth-verval)
--non-interactive slaat vernieuwingspogingen over.Wanneer een OAuth-vernieuwing permanent mislukt (bijvoorbeeld refresh_token_reused, invalid_grant, of een provider die aangeeft dat je opnieuw moet inloggen), meldt doctor dat herauthenticatie vereist is en print het de exacte opdracht openclaw models auth login --provider ... die je moet uitvoeren.Doctor meldt ook auth-profielen die tijdelijk onbruikbaar zijn door:- korte cooldowns (rate limits/time-outs/authenticatiefouten)
- langere uitschakelingen (facturatie-/tegoedfouten)
6. Modelvalidatie voor hooks
6. Modelvalidatie voor hooks
hooks.gmail.model is ingesteld, valideert doctor de modelreferentie tegen de catalogus en allowlist en waarschuwt wanneer deze niet kan worden opgelost of niet is toegestaan.7. Reparatie van sandbox-image
7. Reparatie van sandbox-image
7b. Runtime-afhankelijkheden van gebundelde plugins
7b. Runtime-afhankelijkheden van gebundelde plugins
plugins.entries.discord.enabled: true, legacy channels.discord.enabled: true, of een standaard ingeschakelde gebundelde provider. Als er afhankelijkheden ontbreken, meldt doctor de pakketten en installeert het ze in openclaw doctor --fix- / openclaw doctor --repair-modus. Externe plugins gebruiken nog steeds openclaw plugins install / openclaw plugins update; doctor installeert geen afhankelijkheden voor willekeurige pluginpaden.Tijdens doctor-reparatie melden gebundelde npm-installaties voor runtime-afhankelijkheden spinner-voortgang in TTY-sessies en periodieke regelvoortgang in gepipete/headless uitvoer. De Gateway en lokale CLI kunnen ook actieve gebundelde Plugin-runtime-afhankelijkheden op aanvraag repareren voordat een gebundelde Plugin wordt geïmporteerd. Deze installaties zijn beperkt tot de installatieroot van de Plugin-runtime, worden uitgevoerd met uitgeschakelde scripts, schrijven geen package lock en worden bewaakt door een installatieroot-lock zodat gelijktijdige CLI- of Gateway-starts niet tegelijk dezelfde node_modules-boom wijzigen.8. Gateway-servicemigraties en opschoonhints
8. Gateway-servicemigraties en opschoonhints
openclaw gateway status --deep of openclaw doctor --deep, verwijder daarna het duplicaat of stel OPENCLAW_SERVICE_REPAIR_POLICY=external in wanneer een systeem-supervisor de gateway-levenscyclus beheert.8b. Migratie van Startup Matrix
8b. Migratie van Startup Matrix
--fix / --repair-modus) een snapshot vóór de migratie en voert daarna de best-effort migratiestappen uit: migratie van verouderde Matrix-status en voorbereiding van verouderde versleutelde status. Beide stappen zijn niet-fataal; fouten worden gelogd en het opstarten gaat door. In alleen-lezenmodus (openclaw doctor zonder --fix) wordt deze controle volledig overgeslagen.8c. Apparaatkoppeling en auth-drift
8c. Apparaatkoppeling en auth-drift
- wachtende eerste koppelingsverzoeken
- wachtende rol-upgrades voor al gekoppelde apparaten
- wachtende scope-upgrades voor al gekoppelde apparaten
- reparaties voor openbare-sleutel-mismatches waarbij de apparaat-id nog overeenkomt maar de apparaatidentiteit niet langer overeenkomt met de goedgekeurde record
- gekoppelde records zonder actief token voor een goedgekeurde rol
- gekoppelde tokens waarvan de scopes afwijken van de goedgekeurde koppelingsbaseline
- lokaal gecachte apparaattoken-vermeldingen voor de huidige machine die ouder zijn dan een tokenrotatie aan gateway-zijde of verouderde scope-metadata bevatten
- inspecteer wachtende verzoeken met
openclaw devices list - keur het exacte verzoek goed met
openclaw devices approve <requestId> - roteer een vers token met
openclaw devices rotate --device <deviceId> --role <role> - verwijder en keur een verouderde record opnieuw goed met
openclaw devices remove <deviceId>
9. Beveiligingswaarschuwingen
9. Beveiligingswaarschuwingen
10. systemd linger (Linux)
10. systemd linger (Linux)
11. Werkruimtestatus (Skills, plugins en verouderde mappen)
11. Werkruimtestatus (Skills, plugins en verouderde mappen)
- Skills-status: telt in aanmerking komende, ontbrekende-vereisten- en allowlist-geblokkeerde skills.
- Verouderde werkruimtemappen: waarschuwt wanneer
~/openclawof andere verouderde werkruimtemappen naast de huidige werkruimte bestaan. - Pluginstatus: telt ingeschakelde/uitgeschakelde/foutieve plugins; toont Plugin-ID’s voor eventuele fouten; rapporteert mogelijkheden van bundelplugins.
- Plugin-compatibiliteitswaarschuwingen: markeert plugins die compatibiliteitsproblemen hebben met de huidige runtime.
- Plugin-diagnostiek: toont eventuele waarschuwingen of fouten tijdens het laden die door het Plugin-register zijn uitgegeven.
11b. Grootte van bootstrapbestanden
11b. Grootte van bootstrapbestanden
AGENTS.md, CLAUDE.md of andere geïnjecteerde contextbestanden) dicht bij of boven het geconfigureerde tekenbudget zitten. Het rapporteert per bestand ruwe versus geïnjecteerde tekentellingen, afkappingspercentage, afkappingsoorzaak (max/file of max/total) en het totale aantal geïnjecteerde tekens als fractie van het totale budget. Wanneer bestanden worden afgekapt of dicht bij de limiet zitten, toont doctor tips voor het afstemmen van agents.defaults.bootstrapMaxChars en agents.defaults.bootstrapTotalMaxChars.11d. Opschoning van verouderde kanaalplugins
11d. Opschoning van verouderde kanaalplugins
openclaw doctor --fix een ontbrekende kanaalplugin verwijdert, verwijdert het ook de loshangende kanaalgebonden configuratie die naar die Plugin verwees: channels.<id>-vermeldingen, heartbeat-doelen die het kanaal noemden en agents.*.models["<channel>/*"]-overrides. Dit voorkomt Gateway-opstartlussen waarbij de kanaalruntime verdwenen is maar de configuratie de gateway nog steeds vraagt eraan te binden.11c. Shell-aanvulling
11c. Shell-aanvulling
- Als het shell-profiel een traag dynamisch aanvullingspatroon gebruikt (
source <(openclaw completion ...)), werkt doctor dit bij naar de snellere variant met gecachet bestand. - Als aanvulling in het profiel is geconfigureerd maar het cachebestand ontbreekt, genereert doctor de cache automatisch opnieuw.
- Als er helemaal geen aanvulling is geconfigureerd, vraagt doctor om deze te installeren (alleen interactieve modus; overgeslagen met
--non-interactive).
openclaw completion --write-state uit om de cache handmatig opnieuw te genereren.12. Gateway-auth-controles (lokaal token)
12. Gateway-auth-controles (lokaal token)
- Als tokenmodus een token nodig heeft en er geen tokenbron bestaat, biedt doctor aan er een te genereren.
- Als
gateway.auth.tokendoor SecretRef wordt beheerd maar niet beschikbaar is, waarschuwt doctor en overschrijft het dit niet met platte tekst. openclaw doctor --generate-gateway-tokenforceert generatie alleen wanneer er geen token-SecretRef is geconfigureerd.
12b. Alleen-lezen SecretRef-bewuste reparaties
12b. Alleen-lezen SecretRef-bewuste reparaties
openclaw doctor --fixgebruikt nu hetzelfde alleen-lezen SecretRef-samenvattingsmodel als statusfamiliecommando’s voor gerichte configuratiereparaties.- Voorbeeld: Telegram
allowFrom/groupAllowFrom@username-reparatie probeert geconfigureerde botreferenties te gebruiken wanneer die beschikbaar zijn. - Als het Telegram-bottoken via SecretRef is geconfigureerd maar niet beschikbaar is in het huidige commandopad, meldt doctor dat de referentie geconfigureerd-maar-niet-beschikbaar is en slaat het automatische resolutie over in plaats van te crashen of het token ten onrechte als ontbrekend te rapporteren.
13. Gateway-gezondheidscontrole + herstart
13. Gateway-gezondheidscontrole + herstart
13b. Gereedheid van geheugenzoekfunctie
13b. Gereedheid van geheugenzoekfunctie
- QMD-backend: peilt of de
qmd-binary beschikbaar en startbaar is. Zo niet, toont het hersteladvies inclusief het npm-pakket en een optie voor een handmatig binary-pad. - Expliciete lokale provider: controleert op een lokaal modelbestand of een herkende externe/downloadbare model-URL. Als die ontbreekt, stelt het voor over te schakelen naar een externe provider.
- Expliciete externe provider (
openai,voyage, enz.): controleert of er een API-sleutel aanwezig is in de omgeving of auth-store. Toont bruikbare herstelhints als die ontbreekt. - Automatische provider: controleert eerst de beschikbaarheid van het lokale model en probeert daarna elke externe provider in volgorde van automatische selectie.
openclaw memory status --deep om de embeddinggereedheid tijdens runtime te verifiëren.14. Waarschuwingen voor kanaalstatus
14. Waarschuwingen voor kanaalstatus
15. Audit + reparatie van supervisorconfiguratie
15. Audit + reparatie van supervisorconfiguratie
openclaw doctorvraagt om bevestiging voordat supervisorconfiguratie wordt herschreven.openclaw doctor --yesaccepteert de standaardreparatieprompts.openclaw doctor --repairpast aanbevolen oplossingen toe zonder prompts.openclaw doctor --repair --forceoverschrijft aangepaste supervisorconfiguraties.OPENCLAW_SERVICE_REPAIR_POLICY=externalhoudt doctor alleen-lezen voor de levenscyclus van de gateway-service. Het rapporteert nog steeds servicestatus en voert niet-service-reparaties uit, maar slaat service-installatie/start/herstart/bootstrap, herschrijven van supervisorconfiguratie en opschoning van verouderde services over omdat een externe supervisor die levenscyclus beheert.- Op Linux herschrijft doctor geen commando-/entrypoint-metadata terwijl de overeenkomende systemd-gateway-unit actief is. Het negeert ook inactieve niet-verouderde extra gateway-achtige units tijdens de scan op dubbele services, zodat begeleidende servicebestanden geen opschoonruis veroorzaken.
- Als tokenauth een token vereist en
gateway.auth.tokendoor SecretRef wordt beheerd, valideert doctor service-installatie/reparatie de SecretRef maar bewaart het opgeloste tokenwaarden in platte tekst niet in de omgevingsmetadata van de supervisorservice. - Doctor detecteert beheerde
.env-/SecretRef-ondersteunde serviceomgevingswaarden die oudere LaunchAgent-, systemd- of Windows Scheduled Task-installaties inline insloten en herschrijft de servicemetadata zodat die waarden vanuit de runtimebron worden geladen in plaats van uit de supervisordefinitie. - Doctor detecteert wanneer het servicecommando nog steeds een oude
--portvastzet nadatgateway.portis gewijzigd en herschrijft de servicemetadata naar de huidige poort. - Als tokenauth een token vereist en de geconfigureerde token-SecretRef niet kan worden opgelost, blokkeert doctor het installatie-/reparatiepad met bruikbaar advies.
- Als zowel
gateway.auth.tokenalsgateway.auth.passwordzijn geconfigureerd engateway.auth.modeniet is ingesteld, blokkeert doctor installatie/reparatie totdat de modus expliciet is ingesteld. - Voor Linux user-systemd-units omvatten de token-driftcontroles van doctor nu zowel
Environment=- alsEnvironmentFile=-bronnen bij het vergelijken van service-auth-metadata. - Doctor-servicereparaties weigeren een gateway-service van een oudere OpenClaw-binary te herschrijven, stoppen of herstarten wanneer de configuratie het laatst door een nieuwere versie is geschreven. Zie Gateway-probleemoplossing.
- U kunt altijd een volledige herschrijving forceren via
openclaw gateway install --force.
16. Gateway-runtime + poortdiagnostiek
16. Gateway-runtime + poortdiagnostiek
18789) en meldt waarschijnlijke oorzaken (gateway draait al, SSH-tunnel).17. Best practices voor Gateway-runtime
17. Best practices voor Gateway-runtime
nvm, fnm, volta, asdf, enz.). WhatsApp- en Telegram-kanalen vereisen Node, en versiebeheerpaden kunnen na upgrades stuklopen omdat de service je shell-initialisatie niet laadt. Doctor biedt aan om te migreren naar een systeeminstallatie van Node wanneer die beschikbaar is (Homebrew/apt/choco).Nieuw geïnstalleerde of gerepareerde services behouden expliciete omgevingsroots (NVM_DIR, FNM_DIR, VOLTA_HOME, ASDF_DATA_DIR, BUN_INSTALL, PNPM_HOME) en stabiele user-bin-mappen, maar geraden fallbackmappen voor versiebeheerders worden alleen naar de service-PATH geschreven wanneer die mappen op schijf bestaan. Dit houdt de gegenereerde supervisor-PATH afgestemd op dezelfde minimale-PATH-audit die Doctor later uitvoert.18. Configuratie wegschrijven + wizardmetadata
18. Configuratie wegschrijven + wizardmetadata
19. Werkruimtetips (back-up + geheugensysteem)
19. Werkruimtetips (back-up + geheugensysteem)