From 6f9af97117ae5d31990ad8d7d7eed63aaeaad650 Mon Sep 17 00:00:00 2001 From: Teknium <127238744+teknium1@users.noreply.github.com> Date: Wed, 2 Sep 2026 12:29:47 -0700 Subject: [PATCH] =?UTF-8?q?refactor(agent):=20toolsets=20=E2=80=94=20drop?= =?UTF-8?q?=20=5F=5Fmain=5F=5F=20demo=20and=20test-only=20resolve=5Fmultip?= =?UTF-8?q?le=5Ftoolsets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/test_toolsets.py | 11 ---------- toolsets.py | 49 ------------------------------------------ 2 files changed, 60 deletions(-) diff --git a/tests/test_toolsets.py b/tests/test_toolsets.py index 8499335d6a..ce35cf80a5 100644 --- a/tests/test_toolsets.py +++ b/tests/test_toolsets.py @@ -6,7 +6,6 @@ from toolsets import ( TOOLSETS, get_toolset, resolve_toolset, - resolve_multiple_toolsets, get_all_toolsets, validate_toolset, create_custom_toolset, @@ -105,16 +104,6 @@ class TestResolveToolset: -class TestResolveMultipleToolsets: - def test_combines_and_deduplicates(self): - tools = resolve_multiple_toolsets(["web", "terminal"]) - assert "web_search" in tools - assert "web_extract" in tools - assert "terminal" in tools - # No duplicates - assert len(tools) == len(set(tools)) - - class TestValidateToolset: def test_valid(self): diff --git a/toolsets.py b/toolsets.py index df45be99bd..fd033954c0 100644 --- a/toolsets.py +++ b/toolsets.py @@ -556,8 +556,6 @@ TOOLSETS = { } - - def _registry(): """Live tool registry, or None when tools.registry can't be imported.""" try: @@ -707,14 +705,6 @@ def resolve_toolset(name: str, visited: Set[str] = None, *, include_registry: bo return result -def resolve_multiple_toolsets(toolset_names: List[str]) -> List[str]: - """Union of resolve_toolset() over several names, sorted.""" - all_tools = set() - for name in toolset_names: - all_tools.update(resolve_toolset(name)) - return sorted(all_tools) - - def _get_plugin_toolset_names() -> Set[str]: """Registry toolset names absent from the static TOOLSETS dict.""" registry = _registry() @@ -802,42 +792,3 @@ def get_toolset_info(name: str) -> Dict[str, Any]: "tool_count": len(resolved_tools), "is_composite": bool(toolset["includes"]) } - - -if __name__ == "__main__": - print("Toolsets System Demo") - print("=" * 60) - - print("\nAvailable Toolsets:") - print("-" * 40) - for name, toolset in get_all_toolsets().items(): - info = get_toolset_info(name) - composite = "[composite]" if info["is_composite"] else "[leaf]" - print(f" {composite} {name:20} - {toolset['description']}") - print(f" Tools: {len(info['resolved_tools'])} total") - - print("\nToolset Resolution Examples:") - print("-" * 40) - for name in ["web", "terminal", "safe", "debugging"]: - tools = resolve_toolset(name) - print(f"\n {name}:") - print(f" Resolved to {len(tools)} tools: {', '.join(sorted(tools))}") - - print("\nMultiple Toolset Resolution:") - print("-" * 40) - combined = resolve_multiple_toolsets(["web", "vision", "terminal"]) - print(" Combining ['web', 'vision', 'terminal']:") - print(f" Result: {', '.join(sorted(combined))}") - - print("\nCustom Toolset Creation:") - print("-" * 40) - create_custom_toolset( - name="my_custom", - description="My custom toolset for specific tasks", - tools=["web_search"], - includes=["terminal", "vision"] - ) - custom_info = get_toolset_info("my_custom") - print(" Created 'my_custom' toolset:") - print(f" Description: {custom_info['description']}") - print(f" Resolved tools: {', '.join(custom_info['resolved_tools'])}")