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.mdsource 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.tomlruntime/src/lib.rsruntime/src/bin/openskills-runtime.rsruntime/src/build/**bindings/ts/Cargo.tomlbindings/python/Cargo.toml
Separation Rules
- Build plugins must be gated behind explicit features.
- Core runtime defaults should not force plugin toolchains.
- Bindings should opt out of plugin-heavy default features when appropriate.
- Public exports for build functions must be feature-gated.
- CLI build commands must degrade gracefully when build features are disabled.
Validation Checklist
passes with default features.cargo check -p openskills-runtime- 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