{"id":"disler-claude-code-hooks-mastery","name":"claude-code-hooks-mastery","homepage":null,"repo_url":"https://github.com/disler/claude-code-hooks-mastery","category":"devtools","subcategories":[],"tags":["ai-ml","devtools","automation","security","monitoring","messaging","claude-code","hooks","python","mcp","tts"],"what_it_does":"A Python demo/template repo for configuring and “mastering” Anthropic Claude Code hooks. It provides a full hook lifecycle implementation (13 hook events), logging, transcript conversion, prompt validation/context injection, tool permission auditing/auto-allow for read-only ops, and examples of orchestration via sub-agents and team-based validation. It also demonstrates optional TTS via multiple providers (e.g., ElevenLabs) using MCP servers.","use_cases":["Hook-based prompt validation and security filtering for Claude Code","Auditing and controlling tool permissions (permission dialogs, auto-allow for safe/read-only actions)","Operational logging of all hook events as JSON files for debugging and compliance","Converting Claude Code transcripts (JSONL) into readable JSON","Adding real-time UX enhancements (status lines, output styles, notifications)","Optional voice/TTS feedback for notifications and completion events","Team-style orchestration patterns (builder/validator) around Claude Code hook flows"],"not_for":["As a generic hosted API/service for remote clients (it’s primarily a local Claude Code hook setup)","Use cases requiring a formal vendor API surface (REST/GraphQL/gRPC)","Environments that cannot run local scripts or do not want to manage .claude configuration/hooks"],"best_when":"You run Claude Code locally in a repository and want deterministic guardrails + auditing around prompts and tool execution, with optional rich UI and TTS feedback.","avoid_when":"You need a network-accessible hosted interface, strict formal change-management guarantees (semver history not provided in the supplied data), or you cannot run local hook scripts (e.g., restricted execution environments).","alternatives":["Directly configure Claude Code hooks using Anthropic’s docs without this repo template","Use smaller/lighter hook sets focused only on permissioning or logging","Build your own hook scripts using UV single-file scripts architecture","Use third-party hook frameworks (if any) for Claude Code—if available in your ecosystem"],"af_score":60.5,"security_score":51.2,"reliability_score":30.0,"package_type":"skill","discovery_source":["openclaw"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-29T18:04:21.837640+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":["python"],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["Local configuration for Claude Code hooks","Optional TTS provider integrations (e.g., ElevenLabs) and model providers (OpenAI/Anthropic/Ollama)"],"oauth":false,"scopes":false,"notes":"The repo appears to rely on local Claude Code hook execution. Authentication for external LLM/TTS providers is implied via provider configuration, but no explicit OAuth flow/scopes are described in the provided README excerpt."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Pricing for LLM/TTS providers depends on your chosen Anthropic/OpenAI/ElevenLabs/Ollama setup; no repo-level pricing is described."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":60.5,"security_score":51.2,"reliability_score":30.0,"mcp_server_quality":35.0,"documentation_accuracy":80.0,"error_message_quality":80.0,"error_message_notes":"README describes hook error/exit code behavior (e.g., exit code 2 feeds stderr back to Claude) and indicates structured JSON logging and error details for PostToolUseFailure, but the provided content is truncated and does not include complete schemas for every failure mode.","auth_complexity":85.0,"rate_limit_clarity":10.0,"tls_enforcement":60.0,"auth_strength":45.0,"scope_granularity":55.0,"dependency_hygiene":40.0,"secret_handling":55.0,"security_notes":"README claims security enhancements such as blocking dangerous commands and sensitive file access and logs tool/prompt events. However, provided content does not show the actual secret-handling implementation (e.g., ensuring API keys aren’t logged) or dependency/version/security posture. The TLS/auth characteristics for any network calls (to LLM/TTS providers) are not explicitly documented in the excerpt.","uptime_documented":0.0,"version_stability":30.0,"breaking_changes_history":30.0,"error_recovery":60.0,"idempotency_support":"false","idempotency_notes":"No explicit idempotency guarantees are described for hook operations (e.g., logging/transcript writes). Some actions like transcript backup/cleanup likely behave safely but aren’t documented as idempotent.","pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["This repo is a template/demo for Claude Code hooks, not a generic programmatic service interface; an agent must integrate with Claude Code’s local hook mechanism.","Some provider integrations are optional and require additional MCP servers (e.g., ElevenLabs MCP). If those aren’t present/configured, related functionality may fail.","The README warning notes that chat.json may overwrite previous conversations, so an agent relying on chat.json history may miss earlier sessions.","The excerpt indicates safety blocking (e.g., dangerous commands), but exact rules/edge cases are not fully visible in the provided text."]}}