问题域/PD-48

Agent 继承体系

Agent Inheritance Hierarchy

通过多层继承构建可扩展的 Agent 能力体系,每层叠加特定职责

子问题

1.基类能力划分

2.状态管理继承

3.工具能力组合

4.领域特化扩展

5.卡死检测与策略自动切换

6.异步资源清理链(工具→Agent→MCP 连接)

7.MCP 工具动态发现与热注册

各项目的解法1 solutions

Signals

横向对比

维度OpenManus
继承层数四层:BaseAgent→ReActAgent→ToolCallAgent→领域Agent
配置方式Pydantic BaseModel + Field 声明式,extra=allow 允许子类扩展
状态管理四态枚举 + asynccontextmanager 安全转换,异常自动回滚
能力叠加模式每层严格单一职责:状态机→Think-Act→工具调用→领域特化
工具组合方式ToolCollection 容器 + 声明式 Field 覆盖 + MCP 动态注册
卡死检测重复消息计数 + 策略变更提示注入
领域特化成本最少 15 行代码(SWEAgent),仅需声明 prompt + 工具集

最佳实践

1.每层只添加一个核心能力

2.使用 Pydantic 声明式配置

3.Pydantic Config extra=allow 允许子类自由扩展字段

4.model_validator 构建初始化链替代 __init__ 覆盖

5.特殊工具机制(special_tool_names)控制 Agent 终止条件