For Claude Code on macOS

A team of Claude Code sessions. Each one in its own tab.

bob starts, lists, messages, restarts and retires full interactive Claude Code sessions. Each one runs in its own cmux tab, inside a pinned sidebar group. They share one wiki, and none of them takes your window focus.

The 60-second tour, narrated.
$ bob spawn "Site" "Site: Landing" --goal GOAL.md --cwd ~/site --reports-to "Me"
Runs on

Five rules every bob keeps

They come from bob help, the page every new session reads first.

Never take window focus

bob opens every tab with --focus false. No open without -g, no activate. You keep working while they do.

A goal, not a subagent

Each bob is a standing workstream with a goal file: checked by verify_goal.py, under 4,000 characters, set as its /goal.

Talk through hooks

SendMessage to a bob on this Mac, bob tell --host to one on another Mac. A bob keeps its goal's rules over a peer's message.

Respect the load

No boot while the 1-minute load is 12 or more. Spawn and restart wait up to 5 minutes, then refuse.

Search the wiki first

Before solving a tool problem, bob knowledge search. After solving one another project could reuse, bob knowledge note.

What a day with bob looks like

spawn

Start a bob with a goal

bob spawn opens a new tab at the end of its group, starts Claude Code and sets the goal. Add --ephemeral for one-off work and the tab closes itself.

roster

See who runs where

bob roster lists every session: group, busy or idle, its goal, pid and folder. --all asks the other Macs too.

connect

Put two bobs to work together

bob connect gives two sessions the same context and each other's name, on this Mac or across two.

knowledge

Learn once, for every bob

The bobs share one wiki. bob knowledge search before a fix, bob knowledge note after it, so the next bob starts ahead.

How it works

  1. 1

    Write a goal, spawn a bob

    Turn the work into a goal with /create-goal: each part has a proof. Then bob spawn "<group>" "<Project>: <Work>" --goal GOAL.md starts it in a new tab.

  2. 2

    Talk to it, check the record

    Message it in your own voice. bob arrival says when a message reached it, bob fires shows its loops ran, and bob claims checks the files and commits it names exist.

Every command, on video

The 18 lines of bob help, plus drag-to-share in Bob.app. Each clip is a real run, 5 to 20 seconds.

Questions

What do I need?

A Mac with Claude Code and cmux. Every bob is a full interactive Claude Code session in a cmux tab.

Will it take over my screen?

No. Never taking window focus is rule one: bob opens every tab with --focus false, and Bob.app shows its graph without activating.

Can bobs run on my other Macs?

Yes. Once a Mac's owner opens Bob, bob hosts finds it and bob spawn --host starts a session there. The owner approves each one: a prompt, then Touch ID or the Mac's password.

How do bobs share what they learn?

Through one wiki. bob knowledge syncs, searches and adds to it, and every new session is told to search it before solving a tool problem.

What stops too many sessions at once?

The load gate. Spawn and restart wait while the 1-minute load is 12 or more, for up to 5 minutes, then refuse. bob doctor checks the rest of the setup.

How do I get it?

bob is in private use for now. Ask for access below and you'll get the repo.

Run your own team of bobs

bob is in private use. Tell us what you'd run with it, and we'll share the repo.

Ask for access

Every bob gets