From 87869d0979c466a3292c5cefa5339af0e5160cec Mon Sep 17 00:00:00 2001 From: CREDO23 Date: Sat, 4 Jul 2026 20:49:58 +0200 Subject: [PATCH] feat(google_search): add subagent tools --- .../builtins/google_search/tools/__init__.py | 0 .../builtins/google_search/tools/index.py | 27 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/__init__.py create mode 100644 surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/index.py diff --git a/surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/__init__.py b/surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/index.py b/surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/index.py new file mode 100644 index 000000000..4851b7e3e --- /dev/null +++ b/surfsense_backend/app/agents/chat/multi_agent_chat/subagents/builtins/google_search/tools/index.py @@ -0,0 +1,27 @@ +"""``google_search`` sub-agent tools: the Google Search scrape capability verb.""" + +from __future__ import annotations + +from typing import Any + +from langchain_core.tools import BaseTool + +from app.agents.chat.multi_agent_chat.shared.permissions import Ruleset +from app.capabilities.core.access.agent import build_capability_tools +from app.capabilities.google_search.scrape.definition import GOOGLE_SEARCH_SCRAPE + +NAME = "google_search" + +RULESET = Ruleset(origin=NAME, rules=[]) + +_CI_VERBS = [GOOGLE_SEARCH_SCRAPE] + + +def load_tools( + *, dependencies: dict[str, Any] | None = None, **kwargs: Any +) -> list[BaseTool]: + d = {**(dependencies or {}), **kwargs} + return build_capability_tools( + workspace_id=d.get("workspace_id"), + capabilities=_CI_VERBS, + )