From e79bd6407f8c182cbb62a734abccb2f1591ae2e0 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Wed, 23 Sep 2026 08:29:59 +0000 Subject: [PATCH] docs: publish experimental DAP docs and shared cloud setup Make the Agentic Platform section and its billing plan discoverable while retaining experimental labeling. Add canonical subscription activation and billing guidance for Console, cloud CLI, and API/SDK users so companion documentation can link to one setup flow. Refresh kits, credentials, sandbox lifecycle and platform controls, MCP, policies, and release notes against the Console implementation. Document custom kit size limits and distinguish Console restrictions from private-kit CLI support. --- content/manuals/_index.md | 4 + content/manuals/agentic-platform/_index.md | 47 +++--- content/manuals/agentic-platform/faq.md | 75 +++++---- .../manuals/agentic-platform/get-started.md | 77 ++++----- content/manuals/agentic-platform/kits.md | 74 +++++++++ content/manuals/agentic-platform/mcp.md | 32 ++-- content/manuals/agentic-platform/policies.md | 80 +++++---- .../manuals/agentic-platform/release-notes.md | 52 ++++-- content/manuals/agentic-platform/sandboxes.md | 152 ++++++++++++------ content/manuals/agentic-platform/secrets.md | 84 +++++++--- content/manuals/agentic-platform/signup.md | 64 ++++++++ content/manuals/ai-overview.md | 13 +- .../plans/docker-agentic-platform.md | 12 +- 13 files changed, 547 insertions(+), 219 deletions(-) create mode 100644 content/manuals/agentic-platform/kits.md create mode 100644 content/manuals/agentic-platform/signup.md diff --git a/content/manuals/_index.md b/content/manuals/_index.md index 3a12ecb1a7c2..ac65957c0f47 100644 --- a/content/manuals/_index.md +++ b/content/manuals/_index.md @@ -16,6 +16,10 @@ params: - Enterprise notoc: true ai-and-agents: + - title: Docker Agentic Platform + description: Run agents in cloud sandboxes with this experimental platform. + icon: cloud + link: /agentic-platform/ - title: Docker Sandboxes description: Run AI coding agents in isolated environments. icon: command-line diff --git a/content/manuals/agentic-platform/_index.md b/content/manuals/agentic-platform/_index.md index 38baaac6ca35..1613c7ae9358 100644 --- a/content/manuals/agentic-platform/_index.md +++ b/content/manuals/agentic-platform/_index.md @@ -1,11 +1,8 @@ --- title: Docker Agentic Platform -description: Run agents and tools in isolated, hosted sandboxes with Docker Agentic Platform. -keywords: docker agentic platform, agents, sandboxes, mcp, secrets, network policies +description: Run agents and tools in isolated cloud sandboxes with Docker Agentic Platform. +keywords: docker agentic platform, agents, kits, sandboxes, mcp, secrets, network policies weight: 5 -sitemap: false -cascade: - sitemap: false params: sidebar: group: AI and agents @@ -13,12 +10,20 @@ params: color: violet text: Experimental grid: + - title: Sign up + description: Activate cloud access and review billing. + icon: credit-card + link: /agentic-platform/signup/ - title: Get started - description: Choose an agent environment and start a sandbox. + description: Start your first sandbox. icon: rocket-launch link: /agentic-platform/get-started/ + - title: Kits + description: Find a kit or run your own public kit. + icon: cube + link: /agentic-platform/kits/ - title: Sandboxes - description: Work with hosted agent environments. + description: Access, pause, resume, and delete your sandboxes. icon: command-line link: /agentic-platform/sandboxes/ - title: MCP @@ -34,7 +39,7 @@ grid: icon: shield-check link: /agentic-platform/policies/ - title: FAQ - description: Review launch scope and product boundaries. + description: Find answers about access, billing, and supported features. icon: question-mark-circle link: /agentic-platform/faq/ --- @@ -42,29 +47,29 @@ grid: > [!NOTE] > Docker Agentic Platform is experimental. Features and behavior may change. -Docker Agentic Platform runs agents and agent-powered tools in isolated -sandboxes on Docker-managed cloud infrastructure. An active workload is not -tied to your computer remaining awake or connected. You can leave the Console -and return to the sandbox while the agent continues working. +Docker Agentic Platform lets you run agents and tools in isolated cloud +sandboxes. Your agent keeps working when you close the Console, disconnect +your computer, or put it to sleep. For sandboxes that run on your development machine through the `sbx` CLI, see [Docker Sandboxes](/manuals/ai/sandboxes/_index.md). -From the web Console, choose the type of sandbox to run and configure its model -credential, network access, tools, and compute. Docker creates the sandbox and -opens a live terminal for interacting with the agent. The **Sandboxes** page -provides one place to return to and manage your running and paused workloads. +In the Console, choose a [kit](/manuals/agentic-platform/kits.md) and configure +the sandbox's credentials, network access, tools, and compute size. Once it +starts, use its terminal to work with the agent. You can return to running or +paused sandboxes from **Sandboxes**. -Account-level configuration can be reused across sandboxes: +You can reuse these settings across sandboxes: - [MCP](/manuals/agentic-platform/mcp.md) connects external tools. - [Secrets](/manuals/agentic-platform/secrets.md) provide credentials without placing their values inside a sandbox. - [Network policies](/manuals/agentic-platform/policies.md) control - outbound destinations. + which hosts and services a sandbox can reach. -To begin, open [Docker Agentic Platform](https://agentic-platform.docker.com/) -and sign in with your Docker account. Docker meters sandbox compute per second. -For account and payment information, see [Docker Billing](/subscription-billing/). +To begin, [activate your subscription](signup.md#activate-cloud-access), then +[start a sandbox](get-started.md). You pay for compute by the second while your +sandbox runs. See [Signup and billing](signup.md) for account and payment +information. {{< grid >}} diff --git a/content/manuals/agentic-platform/faq.md b/content/manuals/agentic-platform/faq.md index 7217e164f968..3e6831cba543 100644 --- a/content/manuals/agentic-platform/faq.md +++ b/content/manuals/agentic-platform/faq.md @@ -10,56 +10,71 @@ aliases: ## What can I run in Docker Agentic Platform? -Docker Agentic Platform provides predefined sandbox types for Claude Code, -Codex, OpenCode, Copilot, Gemini CLI, and Shell. Each type runs in an isolated, -Docker-hosted sandbox with a live terminal. +You can run agents such as Claude Code, Codex, and Hermes in isolated cloud +sandboxes with live terminals. Browse [Kits](kits.md) for curated and community +agents, or choose Shell to work without an agent. You can also enter a public +kit reference in the launcher. + +## Can I use private kits? + +You can run private Docker Hub kits using the Docker Sandboxes CLI. Launching +a kit from the Console requires both the kit and its base image to be public. +The **Kits** page provides the CLI command to copy. + +To access private GitHub repositories from inside a sandbox, use a +[GitHub credential](secrets.md#github-credential). ## How does Docker Agentic Platform differ from Docker Sandboxes? -Docker Agentic Platform runs sandboxes on Docker-managed cloud infrastructure -through a web Console. Docker Sandboxes runs sandboxes on your development -machine through the `sbx` command. Docker Agentic Platform manages the compute, -MCP connections, secrets, and network policies used by its hosted sandboxes. +With Docker Agentic Platform, you run sandboxes in the cloud and manage their +compute, MCP connections, secrets, and network policies in a web Console. For +local development, Docker Sandboxes runs on your machine through the `sbx` +command. ## Can I move a sandbox between my machine and Docker Agentic Platform? -No. Local and hosted sandboxes are separate in the initial release. You cannot -move a running sandbox or its local bind mounts into Docker Agentic Platform. +No. The initial release doesn't support moving a running sandbox or its local +bind mounts from your machine to the cloud. ## Can I share sandboxes and configuration with a team? -The initial self-service experience is single-user. You manage your own -sandboxes, MCP connections, secrets, and network policies. Shared workspaces -and collaborative ownership are not part of the initial release. +The initial release is for individual use. You manage your own sandboxes, MCP +connections, secrets, and network policies. Shared workspaces and team +ownership aren't supported. ## How does a sandbox access external services? -By default, every new sandbox uses the **Open** user policy, regardless of -sandbox type. **Open** allows access to all outbound destinations. To restrict -egress, replace **Open** with **Balanced**, a custom policy, or no user policy. +The **Open** user policy allows outbound access to any host. **Balanced** +allows a curated set of hosts and services. Allow rules from all applicable +policies are combined: selecting both **Open** and **Balanced** permits all +outbound destinations except those blocked by explicit deny rules. Balanced's +allow list doesn't restrict Open's access. To restrict access with an allow +list, deselect **Open** if it is selected and can be removed. + +The launcher remembers your policy selections from the previous launch in the +same browser. Without saved selections, it selects the account's policies +marked **Always applied**. These policies can't be deselected in the launcher. + +Your kit's network rules also apply. If an allow rule and a deny rule match +the same destination, the deny rule wins. See [Network policies](policies.md) +for details. -Network policies control the destinations a sandbox can reach. The sandbox -type's read-only kit policy applies automatically, and you can select zero or -more user policies when you create the sandbox. If you select no user policies, -only the kit policy applies and destinations that it does not allow are blocked. -A deny rule takes precedence over an allow rule. Docker stores configured -secret values outside the sandbox and applies them to matching requests through -the sandbox proxy. +For services that need authentication, save your credentials under +[Secrets](secrets.md). The sandbox proxy adds them to matching requests without +exposing their values to the agent. ## How are sandbox usage and model inference billed? -Docker bills sandbox compute per second while the sandbox runs. The Console -also shows the equivalent hourly rate. +You pay for compute by the second while your sandbox runs. The Console also +shows the equivalent hourly rate. -Model inference is billed separately. The sandbox uses your credential for an -external model provider, which meters and bills inference under that provider -account. See [Docker Billing](/subscription-billing/) for account, usage, and payment -information. +Your model provider bills inference separately, under the account associated +with your API key. See [Docker Billing](/subscription-billing/) for account, +usage, and payment information. ## How long are logs, telemetry, and snapshots retained? -Docker retains Docker Agentic Platform service logs for 31 days and raw -telemetry for 12 months. +Service logs are kept for 31 days and raw telemetry for 12 months. All snapshots, including the most recent snapshot created when you pause a sandbox, are automatically deleted after seven days of non-use. diff --git a/content/manuals/agentic-platform/get-started.md b/content/manuals/agentic-platform/get-started.md index 6a6846ea635f..adc6c42269ab 100644 --- a/content/manuals/agentic-platform/get-started.md +++ b/content/manuals/agentic-platform/get-started.md @@ -1,53 +1,58 @@ --- title: Get started with Docker Agentic Platform linkTitle: Get started -description: Choose an environment and start a Docker Agentic Platform sandbox. -keywords: docker agentic platform, get started, agents, sandbox, live terminal +description: Choose a kit and start a Docker Agentic Platform sandbox. +keywords: docker agentic platform, get started, kits, agents, sandbox, live terminal weight: 10 aliases: - /agentic-platform/concepts/platform-model/ - - /agentic-platform/concepts/kits/ - - /agentic-platform/guides/manage-kits/ --- -The Docker Agentic Platform launcher collects the configuration needed to start -an isolated sandbox. +Start a sandbox from the Console to work with an agent in the cloud. ## Before you begin -You need a Docker account and access to Docker Agentic Platform. The launcher -prompts for a model provider API key when needed. You can add the key under -**Secrets** before creating the sandbox or provide it in the launcher when -prompted. +You need a personal Docker account with an active +[Docker Agentic Platform subscription](signup.md#activate-cloud-access). -The available sandbox types are Claude Code, Codex, OpenCode, Copilot, Gemini -CLI, and Shell. The supported model provider credentials are Anthropic, OpenAI, -GitHub Copilot, Google, Groq, and xAI. +If your kit needs a model provider API key, add it under **Secrets** or enter +it when you launch the sandbox. + +Browse [Kits](kits.md) to choose an agent such as Claude Code, Codex, or Hermes, +or use Shell to work without a pre-installed agent. The credentials you need +depend on the kit. For example, Hermes needs an Anthropic or OpenAI API key. ## Start a sandbox 1. Open [Docker Agentic Platform](https://agentic-platform.docker.com/) and select **New**. -2. Choose a sandbox type and add any requested model credential. Copilot uses - `GITHUB_TOKEN`; add the same GitHub secret to any other sandbox type that - needs private repository access. -3. Configure the sandbox. The initial settings are **open access**, **no tools - added**, and **medium compute**. -4. Choose whether Docker stops or deletes the sandbox when its timer expires, - and set the timer from 1 to 24 hours. -5. Review the configuration and select **Run**. - -You cannot change the sandbox's authentication, tools, access policy, or compute -size after it starts. Docker creates the sandbox, marks it as running, and opens -its terminal. - -Use the terminal to interact with the sandbox. - -Return to **Sandboxes** to find the running sandbox and reopen its terminal. - -## Next steps - -- [Manage sandboxes](/manuals/agentic-platform/sandboxes.md) -- [Connect MCP servers](/manuals/agentic-platform/mcp.md) -- [Manage secrets](/manuals/agentic-platform/secrets.md) -- [Manage network policies](/manuals/agentic-platform/policies.md) +2. Choose a kit. +3. Add any credentials requested by the launcher. +4. Review the [sandbox options](#sandbox-options), including the selected + network policies, and adjust them for your task. +5. Select **Run**. If a required credential is missing, the launcher opens its + input so you can add it. + +When the sandbox is ready, its terminal opens. Use it to work with your agent, +or run commands if you chose Shell. After launch, you can't change the selected +credentials, tools, network policies, or compute size. + +Return to **Sandboxes** to reopen the terminal. + +## Sandbox options + +Configure these options before selecting **Run**: + +| Option | What to choose | +| --- | --- | +| Agent credentials | Add the API keys or tokens your kit needs. Saved credentials are reused by default; deselect optional credentials you don't want to include. See [Secrets](secrets.md). | +| GitHub token | Provide a token for Copilot or for cloning private repositories and pushing changes. Copilot uses the same token for both. Repository access is optional for other agents. See [GitHub credential](secrets.md#github-credential). | +| Network policies | Review the hosts and services the sandbox can reach. See [Network policies](policies.md). | +| MCP tools | Choose the servers your agent can use and authorize them if prompted. See [MCP](mcp.md). | +| Compute and platform | Choose CPU and memory resources. Under **Platform**, use **auto** or a platform supported by the kit's image. See [Sandbox platforms](sandboxes.md#choose-a-platform). | +| Timer | Under **Run for**, choose 1 to 24 hours. Under **When the time is up**, choose **Stop**, **Delete**, or **Restart** if offered. See [Lifecycle actions](sandboxes.md#manage-the-lifecycle). | + +The launcher remembers your policy selections from the previous launch in the +same browser. Policies marked **Always applied** are selected automatically. +Review the selected policies before launching. Selecting **Balanced** alongside +**Open** doesn't restrict Open's access; see [How policies combine](policies.md#how-policies-combine). diff --git a/content/manuals/agentic-platform/kits.md b/content/manuals/agentic-platform/kits.md new file mode 100644 index 000000000000..9105a7edf445 --- /dev/null +++ b/content/manuals/agentic-platform/kits.md @@ -0,0 +1,74 @@ +--- +title: Kits +description: Browse curated and community kits or launch a public sandbox kit in Docker Agentic Platform. +keywords: docker agentic platform, kits, community kits, custom kits, docker hub, sandboxes +weight: 15 +aliases: + - /agentic-platform/concepts/kits/ + - /agentic-platform/guides/manage-kits/ +--- + +A kit defines a sandbox's base image, agent, setup, network rules, and the +credentials it can use. Choose a kit from the **Kits** catalog or enter a public +kit reference to run an agent in Docker Agentic Platform. + +Launching a kit from the Console requires both the kit and its base image to +be public. To run a kit from a private Docker Hub repository, use the Docker +Sandboxes CLI. The **Kits** page provides the command to copy. + +## Browse and run a kit + +The catalog includes kits curated by Docker and community kits published on +Docker Hub. Curated kits include agents such as Claude Code, Codex, Antigravity, +and Hermes, as well as a Shell kit for working without a pre-installed agent. + +1. Open **Kits** in the Console. +2. Search by name or description. Use **Curated kits** or **Community kits** to + filter the catalog, or **All kits** to see both. +3. Select **Run** on a kit to open the sandbox launcher with that kit selected. +4. Review its credentials, network policies, tools, compute size, and + timer, then select **Run** in the launcher to create the sandbox. + +Use a kit's Hub link to open its repository on Docker Hub. For the launch steps, +see [Get started](get-started.md#start-a-sandbox). + +## Run a kit by reference + +To use a public kit that you already know: + +1. Open **New** and open the kit picker. +2. Select **add a public kit**. +3. Enter the kit's registry reference, such as `myorg/my-kit:1.0`. You can omit + the `docker.io/` prefix for Docker Hub references. +4. Wait for the kit's name and supported credentials to appear. If you see an + error, check the reference and confirm that the kit is public. +5. Configure the sandbox and select **Run**. + +Enter a reference to a sandbox kit. You can't launch a sandbox from a container +image reference or a mixin kit. Mixins add capabilities to other kits, and the +Console doesn't support combining kits. + +The credentials available in the launcher depend on the kit. A custom kit must +declare the credentials it needs, including GitHub credentials for private +repository access. See [Secrets](secrets.md). + +## Kit size limits + +Custom kits can contain up to 64 MiB of registry content, measured as the total +size of the config blob and compressed layers declared in the kit manifest. +The kit's file payload must also fit within 256 MiB when loaded for launch. +These limits apply to the kit artifact, not its referenced base image. + +If the launcher reports "That kit is larger than this platform accepts", the +reference exceeds the 64 MiB limit. Check that the reference points to a +sandbox kit rather than a container image. Put large dependencies in the +base image and keep the kit's bundled files small. + +## Create your own kit + +To ask your coding agent to help create a kit, copy the prompt from **Kits** and +paste it into your agent. Follow the **Kit authoring docs** link for instructions, +or see [Kit authoring](/manuals/ai/sandboxes/customize/kits.md). + +After publishing the kit to a public registry, enter its reference in the +launcher. Its base image must also be public. diff --git a/content/manuals/agentic-platform/mcp.md b/content/manuals/agentic-platform/mcp.md index 629bf799ab56..ffe064cc1dd1 100644 --- a/content/manuals/agentic-platform/mcp.md +++ b/content/manuals/agentic-platform/mcp.md @@ -8,21 +8,25 @@ aliases: - /agentic-platform/guides/configure-mcp-tools/ --- -Model Context Protocol (MCP) servers connect agents to external services and -expose operations from those services as tools. From the **MCP** page, connect a -predefined server or add a custom server by URL. Complete authorization when a -server requires it. +Connect Model Context Protocol (MCP) servers to give your agent tools for +working with external services. From **MCP**, choose a predefined server or +add a custom server by URL. Authorize access if prompted. -MCP configuration grants agents tools they can invoke. It does not restrict or -inspect ordinary network access from a sandbox. Use -[network policies](/manuals/agentic-platform/policies.md) to control outbound -destinations. MCP-specific policies are not part of the initial release. +You can also select or connect servers from the tools control in the sandbox +launcher. Select a server to use it in the sandbox, and authorize access if +prompted. To connect a custom server there, enter its URL and +select **Connect**. + +Connecting an MCP server doesn't restrict or inspect the sandbox's other +network traffic. To control which hosts and services the sandbox can reach, +use [network policies](/manuals/agentic-platform/policies.md). The initial +release doesn't support MCP-specific policies. ## Connect a predefined server 1. Open **MCP** and choose a predefined server. 2. Connect the server. -3. Complete authorization if prompted. +3. Authorize access if prompted. ## Add a server by URL @@ -30,4 +34,12 @@ To connect a server that is not predefined: 1. Open **MCP**. 2. Choose the option to add a server and enter its URL. -3. Connect the server and complete authorization if prompted. +3. Connect the server and authorize access if prompted. + +## Use tools from another client + +On the **MCP** page, use **MCP Gateway endpoint URL** to connect your external +MCP client to the gateway. Select **Add to your client**, choose your +client, and follow the connection and authorization instructions. Supported +options include VS Code and Codex CLI. The VS Code instructions include an +install link and a manual configuration example. diff --git a/content/manuals/agentic-platform/policies.md b/content/manuals/agentic-platform/policies.md index 6667183748c7..ec286b6e4d0d 100644 --- a/content/manuals/agentic-platform/policies.md +++ b/content/manuals/agentic-platform/policies.md @@ -9,28 +9,46 @@ aliases: - /agentic-platform/guides/create-and-apply-policies/ --- -Network policies control the external destinations that sandboxes can reach. -They are separate from MCP server connections and secret bindings. +Use network policies to control which hosts and services your sandbox can +reach. For tools and authentication, configure [MCP](mcp.md) and +[Secrets](secrets.md) separately. -Docker Agentic Platform uses two types of network policy: +There are two types of network policy: -- Kit policies are read-only policies for each sandbox type. The corresponding - kit policy is applied automatically when you create a sandbox. These rules - are the sandbox type's kit defaults. Review them under **Kit policies** on the - **Policies** page. +- Kit policies are the read-only network rules defined by the selected kit. + They apply automatically when you create a sandbox, including when you use a + custom kit. Review curated kit rules under **Kit policies** on the + **Policies** page. The launcher's policy picker also shows the selected kit's + policy when the kit includes network rules. - User policies are policies that you can select when you create a sandbox. - Docker provides the read-only **Open** and **Balanced** presets, and you can - create custom policies. **Open** allows all outbound destinations. - **Balanced** allows a curated set of destinations. + Choose the read-only **Open** or **Balanced** presets, or create a custom + policy. **Open** allows outbound access to any host. **Balanced** allows + access to a curated set of hosts and services. -You can select no user policies, one policy, or multiple policies. The selected -user policies are combined with the sandbox type's kit policy. Docker evaluates -all applicable rules, and a deny rule takes precedence over an allow rule. +## Select policies for a sandbox -If you select no user policies, only the kit policy applies. Network access is -default-deny, so the sandbox can reach only destinations that the kit policy -explicitly allows. If its kit policy has no network rules, all outbound -destinations are blocked. +The launcher remembers your policy selections from the previous launch in the +same browser. Without saved selections, it selects the account's policies +marked **Always applied**. These policies can't be deselected in the launcher. +You can select zero, one, or several additional user policies. + +## How policies combine + +Allow rules from all applicable user policies and the kit are combined. A +destination allowed by any of these rules is permitted unless an explicit +deny rule blocks it. Deny rules take precedence over allow rules. + +For example, selecting both **Open** and **Balanced** permits all outbound +destinations except those explicitly denied. Open's `**` rule already allows +all destinations, so Balanced's allow list doesn't narrow access. To restrict +access with an allow list, deselect **Open** if it is selected and can be +removed, and review the allow rules in the remaining policies and kit. + +If the combined allow list contains any rules, destinations outside that list +are blocked. This default behavior isn't an explicit deny rule: adding an +allow rule in another policy permits the matching destinations. If the +combined allow list is empty or absent, the sandbox can reach any destination +except those blocked by deny rules. ## Policy rules @@ -50,34 +68,28 @@ root domain. Add each pattern required by your destinations. You can also match IPv4 and IPv6 CIDR ranges, such as `10.0.0.0/8`, `192.168.1.0/24`, and `2001:db8::/32`. -When defining access, include every service the sandbox needs during startup -and operation. Depending on the workload, these services can include source -control hosts, package registries, and model providers. +Include the hosts your agent needs both during setup and while it runs, such +as source control services, package registries, and model providers. ## Create a policy 1. Open **Policies** and select **New policy**. -2. Enter a name that identifies the intended workload or access level. +2. Give the policy a name that describes what it's for. 3. Add allow and deny rules for the required destinations. 4. Review the rules and save the policy. To apply the policy, select it under **Egress policy for this sandbox** when you create a sandbox. -You can edit, copy, or delete a custom policy. Docker-managed policies cannot -be edited or deleted. +You can edit, copy, or delete a custom policy. You can't edit or delete the +built-in presets or kit policies. ## Understand blocked access -An agent might report an HTTP 403 response, a connection failure, or another -service error when a required destination is not allowed. The error output from -the agent or tool is the primary source for identifying the destination. - -For a sandbox that uses limited access, account for every host and port the -workload needs, including source control, package registries, model providers, -and supporting APIs. Add the narrowest allow rule that covers the required -destination. Use **Open** when broad outbound access is appropriate for the -workload. +If a policy blocks a service, your agent or tool might report an HTTP 403 +response, a connection failure, or another service error. Check the error +message for the host it tried to reach. -Network policy controls outbound destinations. It does not grant MCP tools or -supply credentials. Configure those separately under **MCP** and **Secrets**. +Check that your allow rules cover the host and port, along with any supporting +APIs the service needs. Add the narrowest rule that permits the required +access. Use **Open** if your task needs broad outbound access. diff --git a/content/manuals/agentic-platform/release-notes.md b/content/manuals/agentic-platform/release-notes.md index a82b0bc2b317..510477c5afd6 100644 --- a/content/manuals/agentic-platform/release-notes.md +++ b/content/manuals/agentic-platform/release-notes.md @@ -6,6 +6,35 @@ keywords: docker agentic platform, release notes, updates, fixes weight: 90 --- +## September 24, 2026 + +This marks the experimental public release of Docker Agentic Platform. +Features and behavior may change. To begin, [activate your subscription](signup.md). + +- Added a **Kits** catalog with search, curated and community filters, and links + to Docker Hub. Selecting **Run** opens the sandbox launcher with the kit + selected. +- Added public kit references in the launcher. Both the kit and its base image + must be public. +- Added Hermes and Antigravity as curated kits. Hermes uses Anthropic or + OpenAI credentials; Antigravity uses a Google credential. +- Updated the launcher with separate credential and GitHub controls. The + launcher reuses saved keys and tokens that the kit supports without requiring + you to select them again. Optional credentials can be deselected. +- Added an agent prompt and authoring documentation link on **Kits**, and a + compact **Recent sandboxes** list on **New**. +- Added custom secrets for services outside the built-in provider list. +- Added platform selection and a **Restart** timer action for accounts with + these controls enabled. Resuming a sandbox starts a fresh lifecycle timer. +- Added support for multiple shell tabs and port publishing from the + **Connect** panel. +- Added a VS Code install link and Codex CLI support in **Add to your client**. +- Fixed always-applied policies to stay selected in the launcher. +- Improved sandbox quota errors with guidance on stopping or deleting + sandboxes to free capacity. +- Updated sandbox creation to show provisioning progress and resume tracking + after a page reload. + ## September 14, 2026 - Added image attachments in Claude Code sandboxes. Paste or drop an image @@ -13,7 +42,7 @@ weight: 90 ## September 1, 2026 -- Added inline credential saving and credential selection for sandbox launches. +- Added options to save and select credentials in the sandbox launcher. ## August 28, 2026 @@ -26,21 +55,20 @@ weight: 90 ## August 26, 2026 -Docker Agentic Platform is available for running agent and tool workloads in -sandboxes hosted on Docker-managed cloud infrastructure. +Run agents and tools in isolated cloud sandboxes with Docker Agentic Platform. The initial release includes: - Predefined sandbox types for Claude Code, Codex, OpenCode, Copilot, and Gemini CLI -- A live terminal for interacting with the workload running in a sandbox +- A terminal for working with your agent or shell - Pause, resume, and delete controls for sandboxes - Automatic sandbox stop or deletion after a timer from 1 to 24 hours -- Predefined MCP servers and custom servers added by URL, with connection and - authorization flows -- Provider and service credential management under **Secrets**, with values - kept outside sandboxes -- Read-only kit policies that apply automatically, Docker-managed Open and - Balanced user policies, selectable custom policies, and deny-over-allow - precedence -- Metered sandbox compute with selectable instance sizes +- Options to connect and authorize predefined MCP servers or add custom + servers by URL +- API keys and tokens saved under **Secrets**, with their values kept outside + sandboxes +- Network policies combining read-only kit rules with the read-only **Open** + and **Balanced** presets or custom user policies. Deny rules take precedence + over allow rules. +- A choice of compute sizes, billed by the second while the sandbox runs diff --git a/content/manuals/agentic-platform/sandboxes.md b/content/manuals/agentic-platform/sandboxes.md index 9f6fed3c42db..4cb220f9a6d0 100644 --- a/content/manuals/agentic-platform/sandboxes.md +++ b/content/manuals/agentic-platform/sandboxes.md @@ -1,6 +1,6 @@ --- title: Sandboxes -description: Create and manage hosted environments in Docker Agentic Platform. +description: Create and manage cloud sandboxes in Docker Agentic Platform. keywords: docker agentic platform, sandboxes, agents, cloud runtime, terminal, compute weight: 20 aliases: @@ -8,82 +8,142 @@ aliases: - /agentic-platform/guides/manage-sandboxes/ --- -A sandbox is an isolated runtime on Docker-managed cloud infrastructure. -Docker hosts and meters the sandbox and provides a live terminal for -interacting with it. +A sandbox is an isolated environment for running agents and tools in the cloud. +You can work with your agent through a terminal in the Console. -Docker Agentic Platform provides predefined sandbox types for Claude Code, -Codex, OpenCode, Copilot, Gemini CLI, and Shell. All sandbox types run Ubuntu on -x86-64 compute with Docker pre-installed. Each sandbox has its own compute, -filesystem, network access, and terminal. The compute size that you select -determines its CPU and memory resources. +The [kit](kits.md) you select determines the sandbox's base image, agent, and +installed tools. Each sandbox has its own filesystem, network settings, and +terminal. Choose a compute size to set how much CPU and +memory your sandbox has. Check your kit for installed tools such as Docker +Engine. For example, the Hermes kit doesn't include it. -The Shell type opens a Bash shell without a pre-installed agent. It uses the -same agent-less environment as [`sbx run shell`](/manuals/ai/sandboxes/agents/shell.md) +The Shell kit opens a Bash shell without a pre-installed agent. It uses the +same environment as [`sbx run shell`](/manuals/ai/sandboxes/agents/shell.md) and is useful for working manually or installing your own agent. -A sandbox continues running independently of your connection to the Console -until it is paused, stopped by its lifecycle timer, or deleted. +Your sandbox keeps running when you leave the Console. It runs until you pause +or delete it. When its timer expires, it performs the action you selected. + +## Choose a platform + +In the compute picker, under **Platform**, choose **auto**, **linux/amd64** +(Intel/AMD), or **linux/arm64** (Arm). The default, **auto**, uses the platform +provided by the kit's image. An explicit platform choice requires the image +to support that platform; otherwise, creation fails. ## Source code and files -A sandbox starts with a fresh filesystem. Docker Agentic Platform does not -mount a repository, local directory, or workspace from your computer into the -sandbox by default. +Each sandbox starts with a fresh filesystem. Your local repositories, +directories, and workspaces aren't mounted in it by default. -A sandbox does not synchronize its filesystem with your computer or a remote -repository. Work remains only in the sandbox unless you commit and push it to a -remote repository. Push work that you want to keep before deleting the -sandbox; files that exist only in a deleted sandbox are not available from a -later sandbox. +Files don't sync automatically with your computer or a remote repository. +Commit and push any work you want to keep before deleting the sandbox. Files +left only in a deleted sandbox won't be available in a later sandbox. -Docker Agentic Platform supports GitHub repositories for bringing source into -a sandbox and preserving changes. `GITHUB_TOKEN` authenticates both Copilot and -GitHub repository operations. Copilot uses the same token for both. To clone a -private repository or push changes from another sandbox type, select or add -`GITHUB_TOKEN` in the launcher. The token must have the required repository -permissions. Public repositories can be cloned without a GitHub credential, -but writing to them still requires authentication. +Use GitHub to clone source code into your sandbox and save changes remotely. +To clone a private repository or push changes, use the **GitHub token** +control in the launcher. Copilot uses this token for both the agent and GitHub +repository access. A custom kit must declare a GitHub credential to offer this +option. +Make sure your token has the required repository permissions. You can clone +public repositories without a token, but pushing to them still requires +authentication. ## Open a sandbox -After you select **Run**, Docker creates the sandbox and opens its detail page. -Use the terminal to interact with the sandbox. +After you select **Run**, the Console shows provisioning progress. When the +sandbox is ready, its detail page opens. Use the terminal to work with your +agent or shell. Reloading the launch page resumes tracking the launch. Open **Sandboxes** to review each sandbox's name, type, status, hourly rate, expiration, and age. Select a sandbox to reopen its detail page and terminal. +The **New** page also lists **Recent sandboxes**. Select a sandbox to reopen it, +or select **See all sandboxes** to open the full list. + In a Claude Code sandbox, paste an image from your clipboard or drag an image file onto the terminal to attach it to your prompt. Wait for the upload to finish, type your question, and press Enter to send it. -## Manage the lifecycle +## Open additional shells + +Use the **+** button in the terminal tab bar to open another shell in the same +sandbox. Switch tabs to work with multiple shells. The agent remains in its +own tab while you run commands in another. + +## Connect from your computer + +If the sandbox detail page shows **Connect**, open it to find SSH connection +options. The panel includes a Docker Sandboxes CLI option and a connect script. +For the script, manage your public SSH key under **Settings**. Follow the +instructions in the panel for your chosen connection method. + +### Access a service by port + +To access a web application or development server running in your sandbox: + +1. Start the service in the sandbox and note its port. +2. Open **Connect** and find **Connect via a Port**. +3. Enter the port and select **Open Port**. +4. Copy the public URL to access the service. + +The sandbox must be running. Port 2222 is reserved for SSH and can't be +published through this control. To stop exposing a service, use the close +action next to its port. + +## Pause, resume, or delete a sandbox {#manage-the-lifecycle} A sandbox can be running or paused: -- Pause a running sandbox to stop its compute without deleting it. -- Resume a paused sandbox to continue working with it. +- Pause a running sandbox to stop it without deleting its files. +- Resume a paused sandbox to continue working with it. Resuming starts a fresh + timer with the original duration. - Delete a sandbox when you no longer need it. -When you create a sandbox, set a lifecycle timer from 1 to 24 hours and choose +When you create a sandbox, set a timer from 1 to 24 hours and choose what happens when it expires. **Stop** stops the sandbox, while **Delete** -deletes the sandbox and its files. When a sandbox stops, all processes running -inside it stop too, including background processes. +deletes the sandbox and its files. If **Restart** is offered, select it to +restart the sandbox automatically when the timer expires. When a sandbox stops, +all processes inside it stop too, including background processes. + +After launch, you can't change the selected credentials, tools, network +policies, or compute size. + +You pay for compute by the second while your sandbox runs. Your model provider +bills inference separately. For account, usage, and payment information, see +[Docker Billing](/subscription-billing/). + +## Account quotas + +The following default quotas apply across your cloud sandbox account, whether +resources are created through the Console, CLI, or API: + +| Resource | Default limit | +| --- | ---: | +| Concurrent sandboxes | 10 | +| Stored sandboxes | 50 | +| Volumes | 100 | +| Secrets | 100 | +| Images being prepared at the same time | 3 | + +Your account can have different quotas. Confirm your account's limits with +Docker before planning a workload that depends on a particular allowance. -The sandbox's authentication, tools, access policy, and compute size are fixed -when the sandbox is created and cannot be changed while it runs. +Stopping an ordinary sandbox releases its concurrency slot, but the sandbox +still counts toward stored usage. Resuming it needs a concurrency slot. An +always-on sandbox retains its concurrency reservation while stopped. Delete +sandboxes you no longer need to release stored usage. -Docker bills sandbox compute per second while the sandbox runs. Model inference -uses your external provider credential and is metered by that provider. For -account, usage, and payment information, see [Docker Billing](/subscription-billing/). +If the Console reports a running sandbox limit, stop or delete a sandbox +before trying again. If it reports a sandbox storage limit, delete a sandbox; +stopping it doesn't free a stored-sandbox slot. ## Check sandbox configuration -If the sandbox cannot reach a service or use a tool, check the configuration -that applies to the request: +If your agent cannot reach a service or use a tool: -- Confirm that the network policies permit the destination. +- Check that the network policies allow access to the service. - If the sandbox needs an MCP tool, confirm that its server is connected and authorized. -- If the destination requires authentication, confirm that the sandbox was - created with the service credential. +- If the service requires authentication, check that its credential was + included when you created the sandbox. diff --git a/content/manuals/agentic-platform/secrets.md b/content/manuals/agentic-platform/secrets.md index 733a11c6f978..0a6186f474fc 100644 --- a/content/manuals/agentic-platform/secrets.md +++ b/content/manuals/agentic-platform/secrets.md @@ -1,6 +1,6 @@ --- title: Secrets -description: Manage model provider and service credentials for Docker Agentic Platform sandboxes. +description: Save and manage API keys and tokens for your Docker Agentic Platform sandboxes. keywords: docker agentic platform, secrets, api keys, service credentials, proxy weight: 40 aliases: @@ -8,32 +8,38 @@ aliases: - /agentic-platform/guides/manage-secrets/ --- -Secrets provide credentials to agents without placing their values in a -sandbox. Docker Agentic Platform stores each value outside sandboxes and uses -the sandbox proxy to apply it to matching requests. +Save API keys and tokens under **Secrets** so your agents can use external +services without reading the credentials themselves. The values stay outside +the sandbox. -Docker Agentic Platform supports the following credentials: +You can save credentials for the following services: | Service | Secret ID | Used by | | ------------- | ------------------- | ------------------------------------------------- | -| Anthropic | `ANTHROPIC_API_KEY` | Claude Code and OpenCode with Anthropic models | -| OpenAI | `OPENAI_API_KEY` | Codex and OpenCode with OpenAI models | -| Google Gemini | `GEMINI_API_KEY` | Gemini CLI and OpenCode with Google models | +| Anthropic | `ANTHROPIC_API_KEY` | Claude Code, OpenCode, and Hermes with Anthropic models | +| OpenAI | `OPENAI_API_KEY` | Codex, OpenCode, and Hermes with OpenAI models | +| Google | `GEMINI_API_KEY` | Gemini CLI, Antigravity, and OpenCode with Google models | | Groq | `GROQ_API_KEY` | OpenCode with Groq models | | xAI | `XAI_API_KEY` | OpenCode with xAI models | -| GitHub | `GITHUB_TOKEN` | Copilot and any sandbox type that accesses GitHub | +| GitHub | `GITHUB_TOKEN` | Copilot and kits that support GitHub access | -Provider-specific credentials are applied only to matching requests from -compatible sandbox types. For example, an Anthropic credential is not applied -to requests from a Codex sandbox. OpenCode supports all the listed model -providers. +Each kit supports a particular set of credentials. For example, a Codex +sandbox doesn't use your Anthropic key. OpenCode supports all the listed model +providers. Hermes needs at least one Anthropic or OpenAI key. The built-in +provider list doesn't include OpenRouter. + +For custom kits, the launcher shows the supported credentials listed in the +kit's definition. ## GitHub credential -`GITHUB_TOKEN` authenticates both Copilot and GitHub repository operations. -Entering it in the launcher stores it as the same GitHub secret shown under -**Secrets**. Any sandbox type can use it for matching GitHub requests, such as -cloning a private repository or pushing changes. +Use `GITHUB_TOKEN` for Copilot and for cloning private repositories or pushing +changes to GitHub. The token you enter in the launcher is also saved under +**Secrets**. All curated kits offer this option. Custom kits must declare a +GitHub credential to use it. + +For Copilot, the token you provide to run the agent also authenticates GitHub +repository access. You don't need to provide a separate token. ## Configure a secret @@ -43,7 +49,41 @@ To configure a credential before launching a sandbox: 2. Select the edit icon for that service. 3. Enter its API key or token and save the value. -You can also select or add credentials from **New** when you launch a sandbox. +You can also add or edit credentials from **New** when you launch a sandbox. +For a single provider credential, select its prompt to enter the value inline. +For multiple provider credentials, open the provider control to add or edit +values in its panel. Use the **GitHub token** control for Copilot and GitHub +repository access. + +By default, the launcher includes saved API keys and tokens that the kit +supports. You don't need to enter them again. You can deselect optional +credentials to exclude them from a sandbox. Required credentials stay selected. +For kits that need one of several providers, keep at least one available +provider credential selected. + +If you add a missing key or token in the launcher, it is included without a +separate selection step. If a required credential is missing when you select +**Run**, the launcher opens the missing credential's input so you can add it. + +## Add a custom secret + +Use a custom secret for a service outside the built-in provider list. + +1. Open **Secrets** and select **New secret** in the **Custom** section. +2. Enter the hosts that may receive the credential. +3. Set the request header and value format, such as `Authorization` and + `Bearer %s`, then enter the secret value. +4. Optionally, set an environment variable name for the credential. +5. Name the secret and save it. + +Expand the secret's row to copy its generated placeholder. Use that placeholder +where your client expects a credential. The sandbox proxy substitutes the real +value only for requests to the configured hosts. The value stays outside the +sandbox. + +The launcher includes all your custom secrets when you create a sandbox. To +edit a custom secret, enter its value again; saved values can't be retrieved. +You can also remove custom secrets from the **Custom** section. ## Manage secrets @@ -51,10 +91,10 @@ The **Secrets** page shows each secret ID and the sandboxes that use it. Select the copy icon to copy the secret ID, or select the edit icon to change the stored value. -Agents see the secret ID, not the stored value. When an outbound request matches -the secret's service binding, the sandbox proxy applies the value to the -request. A secret for one service does not become a general-purpose credential -inside the sandbox. +Agents see a secret ID instead of the actual key or token. For requests that +match the secret's configured service, the sandbox proxy substitutes the real +value. It doesn't expose that value inside the sandbox or send it to other +services. Do not put API keys or tokens in prompts or files inside the sandbox. Rotate or revoke a credential at its provider when it is no longer needed. diff --git a/content/manuals/agentic-platform/signup.md b/content/manuals/agentic-platform/signup.md new file mode 100644 index 000000000000..15f8e6b32276 --- /dev/null +++ b/content/manuals/agentic-platform/signup.md @@ -0,0 +1,64 @@ +--- +title: Sign up for Docker Agentic Platform +linkTitle: Sign up +description: Activate Docker Agentic Platform access for the Console, cloud sandbox CLI, and API or SDKs. +keywords: docker agentic platform, cloud sandboxes, signup, billing, subscription, account access +weight: 5 +--- + +> [!NOTE] +> Docker Agentic Platform is experimental. Features and behavior may change. + +To use Docker Agentic Platform or run cloud sandboxes through the CLI, API, or +SDKs, activate a Docker Agentic Platform pay-as-you-go subscription. The same +subscription provides cloud access for all these interfaces. + +## Before you begin + +Subscribe using your personal Docker account. You can use this account even +if you belong to an organization. The Docker Agentic Platform subscription +is attached to your personal account and billed separately from your Docker +subscription. Review the [billing details](#billing) before subscribing. + +## Activate cloud access + +1. Open the [Docker Agentic Platform Console](https://agentic-platform.docker.com/) + and sign in with the Docker account you want to use for cloud sandboxes. +2. If your account doesn't have access, follow the redirect to Docker Billing. + Review the Docker Agentic Platform pay-as-you-go plan, provide the requested + billing and payment details, and complete checkout. + + If you see **Docker Agentic Platform access required** instead of a redirect, + select **Go to Docker Billing** to subscribe. +3. Return to the Console after checkout. If your account already has an active + subscription, you can skip checkout. + +To create a sandbox in the Console, follow [Get started](get-started.md). +Use the same Docker account for CLI sign-in or API authentication that you +used to subscribe. +Agent credentials are configured separately from subscription activation; +follow your interface's instructions to set them up. + +## Check account access + +If the Console, CLI, or API reports that your account doesn't have access, +confirm that checkout completed and that you're using the account with the +active subscription. You can review the plan in Docker Home under +**Billing** > **Active subscriptions** > **Docker Agentic Platform**. + +## Billing + +Cloud sandboxes use pay-as-you-go compute with no recurring subscription fee. +Docker meters compute in seconds, based on sandbox runtime and the CPU and +memory configuration. Your model provider bills inference separately. + +Open [Usage & billing](https://agentic-platform.docker.com/usage) in the Console +to review pricing, usage, and available credits. Compute credits offset +eligible cloud compute usage; they don't cover model-provider charges. + +Billing is monthly, on the day you subscribed. Your invoice reflects usage +accrued during the previous billing period. Stop or delete sandboxes you no +longer need. + +For instructions on reviewing your plan, billing dates, and cancellation, see +[Docker Agentic Platform plans](/manuals/subscription-billing/plans/docker-agentic-platform.md). diff --git a/content/manuals/ai-overview.md b/content/manuals/ai-overview.md index dcbd1a8de323..b2d43b4b5da4 100644 --- a/content/manuals/ai-overview.md +++ b/content/manuals/ai-overview.md @@ -3,7 +3,7 @@ title: Docker AI overview linkTitle: Overview description: Docker's AI tools help you build, run, and manage AI-powered applications and workflows. weight: 1 -keywords: docker, ai, gordon, docker agent, sandboxes, model runner, mcp +keywords: docker, ai, gordon, docker agent, sandboxes, agentic platform, model runner, mcp params: sidebar: group: AI and agents @@ -14,14 +14,15 @@ Each tool serves a different purpose. ## Which tool do I need? -| I want to... | Use | CLI command | +| I want to... | Use | Interface | | --------------------------------------------------------------- | -------------------------------------------------------- | ---------------- | +| Run coding agents in isolated environments | [Docker Sandboxes](./ai/sandboxes/) | `sbx` | +| Run agents in cloud sandboxes through a web Console | [Docker Agentic Platform](./agentic-platform/_index.md) (experimental) | Web Console | | Get AI help with Docker tasks (containers, images, Dockerfiles) | [Gordon](./ai/gordon/) | `docker ai` | | Run AI models locally with an OpenAI-compatible API | [Model Runner](./ai/model-runner/) | `docker model` | | Connect AI tools to external services via MCP | [MCP Catalog and Toolkit](./ai/mcp-catalog-and-toolkit/) | `docker mcp` | | Build and orchestrate custom multi-agent teams | [Docker Agent](./ai/docker-agent/) | `docker agent` | | Give my coding agent Docker best-practice guidance | [Docker Skills](./ai/skills/) | None | -| Run coding agents in isolated environments | [Docker Sandboxes](./ai/sandboxes/) | `sbx` | ## How these tools relate @@ -45,6 +46,12 @@ agents. It supports multiple agents including Claude Code, Codex, Copilot, Devin, Gemini, and Docker Agent. Sandboxes is the isolation layer — the agents themselves are separate tools. +Docker Agentic Platform is an experimental service for running agents in +Docker-managed cloud sandboxes. Its web Console provides kit selection, +credentials, network policies, MCP tools, and sandbox lifecycle controls. +[Activate a subscription](./agentic-platform/signup.md) to use cloud compute, +billed on a pay-as-you-go basis. + **Model Runner** lets you run LLMs locally. Other tools like Docker Agent can use Model Runner as a model provider. diff --git a/content/manuals/subscription-billing/plans/docker-agentic-platform.md b/content/manuals/subscription-billing/plans/docker-agentic-platform.md index fef6a45d5d23..215a147a67de 100644 --- a/content/manuals/subscription-billing/plans/docker-agentic-platform.md +++ b/content/manuals/subscription-billing/plans/docker-agentic-platform.md @@ -10,7 +10,6 @@ keywords: subscription, promotional credit, cancel subscription, sandbox compute, usage and billing weight: 20 -sitemap: false aliases: - /subscription/plans/docker-agentic-platform/ --- @@ -25,11 +24,14 @@ pay-as-you-go plan for running agent and tool workloads in isolated sandboxes with Docker-managed cloud infrastructure. You pay for the usage you accrue without a recurring subscription fee. +To activate access for the Console, cloud sandbox CLI, or API and SDKs, follow +[Signup and billing](/manuals/agentic-platform/signup.md#activate-cloud-access). + ## Usage > [!NOTE] -> Docker Agentic Platform is available only on Docker Personal and -> Docker Pro accounts. +> Subscribe using your personal Docker account, including if you belong to +> an organization. The subscription is attached to your personal account. Docker Agentic Platform requires bringing your own API keys for inference. Your inference provider handles those costs. @@ -47,7 +49,7 @@ To track usage for Docker Agentic Platform from Docker Home: 1. Sign in to [Docker Home](https://app.docker.com/), then choose your account. 1. Go to **Billing** to view the Overview page, then go to **Active - plans**. + subscriptions**. 1. Select **Manage** next to **Docker Agentic Platform**. 1. View the estimated totals and usage for the current pay period. @@ -71,7 +73,7 @@ the plan period. 1. Sign in to [Docker Home](https://app.docker.com/) and go to **Billing**. -1. From **Active plans**, select **Manage** next to +1. From **Active subscriptions**, select **Manage** next to **Docker Agentic Platform**. 1. Select **Cancel subscription**. 1. Review your usage, then select **Cancel subscription** to confirm.