fix(gateway): forward agent_name and is_bootstrap from context to configurable (#2242)

The frontend sends agent_name and is_bootstrap via the context field
in run requests, but services.py only forwards a hardcoded whitelist
of keys (_CONTEXT_CONFIGURABLE_KEYS) into the agent's configurable
dict.  Since agent_name was missing, custom agents never received
their name — make_lead_agent always fell back to the default lead
agent, skipping SOUL.md, per-agent config and skill filtering.

Similarly, is_bootstrap was dropped, so the bootstrap creation flow
could never activate the setup_agent tool path.

Add both keys to the whitelist so they reach make_lead_agent.

Fixes #2222

Co-authored-by: JasonOA888 <JasonOA888@users.noreply.github.com>
This commit is contained in:
Jason 2026-04-15 23:11:10 +08:00 committed by GitHub
parent 8760937439
commit 692f79452d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -298,6 +298,8 @@ async def start_run(
"is_plan_mode", "is_plan_mode",
"subagent_enabled", "subagent_enabled",
"max_concurrent_subagents", "max_concurrent_subagents",
"agent_name",
"is_bootstrap",
} }
configurable = config.setdefault("configurable", {}) configurable = config.setdefault("configurable", {})
for key in _CONTEXT_CONFIGURABLE_KEYS: for key in _CONTEXT_CONFIGURABLE_KEYS: