JarVSJarVSGetting Started

CLI Reference

The jarvs command line tool runs the server that connects your Apple Vision Pro to your code editor.

jarvs [command] [options]

macOS: The CLI is bundled inside the menu bar app at:

~/Applications/JarVS.app/Contents/Resources/jarvs

Linux: The install script places the jarvs binary on your PATH.

jarvs serve

Start the JarVS server.

jarvs serve

When you run this command, the server:

  1. Starts an HTTP server on the configured host and port.
  2. Advertises itself on the local network via mDNS so your Apple Vision Pro can discover it automatically.
  3. Detects available code editor backends (e.g. code CLI for VS Code).
  4. Manages VSCode Server sessions and WebSocket connections for each open project.

macOS

On Mac you typically don't need to run this manually. The JarVS menu bar app starts the server automatically in the background.

Linux

The install script sets up a systemd user service that runs jarvs serve automatically:

# Check if the service is running
systemctl --user status jarvs

# Start the service
systemctl --user start jarvs

# View logs
journalctl --user -u jarvs -f

jarvs pair

Generate a pairing code to manually connect your Apple Vision Pro to JarVS. Useful on Linux or when automatic mDNS discovery isn't working.

jarvs pair

How it works

  1. The command connects to a running JarVS server and generates a short numeric code.
  2. The code is displayed in your terminal with a countdown timer.
  3. Open JarVS on Apple Vision Pro, tap Enter code manually, and type the code.
  4. Once paired, your Apple Vision Pro remembers this server for future connections.

The server must already be running before you can generate a code. When a code expires, a new one is generated automatically - you don't need to re-run the command. If too many failed attempts are made, the code is invalidated early and a fresh one replaces it.

When to use this

Use this when your Apple Vision Pro doesn't automatically discover the server via mDNS (Bonjour). Both devices must still be on the same network.

Example

$ jarvs pair

  Pairing code:  4 8 2 9 1 6

  Enter this code on your Apple Vision Pro to pair.

  Expires in 4:58

jarvs remote

Manage remote access so your Apple Vision Pro can connect from outside your local network. See the remote access guide for details.

Enable with Cloudflare tunnel

jarvs remote enable

Starts a Cloudflare tunnel from your machine. The cloudflared binary is downloaded automatically on first use. No Cloudflare account needed.

Enable with a direct URL

jarvs remote enable --url https://my-domain.com:9999

Use your own public URL instead of a Cloudflare tunnel. JarVS verifies the URL points to a running server before accepting it.

Disable

jarvs remote disable

Stops the tunnel and deregisters the URL. Your Apple Vision Pro will only be able to connect over the local network.

Check status

jarvs remote status

Shows the current remote access status, mode, and tunnel URL.

Example

$ jarvs remote enable
Enabling remote access (tunnel)...
Remote access enabled (tunnel).

$ jarvs remote status
Status: connected
URL: https://example-tunnel.trycloudflare.com
Mode: tunnel

$ jarvs remote disable
Remote access disabled.

Global options

--help, -h

Show usage information.

--version, -v

Print the version number.

Environment variables

These environment variables can be set before starting the server to customize its behavior.

VS Code

JARVS_VSCODE_BIN_PATHdefault: auto-detected

Full path to the VS Code CLI binary used to start VS Code Server. Override this to use a custom or alternative VS Code installation.

JARVS_VSCODE_DATA_DIRdefault: auto-detected

Path to the VS Code desktop data directory. Used to share settings and extensions with VS Code Server. Defaults to ~/Library/Application Support/Code on macOS.

If you use the JarVS menu bar app, set these variables before the app launches (e.g. in your shell profile or via launchctl setenv).

Server

JARVS_SERVER_PORTdefault: 9999

Port the JarVS server listens on.

JARVS_SERVER_HOSTdefault: 0.0.0.0

Host address the server binds to.

JARVS_EXTERNAL_HOSTNAMEdefault: auto-detected

Hostname or IP address that clients use to connect. Defaults to auto-detected local IP.

JARVS_DATA_DIRdefault: ~/.jarvs

Directory for JarVS configuration and data.

JARVS_PORT_MINdefault: 10000

Minimum port for VS Code Server session backends.

JARVS_PORT_MAXdefault: 20000

Maximum port for VS Code Server session backends.