Plugin guides
OC-Path-Plugin
Das gebündelte Plugin oc-path fügt die CLI openclaw path für das
Adressierungsschema oc:// für Workspace-Dateien hinzu. Es ist im OpenClaw-Repository unter
extensions/oc-path/ enthalten, muss jedoch explizit aktiviert werden: Nach der Installation bzw. dem Build bleibt es inaktiv, bis Sie
es aktivieren.
oc://-Adressen verweisen auf ein einzelnes Blatt (oder eine per Platzhalter definierte Menge von Blättern) innerhalb
einer Workspace-Datei. Das Plugin unterstützt vier Dateiarten:
- Markdown (
.md): Frontmatter, Abschnitte, Elemente, Felder - JSONC (
.jsonc,.json): Kommentare und Formatierung bleiben erhalten - JSONL (
.jsonl,.ndjson): zeilenorientierte Datensätze - YAML (
.yaml,.yml,.lobster): Mapping-, Sequenz- und Skalarknoten über dieDocument-API des Paketsyaml
Self-Hoster und Editor-Erweiterungen verwenden die CLI, um ein einzelnes Blatt zu lesen oder zu schreiben, ohne direkt gegen das SDK zu skripten; Agenten und Hooks behandeln sie als deterministische Grundlage, sodass Byte-genaue Roundtrips und der Schutz durch den Schwärzungs- Sentinel einheitlich für alle Dateiarten gelten. Die vollständige Grammatik, die nach Verben gegliederte Liste der Flags und ausgearbeitete Beispiele für jede Dateiart finden Sie in der CLI-Referenz. Diese Seite erläutert, warum und wie Sie das Plugin aktivieren.
Warum Sie es aktivieren sollten
Aktivieren Sie oc-path, wenn Skripte, Hooks oder lokale Agentenwerkzeuge auf
einen präzisen Teil des Workspace-Zustands verweisen müssen, ohne für jedes Dateiformat einen eigenen Parser zu benötigen. Eine
einzelne oc://-Adresse kann einen Markdown-Frontmatter-Schlüssel, ein Abschnittselement, ein
JSONC-Konfigurationsblatt, ein JSONL-Ereignisfeld oder einen YAML-Workflow-Schritt bezeichnen.
Das ist für Maintainer-Workflows wichtig, bei denen die Änderung klein, überprüfbar und wiederholbar bleiben soll: einen Wert prüfen, übereinstimmende Datensätze finden, einen Schreibvorgang probeweise ausführen und anschließend nur dieses Blatt anwenden, während Kommentare, Zeilenenden und die umgebende Formatierung unverändert bleiben.
Häufige Gründe für die Aktivierung:
- Lokale Automatisierung: Shell-Skripte lösen einen einzelnen Workspace-Wert auf oder aktualisieren ihn
mit
openclaw path … --json, statt separaten Parsing-Code für Markdown, JSONC, JSONL und YAML mitzuführen. - Für Agenten sichtbare Änderungen: Ein Agent zeigt vor dem Schreiben einen Probelauf-Diff für ein adressiertes Blatt an, der leichter zu prüfen ist als das freie Neuschreiben einer Datei.
- Editor-Integrationen: Ein Editor ordnet
oc://AGENTS.md/tools/ghdem exakten Markdown-Knoten und der Zeilennummer zu, ohne anhand des Überschriftentexts zu raten. - Diagnose:
emitführt eine Datei durch Parser und Emitter und wieder zurück, sodass Sie prüfen können, ob eine Dateiart Byte-stabil ist, bevor Sie sich auf automatisierte Änderungen verlassen.
# Ist das GitHub-Plugin in dieser Konfiguration aktiviert?openclaw path resolve 'oc://config.jsonc/plugins/github/enabled' --json # Welche Tool-Aufrufnamen kommen in diesem Sitzungsprotokoll vor?openclaw path find 'oc://session.jsonl/[event=tool_call]/name' --json # Welche Bytes würde diese kleine Konfigurationsänderung schreiben?openclaw path set 'oc://config.jsonc/plugins/github/enabled' 'true' --dry-runoc-path ist bewusst nicht für übergeordnete Semantik zuständig. Speicher-
Plugins bleiben für Speicherschreibvorgänge zuständig, Konfigurationsbefehle weiterhin für die vollständige
Konfigurationsverwaltung und die Wiederherstellung der zuletzt als funktionsfähig bekannten Konfiguration (Last Known Good, LKG) weiterhin für
Wiederherstellung und Übernahme. oc-path ist die schmale Adressierungs- und Byte-erhaltende
Dateioperationsschicht, auf der diese übergeordneten Werkzeuge aufbauen können.
Wo es ausgeführt wird
Das Plugin wird prozessintern innerhalb der CLI openclaw auf dem Host ausgeführt, auf dem Sie
den Befehl aufrufen. Es benötigt keinen laufenden Gateway und öffnet keine
Netzwerk-Sockets; jedes Verb ist eine reine Transformation der Datei, auf die Sie verweisen.
Die Plugin-Metadaten befinden sich in extensions/oc-path/openclaw.plugin.json:
{ "id": "oc-path", "name": "OC Path", "activation": { "onStartup": false, "onCommands": ["path"] }, "commandAliases": [{ "name": "path", "kind": "cli" }]}onStartup: false hält das Plugin aus dem Startpfad des Gateway heraus.
commandAliases und activation.onCommands weisen die CLI an, das Plugin
beim ersten Ausführen von openclaw path … verzögert zu laden, sodass bei Installationen, die
das Verb nie verwenden, keine Kosten entstehen.
Aktivieren
openclaw plugins enable oc-pathStarten Sie den Gateway neu (falls Sie einen ausführen), damit der Manifest-Snapshot den neuen
Status übernimmt. Direkte Aufrufe von openclaw path funktionieren auf demselben Host sofort;
die CLI lädt das Plugin bei Bedarf.
Deaktivieren Sie es mit:
openclaw plugins disable oc-pathAbhängigkeiten
Alle Parser-Abhängigkeiten sind lokal im Plugin enthalten; durch das Aktivieren von oc-path werden
keine neuen Pakete in die Core-Laufzeitumgebung aufgenommen:
| Abhängigkeit | Zweck |
|---|---|
commander |
Verdrahtung der Unterbefehle resolve, find, set, validate, emit. |
jsonc-parser |
JSONC-Parsing und Blattänderungen unter Beibehaltung von Kommentaren und abschließenden Kommas. |
markdown-it |
Markdown-Tokenisierung für das Abschnitts-, Element- und Feldmodell. |
yaml |
Parsen, Ausgeben und Bearbeiten von YAML-Document unter Beibehaltung von Kommentaren und Flow-Stil. |
JSONL bleibt eigenständig implementiert: Zeilenorientiertes Parsing ist einfacher als jede
Abhängigkeit, und das zeilenweise Parsing läuft bereits über jsonc-parser.
Bereitgestellte Funktionen
| Oberfläche | Bereitgestellt durch |
|---|---|
CLI openclaw path |
extensions/oc-path/cli-registration.ts |
oc://-Parser/-Formatierer |
extensions/oc-path/src/oc-path/oc-path.ts |
| Parsen/Ausgeben/Bearbeiten je Dateiart | extensions/oc-path/src/oc-path/{md,jsonc,jsonl,yaml} |
| Universelles Auflösen/Suchen/Setzen | extensions/oc-path/src/oc-path/{resolve,find,edit}.ts |
| Schutz durch Schwärzungs-Sentinel | extensions/oc-path/src/oc-path/sentinel.ts |
Die CLI ist derzeit die einzige öffentliche Oberfläche. Die Substrat-Verben sind innerhalb des Plugins privat; Nutzer verwenden die CLI (oder erstellen ihr eigenes Plugin auf Basis des SDK).
Beziehung zu anderen Plugins
memory-*: Speicherschreibvorgänge laufen über die Speicher-Plugins, nicht überoc-path.oc-pathist ein generisches Dateisubstrat; Speicher-Plugins legen ihre eigene Semantik darüber.- LKG:
pathkennt die Wiederherstellung der zuletzt als funktionsfähig bekannten Konfiguration nicht. Wenn eine Datei, die Sie überpathbearbeiten, auch von LKG verfolgt wird, entscheidet der nächste Beobachtungszyklus der Konfiguration, ob sie übernommen oder wiederhergestellt wird; behandeln Sie einepath-Änderung genauso wie jeden anderen direkten Schreibvorgang in diese Datei.
Sicherheit
set schreibt Rohbytes über den Ausgabepfad des Substrats, der den Schutz durch den
Schwärzungs-Sentinel automatisch anwendet. Ein Blatt, das
__OPENCLAW_REDACTED__ enthält (wortgetreu oder als Teilzeichenfolge), wird beim Schreiben
mit OC_EMIT_SENTINEL abgelehnt. Die CLI entfernt außerdem den wörtlichen Sentinel aus jeder
von ihr ausgegebenen menschenlesbaren oder JSON-Ausgabe und ersetzt ihn durch [REDACTED], sodass
Terminalaufzeichnungen und Pipelines den Marker niemals offenlegen.