agentscope-ai / agentscope-ai/agentscope-java
[Feature]: subagent-inherit-parent-context
- Vorherrschende Sprache
- Java
- Sterne
- 5.6k
- Forks
- 1.3k
- Ø Merge
- 4 T. 12 Std.
- Gemergte PRs (30 T.)
- 77
Beschreibung
fix(harness): inherit parent business context into spawned subagents
Problem: When a subagent is spawned, DefaultAgentManager.invokeAgent / invokeAgentStream build a fresh RuntimeContext carrying only (sessionId, userId). The parent's custom typed/string attributes —
request-scoped business POJOs injected via RuntimeContext.put(Class, …) — are dropped. Tools relying on framework auto-injection of those POJOs (non-@ToolParam params resolved by ToolMethodInvoker →
RuntimeContext.get(Class)) therefore receive null inside a spawned subagent, though they work on the main agent. Only userId is propagated today.
Fix: invokeAgent/invokeAgentStream gain an overload taking an optional parentRc; the child RC is built via RuntimeContext.builder().from(parentRc) then overlaid with the child's own sessionId/userId.
AgentState is rebound per-call in beforeAgentExecution, so carrying the parent's reference is harmless. AgentSpawnTool forwards the parent RC on both sync (execLocalSync) and async (task) paths. Old
signatures preserved (parentRc = null) → backward compatible.
Beitragsleitfaden
Bewertung
Dieses Issue wurde noch nicht bewertet.