Skip to content

[anolisa] feat(adapter): support OpenClaw plugin, skill, and config resources #1040

Description

@kongche-jbw

Component

anolisa

Problem Statement

ANOLISA adapter integration needs a richer component contract for OpenClaw.
The current adapter schema supports the first-stage publishing metadata and the
OpenClaw driver can install/uninstall a plugin bundle, but several real
component integrations also need skill delivery and framework configuration.

Examples include components that ship an OpenClaw plugin plus skills under the
adapter resource directory, or need a small framework-owned config update after
the plugin is enabled.

Goal

Extend the adapter manifest schema for framework-specific OpenClaw metadata and
teach the OpenClaw driver to handle plugin, skill, and config resources through
ANOLISA's existing AdapterManager safety boundary.

Proposed Scope

Manifest schema

Add typed framework-specific fields under each [[adapters]] entry:

  • adapters.openclaw.bundle
    • OpenClaw-native bundle metadata such as the plugin manifest entry file.
  • adapters.openclaw.skills
    • Skill bundle metadata, initially a list of skill names or directories to
      copy from the adapter resource root.
  • adapters.openclaw.config
    • A limited, typed list of OpenClaw config keys/values that the built-in
      OpenClaw driver is allowed to set.

The manifest must remain declarative. It must not introduce shell scripts,
custom argv, post-install commands, or a generic operation DSL.

OpenClaw driver

Enhance the built-in OpenClaw driver to support:

  • plugin enable/disable/status using the existing openclaw plugins ... flow;
  • skill delivery into the OpenClaw skills directory;
  • limited config set support for explicitly declared OpenClaw config keys;
  • receipt/claim resources for every external path or framework registry entry
    touched by the driver;
  • safe disable semantics using the persisted receipt, not re-reading executable
    instructions from the component resource directory.

Out of Scope

  • Hermes driver implementation.
  • Cosh, Claude Code, Codex, Qoder CLI, or QwenCode drivers.
  • Arbitrary config patching or generic TOML/JSON/YAML merge DSL.
  • Component-owned shell scripts or runtime plugin loading.

Acceptance Criteria

  • ComponentManifest parses and serializes the new OpenClaw-specific schema.
  • adapter scan surfaces enough metadata to distinguish OpenClaw plugin/skill
    declarations where appropriate.
  • adapter enable <component> openclaw can enable a plugin bundle and deliver
    declared skills.
  • OpenClaw config updates are limited to typed, driver-owned operations.
  • adapter disable <component> openclaw cleans up only resources recorded in
    the receipt and keeps the receipt if cleanup is incomplete.
  • Unit/integration tests cover plugin-only, plugin+skills, config, and cleanup
    failure paths.
  • All code, comments, and documentation are in English.

Related

refs #998

Metadata

Metadata

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions