




















@@ -20,8 +20,7 @@ diagnostic surfaces around that boundary.
2020OpenClaw still owns channel routing, session files, visible message delivery,
2121OpenClaw dynamic tools, approvals, media delivery, and a transcript mirror.
2222Codex owns the canonical native thread, native model loop, native tool
23-continuation, and native compaction unless the active OpenClaw context engine
24-declares that it owns compaction.
23+continuation, and native compaction.
25242625Prompt routing follows the selected runtime, not just the provider string. A
2726native Codex turn receives Codex app-server developer instructions, while an
@@ -122,7 +121,7 @@ Supported in Codex runtime v1:
122121| OpenClaw channel routing and delivery | Supported | Telegram, Discord, Slack, WhatsApp, iMessage, and other channels stay outside the model runtime. |
123122| OpenClaw dynamic tools | Supported | Codex asks OpenClaw to execute these tools, so OpenClaw stays in the execution path. |
124123| Prompt and context plugins | Supported | OpenClaw projects OpenClaw-specific prompt/context into the Codex turn while leaving Codex-owned base, model, personality, and configured project-doc prompts in the native Codex lane. Native Codex developer instructions accept only command guidance explicitly scoped to `codex_app_server`; legacy global command hints remain for non-Codex prompt surfaces. |
125-| Context engine lifecycle | Supported | Assemble, ingest, after-turn maintenance, and context-engine compaction coordination run for Codex turns. |
124+| Context engine lifecycle | Supported | Assemble, ingest, and after-turn maintenance run around Codex turns. Context engines do not replace native Codex compaction. |
126125| Dynamic tool hooks | Supported | `before_tool_call`, `after_tool_call`, and tool-result middleware run around OpenClaw-owned dynamic tools. |
127126| Lifecycle hooks | Supported as adapter observations | `llm_input`, `llm_output`, `agent_end`, `before_compaction`, and `after_compaction` fire with honest Codex-mode payloads. |
128127| Final-answer revision gate | Supported through native hook relay | Codex `Stop` is relayed to `before_agent_finalize`; `revise` asks Codex for one more model pass before finalization. |
@@ -137,8 +136,8 @@ Not supported in Codex runtime v1:
137136| Native tool argument mutation | Codex native pre-tool hooks can block, but OpenClaw does not rewrite Codex-native tool arguments. | Requires Codex hook/schema support for replacement tool input. |
138137| Editable Codex-native transcript history | Codex owns canonical native thread history. OpenClaw owns a mirror and can project future context, but should not mutate unsupported internals. | Add explicit Codex app-server APIs if native thread surgery is needed. |
139138| `tool_result_persist` for Codex-native tool records | That hook transforms OpenClaw-owned transcript writes, not Codex-native tool records. | Could mirror transformed records, but canonical rewrite needs Codex support. |
140-| Rich native compaction metadata | OpenClaw observes compaction start and completion, but does not receive a stable kept/dropped list, token delta, or summary payload. | Needs richer Codex compaction events. |
141-| Compaction intervention | Current OpenClaw compaction hooks are notification-level in Codex mode. | Add Codex pre/post compaction hooks if plugins need to veto or rewrite native compaction. |
139+| Rich native compaction metadata | OpenClaw can request native compaction, but does not receive a stable kept/dropped list, token delta, completion summary, or summary payload. | Needs richer Codex compaction events. |
140+| Compaction intervention | OpenClaw does not let plugins or context engines veto, rewrite, or replace native Codex compaction. | Add Codex pre/post compaction hooks if plugins need to veto or rewrite native compaction. |
142141| Byte-for-byte model API request capture | OpenClaw can capture app-server requests and notifications, but Codex core builds the final OpenAI API request internally. | Needs a Codex model-request tracing event or debug API. |
143142144143## Native permissions and MCP elicitations
@@ -200,13 +199,18 @@ diagnostics bundle.
200199201200## Compaction and transcript mirror
202201203-When the selected model uses the Codex harness, native thread compaction is
204-delegated to Codex app-server unless an active context engine declares
205-`ownsCompaction: true`. Owning context engines compact first and cause OpenClaw
206-to abandon the old Codex backend thread so the next turn can rehydrate a fresh
207-thread from engine-managed context. OpenClaw keeps a transcript mirror for
208-channel history, search, `/new`, `/reset`, and future model or harness
209-switching.
202+When the selected model uses the Codex harness, native thread compaction belongs
203+to Codex app-server. OpenClaw does not run preflight compaction for Codex turns,
204+does not replace Codex compaction with context-engine compaction, and does not
205+fall back to OpenClaw or public OpenAI summarization when native Codex
206+compaction cannot be started. OpenClaw keeps a transcript mirror for channel
207+history, search, `/new`, `/reset`, and future model or harness switching.
208+209+Explicit compaction requests, such as `/compact` or a plugin-requested manual
210+compact operation, start native Codex compaction with `thread/compact/start`.
211+OpenClaw returns after starting that native operation. It does not wait for
212+completion, impose a separate OpenClaw timeout, restart the shared Codex
213+app-server, or record the operation as an OpenClaw-completed compaction.
210214211215When a context engine requests Codex thread-bootstrap projection, OpenClaw
212216projects tool-call names and ids, input shapes, and redacted tool-result content
@@ -215,9 +219,9 @@ that projection.
215219216220The mirror includes the user prompt, final assistant text, and lightweight Codex
217221reasoning or plan records when the app-server emits them. Today, OpenClaw only
218-records native compaction start and completion signals. It does not yet expose a
219-human-readable compaction summary or an auditable list of which entries Codex
220-kept after compaction.
222+records explicit native compaction start signals when it requests compaction. It
223+does not expose a human-readable compaction summary or an auditable list of
224+which entries Codex kept after compaction.
221225222226Because Codex owns the canonical native thread, `tool_result_persist` does not
223227currently rewrite Codex-native tool result records. It only applies when
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。