Install NightMe on macOS & Linux
Get from zero to `nightme login feishu` in under a minute — one curl, no sudo.
Get from zero to
nightme login feishuin under a minute — one curl, no sudo.
The one-liner installer is the recommended path on Unix-like systems. It pulls the correct release tarball for your OS and architecture, drops the binary in ~/.nightme/bin, and patches your shell rc so nightme is on PATH from your next shell onwards.
TL;DR
curl -fsSL https://nightme.dev/install.sh | bash
nightme login feishu
nightme start
That's it. The first command installs; the second scans a QR code to connect the CLI to your Feishu account; the third boots the local daemon that bridges chat ↔ agents.
What the installer does, step by step
- Resolves the latest release tag from
api.github.com/repos/cnlangzi/nightme/releases/latest(a pinned version override is supported — see below). - Downloads
nightme_<version>_<goos>_<goarch>.tar.gzand verifies it against the release'sSHA256SUMS.txt. - Extracts the
nightmebinary into$NIGHTME_INSTALL_DIR(default~/.nightme/bin). - Appends a single line to your shell rc (
~/.bashrc,~/.zshrc,~/.profile— whichever exists) that exports the install dir ontoPATH. The marker# nightmeis included so the line is idempotent on re-run.
After install, open a new shell (or source your rc) so the PATH change takes effect.
Pinning a version
NIGHTME_VERSION=v0.3.0 curl -fsSL https://nightme.dev/install.sh | bash
Useful when you want to mirror a version across a fleet, or roll back to a known-good build without waiting for the latest tag to settle.
Installing to a custom directory
NIGHTME_INSTALL_DIR=/opt/nightme/bin curl -fsSL https://nightme.dev/install.sh | bash
The installer will still patch your shell rc to export that path. If you'd rather manage PATH yourself (e.g. via Ansible or a dotfiles repo), set NIGHTME_NO_PATH_UPDATE=1 to suppress the rc edit.
Other useful flags
| Flag | What it does |
|---|---|
--check |
Print installed vs latest version, exit 0 if up-to-date, 1 if an update is available. Handy in CI / cron. |
--force |
Reinstall even when the on-disk version already matches the latest tag. |
--uninstall |
Remove the binary and the rc marker line. Leaves your shell otherwise untouched. |
--help |
Show all flags and env vars. |
Behind a proxy
The installer honours HTTP_PROXY / HTTPS_PROXY (and the lowercase variants) automatically. No extra flags — curl reads them natively; wget is given them explicitly.
Building from source
If you'd rather not use the installer (air-gapped boxes, custom patches, etc.):
git clone https://github.com/cnlangzi/nightme.git
cd nightme
go build -o nightme ./cmd/nightme
mv nightme ~/.nightme/bin/
The release tarballs and go install github.com/cnlangzi/nightme/cmd/nightme@latest produce identical binaries — pick whichever fits your environment.
Verify it worked
nightme --version
nightme doctor
doctor walks the most common breakage modes (PATH, daemon port, IM token, agent CLI present) and prints a fix per failing check. If something looks off there, the answer is almost always in the output.
What's next
Once nightme doctor is green, head over to Run your first agent session to put the daemon through its paces, or to Connect Feishu if login feishu failed.