Repository navigation
ZenNotes CLI 0.6.0
ZenNotes CLI 0.6.0
Set up a self-hosted server, keep it updated, and make the terminal work better with your scripts. This release also fixes cross-note yanking and makes bug reports much easier to prepare.
Manage a server from the terminal
zn server setup home --vault ~/Notes
zn server status home
zn server update home --checkSetup downloads and verifies an official native server, creates a private token outside the vault, starts a user service, checks authentication and the exact vault, and saves the connection. Start, stop, restart, logs, configuration changes, foreground execution, pinned updates, and rollback are available as separate commands.
Updates verify the candidate before accepting it and retain the previous executable. Failed health checks restore the working service. macOS uses launchd agents; Linux uses systemd user services. Windows supports foreground operation where a native server release is available. Management runs on the machine executing zn; SSH and Docker provisioning are outside this first adapter.
Inside the TUI, :servers opens the same controls. Long operations run in the background.
A friendlier, more scriptable CLI
- Bare
znopens the TUI in an interactive terminal and prints help when piped. - Command-specific help and argument validation catch mistakes before note operations. Help/version flags never create notes.
--no-inputprevents prompts; JSON errors go to stderr with predictable usage, operation, and cancellation handling.zn statusexplains workspace selection;zn doctorchecks configuration and access.zn config list|get|set|editexposes shared preferences to the shell.- Completion scripts support Bash, Zsh, Fish, and PowerShell.
zn update --checkandzn updaterespect Homebrew, Go, desktop-managed, and standalone installation ownership. Native macOS/Linux replacement verifies the executable and retains a backup; Windows standalone updates provide download instructions.
Two TUI fixes
- Yank across notes: registers now belong to the TUI session. Yank, switch with
[b/]b, and paste into another note. Named registers and line/block selections work too; undo stays local to each note. Thanks @iwpnd for #4. - Useful version reports:
:version/:veopens OS, architecture, runtime, build, installation, terminal, and active-server details. Use:version copy,:version!, orcto copy. Settings also offers the report. Local paths and authentication details are omitted. Thanks @vlcinsky for #5.
Upgrade
Versions 0.5.0 and earlier do not have zn update; use your original installer once:
brew update && brew upgrade znOr download an archive below. With Go:
go install github.com/ZenNotes/tui/cmd/zn@v0.6.0Desktop-managed installations receive the CLI pinned by their desktop release. The desktop bundle must be updated separately; publishing this CLI release does not change an existing app bundle.
The README and contributor guide include command recipes, configuration, troubleshooting, and a disposable local/remote sandbox.
Verification
Full Go race tests, vet, platform builds, isolated local/remote smoke checks, copied-executable self-update, real macOS launchd lifecycle, systemd unit validation, and TUI checks at 120×36 and 80×24.