

























@@ -255,24 +255,15 @@ embedded agent harness ids that do not already have an ownership field.
255255This block is metadata only. It does not register runtime behavior, and it does
256256not replace `register(...)`, `setupEntry`, or other runtime/plugin entrypoints.
257257Current consumers use it as a narrowing hint before broader plugin loading, so
258-missing activation metadata usually only costs performance; it should not
259-change correctness while legacy manifest ownership fallbacks still exist.
260-261-Every plugin should set `activation.onStartup` intentionally as OpenClaw moves
262-away from implicit startup imports. Set it to `true` only when the plugin must
263-run during Gateway startup. Set it to `false` when the plugin is inert at
264-startup and should load only from narrower triggers. Omitting `onStartup` keeps
265-the deprecated legacy implicit startup sidecar fallback for plugins with no
266-static capability metadata; future versions may stop startup-loading those
267-plugins unless they declare `activation.onStartup: true`. Plugin status and
268-compatibility reports warn with `legacy-implicit-startup-sidecar` when a plugin
269-still relies on that fallback.
270-271-For migration testing, set
272-`OPENCLAW_DISABLE_LEGACY_IMPLICIT_STARTUP_SIDECARS=1` to disable only that
273-deprecated fallback. This opt-in mode does not block explicit
274-`activation.onStartup: true` plugins or plugins loaded by channel, config,
275-agent-harness, memory, or other narrower activation triggers.
258+missing non-startup activation metadata usually only costs performance; it
259+should not change correctness while manifest ownership fallbacks still exist.
260+261+Every plugin should set `activation.onStartup` intentionally. Set it to `true`
262+only when the plugin must run during Gateway startup. Set it to `false` when
263+the plugin is inert at startup and should load only from narrower triggers.
264+Omitting `onStartup` no longer startup-loads the plugin implicitly; use explicit
265+activation metadata for startup, channel, config, agent-harness, memory, or
266+other narrower activation triggers.
276267277268```json
278269{
@@ -288,21 +279,21 @@ agent-harness, memory, or other narrower activation triggers.
288279}
289280```
290281291-| Field | Required | Type | What it means |
292-| ------------------ | -------- | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
293-| `onStartup` | No | `boolean` | Explicit Gateway startup activation. Every plugin should set this. `true` imports the plugin during startup; `false` opts out of the deprecated implicit sidecar startup fallback unless another matched trigger requires loading. |
294-| `onProviders` | No | `string[]` | Provider ids that should include this plugin in activation/load plans. |
295-| `onAgentHarnesses` | No | `string[]` | Embedded agent harness runtime ids that should include this plugin in activation/load plans. Use top-level `cliBackends` for CLI backend aliases. |
296-| `onCommands` | No | `string[]` | Command ids that should include this plugin in activation/load plans. |
297-| `onChannels` | No | `string[]` | Channel ids that should include this plugin in activation/load plans. |
298-| `onRoutes` | No | `string[]` | Route kinds that should include this plugin in activation/load plans. |
299-| `onConfigPaths` | No | `string[]` | Root-relative config paths that should include this plugin in startup/load plans when the path is present and not explicitly disabled. |
300-| `onCapabilities` | No | `Array<"provider" \| "channel" \| "tool" \| "hook">` | Broad capability hints used by control-plane activation planning. Prefer narrower fields when possible. |
282+| Field | Required | Type | What it means |
283+| ------------------ | -------- | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
284+| `onStartup` | No | `boolean` | Explicit Gateway startup activation. Every plugin should set this. `true` imports the plugin during startup; `false` keeps it startup-lazy unless another matched trigger requires loading. |
285+| `onProviders` | No | `string[]` | Provider ids that should include this plugin in activation/load plans. |
286+| `onAgentHarnesses` | No | `string[]` | Embedded agent harness runtime ids that should include this plugin in activation/load plans. Use top-level `cliBackends` for CLI backend aliases. |
287+| `onCommands` | No | `string[]` | Command ids that should include this plugin in activation/load plans. |
288+| `onChannels` | No | `string[]` | Channel ids that should include this plugin in activation/load plans. |
289+| `onRoutes` | No | `string[]` | Route kinds that should include this plugin in activation/load plans. |
290+| `onConfigPaths` | No | `string[]` | Root-relative config paths that should include this plugin in startup/load plans when the path is present and not explicitly disabled. |
291+| `onCapabilities` | No | `Array<"provider" \| "channel" \| "tool" \| "hook">` | Broad capability hints used by control-plane activation planning. Prefer narrower fields when possible. |
301292302293Current live consumers:
303294304295- Gateway startup planning uses `activation.onStartup` for explicit startup
305- import and opt-out of deprecated implicit sidecar startup fallback
296+ import
306297- command-triggered CLI planning falls back to legacy
307298`commandAliases[].cliCommand` or `commandAliases[].name`
308299- agent-runtime startup planning uses `activation.onAgentHarnesses` for
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。