Skip to content
Builder LabReleased · v1.9AI-developed · vibe-coded

An office floor for every Claude Code and Codex session on your machine

Every session is a robot at a desk, every repository a room. A session that finishes walks to your office and waits until you answer it.

Built with AI coding agents. I wrote the state model, the local-only rules and the tests they have to pass; the agents wrote much of the code.

$ npx deckhq doctor

Counts your sessions first; then npx deckhq app. Node 18 or newer.

deckhq.dev Code on GitHubFree, MIT, zero dependencies
DeckHQ's floor: Your Office on the left with sessions waiting on its sofas, the orbital-api room on the right, and Elif walking across the corridor to report
DeckHQ · 127.0.0.1
The demo floor: Elif finishes in orbital-api and walks to Your Office.

The agent that finished an hour ago is still waiting

Run a few coding agents at once and the finished ones vanish: the tool's own list shows only what is running. DeckHQ reads what each tool already writes to disk; a reply goes back through the tool's own command line.

  • Claude Code, Codex

    Verified

    Claude Code for reading, replies, hooks and permission prompts; Codex for reading and replies.

  • Gemini CLI, OpenCode

    Unverified

    Written, never run on real data, and labelled so.

$ npx deckhq doctor
  claude code     available
  transcripts     77 sessions across 20 projects
  running now     6   (claude code's own agent view reports 6)
  on the floor    77  ← 71 sessions have already finished;
                        the agent view no longer lists them
  hooks           installed, 285 events, last 1m ago
  egress          none by design: only 127.0.0.1 (from the code, not measured on this run)

A real run, 3 September 2026, shortened. Yours will differ.

Two questions, kept apart

What a session is doing is observed. What you owe it is yours alone, and no scan, hover or read may change it. Try it.

deckhq statusline▣ clear
orbital-api
Your Office
Lounge

What it is doing · observed

workingfor reviewended

Happens on its own

What you owe it · yours alone

activebenchedlet go

Only you

nowElif is at a desk in orbital-api, typing. Make something happen.
Illustrative, following DeckHQ's own state rules

What it never does

Local by construction, and held there by tests.

  • Leaves 127.0.0.1

    The address is a constant, and a test fails the build if any module can reach outside.

  • Takes orders from another tab

    A foreign Host header or a cross-site request is refused.

  • Asks who you are

    No account, no telemetry, no update check.

  • Writes your settings without asking

    The consent screen shows the literal JSON; the original is backed up.

Versions 1.2 to 1.9 on npm

Published from tags by CI that lints, type-checks and tests every push.

Every push: three systems, three Node versions

Node 18Node 20Node 22WindowsmacOSLinux
  • About 3,300 tests in 234 files
  • 36 golden images of the floor, compared pixel for pixel
  • Zero runtime dependencies
DeckHQ in 22 seconds0:22 · music, no narration

Next in the Builder Lab

Career-Ops

Scheduled daily · private