diff --git a/src/daemon/dispatcher.py b/src/daemon/dispatcher.py index ec2e493..d90093a 100644 --- a/src/daemon/dispatcher.py +++ b/src/daemon/dispatcher.py @@ -85,12 +85,13 @@ class Dispatcher: "reason": f"Registered agent: {assignee}", } - # Level 3: 无名字或未注册 → Subagent + # Level 3: 无 assignee → 能力映射或 fallback 庞统 if not assignee: + agent_id = self._resolve_by_capability(task) return { - "level": DispatchLevel.SUB_AGENT, - "agent_id": "subagent", - "reason": "No assignee, dispatch as subagent", + "level": DispatchLevel.FULL_AGENT, + "agent_id": agent_id, + "reason": f"Auto-assigned via capability_map: {agent_id}", } # Level 4: 有 assignee 但未注册 → 升级庞统