From e182e2b80d4f02eee5eb33ce970f64487edf02f3 Mon Sep 17 00:00:00 2001 From: "openclaw-docs-sync[bot]" Date: Fri, 24 Apr 2026 16:34:12 +0000 Subject: [PATCH] chore(sync): mirror docs from openclaw/openclaw@4d1ee3a73ed19063d16ac627d3071b7637fda82d --- .openclaw-sync/source.json | 4 ++-- docs/automation/standing-orders.md | 2 +- docs/pi.md | 4 ++-- docs/plugins/architecture-internals.md | 14 ++++++++------ docs/plugins/manifest.md | 7 ++++--- docs/tools/plugin.md | 2 +- 6 files changed, 18 insertions(+), 15 deletions(-) diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json index 71f0762d9..d6332403a 100644 --- a/.openclaw-sync/source.json +++ b/.openclaw-sync/source.json @@ -1,5 +1,5 @@ { "repository": "openclaw/openclaw", - "sha": "c1ad8076a3c18009b2b82ee82d8d899b49aed4ce", - "syncedAt": "2026-04-24T16:18:24.213Z" + "sha": "4d1ee3a73ed19063d16ac627d3071b7637fda82d", + "syncedAt": "2026-04-24T16:32:39.740Z" } diff --git a/docs/automation/standing-orders.md b/docs/automation/standing-orders.md index cc53d4e14..d5d533ca2 100644 --- a/docs/automation/standing-orders.md +++ b/docs/automation/standing-orders.md @@ -27,7 +27,7 @@ This is the difference between telling your assistant "send the weekly report" e - You only get involved for exceptions and approvals - The agent fills idle time productively -## How They Work +## How they work Standing orders are defined in your [agent workspace](/concepts/agent-workspace) files. The recommended approach is to include them directly in `AGENTS.md` (which is auto-injected every session) so the agent always has them in context. For larger configurations, you can also place them in a dedicated file like `standing-orders.md` and reference it from `AGENTS.md`. diff --git a/docs/pi.md b/docs/pi.md index 6dcb12c9e..3a5c1d926 100644 --- a/docs/pi.md +++ b/docs/pi.md @@ -135,7 +135,7 @@ directories instead of under `src/agents/tools`, for example: - the Telegram plugin action runtime file - the WhatsApp plugin action runtime file -## Core Integration Flow +## Core integration flow ### 1. Running an Embedded Agent @@ -285,7 +285,7 @@ export function splitSdkTools(options: { tools: AnyAgentTool[]; sandboxEnabled: This ensures OpenClaw's policy filtering, sandbox integration, and extended toolset remain consistent across providers. -## System Prompt Construction +## System prompt construction The system prompt is built in `buildAgentSystemPrompt()` (`system-prompt.ts`). It assembles a full prompt with sections including Tooling, Tool Call Style, Safety guardrails, OpenClaw CLI reference, Skills, Docs, Workspace, Sandbox, Messaging, Reply Tags, Voice, Silent Replies, Heartbeats, Runtime metadata, plus Memory and Reactions when enabled, and optional context files and extra system prompt content. Sections are trimmed for minimal prompt mode used by subagents. diff --git a/docs/plugins/architecture-internals.md b/docs/plugins/architecture-internals.md index 2b0747593..ec5235200 100644 --- a/docs/plugins/architecture-internals.md +++ b/docs/plugins/architecture-internals.md @@ -888,12 +888,14 @@ Generated channel catalog entries and provider install catalog entries expose normalized install-source facts next to the raw `openclaw.install` block. The normalized facts identify whether the npm spec is an exact version or floating selector, whether expected integrity metadata is present, and whether a local -source path is also available. They also warn when `defaultChoice` is invalid -or points at a source that is not available, and when npm integrity metadata is -present without a valid npm source. Consumers should treat `installSource` as -an additive optional field so older hand-built entries and compatibility shims -do not have to synthesize it. This lets onboarding and diagnostics explain -source-plane state without importing plugin runtime. +source path is also available. When the catalog/package identity is known, the +normalized facts warn if the parsed npm package name drifts from that identity. +They also warn when `defaultChoice` is invalid or points at a source that is +not available, and when npm integrity metadata is present without a valid npm +source. Consumers should treat `installSource` as an additive optional field so +older hand-built entries and compatibility shims do not have to synthesize it. +This lets onboarding and diagnostics explain source-plane state without +importing plugin runtime. Official external npm entries should prefer an exact `npmSpec` plus `expectedIntegrity`. Bare package names and dist-tags still work for diff --git a/docs/plugins/manifest.md b/docs/plugins/manifest.md index a707b58be..8c2050d6f 100644 --- a/docs/plugins/manifest.md +++ b/docs/plugins/manifest.md @@ -596,9 +596,10 @@ entries should pair exact specs with `expectedIntegrity` so update flows fail closed if the fetched npm artifact no longer matches the pinned release. Interactive onboarding still offers trusted registry npm specs, including bare package names and dist-tags, for compatibility. Catalog diagnostics can -distinguish exact, floating, integrity-pinned, missing-integrity, and invalid -default-choice sources. They also warn when `expectedIntegrity` is present but -there is no valid npm source it can pin. When `expectedIntegrity` is present, +distinguish exact, floating, integrity-pinned, missing-integrity, package-name +mismatch, and invalid default-choice sources. They also warn when +`expectedIntegrity` is present but there is no valid npm source it can pin. +When `expectedIntegrity` is present, install/update flows enforce it; when it is omitted, the registry resolution is recorded without an integrity pin. diff --git a/docs/tools/plugin.md b/docs/tools/plugin.md index a3dd676bc..fa0e03bb0 100644 --- a/docs/tools/plugin.md +++ b/docs/tools/plugin.md @@ -208,7 +208,7 @@ OpenClaw scans for plugins in this order (first match wins): app-server plugin is selected by `embeddedHarness.runtime: "codex"` or legacy `codex/*` model refs -## Troubleshooting Runtime Hooks +## Troubleshooting runtime hooks If a plugin appears in `plugins list` but `register(api)` side effects or hooks do not run in live chat traffic, check these first: