Add Dapr Agents, the Dapr CLI and runtime, provider credentials, and local service configuration ...
117
Add Dapr Agents, the Dapr CLI and runtime, provider credentials, and local service configuration to a Docker-enabled workload.
| Name | Required | Default | Description |
|---|---|---|---|
app_id | Optional | dapr-agent | Stable Dapr application ID |
entrypoint | Optional | | Python script relative to the workspace; required in custom mode |
mode | Optional | example | Run the bundled example or a compatible project in the sandbox workspace Options: example, custom |
model | Optional | | Optional model override; an empty value delegates to the selected Dapr component default |
provider | Optional | openai | Bundled Dapr Conversation provider to expose as llm-provider Options: openai, anthropic, deepseek, google, huggingface, mistral |
resources_dir | Optional | | Optional workspace-relative Dapr component overlay; llm-provider.yaml replaces the selected bundled provider |
version | Optional | 1.0.6 | Dapr Agents release carried by the bundled environment |
[email protected]| Type | Required | Description | |
|---|---|---|---|
com.docker.sandbox/network-policy@1 | Required | — | |
com.docker.sandbox/credential@1 | Optional | Anthropic API key for the bundled conversation.anthropic provider | |
com.docker.sandbox/credential@1 | Optional | DeepSeek API key for the bundled conversation.deepseek provider | |
com.docker.sandbox/credential@1 | Optional | Google AI API key for the bundled conversation.googleai provider | |
com.docker.sandbox/credential@1 | Optional | Hugging Face token for the bundled conversation.huggingface provider | |
com.docker.sandbox/credential@1 | Optional | Mistral API key for the bundled conversation.mistral provider | |
com.docker.sandbox/credential@1 | Optional | OpenAI API key for the default bundled conversation.openai provider | |
deb/docker-ce, deb/docker-compose-plugin, deb/python3, deb/uvsbx run <agent> --kit sbx/dapr-agents-mixin:latestRun the following command to install sbx on your machine.
brew install docker/tap/sbxwinget install Docker.sbxNote
Experimental: Sandbox Kit v3This kit uses the experimental Sandbox Kit v3 specification. The format and runtime behavior may change before v3 is stable.
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.
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.
daprd 1.18.2 binaries.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.
shell; a plain workload cannot run the local Dapr services.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.