Kompatibilitätsregister
Plugin-Kompatibilitätsverträge werden im Core-Register untersrc/plugins/compat/registry.ts nachverfolgt.
Jeder Eintrag hat:
- einen stabilen Kompatibilitätscode
- Status:
active,deprecated,removal-pendingoderremoved - Owner: SDK, config, setup, channel, provider, plugin execution, agent runtime oder core
- Einführungs- und Deprecation-Daten, sofern zutreffend
- Hinweise zur Ersetzung
- Dokumentation, Diagnosen und Tests, die das alte und neue Verhalten abdecken
Paket für den Plugin-Inspector
Der Plugin-Inspector sollte außerhalb des Core-OpenClaw-Repos als separates Paket/Repository leben, gestützt auf die versionierten Kompatibilitäts- und Manifest-Verträge. Die CLI für den ersten Tag sollte sein:- Manifest-/Schema-Validierung
- die geprüfte Version des Vertrags zur Kompatibilität
- Prüfungen von Installations-/Quellmetadaten
- Cold-Path-Import-Prüfungen
- Deprecation- und Kompatibilitätswarnungen
--json für stabile maschinenlesbare Ausgabe in CI-Anmerkungen. Der OpenClaw-Core sollte Verträge und Fixtures bereitstellen, die der Inspector verwenden kann, aber das Inspector-Binary nicht aus dem Hauptpaket openclaw veröffentlichen.
Deprecation-Richtlinie
OpenClaw sollte einen dokumentierten Plugin-Vertrag nicht in derselben Release entfernen, in der seine Ersetzung eingeführt wird. Die Migrationsabfolge ist:- Fügen Sie den neuen Vertrag hinzu.
- Behalten Sie das alte Verhalten über einen benannten Kompatibilitätsadapter verdrahtet bei.
- Geben Sie Diagnosen oder Warnungen aus, wenn Plugin-Autoren handeln können.
- Dokumentieren Sie die Ersetzung und den Zeitplan.
- Testen Sie sowohl den alten als auch den neuen Pfad.
- Warten Sie das angekündigte Migrationsfenster ab.
- Entfernen Sie nur mit expliziter Genehmigung für eine Breaking-Release.
Aktuelle Kompatibilitätsbereiche
Aktuelle Kompatibilitätseinträge umfassen:- alte breit gefasste SDK-Importe wie
openclaw/plugin-sdk/compat - alte Plugin-Formen nur mit Hooks und
before_agent_start - Verhalten für Allowlist und Aktivierung gebündelter Plugins
- alte Env-Var-Manifest-Metadaten für Provider/Kanal
- Aktivierungshinweise, die durch Ownership von Manifest-Beiträgen ersetzt werden
- Namensaliase
embeddedHarnessundagent-harness, während sich die öffentliche Benennung in RichtungagentRuntimebewegt - Fallback für generierte Metadaten gebündelter Kanalkonfigurationen, während registry-first-
channelConfigs-Metadaten eingeführt werden - das persistierte Env zum Deaktivieren des Plugin-Registers, während Reparaturabläufe Operatoren zu
openclaw plugins registry --refreshundopenclaw doctor --fixmigrieren
Release Notes
Release Notes sollten bevorstehende Plugin-Deprecations mit Zieldaten und Links zur Migrationsdokumentation enthalten. Diese Warnung muss erfolgen, bevor ein Kompatibilitätspfad zuremoval-pending oder removed wechselt.