Now in private beta

Your coding agents.
In your pocket.

Run Claude Code, Codex, or any CLI agent in a terminal on every Mac you pair. Cici mirrors every session to a phone-friendly PWA — so you can approve diffs, prompt, or cancel from any device, the second an agent stops to ask.

npm
private beta
macOS 13+any terminalno app store
claude
● Edit src/app/page.tsx
+12 −4
Do you want to make this edit?
1. Yes
2. Yes, and don’t ask again
3. No, tell Claude differently
Message
Approve
Always Allow
Cancel
Compact
Clear
Add
Add
Add
/01story

Control your Mac from wherever you are.

Pair every device once — home Mac, work Mac, any phone. Type cici start. Your terminals are now in your pocket.

01pair
cici · pair phone
scan with iPhone camera

Open Cici on your Mac. Scan the QR with your phone’s camera. The PWA installs in two taps.

02start
~/code · zsh
$ cici start claude
→ terminal session “claude” attached
→ paired phone notified
claude › ready

Type cici start <name> in any terminal. Cici opens a terminal session on your Mac and points your phone at it.

03go
9:41paired
claude — waiting
● Edit page.tsx +12 −4
Approve this edit?
1. Yes
2. Always
approve
always
cancel

Approve, prompt, cancel — from anywhere your phone has signal. The agent keeps going. You keep walking.

any terminalweb pushmany-to-manyfree during beta
/02control

Everything an agent loop needs. On a phone.

Approve from anywhere

Tap Approve, Always Allow, or Cancel — Cici sends the right keystrokes (1 + ⏎, 2 + ⏎, ⌃C) into the active terminal on your Mac. Same as if you were at the keyboard.

› 1 ⏎ approve

Pinged when agents wait

Cici watches every terminal for the moment an agent stops to ask. Your installed PWA gets a Web Push, the second it happens — even if the tab is closed.

🔔 codex · waiting for input

Beyond buttons

Free-form prompts to nudge the agent. A whip gesture for one-shot follow-ups. Custom button packs for the workflows you run all day.

▌ rerun the failing test
+ included

Multiple sessions, one tab bar

cici start <name> creates a named terminal session on your Mac. Every running session shows up as a tab in the PWA. Kill it on the Mac, the tab disappears.

+ included

Home Mac, work Mac, any phone

The relay is many-to-many. Pair every device once — every laptop reaches every paired phone, every phone reaches every paired Mac. Switch contexts without ever re-pairing.

+ included

Works with any CLI agent

Claude Code, Codex, Gemini, your own scripts. If it runs in a terminal and asks for input, Cici can ping you and send your reply.

/03setup

Up and running in under a minute.

01

One npm command

The setup package downloads the signed Mac app, drops it in /Applications, and launches the menu bar. The app installs the cici CLI on first run.

02

Start an agent in a terminal

cici start <name> opens a named terminal session on your Mac and runs your agent inside it. Already have terminals open? Cici can attach to those too — no extra setup.

$ cici start claude
03

Scan, install PWA, allow push

The Pairing tab shows a QR with the relay link and secret. Scan with iPhone Camera, add to Home Screen, tap Enable Alerts. Done.

▢ scan to pair
/notefrom the maker

Hey — I’m Ben. I built Cici because I was sick of my code pausing when I went to the bathroom.

Or to make coffee. Or to step outside for two minutes. The pattern was always the same — I’d get up, the agent would hit a confirmation prompt, and the whole loop would just stop.

Modern coding agents need a human in the seat. They ask before edits. They ask before commands. They ask, then they wait — and the work that should run in the background ends up serialised through me, glued to a chair.

So I made the smallest thing that fixes it. My phone buzzes the second an agent stops. I tap approve from wherever I am. It keeps going. I keep walking.

That’s the whole product.

Ben · maker of cici
Free during beta

Take your agents with you.

Install Cici, start an agent in a terminal, scan a QR with your phone. Stop hovering over your terminal waiting for it to ask.

or download the .zip directly
requires macOS 13 · ~14mb · PWA on your phone