Installation & Requirements

Wingman is a Node-based CLI and gateway. This repository uses Bun for development.

Install Wingman

curl -fsSL https://getwingmanai.com/install.sh | bash

The script installs the CLI via Bun (if available) or npm, then runs wingman init.

npm (global)

npm install -g @wingman-ai/gateway
wingman init

Desktop Companion (macOS + Windows x64 in progress)

Wingman ships a standalone Desktop Companion app (Tauri-based) with native tray actions, recording overlay, gateway chat workflows, and session mirroring with the Control Core web UI.

  • Download from GitHub Releases.

  • Current packaged releases target macOS (Apple Silicon).

  • Windows x64 build + installer automation exists for internal rollout and CI validation.

  • Windows recording currently supports manual transcript entry while native speech capture parity is in progress.

  • Configure the Gateway URL + optional auth in app settings.

  • Source location: apps/desktop

  • Configure the Gateway URL + optional auth in app settings

  • Desktop workspace includes:

    • gateway connection test
    • node mode toggle for this device (enable/revoke via gateway /api/nodes)
    • session list and session management
    • mirrored live session streams between desktop and Control Core web UI for the same session
    • agent selection and new agent creation
    • provider credential management (including voice providers)
    • configurable voice defaults and playback policy
    • assistant message voice playback (manual and per-session auto-speak)
    • macOS Messages SMS bridge is planned/future state (currently disabled in desktop runtime)
    • rich streamed chat rendering with structured UI blocks
    • node request handlers for system.notify and system.run (agent tools: node_notify, node_run)
  • Dev command: bun run --cwd apps/desktop tauri:dev

  • Windows publish automation: bun run --cwd apps/desktop publish:windows

Node mode quick start (macOS desktop)

  1. Connect the Desktop Companion to your gateway.
  2. Turn on Enable this device as a node in desktop Gateway settings.
  3. Use an agent with node_notify or node_run to invoke this device.
  4. Revoke at any time by turning the toggle off or deleting /api/nodes/:clientId.

Note:

  • If Node Name is changed while node mode is already enabled, the new name applies on the next node registration cycle (toggle node mode off/on, or reconnect while enabled).

Legacy macOS Menu Bar App

The legacy native menu bar app still exists in this repository while the Desktop Companion rollout continues.

  • Source location: apps/macos

Requirements (development)

  • Bun (recommended): the repo pins bun@1.1.42 in package.json.
  • Node.js: required to run the CLI and gateway in production environments.

Install dependencies

bun install

Run the gateway + UI locally

bun run dev

This starts the gateway and the Control Core UI in watch mode.

Run the CLI directly from the repo

./bin/wingman --help

If you are installing Wingman globally via npm or another package manager, you can invoke wingman directly after installation.