Skip to content

Latest commit

 

History

History
103 lines (71 loc) · 2.22 KB

File metadata and controls

103 lines (71 loc) · 2.22 KB

Release Process

Versioning

Keep these version fields aligned before creating a release:

  • package.json
  • openclaw.plugin.json

Use:

npm run release:version -- 0.0.3

This updates both files to the same semantic version.

Local Validation

Run the full local validation path before tagging:

npm run check

Local Release Archive

Create the packaged release zip locally:

npm run build
npm run release:pack

This writes:

  • release/claw-guard-v<version>.zip

The build output under dist/ is a self-contained plugin root for local development. It includes:

  • package.json
  • openclaw.plugin.json
  • index.js
  • runtime subdirectories and dashboard assets

The release zip reuses that same plugin-root layout under a top-level claw-guard/ folder.

The dist/package.json and packaged package.json are generated from the development manifest and keep only release-safe fields needed for loading:

  • name
  • version
  • description
  • type
  • main
  • engines
  • openclaw

Development-only fields such as scripts, devDependencies, and files are intentionally excluded from the archive manifest.

The release archive content is also filtered for release use:

  • keep runtime .js, .json, and asset files
  • exclude *.test.*
  • exclude *.map
  • exclude *.d.ts*

The packaged package.json must keep openclaw.extensions pointed at ./dist/index.js for npm/archive installs handled by OpenClaw.

GitHub Release Automation

The GitHub Actions workflow in .github/workflows/release.yml publishes automatically when a version tag is pushed.

Release flow:

git add package.json openclaw.plugin.json package-lock.json
git commit -m "Release v0.0.3"
git tag v0.0.3
git push origin main
git push origin v0.0.3

When the v0.0.3 tag reaches GitHub, Actions will:

  1. install dependencies with npm ci
  2. run npm run build
  3. package the plugin root as claw-guard-v0.0.3.zip
  4. create or update the corresponding GitHub Release
  5. upload the zip as a release asset

Manual Workflow Trigger

If a tag already exists and you need to republish from GitHub Actions manually:

  1. open the Actions tab
  2. run Release Claw Guard
  3. provide the existing tag, for example v0.0.3