Skip to main content
9 – 17 UHR +49 8031 3508270 LUITPOLDSTR. 9, 83022 ROSENHEIM
DE / EN
Coding agent Factory (The San Francisco AI Factory Inc.) United States CLI, Desktop, Web/Cloud, IDE

Droid (Factory)

Droid is Factory's coding agent harness for the terminal, desktop, and cloud. Autonomy levels, BYOK models, MCP support, and Enterprise options explained.

Licence Proprietary
Interfaces Terminal (CLI), Factory desktop app, Web/cloud (app.factory.ai), IDE (VS Code, JetBrains, Zed via ACP)
Platforms macOS, Linux, Windows
Instruction file AGENTS.md

The seven building blocks in Droid (Factory)

How Droid (Factory) implements the building blocks of an AI harness

  1. 1

    Agent loop

    Droid works interactively in a terminal interface with project context, approvals, and MCP tools, or non-interactively via droid exec, which carries a single task through to completion.

  2. 2

    Tools and execution environment

    Shell commands, file editing, and MCP servers are available as tools; a keypress switches the terminal into a plain bash mode to run commands directly without AI interpretation.

  3. 3

    Context management

    AGENTS.md files provide project-specific guidance on architecture, build/test commands, and conventions that Droid takes into account before making changes.

  4. 4

    State and memory

    Sessions can be resumed with droid --resume or duplicated into a new session with /fork; a Sessions API additionally allows programmatic access to running and completed sessions.

  5. 5

    Permissions

    The Autonomy Level (Off, Low, Medium, High) determines, based on risk, which commands and MCP tools run without asking; a built-in blocklist prevents certain destructive commands regardless of the chosen level.

  6. 6

    Verification and feedback

    Sandbox checks for read, write, and network access run independently of the Autonomy Level and can force additional approvals; in headless mode, droid exec stops immediately (fail-fast) on permission violations.

  7. 7

    Orchestration

    Custom subagents ('Custom Droids') are defined as Markdown files with their own system prompt, model, and tool set, and are invoked via the Task tool with a chosen complexity level, either in the foreground or background.

Models and model access

Which models the harness uses and how they are obtained

Models and model access
Models Model selection across built-in and self-configured models (Anthropic, OpenAI, and other providers); no single fixed default model is documented
Access routes Anthropic API-compatible, OpenAI API-compatible, generic OpenAI Chat Completions-compatible endpoints (including OpenRouter, Fireworks, Together AI, Ollama, vLLM, local servers)
Free choice of model Yes
Custom endpoint / LLM gateway Yes
Custom models are configured in the settings.json file under customModels with the fields model, baseUrl, provider, and optionally apiKeyHelper; according to the documentation this applies to the Droid CLI and desktop app, not to the hosted web/mobile platform.
Features
MCP servers Sub-agents Hooks Skills Plugins / extensions Sandbox Headless / CI SDK IDE integration Checkpoints Resume sessions
Running it with herdr
Supported by herdr Yes
State detection Screen manifest
Integration Session
As of 20 September 2026, herdr's documentation detects Droid via its terminal screen manifest and folds the session into its own session management.
More about herdr →

Enterprise use

Data processing, controls and pricing model according to the vendor

EU data residency

For Enterprise customers with European data-residency requirements, Factory offers an EU organization with its own API backend and web app hosted within the European Economic Area; organization and billing data remain in the United States according to the documentation.

Air-gapping and network control

According to the documentation, Droid can run fully air-gapped, supports HTTP(S) proxies, custom certificate authorities for HTTPS inspection, and mutual TLS for client certificates.

Centralized admin policy

Large organizations distribute model access, sandbox network rules, IP restrictions, and feature gates via a central configuration service or an MDM-deployed configuration file that takes effect before any user authenticates.

Telemetry

According to the documentation, OpenTelemetry data can be collected internally or routed to an external collector.

Data processing

Factory (The San Francisco AI Factory Inc.) offers EU users a data processing agreement and, for transfers to the US, refers to standard contractual clauses.

Strengths
  • Headless mode (droid exec) with text, JSON, and stream-jsonrpc output for CI/CD pipelines
  • Custom Models/BYOK allow your own API keys, local models, or OpenAI-compatible endpoints
  • Autonomy Level controls, based on risk, which commands run without confirmation
  • Custom Droids (subagents) can be defined per project or personally as Markdown files
  • EU deployment option for Enterprise customers with data-residency requirements
  • Dedicated IDE extension for VS Code, Cursor, and Windsurf, plus ACP integration for JetBrains and Zed
Limitations
  • According to the documentation, custom model endpoints (BYOK) apply only to the Droid CLI and desktop app, not to the hosted web/mobile platform
  • According to the documentation, only Anthropic and OpenAI models via their official API are fully tested; Factory cannot guarantee other BYOK models will work, and models under 30 billion parameters are not recommended for production coding work
  • According to the documentation, the JetBrains integration is currently a plain ACP chat front end and, unlike the VS Code extension, does not yet share open files, selections, or diagnostics automatically

Use cases

Typical tasks for this harness

Interactive coding sessions in the terminal with project context and approvals
Automated code changes and checks via droid exec in CI/CD pipelines
Parallel tasks across several Git worktrees
Delegating scoped subtasks to specialized Custom Droids
Connecting your own or locally hosted models via Custom Models/BYOK

AI harness software is what turns a language model into a working agent. Droid is the coding agent harness from Factory (legally: The San Francisco AI Factory Inc.), connecting language models with tools, MCP servers, and a risk-based approval system, and running in the terminal, as a desktop app, and in the cloud. As of 20 September 2026.

What is Droid?

Droid is Factory’s coding agent and, according to the documentation, “runs the same everywhere”: as a terminal CLI, as a desktop app, or in the cloud via the web platform. Depending on the platform, the CLI is installed via install script (curl -fsSL https://app.factory.ai/cli | sh), Homebrew (brew install --cask droid), or npm (npm install -g droid); on Linux, the xdg-utils package is additionally required. After installation, you navigate to a project directory and start an interactive session with the droid command, authenticating via browser login.

Droid as an AI harness

Droid’s agent loop runs either interactively in a terminal interface with visible approvals and diffs, or non-interactively via the headless command droid exec, which carries a task through to completion in a single pass and returns text, JSON, or stream-jsonrpc output. Project context comes from an AGENTS.md file covering architecture, build/test commands, and conventions. Permissions are governed by the so-called Autonomy Level across four tiers – Off, Low, Medium, High – which determines, based on risk, which commands and MCP tools run without asking; a built-in blocklist prevents certain destructive commands regardless of the chosen level, and separate sandbox checks for file and network access can force additional approvals. A /rewind menu, or the /rewind-conversation command, lets you undo changes made during a session. hooks.json, SKILL.md files under .factory/skills/, and a plugin system (.factory-plugin/) let you extend Droid with deterministic automation, reusable workflows, and extensions distributed across a team. For scoped subtasks, custom subagents (“Custom Droids”) can be defined as Markdown files with their own system prompt, model, and tool set, and invoked via the Task tool in the foreground or background.

Models and model access

Droid does not name a single fixed default model; instead, it connects via built-in connections as well as via Custom Models (BYOK) to your own Claude- or GPT-compatible API keys, or to routers such as OpenRouter or local servers such as Ollama and vLLM. This is configured in the settings.json file under the customModels key, with the fields model, baseUrl, provider, and optionally apiKeyHelper. According to the documentation, this custom-endpoint connection applies to the Droid CLI and desktop app, not to the hosted web/mobile platform. Whether this configurable endpoint can specifically be routed through the AI Gateway should be checked case by case against the gateway’s interface.

Enterprise use: data protection and governance

For Enterprise customers with European data-residency requirements, Factory offers an EU organization with its own API backend and web app hosted within the European Economic Area; organization and billing data remain in the United States according to the documentation, with standard contractual clauses intended to cover transfers there. Droid can also run fully air-gapped, with custom certificate authorities, mutual TLS, and centrally distributed admin policies for model access, network rules, and IP restrictions. Important for enterprises: source code and prompts go to whichever model provider is configured and should be reflected in the records of processing activities beforehand.

Orchestrating Droid with herdr

herdr lists Droid in its agent table with the integration level “screen manifest” and “session”. This means herdr detects Droid sessions via the terminal screen manifest and additionally folds them into its shared session management, for example to start and observe several agents in a coordinated way.

Where it fits: developer harness and enterprise harness

Droid is a tool for developers working in the terminal, on the desktop, or in the cloud. For non-developer staff, CompanyGPT is the matching harness: the same underlying idea of tools, context, and permissions, but built for enterprise roles, integrations, and audit requirements. The AI Gateway can serve as a shared cost and governance layer across different harnesses. For an overview of other coding agents and orchestrators, see our overview of all AI harnesses. We help companies introduce coding harnesses like Droid safely and connect them to their existing AI governance.

From developer harness to enterprise harness

Coding harnesses are tools for developers. Business users, cost control and governance need two more layers.

CompanyGPT – the harness for business users

CompanyGPT gives any language model tools via MCP servers, integrations and n8n, company knowledge via companyRAG, roles from Entra ID or Keycloak, and audit logs – operated in your Azure environment or sovereignly on STACKIT.

Discover CompanyGPT
AI Gateway – cost and governance for every agent

The AI Gateway bundles the model access of your tools and coding agents behind an OpenAI-compatible API: authentication via Entra ID, budgets and cost centres per team, user and agent, guardrails and complete logging.

View the AI Gateway

Frequently Asked Questions

What is Droid?

Droid is the coding agent harness from Factory (The San Francisco AI Factory Inc.). It runs as a terminal CLI, as a desktop app, and in the cloud, connecting language models with file tools, shell commands, MCP servers, and a risk-based approval system.

Is Droid open source?

No. Droid is distributed as a proprietary application via Homebrew, npm, or its own install scripts; no public source-code repository for the application itself is documented.

Which models does Droid support?

Droid supports built-in model connections as well as, via Custom Models (BYOK), your own Anthropic- or OpenAI-compatible API keys, routers such as OpenRouter, or local servers such as Ollama and vLLM. The documentation does not name a single fixed default model.

Can I use my own models or a custom endpoint with Droid?

Yes. The configuration file lets you register custom models under customModels with a base URL, provider type, and API key; according to the documentation this applies to the Droid CLI and desktop app, not to the hosted web/mobile platform.

Can Droid be used in a GDPR-compliant way?

Factory offers Enterprise customers an EU organization with a European API backend and a data processing agreement; organization and billing data remain in the United States according to the documentation, with standard contractual clauses intended to cover transfers there. The specific GDPR assessment depends on the individual case.

Does Droid work with herdr?

Yes. According to herdr's documentation, the orchestrator detects Droid via its terminal screen manifest and additionally folds the session into its own session management.

Introduce coding agents safely in your company

We support selection, model access in the EU, permission design and cost control.