diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json index c543f35e0..bc946d630 100644 --- a/.openclaw-sync/source.json +++ b/.openclaw-sync/source.json @@ -1,5 +1,5 @@ { "repository": "openclaw/openclaw", - "sha": "9ffe7644169ba87cedf1346295303fb4e17ac46a", - "syncedAt": "2026-04-25T17:56:12.824Z" + "sha": "275c128e99bc8b04a24334103a12f952e79fc704", + "syncedAt": "2026-04-25T17:57:53.456Z" } diff --git a/docs/.generated/plugin-sdk-api-baseline.sha256 b/docs/.generated/plugin-sdk-api-baseline.sha256 index 55890d157..877d530c3 100644 --- a/docs/.generated/plugin-sdk-api-baseline.sha256 +++ b/docs/.generated/plugin-sdk-api-baseline.sha256 @@ -1,2 +1,2 @@ -f6d9588737310773031e744b6726ba80a9ca742205db335aae95fbd1e2925dc8 plugin-sdk-api-baseline.json -a4c86fe92b7bea538f33139e9b57cfada766b7d504323c2e20a7ca205994be44 plugin-sdk-api-baseline.jsonl +fae367b052828a57feab3bfcd10a58ebeacd6c858b337d0aab72726863952946 plugin-sdk-api-baseline.json +1bb8995e1486f7d900928aaace87421a8297fe41264197f9bf849f07c65c8f2b plugin-sdk-api-baseline.jsonl diff --git a/docs/plugins/hooks.md b/docs/plugins/hooks.md index 8475f4221..44c252554 100644 --- a/docs/plugins/hooks.md +++ b/docs/plugins/hooks.md @@ -68,6 +68,7 @@ observation-only. **Conversation observation** +- `model_call_started` / `model_call_ended` — observe sanitized provider/model call metadata, timing, outcome, and bounded request-id hashes without prompt or response content - `llm_input` — observe provider input (system prompt, prompt, history) - `llm_output` — observe provider output @@ -162,6 +163,13 @@ so your plugin does not depend on a legacy combined phase. `before_agent_start` and `agent_end` include `event.runId` when OpenClaw can identify the active run. The same value is also available on `ctx.runId`. +Use `model_call_started` and `model_call_ended` for provider-call telemetry +that should not receive raw prompts, history, responses, headers, request +bodies, or provider request IDs. These hooks include stable metadata such as +`runId`, `callId`, `provider`, `model`, optional `api`/`transport`, terminal +`durationMs`/`outcome`, and `upstreamRequestIdHash` when OpenClaw can derive a +bounded provider request-id hash. + Non-bundled plugins that need `llm_input`, `llm_output`, or `agent_end` must set: ```json