我修了一个 smolagents 的 Bug,谁碰上谁懵(Sentry 全程围观)

Dev.to AI 2026-07-16T06:14:14.302247

这是参加 DEV 夏季 Bug Smash:Clear the Lineup powered by Sentry 的投稿。

项目概述

我挑了那个超过 28000 颗星的 agent 框架 huggingface/smolagents——它的 agent 直接靠 Python 代码来“思考”。从 issue #1108 开始就挂着一个 bug:谁要是把 MCP 工具和 agent 序列化混在一起用,必撞上。

对一个装有 MCP 工具的 CodeAgent 调用 agent.to_dict()(或者 save()push_to_hub(),走的同一条路),你就会收到这么个“好东西”:

ValueError: Tool validation failed for MCPAdaptTool:

Parameters in __init__ must have default values, found required parameters: name, description, inputs, output_type

- forward: Name 'func' is undefined.
- forward: Name 'mcp' is undefined.

func 未定义?mcp 未定义?我从来没写过 forward 方法。如果你在现实中遇到这个错误,你根本不知道自己错在哪。剧透:你什么都没做错。

Bug 修复还是性能改进?

查看原文