Publish next
πΎ MOI: agent-agnostic generative UI workspace
npx -y skills add molefrog/moi --skill publish-nextAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
Publish a dev preview of moi-computer to npm as X.Y.Z-next.N under the `next` dist-tag. Use when the user asks to publish/release a dev preview, next build, or prerelease. For stable releases (bumping `latest` + GitHub release) this is only a partial guide.
SKILL.md
2.9 KB, as published. Nobody here has run it
Publish a dev preview (next dist-tag)
Publishes the current state of main as a X.Y.Z-next.N prerelease. Previews never move the latest dist-tag and do not get a GitHub release.
Preconditions β check all before touching anything
- Working tree is clean and on
main(git status). Stop and ask if not. - npm auth is alive:
npm whoami. A 401 here (or a 404 onnpm publishPUT later) means expired auth β the user must runnpm loginthemselves; you cannot. - No half-finished work the user didn't ask to ship β show
git log origin/main..HEAD --onelineif there are unpushed commits and confirm the preview should include them.
Steps
- Bump the version in
package.json: increment the-next.Nsuffix (e.g.0.3.0-next.1β0.3.0-next.2). If the previous release was stable, start a new series atX.Y.Z-next.0whereX.Y.Zis the next planned version. Do not usenpm version(it creates its own commit/tag). - Commit and tag β one-line commit message, matching tag:
git commit -am "Release vX.Y.Z-next.N" git tag vX.Y.Z-next.N - Pack:
bun pm pack(theprepackscript builds the client). Verify the tarball before publishing:tar -tzf moi-computer-X.Y.Z-next.N.tgz | grep -c '^package/dist/' # must be > 0 tar -tzf moi-computer-X.Y.Z-next.N.tgz | grep -Ei '\.env|secret' # must be empty - Publish under the
nexttag β the flag is mandatory, otherwise the prerelease hijackslatest:npm publish --tag next - Push commit + tag:
git push origin main vX.Y.Z-next.N(push the tag by name;--tagswould push every local tag). - Verify:
npm view moi-computer dist-tagsβnextshould now be the new version andlatestunchanged.
Optional smoke test of the tarball (before publishing)
Only if the user wants it β it disrupts the locally running server:
- Kill the running moi server first (it binds port 13337), restart it after so the user's workspace comes back.
bun remove -g moi-computerbeforebun install -g ./moi-computer-*.tgzβ installing over an existing registry install fails with ENOENT/DependencyLoop because the global package.json pins the old version range.- Smoke:
moi version,moi env,moi start+ curl/and/api/workspaces. - Afterwards restore whatever
moiinstall the user had (readlink ~/.bun/bin/moishows what's active;bun linkin the repo restores the dev link).
Cleanup
- Delete the tarball (
rm moi-computer-*.tgz). - Delete
dist/β a leftoverdist/index.htmlsilently shadows the dev client for linkedmoiruns (server/static.ts); onlybun run devignores it.