Software_Engineer_Agent / backend /tools /dependency_lookup_tool.py
G-Madhuri's picture
deploy to hf space
7e2f74d
Raw
History Blame Contribute Delete
1.12 kB
from tools.base_tool import BaseTool
from services.repositoryMemory import memory_service
from typing import Any
class DependencyLookupTool(BaseTool):
@property
def name(self) -> str:
return "dependency_lookup"
@property
def description(self) -> str:
return "Queries libraries, dependencies, package configurations, and stack components. Inputs: repo_id (str)."
def execute(self, **kwargs) -> Any:
repo_id = kwargs.get("repo_id")
if not repo_id:
return {"error": "Missing required parameter: repo_id."}
data = memory_service.retrieve(repo_id)
if not data or "profile" not in data:
return {"error": f"No profile found for repository {repo_id}."}
profile = data["profile"]
return {
"languages": profile.get("languages", []),
"frameworks": profile.get("frameworks", []),
"databases": profile.get("databases", []),
"dependencies": profile.get("dependencies", []),
"project_type": profile.get("project_type", "")
}