Codex harness

Środowisko wykonawcze uprzęży Codex

Kontrakt środowiska wykonawczego dla tur mechanizmu Codex. Informacje o konfiguracji i routingu zawiera strona Mechanizm Codex. Pola konfiguracji opisano w Dokumentacji referencyjnej mechanizmu Codex.

Omówienie

Codex odpowiada za natywną pętlę modelu, natywne wznawianie wątków, natywną kontynuację narzędzi oraz natywną Compaction. OpenClaw odpowiada za routing kanałów, pliki sesji, dostarczanie widocznych wiadomości, dynamiczne narzędzia OpenClaw, zatwierdzenia, dostarczanie multimediów oraz kopię transkrypcji obejmującą tę granicę.

Routing promptów zależy od wybranego środowiska wykonawczego, a nie tylko od ciągu identyfikującego dostawcę. Natywna tura Codex otrzymuje instrukcje deweloperskie serwera aplikacji Codex. Jawna ścieżka zgodności OpenClaw zachowuje zwykły prompt systemowy OpenClaw, nawet jeśli używa uwierzytelniania lub transportu OpenAI w wariancie Codex.

OpenClaw uruchamia i wznawia natywne wątki Codex z wyłączoną wbudowaną osobowością Codex (personality: "none"), dzięki czemu nadrzędne pozostają pliki osobowości przestrzeni roboczej oraz tożsamość agenta OpenClaw. Poza tym natywny Codex zachowuje bazowe instrukcje i instrukcje modelu należące do Codex oraz wczytywanie dokumentacji projektu. Lekkie uruchomienia OpenClaw (np. cron) nadal pomijają wczytywanie dokumentacji projektu.

Instrukcje deweloperskie OpenClaw obejmują zagadnienia środowiska wykonawczego OpenClaw: dostarczanie do kanału źródłowego, dynamiczne narzędzia OpenClaw, delegowanie ACP, kontekst adaptera oraz aktywne pliki profilu przestrzeni roboczej agenta. Katalogi Skills i wskaźniki do MEMORY.md obsługiwane przez narzędzia są przekazywane jako instrukcje deweloperskie współpracy ograniczone do danej tury. Gdy narzędzia pamięci są niedostępne, aktywna zawartość BOOTSTRAP.md oraz pełny plik MEMORY.md są zamiast tego przekazywane jako zwykły kontekst wejściowy tury.

Większość dynamicznych narzędzi OpenClaw używa przeszukiwalnej przestrzeni nazw openclaw. Narzędzia oznaczone jako catalogMode: "direct-only" używają openclaw_direct, którą Codex zachowuje jako bezpośrednio widoczną dla modelu wartość DirectModelOnly, zamiast udostępniać ją zagnieżdżonemu wykonywaniu w trybie Code Mode.

Powiązania wątków i zmiany modelu

Gdy sesja OpenClaw jest dołączona do istniejącego wątku Codex, następna tura ponownie przesyła do serwera aplikacji aktualnie wybrany model, zasady zatwierdzania, piaskownicę, recenzenta zatwierdzeń oraz poziom usługi. Zmiana z openai/gpt-5.5 na openai/gpt-5.2 zachowuje powiązanie wątku, ale nakazuje Codex kontynuowanie pracy z nowo wybranym modelem.

Wyjątkiem są powiązania nadzorowane. Selektor modelu OpenClaw pozostaje zablokowany, a wznowienia pomijają nadpisania modelu i dostawcy, dzięki czemu Codex przywraca utrwalony model i dostawcę kanonicznego wątku. Osobny natywny mechanizm sterujący Codex może zmienić tę utrwaloną parę, a początkowa migawka może wywołać standardowe ostrzeżenie Codex o różnicy modeli. Zewnętrzny model OpenClaw ani łańcuch modeli rezerwowych nigdy nie zastępują żadnego z tych elementów.

Nadzór i bezpieczna kontynuacja

Nadzór Codex to opcjonalna funkcja tego samego pluginu codex. Wykrywa natywne wątki przez osobne połączenie i przekazuje do katalogu Gateway wyłącznie niezarchiwizowane sesje. Bez jawnych ustawień połączenia appServer połączenie to używa zarządzanego standardowego wejścia i wyjścia w katalogu domowym użytkownika, natomiast zwykły mechanizm pozostaje ograniczony do agenta. Wyświetlanie listy i odczyty metadanych są pasywne: nie wznawiają wątku, nie subskrybują OpenClaw do jego zdarzeń na żywo ani nie odpowiadają na jego prośby o zatwierdzenie.

W przypadku zapisanej lub bezczynnej sesji na komputerze z Gateway opcja Kontynuuj jako gałąź tworzy zwykły czat z zablokowanym modelem i kopiuje ograniczoną historię użytkownika oraz asystenta do ostatniej utrwalonej, zakończonej tury źródła. Pierwsza zwykła tura czatu instaluje właściwe procedury obsługi zatwierdzeń i używa tymczasowej natywnej kopii wątku, aby przypiąć migawkę bez nadpisywania modelu ani dostawcy. Codex App Server używa swojej bieżącej konfiguracji natywnej i zwraca wybraną parę. Jeśli model różni się od ostatniego modelu zapisanego dla źródła, emituje standardowe ostrzeżenie. W ramach tego samego połączenia nadzoru OpenClaw uruchamia kanoniczny wątek mechanizmu Codex ze źródłem appServer, używając jego katalogu roboczego i zasad środowiska wykonawczego oraz dokładnie zwróconego modelu i dostawcy dla tego początkowego uruchomienia, wstrzykuje ograniczoną widoczną historię i archiwizuje tymczasową kopię wątku. Źródło nigdy nie jest wznawiane. Kanoniczny wątek ma dostęp do pełnego zestawu narzędzi mechanizmu OpenClaw. Rozumowanie, wywołania narzędzi i wyniki narzędzi ze źródła nie są do niego kopiowane. Prywatny zakres połączenia pozostaje zachowany zarówno w oczekującym, jak i zatwierdzonym stanie powiązania, dlatego każda późniejsza tura nadal korzysta z tego połączenia wraz z natywnym uwierzytelnianiem i konfiguracją dostawcy. Wyłączony nadzór lub rozbieżność powiązania bądź połączenia powodują bezpieczne przerwanie działania zamiast przełączenia na zwykły mechanizm w katalogu domowym agenta.

Pierwotne źródło CLI lub VS Code nadal może znajdować się w obu katalogach. Kanoniczna gałąź jest natywnym wątkiem Codex, ale jej rodzaj źródła to appServer. Klienci natywni mogą filtrować ten rodzaj źródła, dlatego nie ma gwarancji, że pojawi się ona w Codex Desktop.

Aktywne źródła nie mogą rozpoczynać nowej gałęzi ani być archiwizowane. Nadal można otworzyć istniejący nadzorowany czat. notLoaded oznacza, że aktywność jest nieznana, a nie że sesja jest bezczynna. OpenClaw zezwala na archiwizację lokalnego wiersza idle lub notLoaded dopiero po jawnym potwierdzeniu braku innego procesu wykonawczego oraz ponownym, lokalnym dla procesu odczycie stanu. Codex serializuje modyfikacje wątków w obrębie jednego procesu App Server, ale nie zapewnia wyłącznej dzierżawy między procesami dla procesu wykonawczego ani właściciela zatwierdzeń, dlatego ten odczyt nie może dowieść, że inny proces nie korzysta z wątku. OpenClaw blokuje znanego aktywnego właściciela powiązania dla dokładnie wskazanego celu lub dowolnego niezarchiwizowanego potomka utworzonego przez ten cel i zwróconego przez stronicowane zapytanie Codex o potomków. Błędy wyliczania, cykle i wyczerpanie limitu bezpieczeństwa powodują bezpieczne przerwanie działania. Natywna archiwizacja nadal może wejść w konflikt z nową turą w innym procesie, dlatego potwierdzenie obejmuje nieznanych klientów oraz przedział między odczytem stanu a archiwizacją. Nadzorowanego czatu z zablokowanym modelem nie można usunąć, dopóki chroni natywne powiązanie.

Katalogi sparowanych Node w pierwszym wydaniu zawierają wyłącznie metadane. Obecna granica wywołań Node działa w modelu żądanie/odpowiedź i nie może przenosić długotrwałych zdarzeń tury, próśb o zatwierdzenie ani strumieniowego wyjścia wymaganych przez rzeczywiste powiązanie mechanizmu Codex. Zdalne opcje Kontynuuj i Archiwizuj pozostają zatem niedostępne nawet wtedy, gdy wiersz jest bezczynny.

Informacje o konfiguracji dla operatora i widocznym działaniu interfejsu sterowania zawiera strona Nadzór Codex.

Widoczne odpowiedzi i Heartbeat

Bezpośrednie i źródłowe tury czatu obsługiwane przez mechanizm Codex domyślnie automatycznie dostarczają końcową odpowiedź asystenta do wewnętrznych interfejsów WebChat, zgodnie z kontraktem mechanizmu Pi: agent odpowiada normalnie, a OpenClaw publikuje końcowy tekst w rozmowie źródłowej. Ustaw messages.visibleReplies: "message_tool", aby końcowy tekst asystenta pozostał prywatny, chyba że agent wywoła message(action="send").

Tury Heartbeat Codex domyślnie otrzymują heartbeat_respond w przeszukiwalnym katalogu narzędzi OpenClaw, dzięki czemu agent może zapisać, czy wybudzenie ma pozostać ciche, czy wysłać powiadomienie. Wskazówki dotyczące inicjatywy Heartbeat są przesyłane jako instrukcja deweloperska trybu współpracy Codex ograniczona do tury Heartbeat. Zwykłe tury czatu pozostają w domyślnym trybie Codex. Gdy plik HEARTBEAT.md nie jest pusty, instrukcje Heartbeat wskazują Codex ten plik zamiast umieszczać jego zawartość bezpośrednio w instrukcjach.

Granice hooków

Warstwa Właściciel Przeznaczenie
Hooki pluginów OpenClaw OpenClaw Zgodność produktu i pluginów między mechanizmami OpenClaw i Codex.
Middleware rozszerzeń App Server Codex Wbudowane pluginy OpenClaw Zachowanie adaptera w każdej turze wokół dynamicznych narzędzi OpenClaw.
Natywne hooki Codex Codex Niskopoziomowy cykl życia Codex i natywne zasady narzędzi z konfiguracji Codex.

OpenClaw nie używa projektowych ani globalnych plików Codex hooks.json do routingu zachowania pluginów. Dla mostu natywnych narzędzi i uprawnień OpenClaw wstrzykuje konfigurację Codex dla poszczególnych wątków dotyczącą PreToolUse, PostToolUse, PermissionRequest i Stop.

Gdy zatwierdzenia App Server Codex są włączone (approvalPolicy nie ma wartości "never"), domyślna wstrzykiwana konfiguracja natywnych hooków pomija PermissionRequest, dzięki czemu recenzent App Server Codex i most zatwierdzeń OpenClaw obsługują rzeczywiste eskalacje po przeglądzie. Dodaj permission_request do nativeHookRelay.events, aby mimo to wymusić przekaźnik zgodności. Inne hooki Codex, takie jak SessionStart i UserPromptSubmit, pozostają mechanizmami sterującymi na poziomie Codex. W kontrakcie v1 nie są udostępniane jako hooki pluginów OpenClaw.

W przypadku dynamicznych narzędzi OpenClaw to OpenClaw wykonuje narzędzie po zażądaniu wywołania przez Codex, dlatego zachowanie pluginu i middleware jest realizowane w adapterze mechanizmu. W przypadku narzędzi natywnych Codex to Codex jest właścicielem kanonicznego rekordu narzędzia. OpenClaw może kopiować wybrane zdarzenia, ale nie może zmieniać natywnego wątku, chyba że Codex udostępni taką możliwość przez App Server lub wywołania zwrotne natywnych hooków.

Zdarzenia PreToolUse App Server Codex w trybie raportowania odraczają zatwierdzenie pluginu do odpowiadającego mu zatwierdzenia App Server. Jeśli hook OpenClaw before_tool_call zwróci requireApproval, gdy natywne dane zawierają openclaw_approval_mode: "report", przekaźnik natywnego hooka zapisuje wymóg zatwierdzenia pluginu i nie zwraca natywnej decyzji. Gdy Codex później wyśle żądanie zatwierdzenia App Server dotyczące tego samego użycia narzędzia, OpenClaw otwiera monit o zatwierdzenie pluginu i odwzorowuje decyzję z powrotem do Codex. Zdarzenia Codex PermissionRequest stanowią osobną ścieżkę zatwierdzania i po skonfigurowaniu tego mostu nadal mogą być kierowane przez zatwierdzenia OpenClaw.

Powiadomienia o elementach App Server Codex zapewniają także asynchroniczne obserwacje after_tool_call dotyczące zakończenia działania natywnych narzędzi, które nie zostały już obsłużone przez natywny przekaźnik PostToolUse. Służą one wyłącznie do telemetrii i zgodności. Nie mogą blokować, opóźniać ani modyfikować wywołania natywnego narzędzia.

Projekcje Compaction i cyklu życia LLM pochodzą z powiadomień App Server Codex oraz stanu adaptera OpenClaw, a nie z poleceń natywnych hooków Codex. before_compaction, after_compaction, llm_input i llm_output są obserwacjami na poziomie adaptera, a nie dokładnymi co do bajtu kopiami wewnętrznych żądań lub danych Compaction Codex.

Natywne powiadomienia App Server Codex hook/started i hook/completed są przekazywane jako zdarzenia agenta codex_app_server.hook na potrzeby śledzenia przebiegu i debugowania. Nie wywołują hooków pluginów OpenClaw.

Kontrakt obsługi wersji V1

Obsługiwane w środowisku wykonawczym Codex v1:

Obszar Obsługa Uzasadnienie
Pętla modelu OpenAI przez Codex Obsługiwane Codex app-server zarządza turą OpenAI, natywnym wznawianiem wątku i natywną kontynuacją narzędzi.
Trasowanie i dostarczanie kanałów OpenClaw Obsługiwane Telegram, Discord, Slack, WhatsApp, iMessage i inne kanały pozostają poza środowiskiem wykonawczym modelu.
Dynamiczne narzędzia OpenClaw Obsługiwane Codex zleca OpenClaw wykonanie tych narzędzi, dzięki czemu OpenClaw pozostaje na ścieżce wykonania.
Pluginy promptów i kontekstu Obsługiwane OpenClaw przekazuje prompt i kontekst specyficzny dla OpenClaw do tury Codex, pozostawiając bazowe prompty, prompty modelu oraz skonfigurowane prompty dokumentacji projektu zarządzane przez Codex w natywnej ścieżce Codex. OpenClaw wyłącza wbudowaną osobowość Codex dla natywnych wątków, dzięki czemu pliki osobowości w przestrzeni roboczej agenta pozostają nadrzędne. Natywne instrukcje deweloperskie Codex akceptują wyłącznie wskazówki dotyczące poleceń jawnie ograniczone do codex_app_server; starsze globalne wskazówki dotyczące poleceń pozostają dostępne dla powierzchni promptów innych niż Codex.
Cykl życia silnika kontekstu Obsługiwane Składanie, przyswajanie i konserwacja po turze odbywają się wokół tur Codex. Silniki kontekstu nie zastępują natywnego Compaction Codex.
Hooki narzędzi dynamicznych Obsługiwane Middleware before_tool_call, after_tool_call i wyników narzędzi działa wokół dynamicznych narzędzi zarządzanych przez OpenClaw.
Hooki cyklu życia Obsługiwane jako obserwacje adaptera llm_input, llm_output, agent_end, before_compaction i after_compaction są wywoływane z rzetelnymi ładunkami trybu Codex.
Bramka rewizji odpowiedzi końcowej Obsługiwane przez natywne przekazywanie hooków Zdarzenie Codex Stop jest przekazywane do before_agent_finalize; revise prosi Codex o jeszcze jedno przejście modelu przed finalizacją.
Blokowanie lub obserwowanie natywnej powłoki, łatek i MCP Obsługiwane przez natywne przekazywanie hooków Zdarzenia Codex PreToolUse i PostToolUse są przekazywane dla zatwierdzonych natywnych powierzchni narzędzi, w tym ładunków MCP w Codex app-server 0.142.0 lub nowszym. Blokowanie jest obsługiwane, ale przepisywanie argumentów nie.
Natywna polityka uprawnień Obsługiwane przez zatwierdzenia Codex app-server i zgodnościowe natywne przekazywanie hooków Żądania zatwierdzenia Codex app-server są kierowane przez OpenClaw po weryfikacji Codex. Natywne przekazywanie hooka PermissionRequest jest opcjonalne dla natywnych trybów zatwierdzania, ponieważ Codex emituje je przed weryfikacją przez mechanizm ochronny.
Rejestrowanie przebiegu app-server Obsługiwane OpenClaw rejestruje żądanie wysłane do app-server oraz otrzymywane z niego powiadomienia.

Nieobsługiwane w środowisku wykonawczym Codex v1:

Obszar Ograniczenie v1 Przyszłe rozwiązanie
Modyfikacja argumentów natywnych narzędzi Natywne hooki Codex przed użyciem narzędzia mogą blokować, ale OpenClaw nie przepisuje argumentów natywnych narzędzi Codex. Wymaga obsługi przez hook lub schemat Codex zastępczych danych wejściowych narzędzia.
Edytowalna historia natywnej transkrypcji Codex Codex zarządza kanoniczną historią natywnego wątku. OpenClaw zarządza kopią i może przekazywać przyszły kontekst, ale nie powinien modyfikować nieobsługiwanych elementów wewnętrznych. Należy dodać jawne interfejsy API Codex app-server, jeśli potrzebna jest ingerencja w natywny wątek.
tool_result_persist dla rekordów natywnych narzędzi Codex Ten hook przekształca zapisy transkrypcji zarządzane przez OpenClaw, a nie rekordy natywnych narzędzi Codex. Można utworzyć kopię przekształconych rekordów, ale kanoniczne przepisanie wymaga obsługi Codex.
Rozbudowane metadane natywnego Compaction OpenClaw może zażądać natywnego Compaction, ale nie otrzymuje stabilnej listy zachowanych i odrzuconych elementów, różnicy liczby tokenów, podsumowania ukończenia ani ładunku podsumowania. Wymaga bardziej rozbudowanych zdarzeń Compaction Codex.
Ingerencja w Compaction OpenClaw nie pozwala pluginom ani silnikom kontekstu zawetować, przepisać ani zastąpić natywnego Compaction Codex. Należy dodać hooki Codex przed i po Compaction, jeśli pluginy muszą zawetować lub przepisać natywne Compaction.
Rejestrowanie żądania API modelu bajt po bajcie OpenClaw może rejestrować żądania i powiadomienia app-server, ale rdzeń Codex wewnętrznie tworzy końcowe żądanie API OpenAI. Wymaga zdarzenia śledzenia żądania modelu Codex lub interfejsu API debugowania.

Natywne uprawnienia i żądania pozyskania danych MCP

W przypadku PermissionRequest OpenClaw zwraca jawne decyzje zezwalające lub odmawiające tylko wtedy, gdy określa je polityka. Brak decyzji nie oznacza zezwolenia: Codex traktuje go jako brak decyzji hooka i przechodzi do własnej ścieżki mechanizmu ochronnego lub zatwierdzenia przez użytkownika.

Tryby zatwierdzania Codex app-server domyślnie pomijają ten natywny hook. Ma to zastosowanie, chyba że permission_request zostanie jawnie uwzględnione w nativeHookRelay.events lub zostanie zainstalowane przez zgodnościowe środowisko wykonawcze.

Gdy operator wybierze allow-always dla żądania natywnego uprawnienia Codex, OpenClaw zapamiętuje dokładny odcisk danych wejściowych dostawcy, sesji, narzędzia i cwd przez ograniczony czas sesji. Zapamiętana decyzja celowo obowiązuje tylko dla dokładnego dopasowania: zmiana polecenia, argumentów, ładunku narzędzia lub cwd powoduje utworzenie nowego żądania zatwierdzenia.

Żądania zatwierdzenia narzędzi Codex MCP są kierowane przez przepływ zatwierdzania pluginów OpenClaw, gdy Codex oznaczy _meta.codex_approval_kind jako "mcp_tool_call". Prompty Codex request_user_input są odsyłane do czatu źródłowego, a następna wiadomość oczekująca w kolejce odpowiada na to żądanie natywnego serwera, zamiast być przekazywana jako dodatkowy kontekst. Inne żądania pozyskania danych MCP są domyślnie odrzucane.

Ogólny przepływ zatwierdzania pluginów, który przenosi te prompty, opisano w sekcji Żądania uprawnień pluginów.

Sterowanie kolejką

Sterowanie kolejką aktywnego uruchomienia jest odwzorowywane na turn/steer w Codex app-server. Przy domyślnym ustawieniu messages.queue.mode: "steer" OpenClaw grupuje wiadomości czatu w trybie sterowania w skonfigurowanym okresie bezczynności i wysyła je jako jedno żądanie turn/steer w kolejności nadejścia.

Tury przeglądu Codex i ręcznej Compaction mogą odrzucać sterowanie w tej samej turze. W takim przypadku OpenClaw czeka na zakończenie aktywnego przebiegu przed rozpoczęciem przetwarzania monitu. Użyj /queue followup lub /queue collect, gdy wiadomości mają być domyślnie kolejkowane zamiast służyć do sterowania. Zobacz Kolejka sterowania.

Przesyłanie opinii Codex

Gdy /diagnostics [note] zostanie zatwierdzone dla sesji w natywnym środowisku Codex, OpenClaw wywołuje również feedback/upload serwera aplikacji Codex dla odpowiednich wątków Codex, dołączając dzienniki każdego wymienionego wątku oraz utworzonych podwątków Codex, jeśli są dostępne.

Przesyłanie odbywa się zwykłą ścieżką opinii Codex do serwerów OpenAI. Jeśli opinie Codex są wyłączone na tym serwerze aplikacji, polecenie zwraca błąd serwera aplikacji. Odpowiedź po zakończeniu diagnostyki zawiera kanały, identyfikatory sesji OpenClaw, identyfikatory wątków Codex oraz lokalne polecenia codex resume <thread-id> dla wysłanych wątków.

Jeśli odrzucisz lub zignorujesz zatwierdzenie, OpenClaw nie wyświetli tych identyfikatorów Codex ani nie wyśle opinii Codex. Przesyłanie nie zastępuje lokalnego eksportu diagnostyki Gateway. Informacje o zatwierdzaniu, prywatności, lokalnym pakiecie i działaniu w czatach grupowych zawiera Eksport diagnostyki.

Używaj /codex diagnostics [note] tylko wtedy, gdy chcesz przesłać opinię Codex dla aktualnie dołączonego wątku bez pełnego pakietu diagnostyki Gateway.

Compaction i kopia transkrypcji

Gdy wybrany model korzysta ze środowiska Codex, natywna Compaction wątku należy do serwera aplikacji Codex. OpenClaw nie uruchamia wstępnej Compaction dla tur Codex, nie zastępuje Compaction Codex kompresją silnika kontekstu ani nie korzysta awaryjnie z podsumowywania OpenClaw lub publicznego podsumowywania OpenAI, gdy nie można uruchomić natywnej Compaction. OpenClaw przechowuje kopię transkrypcji na potrzeby historii kanału, wyszukiwania, /new, /reset oraz przyszłego przełączania modelu lub środowiska.

Jawne żądania Compaction, takie jak /compact lub ręczna operacja Compaction zażądana przez plugin, uruchamiają natywną Compaction Codex za pomocą thread/compact/start. OpenClaw utrzymuje żądanie i dzierżawę współdzielonego klienta do czasu, aż Codex wyemituje pasujący element ukończenia contextCompaction, a następnie zgłasza turę Compaction jako zakończoną. Jeśli ta końcowa tura przekroczy skonfigurowany limit czasu Compaction, OpenClaw żąda natywnego przerwania tury. Dzierżawa i blokada Compaction dla danego wątku pozostają utrzymane, dopóki Codex nie zgłosi stanu końcowego lub nie potwierdzi wywołania RPC przerwania. Jeśli Codex nie potwierdzi go w okresie karencji przerwania, OpenClaw wycofuje połączenie przed zwolnieniem blokady. Połączenia zdalne odłączają również powiązanie odpowiedniego wątku, aby późniejsze operacje nie mogły nakładać się na niepotwierdzoną zdalną turę. Inne tury w wycofanym połączeniu kończą się niepowodzeniem i mogą zostać ponowione przy użyciu nowego klienta. Zamknięcie klienta, anulowanie żądania lub nieudana tura Compaction zwraca operację zakończoną niepowodzeniem. Automatyczna Compaction pod presją kontekstu należy do Codex; OpenClaw uruchamia natywną Compaction wyłącznie dla ręcznie żądanych wyzwalaczy.

Gdy silnik kontekstu żąda projekcji inicjalizacyjnej wątku Codex, OpenClaw projektuje nazwy i identyfikatory wywołań narzędzi, struktury danych wejściowych oraz zredagowaną zawartość wyników narzędzi do nowego wątku Codex. Nie kopiuje do tej projekcji nieprzetworzonych wartości argumentów wywołań narzędzi.

Kopia zawiera monit użytkownika, końcowy tekst asystenta oraz uproszczone rekordy rozumowania lub planu Codex, gdy serwer aplikacji je emituje. OpenClaw rejestruje rozpoczęcie i końcowy stan natywnej Compaction, ale nie udostępnia czytelnego dla człowieka podsumowania Compaction ani możliwej do audytu listy wpisów, które Codex zachował po Compaction.

Ponieważ Codex jest właścicielem kanonicznego natywnego wątku, tool_result_persist nie przepisuje natywnych rekordów wyników narzędzi Codex. Ma zastosowanie tylko wtedy, gdy OpenClaw zapisuje wynik narzędzia w transkrypcji sesji należącej do OpenClaw.

Multimedia i dostarczanie

OpenClaw nadal odpowiada za dostarczanie multimediów i wybór ich dostawcy. Generowanie obrazów, wideo, muzyki i plików PDF, TTS oraz rozumienie multimediów używają odpowiednich ustawień dostawcy/modelu, takich jak agents.defaults.imageGenerationModel, videoGenerationModel, pdfModel i messages.tts.

Tekst, obrazy, wideo, muzyka, TTS, zatwierdzenia i dane wyjściowe narzędzi komunikacyjnych nadal przechodzą zwykłą ścieżką dostarczania OpenClaw; generowanie multimediów nie wymaga starszego środowiska uruchomieniowego. Gdy Codex emituje natywny element generowania obrazu z savedPath, OpenClaw przekazuje ten dokładny plik zwykłą ścieżką multimediów odpowiedzi, nawet jeśli tura Codex nie zawiera tekstu asystenta.

Powiązane

Was this useful?
On this page

On this page