Improve AgentBuilder: Avoid modifying original config dict
还没有人认领这个 Issue。
评估
调研方向
从 veadk/agent_builder.py 中的 AgentBuilder._build() 开始,跟踪 sub_agents 和 tools 是如何从配置中提取的。当使用相同配置反复构建后,调用方的字典仍保持不变时,即表示完成;检查仓库中是否有针对该行为的专门测试,或为该行为添加回归测试。
由索引模型根据 Issue 内容生成。
描述
Problem Description
Currently, the AgentBuilder._build() method uses pop() operations which modify the original config dict, potentially causing:
- Side effects: If the caller retains a reference to the config, they'll find it unexpectedly modified
- Reusability issues: The same config object cannot be used multiple times
- Code clarity: The intent of
pop()is not clear
Current Code
# veadk/agent_builder.py, line 46-63
if agent_config.get("sub_agents", None):
for sub_agent_config in agent_config["sub_agents"]:
agent = self._build(sub_agent_config)
sub_agents.append(agent)
agent_config.pop("sub_agents") # ⚠️ Modifies original config
tools = []
if agent_config.get("tools", []):
for tool in agent_config["tools"]:
# ... tool processing
tools.append(func)
agent_config.pop("tools") # ⚠️ Modifies original config
agent = agent_cls(**agent_config, sub_agents=sub_agents, tools=tools)
- 主要语言
- Python
- 星标
- 344
- 派生
- 98
- 平均合并
- 8 小时 17 分钟
- 30 天内合并 PR
- 152
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
volcengine/veadk-python 的其他 Issue
-
难度 3/5 1-2 天 新手友好度 78/100
volcengine/veadk-python#1021 ·
-
难度 4/5 3-5 天 新手友好度 48/100
volcengine/veadk-python#901 ·
-
难度 3/5 1-2 天 新手友好度 68/100
volcengine/veadk-python#549 ·
-
难度 3/5 1-2 天 新手友好度 55/100
volcengine/veadk-python#531 ·
查看 volcengine/veadk-python 的全部 Issue
相似的 Issue
-
area: harness bug status: needs-triage
难度 2/5 1-3 小时 新手友好度 75/100
Human-Agent-Society/reef#625 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
-
难度 1/5 1 小时以内 新手友好度 80/100
learningequality/kolibri#15351 · 2 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
-
Name consistency 未关闭
难度 2/5 1-3 小时 新手友好度 75/100
eellak/triplestore#65 · 1 条评论 ·