oc-path dodaje interfejs CLI openclaw path dla
schematu adresowania plików obszaru roboczego oc://. Jest dostarczany w repozytorium OpenClaw w
extensions/oc-path/, ale wymaga jawnego włączenia: po instalacji lub kompilacji pozostaje nieaktywny, dopóki go
nie włączysz.
Adresy oc:// wskazują pojedynczy element końcowy (lub zestaw elementów końcowych określony symbolem wieloznacznym) wewnątrz
pliku obszaru roboczego. Plugin obsługuje cztery rodzaje plików:
- markdown (
.md): metadane frontmatter, sekcje, elementy, pola - jsonc (
.jsonc,.json): z zachowaniem komentarzy i formatowania - jsonl (
.jsonl,.ndjson): rekordy zorientowane wierszowo - yaml (
.yaml,.yml,.lobster): węzły map, sekwencji i wartości skalarnych za pośrednictwem APIDocumentpakietuyaml
Dlaczego warto go włączyć
Włączoc-path, gdy skrypty, hooki lub lokalne narzędzia agentów muszą wskazywać
dokładny fragment stanu obszaru roboczego bez osobnego parsera dla każdego formatu pliku. Jeden
adres oc:// może wskazywać klucz frontmatter Markdown, element sekcji,
wartość końcową konfiguracji JSONC, pole zdarzenia JSONL lub krok przepływu pracy YAML.
Ma to znaczenie w przepływach pracy opiekunów, w których zmiana powinna pozostać niewielka,
możliwa do audytu i powtarzalna: sprawdź jedną wartość, znajdź pasujące rekordy, wykonaj próbny
zapis, a następnie zastosuj zmianę tylko do tego elementu końcowego, pozostawiając bez zmian komentarze, zakończenia wierszy i
pobliskie formatowanie.
Typowe powody włączenia:
- Lokalna automatyzacja: skrypty powłoki odczytują lub aktualizują jedną wartość obszaru roboczego
za pomocą
openclaw path … --json, zamiast zawierać osobny kod analizujący Markdown, JSONC, JSONL i YAML. - Edycje widoczne dla agenta: przed zapisem agent pokazuje różnicę z wykonania próbnego dla jednego zaadresowanego elementu końcowego, co łatwiej sprawdzić niż swobodne przepisanie pliku.
- Integracje z edytorami: edytor odwzorowuje
oc://AGENTS.md/tools/ghna dokładny węzeł Markdown i numer wiersza bez zgadywania na podstawie tekstu nagłówka. - Diagnostyka:
emitprzeprowadza plik przez parser i generator, dzięki czemu można sprawdzić, czy dany rodzaj pliku zachowuje identyczną reprezentację bajtową, zanim zacznie się polegać na automatycznych edycjach.
oc-path celowo nie odpowiada za semantykę wyższego poziomu. Pluginy
pamięci nadal odpowiadają za zapisywanie pamięci, polecenia konfiguracji nadal odpowiadają za pełne zarządzanie
konfiguracją, a mechanizm odzyskiwania ostatniej znanej dobrej konfiguracji (LKG) nadal odpowiada za
przywracanie i zatwierdzanie. oc-path stanowi wąską warstwę adresowania oraz operacji na plikach z zachowaniem
bajtów, wokół której mogą działać te narzędzia wyższego poziomu.
Gdzie działa
Plugin działa wewnątrz procesu CLIopenclaw na hoście, na którym
wywołujesz polecenie. Nie wymaga działającego Gateway i nie otwiera żadnych
gniazd sieciowych; każde polecenie wykonuje wyłącznie przekształcenie wskazanego pliku.
Metadane Pluginu znajdują się w extensions/oc-path/openclaw.plugin.json:
onStartup: false wyklucza Plugin ze ścieżki uruchamiania Gateway.
commandAliases i activation.onCommands nakazują CLI leniwe załadowanie Pluginu
przy pierwszym uruchomieniu openclaw path …, dzięki czemu instalacje, które nigdy nie korzystają
z tego polecenia, nie ponoszą żadnego kosztu.
Włączanie
openclaw path działają natychmiast na tym samym hoście;
CLI ładuje Plugin na żądanie.
Wyłączanie:
Zależności
Wszystkie zależności parserów są lokalne dla Pluginu; włączenieoc-path nie dodaje
nowych pakietów do podstawowego środowiska wykonawczego:
Obsługa JSONL pozostaje napisana ręcznie: analiza wierszowa jest prostsza niż użycie jakiejkolwiek
zależności, a analiza poszczególnych wierszy i tak korzysta z
jsonc-parser.
Udostępniane funkcje
CLI jest obecnie jedynym publicznym interfejsem. Polecenia warstwy bazowej są prywatną częścią
Pluginu; użytkownicy korzystają z CLI (lub tworzą własny Plugin przy użyciu
SDK).
Relacje z innymi Pluginami
memory-*: zapisywanie pamięci odbywa się przez Pluginy pamięci, a nieoc-path.oc-pathjest ogólną warstwą bazową operacji na plikach; Pluginy pamięci nakładają na nią własną semantykę.- LKG:
pathnie obsługuje przywracania ostatniej znanej dobrej konfiguracji. Jeśli plik edytowany przezpathjest również śledzony przez LKG, następny cykl obserwacji konfiguracji zdecyduje, czy go zatwierdzić, czy odzyskać; traktuj edycję przezpathtak samo jak każdy inny bezpośredni zapis do tego pliku.
Bezpieczeństwo
set zapisuje surowe bajty przez ścieżkę generowania warstwy bazowej, która automatycznie stosuje
ochronę znacznika redakcji. Zapis elementu końcowego zawierającego
__OPENCLAW_REDACTED__ (dosłownie lub jako podciąg) zostaje odrzucony
z błędem OC_EMIT_SENTINEL. CLI usuwa również dosłowny znacznik ze wszystkich
wyświetlanych danych wyjściowych przeznaczonych dla człowieka lub w formacie JSON, zastępując go ciągiem [REDACTED], aby zrzuty
terminala i potoki nigdy nie ujawniły tego znacznika.