Keep Factory.
Give Droid your machines.
AI Commander is not an alternative to Factory, Claude Code, Codex, ChatGPT, Cursor, GitHub Copilot, Sourcegraph Cody, Grok, Gemini, Windsurf, Continue, Cline, Roo Code, Zed, OpenCode, Qwen Code, goose, Amp, Kilo Code, OpenHands, Amazon Q Developer, Augment Code, Devin, JetBrains Junie, Kiro, or Warp. It is the remote-machine harness those tools plug into over MCP: outbound-only shell, detached jobs that outlive the chat, and file transfer on hardware you already own.
Sibling harness pages: Claude Code · Codex · Cursor · GitHub Copilot · Devin · Kiro · Warp · Junie · OpenHands · Gemini — and the rest on Connect your AI client.
Connect Factory Droid (remote MCP)
Factory’s Droid (Factory MCP docs) supports remote MCP servers over Streamable HTTP. Add AI Commander from the CLI:
droid mcp add aicommander https://aicommander.dev/mcp --type http
Then type /mcp inside Droid to complete the one-time browser sign-in (OAuth with Dynamic Client Registration) and see the AI Commander tools.
droid mcp list shows connection status. Servers added this way land in your user config, ~/.factory/mcp.json —
which you can also edit by hand:
{
"mcpServers": {
"aicommander": {
"type": "http",
"url": "https://aicommander.dev/mcp"
}
}
}
A project-scope .factory/mcp.json in the repo root shares the server with your team — but it is committed, so never put an
Authorization header or API key there. Keep secrets in the user file and reference an environment variable
(for example "Bearer ${AIC_API_KEY}"), which Droid expands at connect time.
Prefer a local stdio bridge?
droid mcp add aicommander "npx -y @aicommander/mcp" \ --env AICOMMANDER_SERVER=https://aicommander.dev
Keep AI Commander tools behind Droid’s confirmation prompts at first; long builds and training runs are good candidates for detached jobs,
and you can hide tools you do not want a Droid to call with disabledTools.
Full client matrix (Factory, Kiro, Warp, Junie, Augment, Devin, Claude Code, Codex, ChatGPT, Cursor, Copilot, Cody, Grok, Gemini, OpenCode, Qwen Code, goose, Amp, Kilo Code, Continue, Windsurf, Cline, Roo Code, Zed, OpenHands, Amazon Q, REST): Connect your AI client.
For a code-only first hour without the OAuth flow, append ?anonymous=1 to the MCP URL.
For optional account features (saved aliases), pass a Bearer API key in headers.
Commands and options can differ between Droid versions — check the linked Factory docs for your build.
What you get that the chat alone cannot
- Remote shell on Linux, macOS, and Windows — by session code or saved alias.
- Detached jobs for builds, test suites, and training on the box that has the repo.
- Fleet list + GPU facts so Droid picks the right machine before it burns an hour.
- File courier (Pro) for checkpoints and diffs up to 100 MiB.
- Outbound-only agent on each machine — no inbound ports, no exposed SSH, no VPN to set up.
Not a replacement — a multiplier
| You already use | AI Commander adds |
|---|---|
| Factory (Droid) | droid mcp add aicommander https://aicommander.dev/mcp --type http |
| Kiro | mcpServers.aicommander.url → https://aicommander.dev/mcp in ~/.kiro/settings/mcp.json |
| Warp | Settings → Agents → MCP servers → + Add → https://aicommander.dev/mcp |
| Claude Code | claude mcp add --transport http … → remote exec + jobs |
| Codex / ChatGPT | Same MCP endpoint or REST /api/v1/exec |
| Cursor / Continue / Windsurf | npx @aicommander/mcp stdio bridge |
FAQ
droid mcp add aicommander https://aicommander.dev/mcp --type http, then type /mcp inside Droid to finish the one-time browser sign-in (OAuth). Or add mcpServers.aicommander with type http and url https://aicommander.dev/mcp to ~/.factory/mcp.json. Prefer stdio? Use command npx with args -y @aicommander/mcp. Use ?anonymous=1 for a code-only first hour. See /howto/ for the full matrix.Next steps
Install the agent on a machine you control, add AI Commander to Droid (droid mcp add … --type http or npx -y @aicommander/mcp), then ask Droid for a real task on a remote box.