OPEN-SOURCE macOS AGENT WORKSPACE

Run the real Grok Build TUI. Orchestrate the work around it.

The fullscreen terminal stays authoritative. ASV Agent Desk adds concurrent sessions, hook-driven attention, worktree lineage, diffs, browser tabs, and local history—without scraping a single terminal line.

git clone https://github.com/ASV-Labs/asv-agent-desk.git
captured from product public release candidate
ASV Agent Desk running concurrent sessions with the attention rail and side panel visible
Real Electron surface. Real xterm session. Disposable demo repository.

PRODUCT WALKTHROUGH / 01–05

A terminal core. Five side channels that do not impersonate it.

Every state outside the terminal comes from Grok hooks, Grok-owned files, or git. The UI does not guess what the agent is doing from its output.

01

RAW PTY BYTES

The actual alternate screen, not a chat-shaped facsimile.

Grok Build runs live inside `node-pty` and xterm.js. Mouse reports, plan mode, subagent views, and fullscreen redraws remain intact. Byte acknowledgements pause the PTY when the renderer falls behind.

The real Grok Build fullscreen TUI inside ASV Agent Desk
pty.onData → term.write Read the terminal boundary ↗
02

HOOK-DRIVEN ATTENTION

Know who is working—and who has been waiting.

Passive events arrive through a bounded personal command hook over a Unix socket. The rail distinguishes working, needs-you, failed, and exited states, then routes `⌘↩` to the longest-waiting session.

Session rail showing working and needs-you attention states
hooks → state machine → rail Inspect the hook transport ↗
03

CONCURRENT + ISOLATED

Fork the work, not the terminal illusion.

Main owns every live PTY. Forking launches `grok -w`, records the parent edge, and learns the checkout from the first hook event. Parent, fork, and fork-of-fork run against genuinely separate git worktrees.

Sidebar lineage with a parent session, fork, and nested fork
parent → fork 1 → fork 1.1 Follow the lineage model ↗
04

READ-ONLY PROOF SURFACES

Working-tree evidence and real web pages beside the TUI.

Git supplies exact diffs without staging or checkout. Browser tabs are sandboxed native `WebContentsView` instances with their own partition and main-owned lifecycle.

ASV Agent Desk diff panel and sandboxed browser tab surface
git read-only / browser sandboxed Review browser isolation ↗
05

LOCAL-FIRST HISTORY

Your sessions stay Grok's sessions.

The sidebar reads real summaries under `GROK_HOME`, resumes stored session IDs, and merges live state without writing to Grok's history. One resolver keeps sessions, hooks, worktrees, and watchers aligned.

Local session history grouped by project with readable task titles
GROK_HOME / read-only See data ownership ↗

ARCHITECTURE PROOF

The TUI stays in the center. Evidence moves around it.

Blue traces are bytes. White traces are state. Nothing travels from terminal text into the desktop chrome.

ASV Agent Desk architecture map Raw bytes move between the Grok Build TUI, SessionManager, and xterm. Hook events move to the attention rail. Session files and git move to the sidebar and diffs. TERMINAL CORE Grok Build TUI xterm.js / alternate screen MAIN SessionManager PTY owner · flow control PASSIVE EVENTS Unix hook bridge always exit 0 RENDERER Attention rail working · waiting · failed READ-ONLY Sessions + git sidebar · lineage · diffs

OAUTH-FIRST SETUP

Three steps. Credentials stay with the official CLI.

  1. 01

    Install Grok Build

    Use the current official installer and review xAI's documentation.

    curl -fsSL https://x.ai/cli/install.sh | bash
  2. 02

    Clone and launch

    Install from source while signed distribution waits on Apple enrollment.

    npm ci && npm run dev
  3. 03

    Continue with OAuth

    ASV Agent Desk starts `grok --oauth`. Grok Build opens the browser, authenticates, and stores its own credentials.

    Official setup guide ↗

DISTRIBUTION STATUS

Source is the release until macOS trust is real.

A local DMG can be built today. That does not make it safe to distribute. The public binary waits for a Developer ID signature, notarization, stapling, Gatekeeper acceptance, and a quarantined clean-install test.

There is no official DMG or GitHub Release asset. Binaries from other sources should not be trusted.

Read the release gate ↗

OPEN SOURCE / MIT

Inspect the boundaries. Improve the desk.

Start with architecture, run the public audit, and keep the real terminal authoritative.