This document describes how to create and publish new releases of Linggen Memory.
Linggen Memory releases to its own GitHub repository (linggen/linggen-memory).
The single binary ling-mem includes the HTTP API server, MCP endpoint, and embedded Web UI.
Version numbers follow semantic versioning (MAJOR.MINOR.PATCH) and must be kept in sync across:
backend/Cargo.toml— workspace versionfrontend/package.json— version field
Use scripts/sync-version.sh to update both at once.
Ensure you have the gh CLI installed and authenticated.
-
Update version numbers using the sync script:
./scripts/sync-version.sh 0.7.0
-
Test locally:
./scripts/build.sh v0.7.0 --skip-linux
-
Commit changes:
git add . git commit -m "chore: bump version to 0.7.0" git push origin main
git tag v0.7.0
git push origin v0.7.0To build, sign, and upload to GitHub in one go:
./scripts/release.sh v0.7.0Use --draft if you want to inspect the release before publishing:
./scripts/release.sh v0.7.0 --draftUse --skip-linux to skip multi-arch Linux builds (requires Docker):
./scripts/release.sh v0.7.0 --skip-linux-
Check
linggen/linggen-memoryrepository for new release -
Verify these files are present:
ling-mem-macos-aarch64.tar.gz(macOS Apple Silicon)ling-mem-linux-x86_64.tar.gz(Linux x86_64)ling-mem-linux-aarch64.tar.gz(Linux ARM64)manifest.json(Update manifest)
scripts/lib-common.sh: Shared helpers for platform detection and signing.scripts/build.sh: Master build orchestrator.scripts/build-mac.sh: macOS-specific build logic.scripts/build-linux.sh: Linux multi-arch build via Docker Buildx.scripts/release.sh: Orchestrates packaging and GitHub publishing.scripts/sync-version.sh: Ensures version consistency across all files.scripts/install.sh: End-user installer (curl | bash).
Each release produces a single ling-mem binary per platform:
| Artifact | Platform |
|---|---|
ling-mem-macos-aarch64.tar.gz |
macOS Apple Silicon |
ling-mem-macos-x86_64.tar.gz |
macOS Intel |
ling-mem-linux-x86_64.tar.gz |
Linux x86_64 |
ling-mem-linux-aarch64.tar.gz |
Linux ARM64 |
curl -fsSL https://linggen.dev/install-mem.sh | bashOr install a specific version:
curl -fsSL https://linggen.dev/install-mem.sh | bash -s -- --version v0.7.0- Never commit private keys to the repository.
- Keep signing keys secure.
- Update signatures ensure users only install authentic updates.