diff --git a/docs/docs.json b/docs/docs.json
index dc0fc8d2..c95f7cfc 100644
--- a/docs/docs.json
+++ b/docs/docs.json
@@ -139,7 +139,6 @@
"rfds/boolean-config-option",
"rfds/elicitation",
"rfds/next-edit-suggestions",
- "rfds/additional-directories",
"rfds/custom-llm-endpoint",
"rfds/model-config-category",
{
@@ -156,7 +155,11 @@
},
{
"group": "Preview",
- "pages": ["rfds/rust-sdk-v1", "rfds/logout-method"]
+ "pages": [
+ "rfds/rust-sdk-v1",
+ "rfds/logout-method",
+ "rfds/additional-directories"
+ ]
},
{
"group": "Completed",
diff --git a/docs/protocol/draft/file-system.mdx b/docs/protocol/draft/file-system.mdx
index 5eafdba1..d11ff2f5 100644
--- a/docs/protocol/draft/file-system.mdx
+++ b/docs/protocol/draft/file-system.mdx
@@ -13,7 +13,7 @@ authorize those paths against the session's effective root set.
- by default, the effective root set is just `cwd`
- if the unstable `sessionCapabilities.additionalDirectories` capability is in use, the effective root set becomes `[cwd, ...additionalDirectories]`
- `cwd` remains the base for relative paths; additional roots only expand filesystem scope
-- when a Client discovers a session through `session/list`, it SHOULD use `SessionInfo.additionalDirectories` together with `cwd` as the current root set when the field is present; if omitted, the Agent is not reporting additional-root state, and any later `session/load` or `session/resume` request establishes the root set explicitly
+- when a Client discovers a session through `session/list`, it SHOULD use `cwd` together with any `SessionInfo.additionalDirectories` entries returned for that session as the reported root set; omitted and empty values report no additional roots, and any later `session/load` or `session/resume` request establishes the root set explicitly
Because ACP filesystem methods are client-mediated, the Client remains
responsible for enforcing those root boundaries.
diff --git a/docs/protocol/draft/schema-v2.mdx b/docs/protocol/draft/schema-v2.mdx
index fc6f502c..155d074f 100644
--- a/docs/protocol/draft/schema-v2.mdx
+++ b/docs/protocol/draft/schema-v2.mdx
@@ -6528,8 +6528,8 @@ Capabilities for additional session directories support.
By supplying `\{\}` it means that the agent supports the `additionalDirectories`
field on supported session lifecycle requests. Agents that also support
-`session/list` may return `SessionInfo.additionalDirectories` when they track
-that state.
+`session/list` may return `SessionInfo.additionalDirectories` to report the
+complete ordered additional-root list associated with a listed session.
**Type:** Object
@@ -6576,7 +6576,8 @@ This capability is not part of the spec yet, and may be removed or changed at an
Whether the agent supports `additionalDirectories` on supported session lifecycle requests.
Agents that also support `session/list` may return
-`SessionInfo.additionalDirectories` when they track that state.
+`SessionInfo.additionalDirectories` to report the complete ordered
+additional-root list associated with a listed session.
SessionCloseCapabilities | null>} >
@@ -6934,11 +6935,11 @@ See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/exte
This capability is not part of the spec yet, and may be removed or changed at any point.
-Additional workspace roots for this session, if the Agent reports them. Each path must be absolute.
+Additional workspace roots reported for this session. Each path must be absolute.
-Agents may omit this field when they do not track or surface additional-root
-state. When present, this is the complete additional-root list known to
-the Agent for the session.
+When present, this is the complete ordered additional-root list reported
+by the Agent. Omitted and empty values are equivalent: the response
+reports no additional roots.
diff --git a/docs/protocol/draft/schema.mdx b/docs/protocol/draft/schema.mdx
index fc6f502c..155d074f 100644
--- a/docs/protocol/draft/schema.mdx
+++ b/docs/protocol/draft/schema.mdx
@@ -6528,8 +6528,8 @@ Capabilities for additional session directories support.
By supplying `\{\}` it means that the agent supports the `additionalDirectories`
field on supported session lifecycle requests. Agents that also support
-`session/list` may return `SessionInfo.additionalDirectories` when they track
-that state.
+`session/list` may return `SessionInfo.additionalDirectories` to report the
+complete ordered additional-root list associated with a listed session.
**Type:** Object
@@ -6576,7 +6576,8 @@ This capability is not part of the spec yet, and may be removed or changed at an
Whether the agent supports `additionalDirectories` on supported session lifecycle requests.
Agents that also support `session/list` may return
-`SessionInfo.additionalDirectories` when they track that state.
+`SessionInfo.additionalDirectories` to report the complete ordered
+additional-root list associated with a listed session.
SessionCloseCapabilities | null>} >
@@ -6934,11 +6935,11 @@ See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/exte
This capability is not part of the spec yet, and may be removed or changed at any point.
-Additional workspace roots for this session, if the Agent reports them. Each path must be absolute.
+Additional workspace roots reported for this session. Each path must be absolute.
-Agents may omit this field when they do not track or surface additional-root
-state. When present, this is the complete additional-root list known to
-the Agent for the session.
+When present, this is the complete ordered additional-root list reported
+by the Agent. Omitted and empty values are equivalent: the response
+reports no additional roots.
diff --git a/docs/protocol/draft/session-list.mdx b/docs/protocol/draft/session-list.mdx
index 8b2a9e7a..6f9e5701 100644
--- a/docs/protocol/draft/session-list.mdx
+++ b/docs/protocol/draft/session-list.mdx
@@ -56,7 +56,8 @@ If `sessionCapabilities.list` is not present, the Agent does not support listing
If the Agent also advertises the unstable
`sessionCapabilities.additionalDirectories` capability, returned `SessionInfo`
- objects may include `additionalDirectories` when the Agent tracks that state.
+ objects may include `additionalDirectories` to report additional workspace
+ roots for listed sessions.
@@ -140,11 +141,11 @@ The Agent **MUST** respond with a list of sessions and optional pagination metad
If the Agent advertises `sessionCapabilities.additionalDirectories`, it
- MAY include this field when it tracks additional-root state for the
- session. When present, this is the complete ordered additional-root list
- known to the Agent for that session. Omitting the field means the Agent is
- not reporting additional-root state; an explicit empty array means the
- Agent is reporting no additional roots.
+ MAY include this field to report the complete ordered additional-root list
+ associated with the listed session. Omitted and empty values are
+ equivalent: this `SessionInfo` response reports no additional roots.
+ Clients MUST NOT merge this field with prior values or infer additional
+ roots from agent-specific state.
diff --git a/docs/rfds/additional-directories.mdx b/docs/rfds/additional-directories.mdx
index 7c5307d6..0f65bfaf 100644
--- a/docs/rfds/additional-directories.mdx
+++ b/docs/rfds/additional-directories.mdx
@@ -54,7 +54,7 @@ The proposal is scoped to session lifecycle requests, session discovery requests
Agents advertise support with `sessionCapabilities.additionalDirectories`. Clients MUST gate usage on that capability.
-This proposal also allows Agents to include `additionalDirectories` in `SessionInfo` returned by `session/list` when they track that state. Because Agents are not required to persist additional-root metadata, Clients treat `SessionInfo.additionalDirectories` as optional discovery metadata rather than required session state. `session/load` and `session/resume` remain explicit-list only: omitting `additionalDirectories` or supplying an empty array means no additional roots are activated for the resulting session, while a non-empty array-valued `additionalDirectories` becomes the complete resulting additional-root list for that request. Clients MAY change the additional-root list on `session/load` or `session/resume` from any previously used or reported list, as long as the request `cwd` matches the session's `cwd` and the Agent accepts the requested roots.
+This proposal also allows Agents to include `additionalDirectories` in `SessionInfo` returned by `session/list`. Because Agents are not required to persist additional-root metadata, Clients treat `SessionInfo.additionalDirectories` as optional discovery metadata rather than required session state. `session/load` and `session/resume` remain explicit-list only: omitting `additionalDirectories` or supplying an empty array means no additional roots are activated for the resulting session, while a non-empty array-valued `additionalDirectories` becomes the complete resulting additional-root list for that request. Clients MAY change the additional-root list on `session/load` or `session/resume` from any previously used or reported list, as long as the request `cwd` matches the session's `cwd` and the Agent accepts the requested roots.
## Shiny future
@@ -111,11 +111,11 @@ additionalDirectories?: {}
Clients MUST send `additionalDirectories` only when `sessionCapabilities.additionalDirectories` is present.
-If an Agent advertises `sessionCapabilities.additionalDirectories` and also supports `session/list`, it MAY include `SessionInfo.additionalDirectories` for sessions whose additional-root state it tracks. When present, the value is the complete ordered additional-root list known to the Agent for that session. Agents MAY omit the field when they do not track or choose not to surface additional-root state. Clients MUST NOT treat an omitted field as proof that the session has no additional roots; an explicit empty array means the Agent is reporting no additional roots for that session.
+If an Agent advertises `sessionCapabilities.additionalDirectories` and also supports `session/list`, it MAY include `SessionInfo.additionalDirectories` to report the complete ordered additional-root list associated with a listed session. Omitted and empty values are equivalent: the `SessionInfo` response reports no additional roots. Clients MUST NOT merge this field with prior values or infer additional roots from agent-specific state.
`ListSessionsRequest` is not extended with `additionalDirectories`. `session/list` filtering remains defined around existing list parameters such as `cwd`; Clients that need to find sessions by additional-root state can filter locally when Agents return `SessionInfo.additionalDirectories`.
-If adopted, the session-setup, session-list, and filesystem documentation will need corresponding updates so they describe the effective root set rather than `cwd` alone as the session filesystem context or boundary.
+The session-setup, session-list, and filesystem documentation describe the effective root set rather than `cwd` alone as the session filesystem context or boundary.
### Capability advertisement example
@@ -281,7 +281,7 @@ A client that sends `additionalDirectories`:
- SHOULD remove exact duplicate path strings and entries identical to `cwd` before sending; and
- MUST NOT assume an agent will infer extra roots from project metadata, directory conventions, or prior session state.
-If a client mediates filesystem access through ACP client capabilities such as `fs/read_text_file` and `fs/write_text_file`, it MUST enforce the effective root set for that session when authorizing path-based access. ACP's filesystem methods are client-mediated and operate on absolute paths, so the client remains responsible for boundary enforcement in those flows. When the client learns about an existing session through `session/list`, it SHOULD use `SessionInfo.additionalDirectories` together with `cwd` as the current root set for those checks when the field is present. If the field is omitted, the Client should rely on roots it obtained, persisted, or reconstructed itself, and any subsequent lifecycle request establishes the resulting active root set explicitly.
+If a client mediates filesystem access through ACP client capabilities such as `fs/read_text_file` and `fs/write_text_file`, it MUST enforce the effective root set for that session when authorizing path-based access. ACP's filesystem methods are client-mediated and operate on absolute paths, so the client remains responsible for boundary enforcement in those flows. When the client learns about an existing session through `session/list`, it SHOULD use `cwd` together with any `SessionInfo.additionalDirectories` entries returned for that session as the reported root set. Omitted and empty values report no additional roots. Any subsequent lifecycle request establishes the resulting active root set explicitly.
If a client launches an agent with direct filesystem access, `additionalDirectories` is not, by itself, a sandbox. Clients that need root boundaries to be enforced in that deployment model SHOULD apply operating-system or runtime sandboxing consistent with the declared root set.
@@ -382,7 +382,7 @@ Updated agents MUST continue to accept requests that do not include the field.
Older implementations may validate request objects strictly against older schemas and MAY reject unknown fields. Clients therefore MUST gate usage on `sessionCapabilities.additionalDirectories`.
-This proposal intentionally does not extend the responses to `session/new`, `session/load`, `session/resume`, or `session/fork` to surface additional-root state directly. That remains consistent with existing ACP response shapes, which also do not return `cwd`. Instead, when `session/list` is supported, Agents MAY expose the complete ordered additional-root list for listed sessions through `SessionInfo.additionalDirectories` when they track that state. `SessionInfoUpdate` remains unchanged because this RFD does not define mid-session mutation of `additionalDirectories`. Clients that need multi-root continuity across `session/load` or `session/resume` MUST still send the full intended list explicitly, and MAY change that list from a previously used or reported list as long as the request `cwd` matches the session's `cwd`.
+This proposal intentionally does not extend the responses to `session/new`, `session/load`, `session/resume`, or `session/fork` to surface additional-root state directly. That remains consistent with existing ACP response shapes, which also do not return `cwd`. Instead, when `session/list` is supported, Agents MAY expose the complete ordered additional-root list for listed sessions through `SessionInfo.additionalDirectories`. Omitted and empty values report no additional roots for that `SessionInfo`. `SessionInfoUpdate` remains unchanged because this RFD does not define mid-session mutation of `additionalDirectories`. Clients that need multi-root continuity across `session/load` or `session/resume` MUST still send the full intended list explicitly, and MAY change that list from a previously used or reported list as long as the request `cwd` matches the session's `cwd`.
`session/list` filtering remains independent of `additionalDirectories`. Sessions that differ by `additionalDirectories` are distinguishable only when the Agent surfaces that state through `SessionInfo.additionalDirectories`; Clients that need additional-root matching can filter those returned sessions locally.
@@ -433,4 +433,5 @@ This proposal is preferred because it is additive, keeps `cwd` semantics stable,
## Revision history
+- 2026-05-21: Moved to Preview.
- 2026-03-24: Initial draft.
diff --git a/docs/rfds/updates.mdx b/docs/rfds/updates.mdx
index 05e15401..73f1b6c9 100644
--- a/docs/rfds/updates.mdx
+++ b/docs/rfds/updates.mdx
@@ -6,6 +6,13 @@ rss: true
This page tracks lifecycle changes for ACP Requests for Dialog. For broader ACP announcements, see [Updates](/updates).
+
+## Additional Directories RFD moves to Preview stage
+
+The RFD for allowing clients to specify additional workspace roots for session lifecycle requests has been moved to Preview stage. Please review the [RFD](/rfds/additional-directories) for more information on the current proposal and provide feedback before the feature is stabilized.
+
+
+
## Logout Method RFD moves to Preview stage
diff --git a/schema/schema.unstable.json b/schema/schema.unstable.json
index d88d9b55..a76dac3b 100644
--- a/schema/schema.unstable.json
+++ b/schema/schema.unstable.json
@@ -5658,7 +5658,7 @@
"type": "object"
},
"SessionAdditionalDirectoriesCapabilities": {
- "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nCapabilities for additional session directories support.\n\nBy supplying `{}` it means that the agent supports the `additionalDirectories`\nfield on supported session lifecycle requests. Agents that also support\n`session/list` may return `SessionInfo.additionalDirectories` when they track\nthat state.",
+ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nCapabilities for additional session directories support.\n\nBy supplying `{}` it means that the agent supports the `additionalDirectories`\nfield on supported session lifecycle requests. Agents that also support\n`session/list` may return `SessionInfo.additionalDirectories` to report the\ncomplete ordered additional-root list associated with a listed session.",
"properties": {
"_meta": {
"additionalProperties": true,
@@ -5685,7 +5685,7 @@
"type": "null"
}
],
- "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nWhether the agent supports `additionalDirectories` on supported session lifecycle requests.\n\nAgents that also support `session/list` may return\n`SessionInfo.additionalDirectories` when they track that state."
+ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nWhether the agent supports `additionalDirectories` on supported session lifecycle requests.\n\nAgents that also support `session/list` may return\n`SessionInfo.additionalDirectories` to report the complete ordered\nadditional-root list associated with a listed session."
},
"close": {
"anyOf": [
@@ -6018,7 +6018,7 @@
"type": ["object", "null"]
},
"additionalDirectories": {
- "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nAdditional workspace roots for this session, if the Agent reports them. Each path must be absolute.\n\nAgents may omit this field when they do not track or surface additional-root\nstate. When present, this is the complete additional-root list known to\nthe Agent for the session.",
+ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nAdditional workspace roots reported for this session. Each path must be absolute.\n\nWhen present, this is the complete ordered additional-root list reported\nby the Agent. Omitted and empty values are equivalent: the response\nreports no additional roots.",
"items": {
"type": "string"
},
diff --git a/schema/schema.v2.unstable.json b/schema/schema.v2.unstable.json
index d88d9b55..a76dac3b 100644
--- a/schema/schema.v2.unstable.json
+++ b/schema/schema.v2.unstable.json
@@ -5658,7 +5658,7 @@
"type": "object"
},
"SessionAdditionalDirectoriesCapabilities": {
- "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nCapabilities for additional session directories support.\n\nBy supplying `{}` it means that the agent supports the `additionalDirectories`\nfield on supported session lifecycle requests. Agents that also support\n`session/list` may return `SessionInfo.additionalDirectories` when they track\nthat state.",
+ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nCapabilities for additional session directories support.\n\nBy supplying `{}` it means that the agent supports the `additionalDirectories`\nfield on supported session lifecycle requests. Agents that also support\n`session/list` may return `SessionInfo.additionalDirectories` to report the\ncomplete ordered additional-root list associated with a listed session.",
"properties": {
"_meta": {
"additionalProperties": true,
@@ -5685,7 +5685,7 @@
"type": "null"
}
],
- "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nWhether the agent supports `additionalDirectories` on supported session lifecycle requests.\n\nAgents that also support `session/list` may return\n`SessionInfo.additionalDirectories` when they track that state."
+ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nWhether the agent supports `additionalDirectories` on supported session lifecycle requests.\n\nAgents that also support `session/list` may return\n`SessionInfo.additionalDirectories` to report the complete ordered\nadditional-root list associated with a listed session."
},
"close": {
"anyOf": [
@@ -6018,7 +6018,7 @@
"type": ["object", "null"]
},
"additionalDirectories": {
- "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nAdditional workspace roots for this session, if the Agent reports them. Each path must be absolute.\n\nAgents may omit this field when they do not track or surface additional-root\nstate. When present, this is the complete additional-root list known to\nthe Agent for the session.",
+ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nAdditional workspace roots reported for this session. Each path must be absolute.\n\nWhen present, this is the complete ordered additional-root list reported\nby the Agent. Omitted and empty values are equivalent: the response\nreports no additional roots.",
"items": {
"type": "string"
},
diff --git a/src/v1/agent.rs b/src/v1/agent.rs
index a52cb95c..86428b80 100644
--- a/src/v1/agent.rs
+++ b/src/v1/agent.rs
@@ -1921,11 +1921,11 @@ pub struct SessionInfo {
///
/// This capability is not part of the spec yet, and may be removed or changed at any point.
///
- /// Additional workspace roots for this session, if the Agent reports them. Each path must be absolute.
+ /// Additional workspace roots reported for this session. Each path must be absolute.
///
- /// Agents may omit this field when they do not track or surface additional-root
- /// state. When present, this is the complete additional-root list known to
- /// the Agent for the session.
+ /// When present, this is the complete ordered additional-root list reported
+ /// by the Agent. Omitted and empty values are equivalent: the response
+ /// reports no additional roots.
#[cfg(feature = "unstable_session_additional_directories")]
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub additional_directories: Vec,
@@ -1965,7 +1965,7 @@ impl SessionInfo {
///
/// This capability is not part of the spec yet, and may be removed or changed at any point.
///
- /// Additional workspace roots for this session, if the Agent reports them. Each path must be absolute.
+ /// Additional workspace roots reported for this session. Each path must be absolute.
#[cfg(feature = "unstable_session_additional_directories")]
#[must_use]
pub fn additional_directories(mut self, additional_directories: Vec) -> Self {
@@ -4236,7 +4236,8 @@ pub struct SessionCapabilities {
/// Whether the agent supports `additionalDirectories` on supported session lifecycle requests.
///
/// Agents that also support `session/list` may return
- /// `SessionInfo.additionalDirectories` when they track that state.
+ /// `SessionInfo.additionalDirectories` to report the complete ordered
+ /// additional-root list associated with a listed session.
#[cfg(feature = "unstable_session_additional_directories")]
#[serde_as(deserialize_as = "DefaultOnError")]
#[serde(default)]
@@ -4302,7 +4303,8 @@ impl SessionCapabilities {
/// Whether the agent supports `additionalDirectories` on supported session lifecycle requests.
///
/// Agents that also support `session/list` may return
- /// `SessionInfo.additionalDirectories` when they track that state.
+ /// `SessionInfo.additionalDirectories` to report the complete ordered
+ /// additional-root list associated with a listed session.
#[cfg(feature = "unstable_session_additional_directories")]
#[must_use]
pub fn additional_directories(
@@ -4429,8 +4431,8 @@ impl SessionDeleteCapabilities {
///
/// By supplying `{}` it means that the agent supports the `additionalDirectories`
/// field on supported session lifecycle requests. Agents that also support
-/// `session/list` may return `SessionInfo.additionalDirectories` when they track
-/// that state.
+/// `session/list` may return `SessionInfo.additionalDirectories` to report the
+/// complete ordered additional-root list associated with a listed session.
#[cfg(feature = "unstable_session_additional_directories")]
#[skip_serializing_none]
#[derive(Default, Debug, Clone, Serialize, Deserialize, JsonSchema, PartialEq, Eq)]
diff --git a/src/v2/agent.rs b/src/v2/agent.rs
index 1096410a..03f92a67 100644
--- a/src/v2/agent.rs
+++ b/src/v2/agent.rs
@@ -1921,11 +1921,11 @@ pub struct SessionInfo {
///
/// This capability is not part of the spec yet, and may be removed or changed at any point.
///
- /// Additional workspace roots for this session, if the Agent reports them. Each path must be absolute.
+ /// Additional workspace roots reported for this session. Each path must be absolute.
///
- /// Agents may omit this field when they do not track or surface additional-root
- /// state. When present, this is the complete additional-root list known to
- /// the Agent for the session.
+ /// When present, this is the complete ordered additional-root list reported
+ /// by the Agent. Omitted and empty values are equivalent: the response
+ /// reports no additional roots.
#[cfg(feature = "unstable_session_additional_directories")]
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub additional_directories: Vec,
@@ -1965,7 +1965,7 @@ impl SessionInfo {
///
/// This capability is not part of the spec yet, and may be removed or changed at any point.
///
- /// Additional workspace roots for this session, if the Agent reports them. Each path must be absolute.
+ /// Additional workspace roots reported for this session. Each path must be absolute.
#[cfg(feature = "unstable_session_additional_directories")]
#[must_use]
pub fn additional_directories(mut self, additional_directories: Vec) -> Self {
@@ -4236,7 +4236,8 @@ pub struct SessionCapabilities {
/// Whether the agent supports `additionalDirectories` on supported session lifecycle requests.
///
/// Agents that also support `session/list` may return
- /// `SessionInfo.additionalDirectories` when they track that state.
+ /// `SessionInfo.additionalDirectories` to report the complete ordered
+ /// additional-root list associated with a listed session.
#[cfg(feature = "unstable_session_additional_directories")]
#[serde_as(deserialize_as = "DefaultOnError")]
#[serde(default)]
@@ -4302,7 +4303,8 @@ impl SessionCapabilities {
/// Whether the agent supports `additionalDirectories` on supported session lifecycle requests.
///
/// Agents that also support `session/list` may return
- /// `SessionInfo.additionalDirectories` when they track that state.
+ /// `SessionInfo.additionalDirectories` to report the complete ordered
+ /// additional-root list associated with a listed session.
#[cfg(feature = "unstable_session_additional_directories")]
#[must_use]
pub fn additional_directories(
@@ -4429,8 +4431,8 @@ impl SessionDeleteCapabilities {
///
/// By supplying `{}` it means that the agent supports the `additionalDirectories`
/// field on supported session lifecycle requests. Agents that also support
-/// `session/list` may return `SessionInfo.additionalDirectories` when they track
-/// that state.
+/// `session/list` may return `SessionInfo.additionalDirectories` to report the
+/// complete ordered additional-root list associated with a listed session.
#[cfg(feature = "unstable_session_additional_directories")]
#[skip_serializing_none]
#[derive(Default, Debug, Clone, Serialize, Deserialize, JsonSchema, PartialEq, Eq)]