Registro di compatibilità
I contratti di compatibilità dei Plugin sono tracciati nel registro core insrc/plugins/compat/registry.ts.
Ogni record ha:
- un codice di compatibilità stabile
- stato:
active,deprecated,removal-pendingoremoved - proprietario: SDK, configurazione, setup, canale, provider, esecuzione del Plugin, runtime dell’agente o core
- date di introduzione e deprecazione, quando applicabili
- indicazioni sulla sostituzione
- documentazione, diagnostica e test che coprono il comportamento vecchio e nuovo
Pacchetto plugin inspector
Il plugin inspector dovrebbe trovarsi fuori dal repo core di OpenClaw come pacchetto/repository separato supportato dai contratti versionati di compatibilità e manifest. La CLI del primo giorno dovrebbe essere:- validazione del manifest/schema
- la versione di compatibilità del contratto che viene controllata
- controlli dei metadati di installazione/origine
- controlli di import del percorso cold-path
- avvisi di deprecazione e compatibilità
--json per un output stabile leggibile dalle macchine nelle annotazioni CI. Il core di OpenClaw dovrebbe esporre contratti e fixture che l’inspector può usare, ma non dovrebbe pubblicare il binario inspector dal pacchetto principale openclaw.
Policy di deprecazione
OpenClaw non dovrebbe rimuovere un contratto Plugin documentato nella stessa release che introduce il suo sostituto. La sequenza di migrazione è:- Aggiungere il nuovo contratto.
- Mantenere il vecchio comportamento instradato tramite un adapter di compatibilità con nome.
- Emettere diagnostica o avvisi quando gli autori di Plugin possono intervenire.
- Documentare il sostituto e la timeline.
- Testare sia il percorso vecchio sia quello nuovo.
- Attendere per tutta la finestra di migrazione annunciata.
- Rimuovere solo con approvazione esplicita per release breaking.
Aree di compatibilità attuali
I record di compatibilità attuali includono:- import SDK legacy ampi come
openclaw/plugin-sdk/compat - forme di Plugin legacy basate solo su hook e
before_agent_start - comportamento di allowlist e abilitazione dei Plugin integrati
- metadati legacy del manifest per env var di provider/canale
- activation hints che vengono sostituiti dalla ownership dei contributi del manifest
- alias di denominazione
embeddedHarnesseagent-harnessmentre la denominazione pubblica si sposta versoagentRuntime - fallback dei metadati generati della configurazione dei canali integrati mentre arrivano i metadati
channelConfigsregistry-first - l’env legacy di disabilitazione del registro dei Plugin persistito mentre i flussi di riparazione migrano gli operatori verso
openclaw plugins registry --refresheopenclaw doctor --fix
Note di rilascio
Le note di rilascio dovrebbero includere le prossime deprecazioni dei Plugin con date previste e link alla documentazione di migrazione. Questo avviso deve comparire prima che un percorso di compatibilità passi aremoval-pending o removed.