Site navigation and theme and language settings

Definition

Hooks

Hooks are automation triggers that fire at specific points in an agent’s workflow. In Claude Code they run before or after particular tool calls — file edits, command execution — and are defined in .claude/settings.json. They are used for linting, formatting, validation and custom logic the agent cannot skip.

Last updated

Why it matters

A hook is the difference between asking an agent to behave and making a command impossible to run. Instructions in a config file are advisory; a hook is code that executes whether or not the model was paying attention.

How each tool handles it

Cursor
Local and cloud agent hooks.
Claude Code
A full hook system, pre and post tool use, in .claude/settings.json.
Codex
Hooks alongside approvals.

Frequently asked questions

What are hooks used for?

Linting, formatting, validation and custom logic — anything that should happen every time, without depending on the agent remembering. In Claude Code they are defined in .claude/settings.json and run before or after specific tool calls.

Do Cursor and Codex have hooks?

Both have something in the category — Cursor has local and cloud agent hooks, Codex has hooks alongside approvals — but Claude Code’s is the full pre and post tool-use system.

Can a hook stop a command from running?

That is the category it exists for. Hooks run before a tool call, so validation logic placed there executes ahead of the action rather than reporting on it afterwards — which is what separates a guardrail from an instruction the model may or may not follow.