Publishing checklist and workflow. First published as v0.7.0 on 2026-03-14.
- Package name
summon-wschosen (npm) -
binentry forsummon -
files: ["dist"]limits published contents -
engines: { "node": ">=18" } -
os: ["darwin"]enforces macOS-only -
prepublishOnlyrunspnpm run build -
license: "MIT"+ LICENSE file - Zero runtime dependencies
- CI pipeline (typecheck + build + test)
-
keywordsfor npm discoverability -
repository,homepage,bugsfields in package.json - README.md
pnpm pack
# Inspect the tarball contents:
tar tzf summon-ws-<version>.tgz
# Should contain: package/dist/index.js, package/package.json,
# package/README.md, package/LICENSE
# Should NOT contain: docs/, src/, node_modules/
# Install globally from the tarball:
npm i -g ./summon-ws-<version>.tgz
# Verify command works:
summon --version
summon --help
# Test a real launch (requires Ghostty running):
summon .
# Clean up:
npm uninstall -g summon-ws
rm summon-ws-<version>.tgz- Test on a Mac with Ghostty 1.3.1+
- Verify AppleScript permission prompt appears and works
- Verify all presets create correct layouts
- Verify commands run in correct panes
- Follow semver: breaking changes = major, features = minor, fixes = patch
- The project is stable (1.x). Minor releases add features, patch releases fix bugs.
# Dry run first:
npm publish --dry-run
# If everything looks good:
npm publish
# Verify it's live:
npm info summon-ws# Install from npm:
npm i -g summon-ws
summon --version
summon --help
summon .- Tag the commit:
git tag v<version> - Push the tag:
git push origin v<version> - Create a GitHub release from the tag