Skip to content

openclaw-resources

OpenClaw resources should resolve inside their package and exist when loaded

Severity warning (disabled)
Autofix -
Since v0.21.0
Repo Types openclaw-plugin
Category OpenClaw

Why

OpenClaw loads skill roots explicitly declared in its native manifest; an undeclared skills/ directory does not activate those skills. Ignored values, missing directories and paths escaping the plugin prevent resources from loading. Undeclared skills/ directories are not reported. An empty extension array is rejected: OpenClaw reports openclaw.extensions is empty, neither loads nor installs the plugin, and does not fall back to an index.* entry.

Activation

Opt-in with --rule openclaw-resources or enabled: true: source checkouts may need dependencies installed or entrypoints built before checking resources.

How to fix

Declare skills as an array of non-empty directory paths relative to the plugin root. Each path may identify one skill directory or a directory containing several skills. Keep resolved paths inside the package, including symlink targets.

Install dependencies before checking dependency-provided skill roots, or set check-skills-exist: false. Set check-entrypoints-exist: true after building to verify package.json runtime files too. The latter defaults to false because compiled distribution files are often absent from a source checkout. Containment checks remain active independently of both existence settings.

When openclaw.runtimeExtensions supplies a valid nonempty array corresponding to openclaw.extensions, the existence check uses those explicit runtime files. The source files may be absent from a built package. Both source and runtime paths must remain inside the package, even with existence checking disabled. Without an explicit mapping, the check continues to inspect extensions; it does not infer compiled filenames.

See manifest sources for upstream contracts. No autofix is offered: creating missing resources or rewriting declared paths requires author intent.

Configuration

rules:
  openclaw-resources:
    enabled: false  # true | false | auto
    severity: warning
Parameter Description Default
check-skills-exist Report declared skill roots that are not existing directories true
check-entrypoints-exist Report declared entrypoints that are not existing files; enable after building false

Run skillsaw explain openclaw-resources to see this documentation and the rule's effective configuration in your terminal.