Skip to content
Jojo

Installing and upgrading

The quickest way to install or upgrade Jojo is one command: PowerShell on Windows, or curl in Terminal on macOS. Each command downloads the latest release, replaces the app and opens it. Running sessions are not affected, because they belong to the daemon, which keeps running while the app is replaced.

Installers are also published on the repository's Releases page, for installing by hand. Each release has three files:

Installer files on each release
File Computer
Jojo_<version>_x64-setup.exe Windows 11, 64-bit
Jojo_<version>_aarch64.dmg Mac with Apple Silicon (M1 and later)
Jojo_<version>_x64.dmg Mac with an Intel processor

Windows

To install or upgrade, run this command in PowerShell:

PowerShell Plain text

irm https://raw.githubusercontent.com/josephmcgarvey/Jojo/master/scripts/install-windows.ps1 | iex

The script (scripts/install-windows.ps1) downloads the latest release's installer, closes Jojo's window if it is open (sessions keep running in the daemon), runs the installer silently for the current user into %LOCALAPPDATA%\Jojo without an administrator prompt, and opens Jojo. Because the installer is downloaded by PowerShell rather than a browser, it carries no "downloaded from the internet" mark, so SmartScreen does not stop it. To install a specific release, set $env:JOJO_VERSION = "0.2.5" before running the command.

To install by hand instead:

  1. In your Downloads folder, run Jojo_<version>_x64-setup.exe.
  2. The installer is not code-signed, so Windows SmartScreen shows "Windows protected your PC". Click More info, then Run anyway.
  3. Follow the installer, then start Jojo from the Start menu.

macOS

To install or upgrade, run this command in Terminal:

Shell

curl -fsSL https://raw.githubusercontent.com/josephmcgarvey/Jojo/master/scripts/install-mac.sh | bash

The script (scripts/install-mac.sh) downloads the latest release's .dmg for your processor, quits Jojo if it is running (sessions keep running in the daemon), installs Jojo.app into Applications and opens it. Because the file is downloaded with curl rather than a browser, macOS does not block the first launch. To install a specific release, set JOJO_VERSION=0.2.5 before bash.

To install from the .dmg by hand instead:

  1. In Finder, open the .dmg file for your Mac and drag Jojo into Applications.
  2. Open Jojo from Applications. The app is not signed with an Apple developer certificate, so macOS blocks the first launch.
  3. In System Settings ▸ Privacy & Security, find the message about Jojo and click Open Anyway. Alternatively, in Terminal, run:

Shell

xattr -dr com.apple.quarantine /Applications/Jojo.app

What happens on first start

  1. Jojo copies its daemon into its own folder and starts it. On macOS the daemon goes to ~/.local/bin/jojod and is started through your login shell, so it finds programs installed through Homebrew, nvm or shell aliases.
  2. Jojo registers its hooks in Claude Code's ~/.claude/settings.json (see Claude Code features). It does this on every start; existing hooks in that file are kept.
  3. The sidebar shows your computer as This PC on Windows or This Mac on macOS.

Upgrading

Run the install command again, or install the new version over the old one by hand. Whether running sessions survive depends on the protocol version, the format the window and daemon use to talk to each other:

  • When the protocol is unchanged (every 0.2.x release so far), the running daemon and its sessions keep running. The new daemon file takes over the next time the daemon restarts.
  • When the protocol changed, the window reports that the running daemon is outdated and offers to restart it. Restarting ends that daemon's sessions. With Restore sessions on in Settings, they come back in the new daemon (see Restoring sessions).