Openskills openskills-plugin-separation

Enforce clean separation between core openskills-runtime and optional WASM build plugins so plugin compilation does not break runtime consumers or language bindings.

install
source · Clone the upstream repo
git clone https://github.com/Geeksfino/openskills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Geeksfino/openskills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.cursor/skills/openskills-plugin-separation" ~/.claude/skills/geeksfino-openskills-openskills-plugin-separation && rm -rf "$T"
manifest: .cursor/skills/openskills-plugin-separation/SKILL.md
source content

OpenSkills Plugin Separation

Use this skill when changing plugin features, build-tool wiring, or runtime dependency topology.

Objective

Keep core runtime usable without plugin toolchains, especially for bindings and non-build execution paths.

Key Files

  • runtime/Cargo.toml
  • runtime/src/lib.rs
  • runtime/src/bin/openskills-runtime.rs
  • runtime/src/build/**
  • bindings/ts/Cargo.toml
  • bindings/python/Cargo.toml

Separation Rules

  1. Build plugins must be gated behind explicit features.
  2. Core runtime defaults should not force plugin toolchains.
  3. Bindings should opt out of plugin-heavy default features when appropriate.
  4. Public exports for build functions must be feature-gated.
  5. CLI build commands must degrade gracefully when build features are disabled.

Validation Checklist

  • cargo check -p openskills-runtime
    passes with default features.
  • Bindings compile without pulling plugin-specific dependencies unintentionally.
  • Runtime tests that do not require plugin build paths continue to pass.

Output Format

  • Feature graph summary
  • Leakage findings (if any)
  • Minimal patch plan
  • Post-change verification commands