The luwu command
| Command | What it does |
|---|---|
luwu |
The dashboard of your computers and terminals. Signs in and sets up this computer the first time. |
luwu login / logout |
Sign in or out on this computer. luwu login --browser signs in by approving the computer at app.luwu.dev (Luwu Bar uses it). |
luwu up / down |
Start or stop the background service that makes this computer reachable. |
luwu status |
Your account, this computer and the service. |
luwu ls [--json] |
Your computers, their tmux sessions and agent states, e.g. "claude · needs you". |
luwu attach [computer] [session[:window]] |
Open a terminal on another computer. Ctrl-] leaves. |
luwu fs ls|get|put|find|mkdir|mv|rm |
Files on your computers. |
luwu share <computer> <session>[:<window>] |
Share a window with a friend. luwu share ls, luwu share end <id>. |
luwu join <code|link> |
Join a window someone shared with you. |
luwu agent [--on <computer>] ls|new|watch |
Agent mode: start Claude on a computer and follow it, approving its steps. |
luwu hooks [install|uninstall] |
Agent notifications for Claude Code and Codex. |
luwu update [--check] [--auto on|off] |
Install the latest release. --on <computer> updates another of your computers. |
luwu token [ls|new NAME|revoke ID] |
Access tokens for scripts and CI. With LUWU_TOKEN set, luwu notify --title "Build passed" [--body …] [--url https://…] pushes to your phones from anywhere, no computer needed. |
luwu shell-integration [install|uninstall] |
Lets Luwu see where each command and its output are (zsh, bash, fish; only inside tmux). The app can then save exactly the last command's output to notes, and marks windows whose last command failed. |
luwu unpair |
Remove this computer from your account. |
luwu version |
The installed version. |
Luwu Bar (macOS)
A menu-bar app for this Mac's Luwu service: whether the Mac is reachable from your devices (and through which relays), which agents are waiting on you, and switches to pause, resume and update Luwu. Download Luwu Bar (macOS 13 or later), unzip it, and move it to Applications. It uses the luwu you installed; it doesn't replace it.
Where things live
Everything Luwu keeps is in ~/.luwu (set LUWU_HOME to move it): this computer's keys, the service's status and log (~/.luwu/logs/luwud.log), the upload inbox and files.json.
The service runs as a launchd agent on macOS (dev.luwu.luwud) and as a systemd user service on Linux. luwu up installs it; luwu down stops it.
Updating
From Luwu 0.2.3, run luwu update. It downloads the latest release, checks its checksum, and restarts the service into it. Your tmux sessions keep running, and phones reconnect in a few seconds. If the new version doesn't come up, it goes back to the one you had.
The service also updates itself when a new release is out, at a moment when nobody is typing in a terminal. To turn that off: luwu update --auto off. In the app, a computer running an older version shows Update.
Older versions: run the installer again (curl -fsSL https://luwu.dev/install.sh | sh), then luwu down && luwu up.