macOS setup

Set up Vex on macOS

Use a standard local checkout by default. Add MacFUSE only when you need a daemon-backed virtual working copy mounted in Finder and the terminal.

Default

Normal local checkout

Clone into your home directory and work directly in the JJ/Vex checkout. This is the complete, supported path when MacFUSE is not installed.

Optional

MacFUSE virtual mount

Mount a revision through the local vexd daemon when you need virtual working-copy behavior, cache controls, overlay state, or mount-aware tools.

macOS without FUSE

No kernel extension or filesystem driver is required to use Vex, submit a stack, manage deployments, or use local workspaces. Install, sign in, and clone from a normal macOS terminal:

mkdir -p ~/src && cd ~/src
curl -fsSL https://cli.cdn.vex.sc/install.sh | sh
vex --help
vex login
vex whoami
vex clone <org>/home

Keep ordinary checkouts under your home directory. The daemon capability report will identify the non-FUSE fallback as available even when a FUSE mount is unavailable.

macOS with MacFUSE

Install and approve MacFUSE first, then verify Vex sees it. Vex detects either the MacFUSE or legacy osxfuse installation path; it will refuse a real mount if neither is present.

vex daemon capabilities --format json
mkdir -p ~/vex-mounts/home
vex mount ~/vex-mounts/home --repo ~/src/home --rev @ --read-write
vex unmount ~/vex-mounts/home

The mount command starts vexd when needed. Use a distinct empty mount path, keep the local repository passed to --repo intact, and unmount with Vex so the daemon can retain recoverable overlay and cache state.

Verify and recover

vex whoami
vex settings show --format json
vex daemon status --format json
vex daemon capabilities --format json

If MacFUSE is unavailable, do not block your work: return to the normal checkout and use the non-FUSE path. For login, organization, datacenter, and workspace settings, continue to the CLI configuration guide.

Configure the CLI