(query: str, limit: int = 20)
| 73 | |
| 74 | |
| 75 | def find_tools(query: str, limit: int = 20) -> list[PortingModule]: |
| 76 | needle = query.lower() |
| 77 | matches = [module for module in PORTED_TOOLS if needle in module.name.lower() or needle in module.source_hint.lower()] |
| 78 | return matches[:limit] |
| 79 | |
| 80 | |
| 81 | def execute_tool(name: str, payload: str = '') -> ToolExecution: |