Skip to content

Add OpenClaw plugin manifest + entry, bump to 0.9.0#1

Merged
pallaoro merged 1 commit into
mainfrom
add-openclaw-plugin-format
May 19, 2026
Merged

Add OpenClaw plugin manifest + entry, bump to 0.9.0#1
pallaoro merged 1 commit into
mainfrom
add-openclaw-plugin-format

Conversation

@pallaoro
Copy link
Copy Markdown
Owner

Summary

Adds an opt-in OpenClaw plugin layer to rulespec. The package keeps working as a standalone CLI + library; this commit just makes it installable via openclaw plugins install rulespec so the bundled skill ships through the same path as other OpenClaw plugins.

What changes

  • openclaw.plugin.json — declares id: "rulespec", skills: ["./skills/rulespec"], empty configSchema. No contracts.tools since rulespec doesn't register native tools; agents continue to use the documented rulespec CLI via exec.
  • src/plugin/index.ts — minimal plugin entry: export default { id: "rulespec", register: () => {} }. The manifest's skills field handles publication; register is a no-op.
  • src/index.ts — re-exports the plugin default so the compiled dist/index.js exposes both the OpenClaw plugin entry and the public library surface (loadRules, compileRule, etc.). Standalone library consumers see no behavioral change.
  • package.json:
    • Adds an openclaw block (extensions, compat >= 2026.5.2, build.openclawVersion: 2026.5.12).
    • Adds skills/**/* and openclaw.plugin.json to the published files.
    • Bumps version to 0.9.0.

Why these versions

OpenClaw 2026.5.2 began enforcing contracts.tools as the manifest ownership contract for plugin tool registration. rulespec has no runtime tools so the enforcement is a no-op for us, but pinning compat to >=2026.5.2 makes the version baseline explicit.

Test plan

  • npm run build clean
  • node -e "import('./dist/index.js')..." confirms default = { id, register } AND library exports (loadRules, compileRule, …) coexist on the same module
  • Local tests blocked by a rollup native-binary darwin-arm64 mismatch on the dev machine; relying on the publish workflow's CI (npm ci && npm run build && npm test) to validate

rulespec stays a standalone CLI + library; this commit adds the optional
OpenClaw plugin layer so it can be installed via
`openclaw plugins install rulespec` (and discovered by gateways looking
for skill-bearing plugins).

- New `openclaw.plugin.json` declares `id`, `name`, `description`, and
  publishes `skills/rulespec/` (the bundled SKILL.md) into agents'
  `<available_skills>`. No `contracts.tools` — rulespec doesn't register
  native OpenClaw tools; agents call the documented `rulespec` CLI via
  `exec` instead.
- New `src/plugin/index.ts` is the minimal plugin entry — a default
  export with `{ id, register }`, where `register` is a no-op (the
  manifest's `skills` field is what wires the skill in).
- `src/index.ts` re-exports the plugin default so `dist/index.js`
  exposes both the OpenClaw plugin entry AND the public library
  surface (`loadRules`, `compileRule`, etc.). Standalone consumers
  see no change.
- `package.json` adds an `openclaw` block (`extensions`, `compat`,
  `build`) pinning compatibility to `>=2026.5.2` (the release that
  enforced `contracts.tools`) and includes `skills/**/*` plus
  `openclaw.plugin.json` in the published tarball.
@pallaoro pallaoro merged commit 28c1f2c into main May 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant