Releases
How releases are cut and how to publish a new version.
Version scheme
ashlr uses semantic versioning. Given the plugin's role as a tool layer, the rules are:
- Patch (
1.x.Y) — bug fixes, documentation, no API changes - Minor (
1.Y.0) — new tools, new skills, backward-compatible schema changes - Major (
Y.0.0) — breaking changes to tool input schemas or stats schema
Release checklist
- Update
CHANGELOG.mdwith the new version section - Run
bun run test— all tests must pass - Run
bun run typecheck— zero type errors - Bump version in
package.json - Commit:
git commit -m "chore: release vX.Y.Z" - Tag:
git tag vX.Y.Z - Push:
git push && git push --tags - The GitHub Actions
release.ymlworkflow creates the GitHub release and available build assets on tag push - Publish the package to npm manually using the command below; verify the registry version after publication
Publishing manually
The GitHub release workflow does not publish to npm. After the release checks pass:
Requires an authenticated npm account with permission to publish ashlr-plugin.
If npm reports E401, complete interactive login before retrying; a GitHub
release does not establish npm availability. Verify publication with
npm view ashlr-plugin version dist-tags --json.
Changelog format
Deprecation policy
Tool input schema fields are deprecated for one minor version before removal. Deprecated fields are documented in the changelog and logged as warnings in the MCP server output.