Release Process¶
LazyAI is released as Go submodules from github.com/rluisb/lazyai. It is not published to npm.
Go module tags¶
Each package is an independent Go module and must be tagged with its module directory prefix:
| Module | Command | Tag format |
|---|---|---|
packages/cli |
lazyai-cli |
packages/cli/vX.Y.Z |
packages/orchestrator |
lazyai-orchestrator |
packages/orchestrator/vX.Y.Z |
packages/diffviewer |
lazyai-diffviewer |
packages/diffviewer/vX.Y.Z |
Root vX.Y.Z tags do not version these submodules for go install.
Install contracts¶
Released users install commands with:
go install github.com/rluisb/lazyai/packages/cli/cmd/lazyai-cli@latest
go install github.com/rluisb/lazyai/packages/orchestrator/cmd/lazyai-orchestrator@latest
go install github.com/rluisb/lazyai/packages/diffviewer/cmd/lazyai-diffviewer@latest
Pinned installs should use the same module path with the matching submodule version, for example:
Recommended release preparation steps¶
- Confirm the package module(s) being released and the target
packages/<module>/vX.Y.Ztag(s). - Review
CHANGELOG.mdand package-specific release notes. - Run package tests, vet, and local builds for affected modules.
- Run
mkdocs build --strictso release documentation stays publishable. - Merge the release preparation branch through the normal PR process.
- Create the prefixed submodule tag(s) and let release automation build
lazyai-*assets.
GitHub release assets¶
Release assets should use the LazyAI binary names:
lazyai-cli-<os>-<arch>[.exe]lazyai-orchestrator-<os>-<arch>[.exe]lazyai-diffviewer-<os>-<arch>[.exe]checksums.txt
The orchestrator MCP runtime is distributed as lazyai-orchestrator; generated MCP configs should not reference the old ai-setup-orchestrator name.
Upgrading commands¶
End users upgrade by re-running the relevant Go install command:
After upgrading the CLI binary, refresh managed files:
Store migration¶
Existing managed projects may still contain .ai-setup.json and .ai-setup.db. Those file names are part of the current local state contract and are not automatically renamed in the LazyAI package restructure.
See Migration from ai-setup to LazyAI for user-facing rename guidance.