{"name":"Setup","slug":"setup","family":"hook","title":"Hook events","noun":"hook event","description":"When you start Claude Code with `--init-only`, or with `--init` or `--maintenance` in `-p` mode. For one-time preparation in CI or scripts","description_source":"docs","described_by":{"doc":"claude-code\/hooks","title":"Hooks reference"},"presence":{"first_seen":null,"removed_in":null,"in_current_build":false,"newest_mined":"2.1.308","builds":0,"mined_builds":149,"first_cited":null},"aliases":[],"entries":[{"version":"2.1.281","anchor":"mcp-tool-hooks-wait-for-an-mcp-server-that-is-still-connecti","heading":"mcp_tool hooks wait for an MCP server that is still connecting","line":"mcp_tool hooks now wait for an MCP server that is still connecting instead of being skipped straight away","released_at":"2026-09-23 17:01:17","reason":"found in this entry's text"},{"version":"2.1.265","anchor":"new-hook-timing-guard-message-for-classic-hooks-calling-turn","heading":"New hook-timing guard message for classic hooks calling turn.complete-style APIs","line":"New warning explains why calling certain APIs from most hooks would freeze, and tells you to use turn.complete instead","released_at":"2026-09-08 19:05:16","reason":"found in this entry's text"},{"version":"2.1.265","anchor":"new-classic-hook-turn-block-guidance-distinguishes-sessi","heading":"New classic.* hook turn-block guidance distinguishes SessionStart\/Setup\/SessionEnd from other classic hooks","line":"Clearer error guidance when a classic hook other than SessionStart\/Setup\/SessionEnd tries to block the turn","released_at":"2026-09-08 19:05:16","reason":"found in this entry's text"}],"entries_total":3,"docs":[{"source":"claude-code","path":"hooks","title":"Hooks reference","documented":true},{"source":"claude-code","path":"agent-sdk\/hooks","title":"Intercept and control agent behavior with hooks","documented":true},{"source":"api","path":"about-claude\/models\/optimizing-for-cost-and-intelligence","title":"optimizing-for-cost-and-intelligence","documented":false},{"source":"api","path":"about-claude\/use-case-guides\/commerce-agents","title":"commerce-agents","documented":false},{"source":"api","path":"agents-and-tools\/agent-skills\/best-practices","title":"PDF Processing","documented":false},{"source":"api","path":"agents-and-tools\/agent-skills\/enterprise","title":"enterprise","documented":false},{"source":"api","path":"agents-and-tools\/agent-skills\/overview","title":"PDF Processing","documented":false},{"source":"api","path":"agents-and-tools\/agent-skills\/quickstart","title":"quickstart","documented":false},{"source":"api","path":"agents-and-tools\/mcp-tunnels\/concepts","title":"concepts","documented":false},{"source":"api","path":"agents-and-tools\/mcp-tunnels\/deploy-compose","title":"Edit docker-compose.yaml: increment the integer in the setup service's","documented":false}],"docs_total":14,"gates":[],"related":[],"url":"https:\/\/changelogs.core-directive.com\/reference\/hook\/setup","family_url":"https:\/\/changelogs.core-directive.com\/reference\/hook.json"}