mirror of
https://github.com/docker/docs.git
synced 2026-11-04 10:01:00 +00:00
sbx: add droid agent
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
This commit is contained in:
1 parent
fd27751cae
commit
f2eccfe389
7 files changed
+133
-2
No files matched your search
@@ -12,6 +12,7 @@ Docker Sandboxes runs the following agents out of the box:
|
||||
- [Claude Code](claude-code/)
|
||||
- [Codex](codex/)
|
||||
- [Copilot](copilot/)
|
||||
- [Droid](droid/)
|
||||
- [Gemini](gemini/)
|
||||
- [Kiro](kiro/)
|
||||
- [OpenCode](opencode/)
|
||||
|
||||
@@ -79,6 +79,7 @@ CLI, and common development tools like Node.js, Python, Go, and Java.
|
||||
| `codex` | [OpenAI Codex](https://github.com/openai/codex) |
|
||||
| `copilot` | [GitHub Copilot](https://github.com/github/copilot-cli) |
|
||||
| `docker-agent` | [Docker Agent](https://github.com/docker/docker-agent) |
|
||||
| `droid` | [Droid](https://www.factory.ai) |
|
||||
| `gemini` | [Gemini CLI](https://github.com/google-gemini/gemini-cli) |
|
||||
| `kiro` | [Kiro](https://kiro.dev) |
|
||||
| `opencode` | [OpenCode](https://opencode.ai) |
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
---
|
||||
title: Droid
|
||||
weight: 35
|
||||
description: |
|
||||
Use Droid in Docker Sandboxes with API key or OAuth authentication.
|
||||
---
|
||||
|
||||
{{< summary-bar feature_name="Docker Sandboxes sbx" >}}
|
||||
|
||||
This guide covers authentication, configuration, and usage of Droid, an AI
|
||||
coding agent by Factory, in a sandboxed environment.
|
||||
|
||||
Official documentation: [Droid](https://docs.factory.ai/)
|
||||
|
||||
## Quick start
|
||||
|
||||
Create a sandbox and run Droid for a project directory:
|
||||
|
||||
```console
|
||||
$ sbx run droid ~/my-project
|
||||
```
|
||||
|
||||
The workspace parameter is optional and defaults to the current directory:
|
||||
|
||||
```console
|
||||
$ cd ~/my-project
|
||||
$ sbx run droid
|
||||
```
|
||||
|
||||
## Authentication
|
||||
|
||||
Droid requires a [Factory account](https://factory.ai). Both authentication
|
||||
methods authenticate you to Factory's service directly — unlike other agents
|
||||
where you supply a model provider key, Factory manages model access through
|
||||
your Factory account.
|
||||
|
||||
**API key**: Store your Factory API key using
|
||||
[stored secrets](../security/credentials.md#stored-secrets):
|
||||
|
||||
```console
|
||||
$ sbx secret set -g droid
|
||||
```
|
||||
|
||||
Alternatively, export the `FACTORY_API_KEY` environment variable in your shell
|
||||
before running the sandbox. See
|
||||
[Credentials](../security/credentials.md) for details on both methods.
|
||||
|
||||
**OAuth**: If no API key is set, Droid prompts you to authenticate
|
||||
interactively on first run. The proxy handles the OAuth flow, so credentials
|
||||
aren't stored inside the sandbox.
|
||||
|
||||
## Configuration
|
||||
|
||||
Sandboxes don't pick up user-level configuration from your host. Only
|
||||
project-level configuration in the working directory is available inside the
|
||||
sandbox. See
|
||||
[Why doesn't the sandbox use my user-level agent configuration?](../faq.md#why-doesnt-the-sandbox-use-my-user-level-agent-configuration)
|
||||
for workarounds.
|
||||
|
||||
The sandbox runs Droid without approval prompts by default. Pass additional
|
||||
`droid` CLI options after `--`:
|
||||
|
||||
```console
|
||||
$ sbx run droid --name <sandbox-name> -- <droid-options>
|
||||
```
|
||||
|
||||
## Base image
|
||||
|
||||
Template: `docker/sandbox-templates:droid-docker`
|
||||
|
||||
Preconfigured to run without approval prompts. Authentication state is
|
||||
persisted across sandbox restarts.
|
||||
|
||||
See [Custom environments](custom-environments.md) to pre-install tools or
|
||||
customize this environment.
|
||||
@@ -54,6 +54,7 @@ see_also:
|
||||
- sbx create codex - Create a sandbox for codex
|
||||
- sbx create copilot - Create a sandbox for copilot
|
||||
- sbx create docker-agent - Create a sandbox for docker-agent
|
||||
- sbx create droid - Create a sandbox for droid
|
||||
- sbx create gemini - Create a sandbox for gemini
|
||||
- sbx create kiro - Create a sandbox for kiro
|
||||
- sbx create opencode - Create a sandbox for opencode
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
name: sbx create droid
|
||||
synopsis: Create a sandbox for droid
|
||||
description: |-
|
||||
Create a sandbox with access to a host workspace for droid.
|
||||
|
||||
The workspace path is required and will be mounted inside the sandbox at the
|
||||
same path as on the host. Additional workspaces can be provided as extra
|
||||
arguments. Append ":ro" to mount them read-only.
|
||||
|
||||
Use "sbx run SANDBOX" to attach to the agent after creation.
|
||||
usage: sbx create droid PATH [PATH...] [flags]
|
||||
options:
|
||||
- name: help
|
||||
shorthand: h
|
||||
default_value: "false"
|
||||
usage: help for droid
|
||||
inherited_options:
|
||||
- name: branch
|
||||
usage: Create a Git worktree on the given branch
|
||||
- name: cpus
|
||||
default_value: "0"
|
||||
usage: |
|
||||
Number of CPUs to allocate to the sandbox (0 = auto: N-1 host CPUs, min 1)
|
||||
- name: debug
|
||||
shorthand: D
|
||||
default_value: "false"
|
||||
usage: Enable debug logging
|
||||
- name: memory
|
||||
shorthand: m
|
||||
usage: |
|
||||
Memory limit in binary units (e.g., 1024m, 8g). Default: 50% of host memory, max 32 GiB
|
||||
- name: name
|
||||
usage: |
|
||||
Name for the sandbox (default: <agent>-<workdir>, letters, numbers, hyphens, periods, plus signs and minus signs only)
|
||||
- name: quiet
|
||||
shorthand: q
|
||||
default_value: "false"
|
||||
usage: Suppress verbose output
|
||||
- name: template
|
||||
shorthand: t
|
||||
usage: |
|
||||
Container image to use for the sandbox (default: agent-specific image)
|
||||
example: |4-
|
||||
# Create in the current directory
|
||||
sbx create droid .
|
||||
|
||||
# Create with a specific path
|
||||
sbx create droid /path/to/project
|
||||
|
||||
# Create with additional read-only workspaces
|
||||
sbx create droid . /path/to/docs:ro
|
||||
see_also:
|
||||
- sbx create - Create a sandbox for an agent
|
||||
@@ -8,7 +8,7 @@ description: |-
|
||||
|
||||
To create a sandbox without attaching, use "sbx create" instead.
|
||||
|
||||
Available agents: claude, codex, copilot, docker-agent, gemini, kiro, opencode, shell
|
||||
Available agents: claude, codex, copilot, docker-agent, droid, gemini, kiro, opencode, shell
|
||||
usage: sbx run [flags] SANDBOX | AGENT [PATH...] [-- AGENT_ARGS...]
|
||||
options:
|
||||
- name: branch
|
||||
|
||||
@@ -3,7 +3,7 @@ synopsis: Create or update a secret
|
||||
description: |-
|
||||
Create or update a secret for a service.
|
||||
|
||||
Available services: anthropic, aws, github, google, groq, mistral, nebius, openai, xai
|
||||
Available services: anthropic, aws, droid, github, google, groq, mistral, nebius, openai, xai
|
||||
|
||||
When no arguments are provided, an interactive prompt guides you through
|
||||
scope and service selection.
|
||||
|
||||
Reference in new issue
Block a user