oc-path incluso aggiunge la CLI openclaw path per lo
schema di indirizzamento dei file dell’area di lavoro oc://. Viene distribuito nel repo OpenClaw sotto
extensions/oc-path/, ma è facoltativo: installazione e build lo lasciano inattivo finché non lo
abiliti.
Gli indirizzi oc:// puntano a una singola foglia (o a un insieme di foglie con wildcard) dentro
un file dell’area di lavoro. Oggi il plugin comprende quattro tipi di file:
- markdown (
.md,.mdx): frontmatter, sezioni, elementi, campi - jsonc (
.jsonc,.json5,.json): commenti e formattazione preservati - jsonl (
.jsonl,.ndjson): record orientati alle righe - yaml (
.yaml,.yml,.lobster): nodi mappa/sequenza/scalare tramite l’API del documento YAML
Perché abilitarlo
Abilitaoc-path quando vuoi che script, hook o strumenti locali per agenti puntino
a una porzione precisa dello stato dell’area di lavoro senza inventare un parser per ogni forma
di file. Un singolo indirizzo oc:// può nominare una chiave di frontmatter Markdown, un elemento
di sezione, una foglia di configurazione JSONC, un campo evento JSONL o un passaggio di workflow YAML.
Questo è importante per i workflow dei maintainer in cui la modifica deve essere piccola,
ispezionabile e ripetibile: ispeziona un valore, trova i record corrispondenti, esegui una simulazione
di scrittura, quindi applica solo quella foglia lasciando invariati commenti, terminatori di riga e
formattazione vicina. Mantenerlo come plugin facoltativo offre agli utenti esperti il
substrato di indirizzamento senza inserire dipendenze di parser o superficie CLI nel
core per installazioni che non ne hanno mai bisogno.
Motivi comuni per abilitarlo:
- Automazione locale: gli script shell possono risolvere o aggiornare un valore dell’area di lavoro
con
openclaw path … --jsoninvece di portarsi dietro codice di parsing separato per Markdown, JSONC, JSONL e YAML. - Modifiche visibili all’agente: un agente può mostrare un diff di simulazione per una singola foglia indirizzata prima di scrivere, più facile da rivedere rispetto a una riscrittura libera del file.
- Integrazioni editor: un editor può mappare
oc://AGENTS.md/tools/ghal nodo Markdown esatto e al numero di riga senza dedurlo dal testo dell’intestazione. - Diagnostica:
emitesegue il round-trip di un file tramite parser ed emitter, così puoi verificare se un tipo di file è stabile a livello di byte prima di affidarti a modifiche automatizzate.
oc-path è lo stretto
livello di indirizzamento e operazioni su file con preservazione dei byte attorno al quale quegli strumenti
di livello superiore possono costruire.
Dove viene eseguito
Il plugin viene eseguito in-process dentro la CLIopenclaw sull’host da cui
invochi il comando. Non richiede un Gateway in esecuzione e non apre alcun
socket di rete: ogni verbo è una pura trasformazione su un file che indichi.
I metadati del plugin si trovano in extensions/oc-path/openclaw.plugin.json:
onStartup: false tiene il plugin fuori dal percorso critico del Gateway. onCommands: ["path"] indica alla CLI di caricare il plugin in modo lazy la prima volta che esegui
openclaw path …, quindi le installazioni che non usano mai il verbo non pagano alcun costo.
Abilitare
openclaw path funzionano subito sullo stesso host:
la CLI carica il plugin on demand.
Disabilita con:
Dipendenze
Tutte le dipendenze dei parser sono locali al plugin: abilitareoc-path non porta
nuovi pacchetti nel runtime core:
| Dipendenza | Scopo |
|---|---|
commander | Cablaggio dei sottocomandi per resolve, find, set, validate, emit. |
jsonc-parser | Parsing JSONC + modifiche di foglie mantenendo commenti e virgole finali. |
markdown-it | Tokenizzazione Markdown per il modello sezione / elemento / campo. |
yaml | Parsing / emit / modifica di Document YAML mantenendo commenti e stile flow. |
jsonc-parser.
Cosa fornisce
| Superficie | Fornita da |
|---|---|
CLI openclaw path | extensions/oc-path/cli-registration.ts |
Parser / formatter oc:// | extensions/oc-path/src/oc-path/oc-path.ts |
| Parsing / emit / modifica per tipo | extensions/oc-path/src/oc-path/{md,jsonc,jsonl,yaml} |
| Resolve / find / set universali | extensions/oc-path/src/oc-path/{resolve,find,edit}.ts |
| Protezione del sentinella di redazione | extensions/oc-path/src/oc-path/sentinel.ts |
Relazione con altri plugin
memory-*: le scritture in memoria passano dai plugin di memoria, non daoc-path.oc-pathè un substrato generico per file; i plugin di memoria vi stratificano sopra la propria semantica.- LKG:
pathnon conosce il ripristino della configurazione Last-Known-Good. Se un file è tracciato da LKG, la chiamataobservesuccessiva decide se promuovere o recuperare;set --batchper multi-set atomico tramite il ciclo di vita di promozione/recupero LKG è pianificato insieme al substrato di recupero LKG.
Sicurezza
set scrive byte grezzi tramite il percorso emit del substrato, che applica automaticamente
la protezione del sentinella di redazione. Una foglia che contiene
__OPENCLAW_REDACTED__ (letteralmente o come sottostringa) viene rifiutata al momento della scrittura
con OC_EMIT_SENTINEL. La CLI rimuove anche il sentinella letterale da qualsiasi
output umano o JSON che stampa, sostituendolo con [REDACTED] affinché acquisizioni
del terminale e pipeline non perdano mai il marker.