feat: add web search capability to all tools for enhanced analysis

- Add use_websearch parameter to base ToolRequest class
- All tools now inherit web search capability automatically
- Enhanced description emphasizes brainstorming and architectural design
- Add get_websearch_instruction() helper method to base class
- Update all tools to include web search in their prompts when enabled
- Update README documentation with web search examples
- Fix linting issues (ruff, black formatting)

Web search is particularly useful for:
- Brainstorming sessions and architectural design discussions
- Exploring industry best practices
- Working with specific frameworks/technologies
- Researching solutions to complex problems
- Getting current documentation and community insights

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Fahad
2025-06-10 11:09:28 +04:00
parent 2fe83dd381
commit cf0b3f7f44
11 changed files with 191 additions and 15 deletions

View File

@@ -52,7 +52,7 @@ def find_git_repositories(start_path: str, max_depth: int = 5) -> list[str]:
List of absolute paths to git repositories, sorted alphabetically
"""
repositories = []
try:
# Create Path object - no need to resolve yet since the path might be
# a translated Docker path that doesn't exist on the host
@@ -61,12 +61,12 @@ def find_git_repositories(start_path: str, max_depth: int = 5) -> list[str]:
# Basic validation - must be absolute
if not start_path.is_absolute():
return []
# Check if the path exists before trying to walk it
if not start_path.exists():
return []
except Exception as e:
except Exception:
# If there's any issue with the path, return empty list
return []
@@ -122,7 +122,7 @@ def run_git_command(repo_path: str, command: list[str]) -> tuple[bool, str]:
# Verify the repository path exists before trying to use it
if not Path(repo_path).exists():
return False, f"Repository path does not exist: {repo_path}"
try:
# Execute git command with safety measures
result = subprocess.run(