From 2955bf105d087e6acce0bac6aaf3e146e80380e0 Mon Sep 17 00:00:00 2001 From: Casper Nielsen Date: Tue, 16 Dec 2025 15:24:29 +0100 Subject: [PATCH 1/5] docs: add section for dapr agents regarding default values to cover default agent statestore naming for auto attachment Signed-off-by: Casper Nielsen --- .../dapr-agents/dapr-agents-core-concepts.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/daprdocs/content/en/developing-applications/dapr-agents/dapr-agents-core-concepts.md b/daprdocs/content/en/developing-applications/dapr-agents/dapr-agents-core-concepts.md index 9af9edc6456..9b675d41a93 100644 --- a/daprdocs/content/en/developing-applications/dapr-agents/dapr-agents-core-concepts.md +++ b/daprdocs/content/en/developing-applications/dapr-agents/dapr-agents-core-concepts.md @@ -314,6 +314,32 @@ runner.serve( Because workflows are durable, the `/run` endpoint responds immediately with an instance ID even though the agent keeps working in the background. You can mount the generated FastAPI routes into a larger application or let `serve` run its own Uvicorn loop for standalone deployments. +### Default settings + +Dapr Agents comes with pre-set sensible defaults on many different settings. You will find descriptions of each of them in the following section. + +#### Statestore + +By ensuring the following statestores with appropriate naming are present, the Dapr Agent will resolve these from the Dapr Metadata API: + +- `agent-registry`: Registry statestore for Agents (**NB:** It is preferred to use `KeyPrefix` set to `none`) + The default team name is set to `default`. +- `agent-statestore`: Agent Memory statestore + The default key is set to the agents name in lowercase with space replaced by `-` with the `-session` suffix. + +For `DurableAgent`s you can also rely on the workflow statestore: + +- `agent-wfstatestore`: Workflow Statestore for `DurableAgent` (**NB:** It is not required to be an `actorStateStore`) + The default key is set to the agents name in lowercase with space replaced by `-` with the `:workflow_state` suffix. + +#### Pub/Sub + +By ensuring the following pubsub component with appropriate naming is present, the Dapr Agent will resolve it from the Dapr Metadata API: + +- `agent-pubsub`: pubsub component to broadcast and interact with other agents. + The default pubsub name is set to `agent-pubsub`. + The default agent topic is set to agents name in lowercase with space replaced by `-` with the `.topic` suffix. + The default broadcast topic is set to `agents.broadcast`. ## Multi-agent Systems (MAS) From 5e98cdc7f13518f35be346fb2b8196d3bb4a9564 Mon Sep 17 00:00:00 2001 From: Casper Nielsen Date: Thu, 29 Jan 2026 10:51:31 +0100 Subject: [PATCH 2/5] Update daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md Co-authored-by: Mark Fussell Signed-off-by: Casper Nielsen --- .../en/developing-ai/dapr-agents/dapr-agents-core-concepts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md index dadef136feb..8d709dae924 100644 --- a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md +++ b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md @@ -316,7 +316,7 @@ Because workflows are durable, the `/run` endpoint responds immediately with an ### Default settings -Dapr Agents comes with pre-set sensible defaults on many different settings. You will find descriptions of each of them in the following section. +Dapr Agents comes with pre-set sensible defaults on different settings. Descriptions of each of them are below. #### Statestore From cd81fdd1f4a936f1b5cb349d0ffd24d3e9dd0cb3 Mon Sep 17 00:00:00 2001 From: Casper Nielsen Date: Thu, 29 Jan 2026 11:07:32 +0100 Subject: [PATCH 3/5] chore(docs): update docs with new wf state store name + add default runtimeconf & secrets Signed-off-by: Casper Nielsen --- .../dapr-agents/dapr-agents-core-concepts.md | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md index 0a90b6981c8..037a356aa61 100644 --- a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md +++ b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md @@ -318,7 +318,7 @@ Because workflows are durable, the `/run` endpoint responds immediately with an Dapr Agents comes with pre-set sensible defaults on different settings. Descriptions of each of them are below. -#### Statestore +#### State store By ensuring the following statestores with appropriate naming are present, the Dapr Agent will resolve these from the Dapr Metadata API: @@ -326,10 +326,25 @@ By ensuring the following statestores with appropriate naming are present, the D The default team name is set to `default`. - `agent-statestore`: Agent Memory statestore The default key is set to the agents name in lowercase with space replaced by `-` with the `-session` suffix. +- `agent-runtimestatestore`: Agent runtime configuration + The statestore is loaded with key `agent_runtime` expecting field `data` containing a dictionary (i.e., `{ "key": "value" }`) + currently the agent supports auto-instrumenting itself with OpenTelemetry by setting the following available options: -For `DurableAgent`s you can also rely on the workflow statestore: +| Key | Value | Description | +|---|---|------| +| OTEL_ENABLED | "true"/"false" | Enables OpenTelemetry instrumentation. Default: "false" | +| OTEL_TOKEN | "str" | Bearer token. The token will be inserted as an `Authorization: Bearer {OTEL_TOKEN}` header. Default: "" | +| OTEL_ENDPOINT | "https://some.domain:4/" | Endpoint to ship telemetry. Refrain from setting url path. Default: "" | +| OTEL_SERVICE_NAME | "my_agent" | Service name. This should only be used if you use a single agent. Default: `Agent.Name` | +| OTEL_LOGGING_ENABLED | "true"/"false" | Enables exporting logs. Default: "false" | +| OTEL_TRACING_ENABLED | "true"/"false" | Enables exporting traces. Default: "false" | +| OTEL_LOGGING_EXPORTER | "otlp_grpc"/"otlp_http"/"zipkin"/"console" | Which exporter to use. Default: "console" | +| OTEL_TRACING_EXPORTER | "otlp_grpc"/"otlp_http"/"console" | Which exporter to use. Default: "console" | -- `agent-wfstatestore`: Workflow Statestore for `DurableAgent` (**NB:** It is not required to be an `actorStateStore`) + +For `DurableAgent` you can also rely on the workflow statestore: + +- `agent-workflow`: Workflow Statestore for `DurableAgent` (**NB:** It is not required to be an `actorStateStore`) The default key is set to the agents name in lowercase with space replaced by `-` with the `:workflow_state` suffix. #### Pub/Sub @@ -341,6 +356,17 @@ By ensuring the following pubsub component with appropriate naming is present, t The default agent topic is set to agents name in lowercase with space replaced by `-` with the `.topic` suffix. The default broadcast topic is set to `agents.broadcast`. +#### Secret store + +By ensuring the following secret component with approproate naming is present, the Dapr Agent will resolve it from the Dapr Metadata API: + +- `agent-secretstore`: Secrets for agent runtime + The agent will bulk load all secrets and insert them into it's runtime secrets. The currently supported secrets are: + +| Key | Value | Description | +|---|---|------| +| OTEL_TOKEN | "str" | Bearer token. The token will be inserted as an `Authorization: Bearer {OTEL_TOKEN}` header. Default: "" | + ## Multi-agent Systems (MAS) While it's tempting to build a fully autonomous agent capable of handling many tasks, in practice, it's more effective to break this down into specialized agents equipped with appropriate tools and instructions, then coordinate interactions between multiple agents. From a4360f5fc59255d15238e8e82264abb9b5f6950d Mon Sep 17 00:00:00 2001 From: Casper Nielsen Date: Tue, 17 Feb 2026 16:06:45 +0100 Subject: [PATCH 4/5] Update daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md Co-authored-by: Marc Duiker Signed-off-by: Casper Nielsen --- .../en/developing-ai/dapr-agents/dapr-agents-core-concepts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md index 037a356aa61..ea61d84280d 100644 --- a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md +++ b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md @@ -320,7 +320,7 @@ Dapr Agents comes with pre-set sensible defaults on different settings. Descript #### State store -By ensuring the following statestores with appropriate naming are present, the Dapr Agent will resolve these from the Dapr Metadata API: +By ensuring the following statestores with these metadata names are present, the Dapr Agent will resolve these from the Dapr Metadata API: - `agent-registry`: Registry statestore for Agents (**NB:** It is preferred to use `KeyPrefix` set to `none`) The default team name is set to `default`. From 3fb165fa5ec01bdb608502af5a1a567b5688a783 Mon Sep 17 00:00:00 2001 From: Samantha Coyle Date: Tue, 24 Feb 2026 15:13:31 -0600 Subject: [PATCH 5/5] style: update runtime ss name Signed-off-by: Samantha Coyle --- .../en/developing-ai/dapr-agents/dapr-agents-core-concepts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md index ea61d84280d..210cd5b17c0 100644 --- a/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md +++ b/daprdocs/content/en/developing-ai/dapr-agents/dapr-agents-core-concepts.md @@ -326,7 +326,7 @@ By ensuring the following statestores with these metadata names are present, the The default team name is set to `default`. - `agent-statestore`: Agent Memory statestore The default key is set to the agents name in lowercase with space replaced by `-` with the `-session` suffix. -- `agent-runtimestatestore`: Agent runtime configuration +- `agent-runtime`: Agent runtime configuration The statestore is loaded with key `agent_runtime` expecting field `data` containing a dictionary (i.e., `{ "key": "value" }`) currently the agent supports auto-instrumenting itself with OpenTelemetry by setting the following available options: