From 6e7a063300b953fe87939d5d22c264700782f479 Mon Sep 17 00:00:00 2001 From: Grail Finder Date: Tue, 3 Mar 2026 08:27:14 +0300 Subject: Enha: remove window tools if no vision --- tools.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'tools.go') diff --git a/tools.go b/tools.go index 715701b..4c3bad6 100644 --- a/tools.go +++ b/tools.go @@ -1376,7 +1376,26 @@ var fnMap = map[string]fnSig{ "pw_drag": pwDrag, } +func removeWindowToolsFromBaseTools() { + windowToolNames := map[string]bool{ + "list_windows": true, + "capture_window": true, + "capture_window_and_view": true, + } + var filtered []models.Tool + for _, tool := range baseTools { + if !windowToolNames[tool.Function.Name] { + filtered = append(filtered, tool) + } + } + baseTools = filtered + delete(fnMap, "list_windows") + delete(fnMap, "capture_window") + delete(fnMap, "capture_window_and_view") +} + func registerWindowTools() { + removeWindowToolsFromBaseTools() if windowToolsAvailable { fnMap["list_windows"] = listWindows fnMap["capture_window"] = captureWindow -- cgit v1.2.3