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.
Dit is een bijdragershandleiding voor OpenClaw-coreontwikkelaars. Als je
een externe Plugin bouwt, zie dan Plugins bouwen.
Voor de diepgaande architectuurreferentie (capabilitymodel, eigenaarschap,
laadpipeline, runtimehelpers), zie Plugin-internals.
- plugin = eigendomsgrens
- capability = gedeeld corecontract
Wanneer je een capability maakt
Maak een nieuwe capability wanneer alle volgende punten waar zijn:- Meer dan één leverancier zou deze aannemelijk kunnen implementeren.
- Kanalen, tools of functie-Plugins moeten deze kunnen gebruiken zonder zich om de leverancier te bekommeren.
- Core moet fallback-, beleids-, configuratie- of leveringsgedrag bezitten.
De standaardvolgorde
- Definieer het getypeerde corecontract.
- Voeg Plugin-registratie toe voor dat contract.
- Voeg een gedeelde runtimehelper toe.
- Koppel één echte leveranciers-Plugin als bewijs.
- Verplaats feature-/kanaalgebruikers naar de runtimehelper.
- Voeg contracttests toe.
- Documenteer de operatorgerichte configuratie en het eigendomsmodel.
Wat waar hoort
Core:- Request-/responstypen.
- Providerregister + resolutie.
- Fallbackgedrag.
- Configuratieschema met doorgegeven
title/description-docsmetadata op geneste object-, wildcard-, array-item- en compositieknooppunten. - Runtimehelper-oppervlak.
- Leveranciers-API-aanroepen.
- Afhandeling van leveranciersauthenticatie.
- Leveranciersspecifieke requestnormalisatie.
- Registratie van de capability-implementatie.
- Roept
api.runtime.*of de bijpassendeplugin-sdk/*-runtime-helper aan. - Roept nooit rechtstreeks een leveranciersimplementatie aan.
Provider- en harnassenaden
Gebruik provider hooks wanneer het gedrag bij het modelprovidercontract hoort in plaats van bij de generieke agentlus. Voorbeelden zijn providerspecifieke requestparams na transportselectie, auth-profielvoorkeur, promptoverlays en fallbackroutering voor vervolgacties na model-/profielfailover. Gebruik agent harness hooks wanneer het gedrag hoort bij de runtime die een beurt uitvoert. Harnassen kunnen succesvolle maar onbruikbare pogingresultaten classificeren, zoals lege, alleen-redenerende of alleen-plannende responses, zodat het buitenste modelfallbackbeleid de retrybeslissing kan nemen. Houd beide naden smal:- Core bezit het retry-/fallbackbeleid.
- Provider-Plugins bezitten providerspecifieke request-/auth-/routeringhints.
- Harness-Plugins bezitten runtimespecifieke pogingclassificatie.
- Plugins van derden retourneren hints, geen directe mutaties van corestatus.
Bestandschecklist
Voor een nieuwe capability kun je verwachten deze gebieden aan te raken:src/<capability>/types.tssrc/<capability>/...registry/runtime.tssrc/plugins/types.tssrc/plugins/registry.tssrc/plugins/captured-registration.tssrc/plugins/contracts/registry.tssrc/plugins/runtime/types-core.tssrc/plugins/runtime/index.tssrc/plugin-sdk/<capability>.tssrc/plugin-sdk/<capability>-runtime.ts- Een of meer gebundelde Plugin-pakketten.
- Configuratie, documentatie, tests.
Uitgewerkt voorbeeld: beeldgeneratie
Beeldgeneratie volgt de standaardvorm:- Core definieert
ImageGenerationProvider. - Core stelt
registerImageGenerationProvider(...)beschikbaar. - Core stelt
runtime.imageGeneration.generate(...)beschikbaar. - De Plugins
openai,google,falenminimaxregistreren leveranciersimplementaties. - Toekomstige leveranciers registreren hetzelfde contract zonder kanalen/tools te wijzigen.
agents.defaults.imageModelanalyseert afbeeldingen.agents.defaults.imageGenerationModelgenereert afbeeldingen.
Reviewchecklist
Controleer voordat je een nieuwe capability levert:- Geen kanaal/tool importeert leverancierscode rechtstreeks.
- De runtimehelper is het gedeelde pad.
- Ten minste één contracttest bevestigt gebundeld eigenaarschap.
- Configuratiedocumentatie noemt de nieuwe model-/configuratiesleutel.
- Plugin-documentatie legt de eigendomsgrens uit.
Gerelateerd
- Plugin-internals — capabilitymodel, eigenaarschap, laadpipeline, runtimehelpers.
- Plugins bouwen — tutorial voor je eerste Plugin.
- SDK-overzicht — importmap en API-referentie voor registratie.
- Skills maken — begeleidend bijdragersoppervlak.