- Makefile `release`: cross-compiles CGO-free static binaries for linux/amd64,
linux/arm64, darwin/amd64, darwin/arm64, windows/amd64 into dist/, named
emcli_<version>_<os>_<arch>[.exe] (matching skills/emcli/scripts/install.sh),
plus a sha256 checksums.txt. VERSION is injected into internal/version.String.
- Makefile `publish`: creates the Gitea release and uploads all dist/ assets via tea.
- .gitea/workflows/release.yml: on a v* tag, build + publish via the Gitea API.
- RELEASING.md: the local (make) and CI flows.
Verified end-to-end: `make release VERSION=v0.4.0` builds all five assets with the
version baked in; serving them locally, skills/emcli/scripts/install.sh downloads,
passes checksum verification, and the installed binary reports v0.4.0.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>