SKM-P04 · Portability
`metadata.openclaw.*` / `command-dispatch` / `user-invocable` are OpenClaw-only fields
Dependency gating, tool-dispatch, and invocation controls specific to OpenClaw.
What the rule is
`metadata.openclaw.requires` / `os` / `install`, and the top-level `command-dispatch` and `user-invocable` fields, are OpenClaw-specific extensions. The `requires`/`os`/`install` trio does dependency gating — the skill hides when a required binary, environment variable, or platform is absent.
Outside OpenClaw, these fields are ignored, not enforced — which means the skill loses its dependency gating and appears even in environments where it can't actually run, rather than being hidden the way OpenClaw would hide it.
Where it comes from
- Agent Skills compatibilityRuntime documentation
- Agent skills not workingDiagnosis
Which runtimes enforce it
| Runtime | Effect | Note |
|---|---|---|
| Claude Code | Ignored | Ignored — the skill loses its dependency gating and appears even where it can't run. |
| Codex | Ignored | Ignored — the skill loses its dependency gating and appears even where it can't run. |
| Cursor | Ignored | Ignored — the skill loses its dependency gating and appears even where it can't run. |
| OpenClaw | Enforced (home runtime) | The field's home runtime — e.g. `metadata.openclaw.requires` hides the skill when its dependency is absent. |
| Hermes Agent | Ignored | Ignored — the skill loses its dependency gating and appears even where it can't run. |
How to fix it
- If the skill depends on something OpenClaw's gating fields express, restate that dependency in the skill's instructions too, so a runtime that ignores the gating field still tells the agent what's required.
Elsewhere
- SKILL.md, the formatThe full frontmatter field table this rule is drawn from.
- Agent Skills Not WorkingThe diagnostic reference this rule’s portability and failure evidence comes from.
- All rulesEvery check the validator runs, grouped by class.