Install

Install NightMe on macOS & Linux

Get from zero to `nightme login feishu` in under a minute — one curl, no sudo.

by NightMe team 5 min read

Get from zero to nightme login feishu in 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

  1. Resolves the latest release tag from api.github.com/repos/cnlangzi/nightme/releases/latest (a pinned version override is supported — see below).
  2. Downloads nightme_<version>_<goos>_<goarch>.tar.gz and verifies it against the release's SHA256SUMS.txt.
  3. Extracts the nightme binary into $NIGHTME_INSTALL_DIR (default ~/.nightme/bin).
  4. Appends a single line to your shell rc (~/.bashrc, ~/.zshrc, ~/.profile — whichever exists) that exports the install dir onto PATH. The marker # nightme is 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.