Thread Truncated (Cap Enforced)
Only the first 20 tweets are unrolled into slides to ensure reliable PDF exporting and high server performance.
Canvas & Ratio
Choose your destination platform format
Layout Template
Choose a content structure for your slides
Preset Themes
Typography & Sizing
Brand Kit Customization
AGENCYConfigure brand assets for headers & footers
Outro Slide CTA
Customize your closing call-to-action slide
Background Pattern
Build Your Carousel
Drag and drop any post card below onto a slide, or use the quick buttons to insert content/images instantly!

Have you ever told Claude Code to do something and it just didn't?


You said format the code - It didn't. You said don't touch that file - It did.

You said run tests before finishing - It forgot.

<b>That's because CLAUDE.md is a suggestion.</b>

Claude reads it and follows it about 80% of the time. Hooks are different. They're automatic actions that fire every time Claude edits a file, runs a command, or finishes a task.

Below I will share 8 personal hooks you can copy straight into your settings.json and never think about again 👇

Before we dive in, I share daily notes on AI & vibe coding in my Telegram channel: <b><a target="_blank" href="https://t.me/zodchixquant" color="blue">https://t.me/zodchixquant</a></b>🧠



## How hooks work (30-second version) What are hooks?

Hooks are automatic actions that run every time Claude Code does something, like editing a file or running a command.

You set them up once and they work in the background without you thinking about it.

The two you'll use most:

<b>PreToolUse</b> runs before Claude does something. You can inspect the action and block it by returning exit code 2. Think of it as a bouncer.

<b>PostToolUse</b> runs after Claude does something. You can run cleanup, formatting, tests, or logging. Think of it as quality control on the assembly line.

<pre><code lang="markdown">Where hooks live: .claude/settings.json project-level (shared via git) ~/.claude/settings.json user-level (all your projects) .claude/settings.local.json local only (not committed)</code></pre>

You configure them in <b>.claude/settings.json</b> in your project root. That file gets committed to git, so your whole team gets the same hooks automatically.

Full documentation: <a target="_blank" href="https://code.claude.com/docs/en/hooks" color="blue">https://code.claude.com/docs/en/hooks</a>



## 1. Auto-format every file Claude touches

<b>The problem:</b> Claude writes correct code that breaks your formatting rules. You add "always run Prettier" to CLAUDE.md and it works most of the time, but not always.