Devflow Native is published to npm as devflow-native. Public releases should
use the tag-driven GitHub Actions workflow in .github/workflows/release.yml.
The release source of truth is a git tag that matches the package version:
package.json version 0.1.4 -> git tag v0.1.4
When a v* tag is pushed, the release workflow:
- verifies that the tag matches
package.json - installs Node dependencies
- runs
npm run publish:check - publishes the package to npm when that exact version is not already present
- creates or updates the matching GitHub Release
Use npm Trusted Publishing rather than a long-lived NPM_TOKEN secret.
Configure the devflow-native package on npm with:
Repository owner: Sungblab
Repository name: devflow-native
Workflow file: release.yml
Environment name: npm-publish
In GitHub, create an environment named npm-publish and add required reviewers
when a human approval gate is desired. The workflow declares id-token: write
for OIDC publishing. If the npm Trusted Publisher is not configured yet, the
workflow will pass local checks and then fail at the real npm publish step.
Run from the repository root before tagging:
npm run publish:checkThis command verifies:
- documentation links
- the full Node test suite
- packed tarball install into a temporary consumer project
- packaged
devflow --helpanddevflow --version npm publish --dry-run --json- required package files are present
- local state, git internals, Obsidian notes, and private research paper paths are not included in the package
After the release commit is on main:
git tag v0.1.4
git push origin main
git push origin v0.1.4The workflow should publish to npm and create or update the GitHub Release from
docs/releases/<tag>.md when that notes file exists. If the notes file is
missing, it falls back to generated GitHub notes.
Only use this after the maintainer explicitly asks for a real public npm release from a local terminal session:
npm run publish:check
npm publish --access public
gh release create v0.1.4 --title "Devflow Native v0.1.4" --notes-file docs/releases/v0.1.4.mdAfter publishing, verify from the registry:
npm view devflow-native version dist-tags --json
npx devflow-native@latest --version