Factory Droidvsdoki

Comparison

Factory Droid vs doki

Droid is built for assignments that move on their own. That is exactly why its questions arrive while you are already on something else. doki is the queue that sorts those questions.

Updated October 16, 2026 · 4 min read

Interactive simulation

How doki handles Factory Droid

droid-2 · ~/shop/web
Inbox0

Waiting for the agent…

droid-2NEEDS YOU

Which layout do you want for pricing?

Click an option or press 1, 2, or 3

esc
  1. 1
    Finds the sessionReads sessions in ~/.factory/sessions.
  2. 2
    Tells youThe question rises to the Inbox with its options.
  3. 3
    You answerA key, your voice, or the iPhone. Two seconds to undo.
  4. 4
    Delivers the replydoki replies with droid exec · or in the terminal
Illustrative simulation. The real app shows your own sessions.
Droid executes. doki asks first when it should.
Factory Droiddoki
Runs the task in the repoYesNo
Sessions on disk~/.factory/sessionsRead on the Mac
ReplyIts own UIdroid exec or the terminal
Command permissionsThe agent’s ownGuard: allow, ask, or block
Several at onceSeveral sessionsOne list, with an optional worktree per agent
Another machineYou install itSSH or doki-bridge, no open ports

Sessions doki already knows how to read

The same way Claude leaves transcripts in ~/.claude and Codex in ~/.codex, Droid leaves its own in ~/.factory/sessions. doki does not wait for you to open the TUI to know a session exists. If the process is also in a terminal, it can type there. If not, it uses droid exec.

Kiro follows a similar path, with sessions in ~/.kiro/sessions. Droid and Kiro show up as first-class agents in the app, not as a generic “other”.

Approving what a droid wants to run

An agent that moves on its own eventually asks for actions that are not reversible: install, migrate, publish, push to a branch. Guard ships with rules for those cases and allows per-project exceptions. Each approval explains what the command does and how risky it is.

Those approvals also reach the iPhone, with buttons on the notification. The rules are covered in permissions. Droid still executes what you approve. doki does not run a parallel plan.

A droid on the server

Factory fits machines that stay on. From the Mac you add the host over SSH, or you generate doki-bridge’s one-line install and run it there. You do not open an inbound port. With tmux, typing is live.

Remote agents covers the local network, the direct link, and the optional relay. The server session looks like a local one: if it needs you, it is at the top of the Inbox.

More than one droid

Several assignments want several checkouts. A worktree per agent keeps them from sharing files, a port, and .env. When one finishes, diff review can send the findings back for a fix, or mark the branch ready for a PR.

If the split is “one builds and another reviews”, doki’s combos chain those two roles until the result is approved or stuck. Droid can take either role, next to Claude or Codex. More in several agents.

Frequently asked questions

Does doki include Factory Droid?

No. You install Droid yourself. doki discovers the sessions already in ~/.factory/sessions and replies to them.

What if Droid’s TUI is closed?

doki can deliver the reply with droid exec. If the terminal is still open, it types there.

Can I block a force push from a droid?

Yes. Guard has a rule for git push --force, along with others for deletion, sudo, secrets, migrations, and deploys. You decide whether it is allowed, asked, or blocked.

Does Kiro work the same way?

Kiro is also discovered from its on-disk sessions. The reply goes through the terminal. It shares the Inbox with Droid.

Never leave an agent waiting.

doki pulls Claude Code, Codex, Cursor and the other agents you already use into one Inbox, on your Mac, your iPhone and your servers.

See pricing →