// local AI control plane

All Your AI Subscriptions. One Assistant.

Route every coding subscription through one local system. Keep native OAuth, your preferred models, and your files on your machine.

$ npm install -g cli-jaw
$ jaw dashboard
localhost:24576
jaw / runtime registry

$ jaw dashboard --status

Claude E
claude-opus-4-8
Ready
Codex App
gpt-5.5
Ready
Pi
grok-composer-2.5-fast
Ready
Cursor
composer-2.5
Ready
OpenCode
opencode-go/kimi-k2.6
Ready
Copilot
claude-sonnet-4.6
Ready
JWC
claude-sonnet-4-6
Ready

09:41:07 task-42 routed to Claude E; Codex App and Pi armed as fallback

Tests: 3700 plus CLI-JAW npm version TypeScript 6.0 Node 22.4 or newer Docker supported Platforms: macOS, Linux, WSL, and Docker

// manager

One control plane for every local AI session.

See every JAW home, open its live interface, manage employees, and keep work moving from one browser window.

CLI-JAW manager dashboard showing instance navigator, live preview, and runtime settings
Live instancesActive, running, and offline homes with preview controls.
Workspaces includedKanban and Notes stay attached to the home where work happens.
Specialists on callDispatch tasks to employees with their own CLI, model, and skills.

// product in motion

See the system work.

13 runtime surfaces

Your subscriptions, composed as one system.

Use one runtime or all thirteen. CLI-JAW keeps each provider's native authentication, model defaults, and fallback role visible.

π01 / 13

Pi

grok-composer-2.5-fast
Settings profile API key, local proxy, or PI_CODING_AGENT_BIN
02

Claude

claude-opus-4-8
claude auth login
03

Claude E

claude-opus-4-8
underlying claude auth login
AI·E04

AI-E

provider-selected
selected provider auth
AGY05

Antigravity

AGY-selected
checked by agy at runtime
06

Codex

gpt-5.5
codex login
07

Codex App

gpt-5.5
codex login
08

Cursor

composer-2.5
cursor-agent login or CURSOR_API_KEY
GROK09

Grok

grok-build
grok login --oauth
KIRO10

Kiro

registry-selected
kiro
11

OpenCode

opencode-go/kimi-k2.6
opencode
12

Copilot

claude-sonnet-4.6
copilot login
JWC13

JWC

claude-sonnet-4-6
jaw jwc install

Built into the control plane

A local system, not another chat wrapper.

The dashboard, orchestration layer, skills, memory, and messaging surfaces stay connected around the work itself.

CLI-JAW Kanban board with task columns and project cards

Manager, Kanban, and Notes share one home

Track the task, inspect the live agent, and keep project knowledge beside it without switching products.

Persistent memory

Project, user, and session recall keep context available across runtime changes.

Employees

Give specialist workers their own CLI, model, prompt, skills, and file scope.

Telegram, Discord, Web, terminal

Start from the desk, continue from your phone, and receive scheduled results on the channel where you already work.

Browser control

Use CDP, DOM references, visual targeting, and desktop Computer Use.

200+ skills

Activate focused workflows for code, documents, research, media, and integrations.

Heartbeat jobs

Run recurring check-ins, reports, and bounded tasks on cron or intervals.

7+ connected surfaces

CLI, TUI, PWA, desktop, Manager, Telegram, and Discord share one event stream.

Orchestration

PABCD makes the work inspectable.

A persisted finite state machine separates intent, review, implementation, verification, and closure into explicit phases.

  1. PPlanshape the work
  2. AAuditchallenge assumptions
  3. BBuildmake the change
  4. CCheckprove behavior
  5. DDoneclose with evidence
orchestration.log
$ jaw orchestrate
P → Plan implementation plan recorded
A → Audit feasibility and risk checked
B → Build scoped implementation running
C → Check tests and consistency verified
D → Done evidence saved; state idle

Human approval gates

Forward transitions stay explicit, so intent remains visible.

Persisted state

Resume after restarts from CLI, Web, or Manager.

Scoped workers

Separate review and implementation roles by task.

Evidence at closure

Tests and change summaries travel with the result.

Platform

Local first. Portable by design.

Run the same control plane on a laptop, packaged desktop app, container, cloud VM, or CI worker.

macOSLinuxWSLElectronDockerCloud VMsCI/CD

Desktop runtime, packaged

DMG, NSIS, and AppImage releases include the server, Node.js sidecar, frontend, production dependencies, and a jaw command shim.

# end-user flow
Download from GitHub Releases
Open CLI-JAW Desktop
Install CLI command
jaw dashboard

Container isolation

Run as a non-root user with the Chromium sandbox enabled. The agent sees the mounted workspace, not the rest of the host.

# quick start
docker compose up -d
# http://localhost:3457

docker build -t cli-jaw .

Interfaces

The same assistant, wherever work finds you.

Move between Manager, Notes, chat, terminal, Telegram, and orchestration without splitting memory or configuration.

CLI-JAW manager dashboard

Quickstart

Two commands to your local control plane.

Install once. Pick any runtime.

Start with the subscription you already have. Add more providers later from the same settings surface.

zsh
$ npm install -g cli-jaw
$ jaw dashboard
# authenticate one runtime: claude, codex, copilot, grok, cursor, or another installed CLI
New to the terminal? One-click install

macOS, step by step

01 / Open Terminal

Open Finder → Applications → Utilities → Terminal.app, or press ⌘ Space and type Terminal.

02 / Install

curl -fsSL https://raw.githubusercontent.com/lidge-jun/cli-jaw/main/scripts/install.sh | bash

The installer sets up Node.js and CLI-JAW.

03 / Launch

claude auth login
jaw dashboard

Open http://localhost:24576. The agent Web UI uses http://localhost:3457 with jaw serve.