К основному содержанию
скилл CX Codex

docker-agent-run — скилл для Claude Code: запуск и режимы Docker Agent

Скилл ведёт агента через docker agent run: выбор режима безопасности, изоляция в песочнице, алиасы и разбор сбоев запуска.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add docker/skills --skill docker-agent-run -a claude-code
Открыть на GitHub

Что делает docker-agent-run

Скилл описывает операционную сторону Docker Agent. Он подсказывает, как вызвать docker agent run для локального конфига, алиаса или ссылки на реестр, сколько свободы дать агенту в вызовах инструментов и почему запуск падает. Авторство — docker, лицензия Apache-2.0. Скилл предполагает, что agent.yaml уже написан.

Режимов --safety четыре: strict спрашивает подтверждение перед каждым вызовом, balanced пропускает безопасные и спрашивает про остальные, restricted безопасные пропускает, а остальные отклоняет, autonomous разрешает всё и совпадает с --yolo. Для запусков без человека — cron, CI, серверный эндпоинт — берите restricted: неожиданный вызов инструмента упадёт, а не выполнится без проверки. Режим можно зашить в алиас, но явный флаг в командной строке его перебьёт.

Флаг --sandbox запускает агента в изолированной микроVM под управлением CLI sbx — его нужно поставить и настроить заранее. Сеть в песочнице закрыта по умолчанию: открыты только провайдер модели, models.dev и хосты, которые вывел резолвер тулсета, поэтому сторонний MCP-сервер или API придётся вносить в allowlist через docker agent sandbox allow. Учтите: локальный stdio MCP-сервер работает процессом на хосте, вне песочницы. Ещё песочницы живут между запусками и переиспользуются, чистую VM на каждый раз ждать не стоит. --worktree несовместим с --remote и --sandbox.

Какие задачи решает

  • выбрать режим подтверждений для запуска агента без человека
  • изолировать файловые правки агента в отдельном git worktree
  • открыть стороннему API доступ в сеть песочницы
  • разобраться, почему агент не видит ключ API
  • зарегистрировать короткий алиас вместо длинного пути к конфигу

Примеры запросов агенту

  • запусти агента из ./agent.yaml в режиме restricted
  • почему агент в песочнице не видит мой API key
  • добавь api.example.com в allowlist песочницы

Как установить docker-agent-run

1Через Skills CLI (Vercel)

npx skills add docker/skills --skill docker-agent-run -a claude-code

2Вручную: положить файлы

~/.claude/skills/docker-agent-run/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/docker-agent-run/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о docker-agent-run

Как установить docker-agent-run в Claude?

Выполните npx skills add docker/skills --skill docker-agent-run -a claude-code. Скилл окажется в ~/.claude/skills/docker-agent-run/SKILL.md.

Что делает docker-agent-run?

Помогает запускать Docker Agent: подбирает режим --safety, настраивает изоляцию через --sandbox, алиасы и разбирает причины сбоя запуска.

Что нужно для работы скилла?

Нужен CLI-плагин docker-agent: Docker Desktop 4.63+ или отдельная установка через Homebrew либо релизы на GitHub. Для режима --sandbox дополнительно требуется CLI sbx.

Исходный текст

SKILL.md · Apache-2.0
---
name: docker-agent-run
description: Use this skill when running a Docker Agent with `docker agent run`, choosing a safety/approval mode, using the `--sandbox` isolation flag, setting up aliases, or troubleshooting a run (missing credentials, worktrees). Even if the user just says they want to "run my agent", "make my agent auto-approve tool calls", "run this agent safely", or "why can't my agent see my API key", this skill applies. Covers `--safety` (strict/balanced/restricted/autonomous), `--yolo`, `--sandbox` and its network allowlist, `--worktree`, `docker agent alias`, and `docker agent doctor`.
license: Apache-2.0
compatibility: Requires the docker-agent CLI plugin (Docker Desktop 4.63+, or standalone via Homebrew/GitHub releases). Sandbox mode (`--sandbox`) additionally requires the `sbx` CLI. Verified against docker-agent as shipped with Docker CLI 29.7.2.
---

# Docker Agent: Running and Operating Agents

## Overview
This skill owns the operational side of Docker Agent: invoking `docker agent
run` against a local config, an alias, or a registry reference; choosing how
much autonomy the agent gets over tool calls; isolating it in a sandbox VM;
and diagnosing why a run fails. It assumes the `agent.yaml` already exists —
see Related skills for authoring it.

## When to use this skill
Activate this skill when:
- The user wants to run an agent interactively or headlessly (`--exec`).
- The user is choosing or debugging `--safety`, `--yolo`, or approval behavior for tool calls.
- The user wants to isolate an agent's shell/filesystem access with `--sandbox`, or hit a sandbox network-policy error.
- The user wants a reusable shortcut (`docker agent alias`), a scoped git worktree (`--worktree`), or is debugging credentials/model availability (`docker agent doctor`).

## Do not use this skill when
Do not use this skill when:
- The task uses standalone `sbx run/create/stop/rm` rather than
  `docker agent run --sandbox` — use `docker-sandboxes-lifecycle`.
- The task is standalone `sbx policy` or `sbx secret` configuration — use
  `docker-sandboxes-network-credentials`. Establish which CLI is in use
  before recommending commands when the request only says "my sandbox".
- The task is writing or editing the `agent.yaml` itself (models, toolsets, sub_agents) — use `docker-agent-config`.
- The task is exposing an agent as a server (`serve`), sharing it via a registry (`share`), or evaluating it (evaluation sessions, `--baseline` regression gates) — use `docker-agent-deploy`.

## Core guidance

### Safety modes
- `docker agent run` supports four `--safety` modes; choose the least
  permissive one that still lets the task finish:
  - `strict` — ask for approval before every tool call.
  - `balanced` — auto-approve calls classified as safe, ask for the rest.
  - `restricted` — auto-approve safe calls, **deny** the rest outright. Use
    for unattended/CI runs where no human can answer a prompt.
  - `autonomous` — approve everything automatically. Equivalent to `--yolo`.
- Never default an unattended run (cron, CI, a server endpoint) to
  `autonomous`/`--yolo`. Use `restricted` for unattended runs so an
  unexpected tool call fails closed instead of running unreviewed; reserve
  `autonomous`/`--yolo` for a sandboxed or fully trusted interactive session.
  ```bash
  # CI-safe: unreviewed tool calls are denied, not silently approved.
  docker agent run --exec --safety restricted ./agent.yaml "Triage the failing test"
  ```
- Bake a safety default into an alias so callers don't have to remember it,
  and note that an explicit CLI `--safety`/`--yolo` on `docker agent run`
  still overrides the alias:
  ```bash
  docker agent alias add safe-coder myorg/coder --safety balanced
  ```

### Sandbox isolation
- `--sandbox` runs the agent inside an isolated microVM managed by the `sbx`
  CLI (a separate prerequisite — install and configure it first). All shell,
  filesystem, and process activity started by built-in toolsets happens
  inside the VM; only the working directory (and, unless `--no-kit`, a
  staged "kit" of skills/prompt files) is mounted in. **Exception:** a local
  stdio MCP server declared on the agent runs as a host process **outside**
  the sandbox VM — treat any such MCP server as a trusted host integration,
  not a sandboxed one.
  ```bash
  docker agent run --sandbox ./agent.yaml
  ```
- The sandbox network proxy is **default-deny**: only the model provider,
  `models.dev`, and hosts the toolset resolver can infer are open. A custom
  MCP server or third-party API often needs an explicit allowlist entry —
  add it permanently rather than re-discovering it every run:
  ```bash
  docker agent sandbox allow api.example.com
  docker agent sandbox list
  docker agent sandbox deny api.example.com
  ```
- Prefer baking `runtime: {sandbox: true}` into the agent's own `agent.yaml`
  over remembering `--sandbox` on every invocation of that agent; an
  explicit `--sandbox=false` on the CLI still overrides the config default
  for a single debug run.
- Sandboxes persist and are reused across runs from the same workspace —
  they are not torn down when the session ends. Don't expect a clean VM on
  every run; if you need one, change the mount set (e.g. a new kit) to force
  recreation.

### Aliases and default agent
- Register a shortcut once, then run it by name instead of a path:
  ```bash
  docker agent alias add code myorg/notion-expert
  docker agent run code
  ```
- For a local run with no agent argument, `docker agent run` discovers
  `docker-agent.yaml`, then `docker-agent.yml`, then `docker-agent.hcl` in
  the current directory (first match wins). Only if none exists does it
  resolve the `default` alias, falling back to the built-in default agent.
  The `agent.yaml` examples in these skills pass a filename explicitly;
  `agent.yaml` is not an auto-discovery name.
- Set the fallback for directories without a project config with a
  `default` alias. To select it even when a project config exists, pass
  `default` explicitly:
  ```bash
  docker agent alias add default ./my-agent.yaml
  docker agent run default
  ```
- CLI flags on `docker agent run <alias>` always override the alias's own
  stored options (e.g. `docker agent run yolo-coder --yolo=false`).

### Worktrees
- Use `--worktree` (`-w`) to isolate an agent's file edits from your current
  checkout — it runs the agent inside a fresh git worktree. For an
  **interactive** session, a clean worktree (no uncommitted changes,
  untracked files, or new commits) is removed automatically when the
  session ends; one with work prompts you to keep or remove. A **headless**
  run (`--exec`) never auto-cleans its worktree, regardless of state — it is
  left in place for inspection:
  ```bash
  docker agent run ./agent.yaml --worktree=auth-refactor --worktree-base origin/main
  ```
- `--worktree` cannot be combined with `--remote` or `--sandbox`. To resume a
  worktree run, pass `--session -1` (or the session id) — do not re-pass
  `--worktree`, which fails because the worktree already exists.

### Troubleshooting
- "No model is currently available" or "model ... is not pulled" means the
  agent's provider has no usable credential, or (for `dmr/`) the model
  hasn't been pulled. Run `docker agent doctor ./agent.yaml` first — it
  reports the resolved model/provider and whether credentials were found —
  before touching the YAML. If credentials are missing, export the provider's
  API key; if a DMR model is missing, run `docker model pull <model>`. Rerun
  `doctor` before retrying the task.
- An agent that only *describes* a plan instead of executing it is usually
  missing the tool it needs (add `type: shell` or `type: todo` in
  `agent.yaml`), not a model failure — hand this back to `docker-agent-config`.
- A `403 Blocked by network policy` error inside a sandbox run means the
  destination isn't allowlisted; use `docker agent sandbox allow <host>`.

## Related skills
- For standalone `sbx` lifecycle commands, use `docker-sandboxes-lifecycle`.
- For standalone `sbx policy` and `sbx secret`, use `docker-sandboxes-network-credentials`.
- For writing or changing the underlying `agent.yaml` (models, toolsets, sub_agents), use `docker-agent-config`.
- For serving, sharing, or evaluating the agent, use `docker-agent-deploy`.

## References
- `references/safety-and-sandbox.md` — full safety-mode/flag interaction table and sandbox trust-boundary details.
- `references/sources.md` — provenance of every rule in this skill.

## Assets
- None.

## Checks
- `checks/verification.md` — Verification runbook for a `docker agent run` invocation.

© docker · Apache-2.0 · docker/skills

Похожие скиллы

Все скиллы по теме «Настройка агента: память, контекст, субагенты» →
sandbox-guard UseAI-pro Генерирует конфигурацию Docker-песочницы, чтобы запускать недоверенные скиллы OpenClaw без риска для системы. Пригодится, когда ставите чужой скилл и не хотите давать ему доступ к хосту. CX Codex +1 483установок setup-auditor UseAI-pro Проверяет рабочее окружение OpenClaw на утечки секретов, небезопасные настройки и отсутствие песочницы. Выдаёт отчёт с вердиктом и списком исправлений. CX Codex +1 469установок docker-expert sickn33 Скилл для ИИ-агента, который разбирает Dockerfile, multi-stage сборки и безопасность контейнеров. Пригодится, когда нужно навести порядок в образах и Compose. CX Codex +1 27 300установок docker-patterns affaan-m Скилл с проверенными шаблонами Dockerfile и Docker Compose: локальная разработка, сети, тома, безопасность контейнеров. CX Codex +1 6 400установок docker codewithmukesh Скилл настраивает контейнеризацию приложений на .NET 10: многоэтапную сборку, запуск под непривилегированным пользователем и проверку работоспособности. CX Codex +1 2 900установок docker-containerization ailabs-393 Скилл генерирует Dockerfile, docker-compose и скрипты для сборки, запуска и пуша контейнеров. Пригодится, когда нужно упаковать Next.js или Node.js проект. CX Codex +1 1 100установок

Из того же набора9

docker-compose-patterns Набор правил для сборки, отладки и связывания сервисов в compose.yaml. Помогает настроить проверки готовности, тома и оверрайды под локальную разработку. CX Codex +1 1 400установок docker-build-strategies Скилл учит ИИ-ассистента писать, проверять и оптимизировать Dockerfile по практикам BuildKit. Пригодится при медленной сборке или раздутом итоговом образе. CX Codex +1 1 200установок docker-project-foundations Скилл настраивает первичное окружение Docker для нового проекта. Он сразу создаёт базовую тройку файлов: .dockerignore, Dockerfile и compose.yaml. CX Codex +1 1 000установок docker-destructive-guardrails Скилл заставляет агента назвать, что именно будет удалено, и получить подтверждение до запуска разрушительных команд Docker. CX Codex +1 1 000установок docker-agent-config Помогает составить и отредактировать конфигурацию agent.yaml для Docker Agent. Пригодится при настройке моделей, наборов инструментов и команд из нескольких агентов. CX Codex +1 746установок docker-sandboxes-env Помогает создавать и валидировать декларативные файлы sbxenv.yaml для Docker Sandboxes. Пригодится для повторяемой настройки песочниц и запуска скриптов окружения. CX Codex +1 725установок docker-sandboxes-network-credentials Скилл для настройки сетевых правил и учётных данных песочниц Docker Sandboxes: что агенту можно в сеть и какими токенами он ходит наружу. CX Codex +1 724установок docker-sandboxes-kits Скилл помогает писать, проверять и упаковывать манифесты spec.yaml для Docker Sandboxes по спецификации kit-spec v2. Пригодится при сборке готовых агентов или расширений-миксинов. CX Codex +1 723установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой