Ante / external_content /external_tools /starter_custom_tool.py
Ransom070's picture
Add 0G Compute Network speech backend
1445a0e
Raw History Blame Contribute Delete
1.04 kB
"""Example external tool implementation."""
import logging
from typing import Any
from reachy_mini_conversation_app.tools.core_tools import Tool, ToolDependencies
logger = logging.getLogger(__name__)
class StarterCustomTool(Tool):
"""Demonstrate loading a tool from the external tools directory."""
name = "starter_custom_tool"
description = "A placeholder custom tool loaded from outside the library"
parameters_schema = {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Optional message to include in the response",
},
},
"required": [],
}
async def __call__(self, deps: ToolDependencies, **kwargs: Any) -> dict[str, Any]:
"""Return the requested message from the external tool."""
message = kwargs.get("message", "Hello from custom tool!")
logger.info("Tool call: starter_custom_tool message=%s", message)
return {"status": "success", "message": message}