初始化demo
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
import logging
|
||||
from typing import Any
|
||||
|
||||
from strands.hooks import BeforeToolCallEvent, HookProvicer, HookRegistry
|
||||
|
||||
logger = logging.getLogger("agent_demo.hooks")
|
||||
|
||||
class ToolLoggingHook(HookProvicer):
|
||||
"""A hook that logs tool calls and their results."""
|
||||
|
||||
def register(self, registry: HookRegistry, **kwargs: Any) -> None:
|
||||
registry.add_callback(BeforeToolCallEvent, self._on_before_tool)
|
||||
|
||||
def _on_before_tool(self, event: BeforeToolCallEvent) -> None:
|
||||
tool_use = getattr(event, "tool_use", None) or {}
|
||||
|
||||
name = tool_use.get("name") if isinstance(tool_use, dict) else None
|
||||
logger.info("[hook] about to call tool: %s", name or "<unknown>")
|
||||
|
||||
|
||||
def default_hooks() -> list:
|
||||
"""Hooks registered on every agent by default. Add consent/audit hooks here."""
|
||||
return [ToolLoggingHook()]
|
||||
Reference in New Issue
Block a user