What would you like to be added?
Support for exposing model selection via Session Config Options in ACP mode. Currently, Auggie uses the deprecated models field in session/new responses, which modern ACP clients no longer recognize.
Auggie should return configOptions with category: "model" in session/new responses:
{
"sessionId": "...",
"configOptions": [
{
"id": "model",
"name": "Model",
"category": "model",
"type": "select",
"currentValue": "claude-sonnet-4-5",
"options": [
{"value": "claude-haiku-4-5", "name": "Haiku 4.5", "description": "Fast and efficient responses"},
{"value": "claude-sonnet-4-5", "name": "Sonnet 4.5", "description": "Great for everyday tasks"},
{"value": "claude-opus-4-7", "name": "Opus 4.7", "description": "Great for complex, multi-step agentic tasks"},
{"value": "gpt-5-4", "name": "GPT-5.4", "description": "Token efficient for complex tasks"},
...
]
}
]
}
Why is this needed?
The ACP protocol stabilized Session Config Options on February 4, 2026 (https://agentclientprotocol.com/announcements/session-config-options-stabilized) as the standard way for agents to expose session-level configuration like models, modes, and reasoning levels.
The reference TypeScript SDK removed legacy model selectors on June 2, 2026 (agentclientprotocol/typescript-sdk@fa6e302) with the message: "The model selectors have been replaced by session config options."
Impact:
- ACP clients built on SDK v0.28.1+ (released June 2026) don't recognize the legacy
models field
- Users of modern ACP clients cannot see or select Auggie models
- Auggie is currently out of compliance with the stable ACP protocol specification
Per the official ACP spec (https://agentclientprotocol.com/protocol/v1/session-config-options):
"Session Config Options are the preferred way to expose session-level configuration. If an Agent provides configOptions, Clients SHOULD use them instead of the modes field. Modes will be removed in a future version of the protocol."
(The same deprecation applies to the legacy models field)
Possible solution or alternatives
Recommended approach: Support both formats during a transition period for backward compatibility:
{
"sessionId": "...",
"modes": {
"currentModeId": "default",
"availableModes": [...]
},
"models": {
"availableModels": [...],
"currentModelId": ""
},
"configOptions": [
{
"id": "mode",
"category": "mode",
"type": "select",
"currentValue": "default",
"options": [...]
},
{
"id": "model",
"category": "model",
"type": "select",
"currentValue": "claude-sonnet-4-5",
"options": [...]
}
]
}
This allows:
- Modern clients (SDK 0.28.1+) use
configOptions
- Older clients (SDK < 0.28) still work with legacy
modes/models fields
- Graceful migration path - legacy fields can be removed once ecosystem has caught up
Alternative workaround (current): Users can work around this by creating multiple agent configurations with hardcoded --model arguments, but this is cumbersome and defeats the purpose of dynamic model selection.
Additional context
Affected clients:
- Any ACP client built on
@agentclientprotocol/sdk v0.28.1 or later
- Future ACP clients will increasingly expect the standard
configOptions format
References:
What would you like to be added?
Support for exposing model selection via Session Config Options in ACP mode. Currently, Auggie uses the deprecated
modelsfield insession/newresponses, which modern ACP clients no longer recognize.Auggie should return
configOptionswithcategory: "model"insession/newresponses:{ "sessionId": "...", "configOptions": [ { "id": "model", "name": "Model", "category": "model", "type": "select", "currentValue": "claude-sonnet-4-5", "options": [ {"value": "claude-haiku-4-5", "name": "Haiku 4.5", "description": "Fast and efficient responses"}, {"value": "claude-sonnet-4-5", "name": "Sonnet 4.5", "description": "Great for everyday tasks"}, {"value": "claude-opus-4-7", "name": "Opus 4.7", "description": "Great for complex, multi-step agentic tasks"}, {"value": "gpt-5-4", "name": "GPT-5.4", "description": "Token efficient for complex tasks"}, ... ] } ] }Why is this needed?
The ACP protocol stabilized Session Config Options on February 4, 2026 (https://agentclientprotocol.com/announcements/session-config-options-stabilized) as the standard way for agents to expose session-level configuration like models, modes, and reasoning levels.
The reference TypeScript SDK removed legacy model selectors on June 2, 2026 (agentclientprotocol/typescript-sdk@fa6e302) with the message: "The model selectors have been replaced by session config options."
Impact:
modelsfieldPer the official ACP spec (https://agentclientprotocol.com/protocol/v1/session-config-options):
(The same deprecation applies to the legacy
modelsfield)Possible solution or alternatives
Recommended approach: Support both formats during a transition period for backward compatibility:
{ "sessionId": "...", "modes": { "currentModeId": "default", "availableModes": [...] }, "models": { "availableModels": [...], "currentModelId": "" }, "configOptions": [ { "id": "mode", "category": "mode", "type": "select", "currentValue": "default", "options": [...] }, { "id": "model", "category": "model", "type": "select", "currentValue": "claude-sonnet-4-5", "options": [...] } ] }This allows:
configOptionsmodes/modelsfieldsAlternative workaround (current): Users can work around this by creating multiple agent configurations with hardcoded
--modelarguments, but this is cumbersome and defeats the purpose of dynamic model selection.Additional context
Affected clients:
@agentclientprotocol/sdkv0.28.1 or laterconfigOptionsformatReferences: