hooks.registry
Hook registration from agentspec config and built-in handlers.
register_handler
def register_handler(name: str, handler: HookHandler) -> None
Register a named handler in the global registry.
Named handlers can be referenced in agentspec YAML::
hooks:
- event: pre_tool_use
handler: security_check # ← references this name
get_handler
def get_handler(name: str) -> HookHandler | None
Look up a named handler.
build_hooks_middleware
def build_hooks_middleware(
spec_hooks: list[dict[str, Any]] | None) -> HooksMiddleware
Build a HooksMiddleware from agentspec hooks config.
Example spec_hooks::
[
{
"event": "pre_tool_use",
"matcher": "execute|write_file",
"handler": "security_check",
"timeout": 30,
},
{
"event": "post_tool_use",
"matcher": ".*",
"handler": "audit_log",
"background": true,
},
]