Sign inSign up

sbx/dapr-agents-mixin

Verified Publisher

By Docker, Inc

•Updated about 15 hours ago

Add Dapr Agents, the Dapr CLI and runtime, provider credentials, and local service configuration ...

Sandbox Kit
0

117

sbx/dapr-agents-mixin repository overview

Digest

sha256:dc2c865209e3…

Size

115.8 MB

Schema

v3

Pushed

about 15 hours ago

Specificationspec.yaml

MIXIN

Add Dapr Agents, the Dapr CLI and runtime, provider credentials, and local service configuration to a Docker-enabled workload.


Arguments
NameRequiredDefaultDescription
app_idOptionaldapr-agent

Stable Dapr application ID

entrypointOptional

Python script relative to the workspace; required in custom mode

modeOptionalexample

Run the bundled example or a compatible project in the sandbox workspace

Options: example, custom
modelOptional

Optional model override; an empty value delegates to the selected Dapr component default

providerOptionalopenai

Bundled Dapr Conversation provider to expose as llm-provider

Options: openai, anthropic, deepseek, google, huggingface, mistral
resources_dirOptional

Optional workspace-relative Dapr component overlay; llm-provider.yaml replaces the selected bundled provider

versionOptional1.0.6

Dapr Agents release carried by the bundled environment



CapabilitiesExpand a row to see its full configuration. See the full spec for the complete descriptor.
TypeRequiredDescription
com.docker.sandbox/network-policy@1Required—
com.docker.sandbox/credential@1OptionalAnthropic API key for the bundled conversation.anthropic provider
com.docker.sandbox/credential@1OptionalDeepSeek API key for the bundled conversation.deepseek provider
com.docker.sandbox/credential@1OptionalGoogle AI API key for the bundled conversation.googleai provider
com.docker.sandbox/credential@1OptionalHugging Face token for the bundled conversation.huggingface provider
com.docker.sandbox/credential@1OptionalMistral API key for the bundled conversation.mistral provider
com.docker.sandbox/credential@1OptionalOpenAI API key for the default bundled conversation.openai provider

Requiresdeb/docker-ce, deb/docker-compose-plugin, deb/python3, deb/uv

Apply this mixin to a sandbox

sbx run <agent> --kit sbx/dapr-agents-mixin:latest

Make sure you have docker sbx installed

Run the following command to install sbx on your machine.

macOS
brew install docker/tap/sbx
Windows
winget install Docker.sbx
Learn more about docker sbx⁠

Note

Experimental: Sandbox Kit v3

This kit uses the experimental Sandbox Kit v3 specification⁠. The format and runtime behavior may change before v3 is stable.

⁠dapr-agents-mixin

Dapr Agents⁠ as a mixin: the same Dapr runtime, launcher, local-service configuration, and six model-provider credentials as the dapr-agents⁠ workload, packaged as an overlay for another workload.

⁠Usage

Layer the published mixin onto the Docker-enabled shell workload:

sbx run "docker.io/sbx/shell:latest" \
  --kit "docker.io/sbx/dapr-agents-mixin:latest" \
  --kit-arg dapr-agents-mixin.mode=custom \
  --kit-arg dapr-agents-mixin.entrypoint=agent.py \
  ~/my-dapr-agent

Or consume the mixin from this repository:

sbx run "docker.io/sbx/shell:latest" \
  --kit "git+https://github.com/docker/sbx-kits-contrib.git#dir=dapr-agents-mixin" \
  --kit-arg dapr-agents-mixin.mode=custom \
  --kit-arg dapr-agents-mixin.entrypoint=agent.py \
  ~/my-dapr-agent

From a local clone:

sbx run ./shell/ \
  --kit ./dapr-agents-mixin/ \
  --kit-arg dapr-agents-mixin.mode=custom \
  --kit-arg dapr-agents-mixin.entrypoint=agent.py \
  ~/my-dapr-agent

The base workload keeps its own entrypoint. Start Dapr Agents from the attached shell:

python3 /home/agent/dapr-kit/launcher.py

Set the selected provider credential before creating the sandbox. For example:

sbx secret set anthropic

Then add --kit-arg dapr-agents-mixin.provider=anthropic. The supported provider values and all other arguments match the workload README.

⁠What the overlay carries

  • Checksum-verified Dapr CLI and daprd 1.18.2 binaries.
  • The launcher, pinned Compose services, Dapr configuration, bundled provider components, and locked smoke-agent project.
  • Optional proxy-managed credentials and matching runtime egress for OpenAI, Anthropic, DeepSeek, Google AI, Hugging Face, and Mistral.
  • Runtime egress for locked Python dependency resolution and the private engine's pinned service-image pulls.

The overlay requires the base workload to provide Python 3, uv, Docker Engine, and the Docker Compose plugin. These are declared as v3 requires entries, so composition fails early on an incompatible base.

⁠What stays with the base workload

  • The entrypoint, command, user, working directory, and sandbox identity.
  • The private Docker Engine startup label. Use a Docker-enabled workload such as shell; a plain workload cannot run the local Dapr services.
  • Resource sizing. Kit v3 has no descriptor resource field, so the runtime or operator owns the memory limit.

files/ is a byte-identical copy of ../dapr-agents/files/. Each Kit's build context is rooted at its own directory and cannot read sibling assets, so the workload and mixin keep their copies together and verify them with diff -r.