feat(core, cli): Add support for agents in settings.json. (#16433)

This commit is contained in:
joshualitt
2026-01-13 12:16:02 -08:00
committed by GitHub
parent e931ebe581
commit 92e31e3c4a
8 changed files with 382 additions and 56 deletions
+50
View File
@@ -926,6 +926,26 @@
},
"additionalProperties": false
},
"agents": {
"title": "Agents",
"description": "Settings for subagents.",
"markdownDescription": "Settings for subagents.\n\n- Category: `Advanced`\n- Requires restart: `yes`\n- Default: `{}`",
"default": {},
"type": "object",
"properties": {
"overrides": {
"title": "Agent Overrides",
"description": "Override settings for specific agents, e.g. to disable the agent, set a custom model config, or run config.",
"markdownDescription": "Override settings for specific agents, e.g. to disable the agent, set a custom model config, or run config.\n\n- Category: `Advanced`\n- Requires restart: `yes`\n- Default: `{}`",
"default": {},
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/AgentOverride"
}
}
},
"additionalProperties": false
},
"context": {
"title": "Context",
"description": "Settings for managing context provided to the model.",
@@ -1854,6 +1874,36 @@
}
}
},
"AgentOverride": {
"type": "object",
"description": "Override settings for a specific agent.",
"additionalProperties": false,
"properties": {
"modelConfig": {
"type": "object",
"additionalProperties": true
},
"runConfig": {
"type": "object",
"description": "Run configuration for an agent.",
"additionalProperties": false,
"properties": {
"maxTimeMinutes": {
"type": "number",
"description": "The maximum execution time for the agent in minutes."
},
"maxTurns": {
"type": "number",
"description": "The maximum number of conversational turns."
}
}
},
"disabled": {
"type": "boolean",
"description": "Whether to disable the agent."
}
}
},
"CustomTheme": {
"type": "object",
"description": "Custom theme definition used for styling Gemini CLI output. Colors are provided as hex strings or named ANSI colors.",