- All tests pass:
npm test - Build succeeds:
npm run build - Typecheck passes:
npm run typecheck -
npm pack --dry-runlooks correct (no extra files, no missing files) -
package.jsonversion is updated - README.md is current
- LICENSE file exists at project root
- CHANGELOG or release notes prepared (if applicable)
- Git working tree is clean
- Git tag matches package version
./scripts/release-check.sh# Dry run first
npm publish --dry-run
# Publish for real
npm publish
# If scoped and public:
# npm publish --access publicnpm login
npm whoami # verifygit tag v$(node -p "require('./package.json').version")
git push origin --tagsThe install scripts in scripts/ are designed to be hosted at:
https://asmo.bot/install-linux.shhttps://asmo.bot/install-macos.shhttps://asmo.bot/install-windows.ps1
To set this up:
- Host the scripts behind a static file server or CDN at asmo.bot
- Ensure the scripts are served with correct content types (
text/plainfor.sh,text/plainfor.ps1) - The scripts detect whether they're in a local source tree or should install from npm — when served remotely they'll
npm install -g @asmostans/daeva
When packaging Daeva as a ClaWHub skill:
- The MCP server binary (
daeva-mcp) is the integration point - Skill config should point at
daeva-mcp --base-url <url> - The orchestrator server (
daeva) runs separately as a background service - Skill metadata should reference the npm package name
@asmostans/daeva - Consider shipping a minimal skill manifest that auto-starts the server if not already running