mirror of
https://gitee.com/mateos/mateclaw.git
synced 2026-09-13 11:13:43 +08:00
Issue #24: tools selected in the agent binding UI had no effect at runtime. mate_tool.name stores the Java class name (e.g. "BrowserUseTool") and was written into mate_agent_tool.tool_name, but AgentToolSet.withAllowedToolsOnly matched by the @Tool function name (e.g. "browser_use") — so every binding was silently filtered out. Fix: AgentToolSet builds an alias index per ToolCallback indexed by every equivalent identifier — function name, Spring bean name, and Java class simple name. withAllowedToolsOnly / withDeniedToolsFiltered / excluding all accept any of these aliases, mirroring how Spring's BeanFactory accepts bean names + aliases. ToolRegistry.getEnabledToolSet now threads a bean→beanName resolver into the new AgentToolSet.fromCallbacks(...) overload. Existing two-arg callers keep working; tests pass without changes. Zero data migration: stale mate_agent_tool rows that previously had no effect now resolve correctly via the class-name alias. |
||
|---|---|---|
| .. | ||
| mate | ||