Skip to contentllms.txt

handler_types

What kinds of executors hooks support beyond shell commands. May include HTTP endpoints, LLM prompt evaluation, multi-turn agent handlers, or TypeScript extensions.

Type: object Content type: hooks

ProviderSupportedMechanism
amp✓command-only: hook 'action' field runs a shell command; no HTTP, LLM, or agent handler types documented
claude-code✓Five types: command (shell), http (POST to URL), mcp_tool (MCP tool call), prompt (LLM evaluation), agent (subagent with tools, experimental); prompt/agent restricted to subset of events
codex✓hook_handler_types: Codex supports shell command and LLM prompt handler types; TypeScript extension type also documented
crush✓Hooks are shell commands (command field in HookConfig). Each hook fires a subprocess with the tool context passed on stdin.
cursor✓Two handler types documented: command (shell scripts communicating over stdio via JSON) and prompt (LLM-evaluated natural language conditions for policy enforcement without custom scripting).
pi✓pi_extension_typescript_native: Pi hooks support TypeScript/native extension handler type beyond shell commands
cline✗Cline hooks execute shell commands only; no HTTP, LLM prompt, or agent handler types documented
copilot-cli✗Copilot CLI hooks execute shell commands only; no HTTP, LLM prompt, or agent handler types documented
factory-droid✗Factory Droid hooks execute shell commands only (type: command); no other handler types documented
gemini-cli✗Gemini CLI hooks execute shell commands only; no HTTP, LLM prompt, or agent handler types documented
kiro✗Kiro hooks execute shell commands or predefined agent prompts; no HTTP, LLM-as-hook, or TypeScript extension handler types documented
opencode✗not documented
roo-code✗not documented
windsurf✗Windsurf hooks execute shell commands only; no HTTP, LLM prompt, or agent handler types documented
zed✗not documented