diff --git a/README.md b/README.md
index 6a18bba..b2ef122 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
# claude-code-best-practice
practice makes claude perfect
--white?style=flat&labelColor=555) 
+-white?style=flat&labelColor=555) 
[](best-practice/) [](implementation/) [](orchestration-workflow/orchestration-workflow.md) [](#-tips-and-tricks) 
= Agents ·
= Commands ·
= Skills
@@ -111,11 +111,10 @@ All major workflows converge on the same architectural pattern: **Research → P

-■ **Prompting (4)**
+■ **Prompting (3)**
- challenge Claude — "grill me on these changes and don't make a PR until I pass your test." or "prove to me this works" and have Claude diff between main and your branch 🚫👶 [](https://x.com/bcherny/status/2017742752566632544)
- after a mediocre fix — "knowing everything you know now, scrap this and implement the elegant solution" 🚫👶 [](https://x.com/bcherny/status/2017742752566632544)
- Claude fixes most bugs by itself — paste the bug, say "fix", don't micromanage how 🚫👶 [](https://x.com/bcherny/status/2017742750473720121)
-- say "use subagents" to throw more compute at a problem — offload tasks to keep your main context clean and focused 🚫👶 [](https://x.com/bcherny/status/2017742755737555434)
■ **Planning/Specs (6)**
- always start with [plan mode](https://code.claude.com/docs/en/common-workflows) [](https://x.com/bcherny/status/2007179845336527000)
@@ -125,16 +124,27 @@ All major workflows converge on the same architectural pattern: **Research → P
- write detailed specs and reduce ambiguity before handing work off — the more specific you are, the better the output [](https://x.com/bcherny/status/2017742752566632544)
- prototype > PRD — build 20-30 versions instead of writing specs, the cost of building is low so take many shots [](https://youtu.be/julbw1JuAz0?t=3630) [](https://youtu.be/julbw1JuAz0?t=3630)
-■ **CLAUDE.md (6)**
+■ **CLAUDE.md (7)**
- [CLAUDE.md](https://code.claude.com/docs/en/memory) should target under [200 lines](https://code.claude.com/docs/en/memory#write-effective-instructions) per file. [60 lines in humanlayer](https://www.humanlayer.dev/blog/writing-a-good-claude-md) ([still not 100% guaranteed](https://www.reddit.com/r/ClaudeCode/comments/1qn9pb9/claudemd_says_must_use_agent_claude_ignores_it_80/)). [](https://x.com/bcherny/status/2007179840848597422) [](https://www.humanlayer.dev/blog/writing-a-good-claude-md)
- wrap domain-specific CLAUDE.md rules in [\ tags](https://www.hlyr.dev/blog/stop-claude-from-ignoring-your-claude-md) to stop Claude from ignoring them as files grow longer [](https://www.hlyr.dev/blog/stop-claude-from-ignoring-your-claude-md)
- use [multiple CLAUDE.md](best-practice/claude-memory.md) for monorepos — ancestor + descendant loading
- use [.claude/rules/](https://code.claude.com/docs/en/memory#organize-rules-with-clauderules) to split large instructions
- [memory.md](https://code.claude.com/docs/en/memory), constitution.md does not guarantee anything
+- any developer should be able to launch Claude, say "run the tests" and it works on the first try — if it doesn't, your CLAUDE.md is missing essential setup/build/test commands [](https://x.com/dexhorthy/status/2034713765401551053)
- keep codebases clean and finish migrations — partially migrated frameworks confuse models that might pick the wrong pattern [](https://youtu.be/julbw1JuAz0?t=1112) [](https://youtu.be/julbw1JuAz0?t=1112)
-■
**Skills (10)**
-- have feature specific [sub-agents](https://code.claude.com/docs/en/sub-agents) (extra context) with [skills](https://code.claude.com/docs/en/skills) (progressive disclosure) instead of general qa, backend engineer. [](https://x.com/bcherny/status/2007179850139000872)
+
**Agents (4)**
+- have feature specific [sub-agents](https://code.claude.com/docs/en/sub-agents) (extra context) with [skills](https://code.claude.com/docs/en/skills) (progressive disclosure) instead of general qa, backend engineer [](https://x.com/bcherny/status/2007179850139000872)
+- say "use subagents" to throw more compute at a problem — offload tasks to keep your main context clean and focused 🚫👶 [](https://x.com/bcherny/status/2017742755737555434)
+- [agent teams with tmux](https://code.claude.com/docs/en/agent-teams) and [git worktrees](https://x.com/bcherny/status/2025007393290272904) for parallel development
+- use [test time compute](https://code.claude.com/docs/en/sub-agents) — separate context windows make results better; one agent can cause bugs and another (same model) can find them [](https://x.com/bcherny/status/2031151689219321886)
+
+
**Commands (3)**
+- use [commands](https://code.claude.com/docs/en/slash-commands) for your workflows instead of [sub-agents](https://code.claude.com/docs/en/sub-agents) [](https://x.com/bcherny/status/2007179847949500714)
+- use [slash commands](https://code.claude.com/docs/en/slash-commands) for every "inner loop" workflow you do many times a day — saves repeated prompting, commands live in `.claude/commands/` and are checked into git [](https://x.com/bcherny/status/2007179847949500714)
+- if you do something more than once a day, turn it into a [skill](https://code.claude.com/docs/en/skills) or [command](https://code.claude.com/docs/en/slash-commands) — build `/techdebt`, context-dump, or analytics commands [](https://x.com/bcherny/status/2017742748984742078)
+
+
**Skills (9)**
- use [context: fork](https://code.claude.com/docs/en/skills) to run a skill in an isolated subagent — main context only sees the final result, not intermediate tool calls. The agent field lets you set the subagent type [](https://x.com/lydiahallie/status/2033603164398883042)
- use [skills in subfolders](reports/claude-skills-for-larger-mono-repos.md) for monorepos
- skills are folders, not files — use references/, scripts/, examples/ subdirectories for [progressive disclosure](https://code.claude.com/docs/en/skills) [](https://x.com/trq212/status/2033949937936085378)
@@ -145,8 +155,14 @@ All major workflows converge on the same architectural pattern: **Research → P
- include scripts and libraries in skills so Claude composes rather than reconstructs boilerplate [](https://x.com/trq212/status/2033949937936085378)
- embed `` !`command` `` in SKILL.md to inject dynamic shell output into the prompt — Claude runs it on invocation and the model only sees the result [](https://x.com/lydiahallie/status/2034337963820327017)
-■ **Workflows (9)**
-- use [commands](https://code.claude.com/docs/en/slash-commands) for your workflows instead of [sub-agents](https://code.claude.com/docs/en/sub-agents) [](https://x.com/bcherny/status/2007179847949500714)
+■ **Hooks (5)**
+- use [on-demand hooks](https://code.claude.com/docs/en/skills) in skills — /careful blocks destructive commands, /freeze blocks edits outside a directory [](https://x.com/trq212/status/2033949937936085378)
+- [measure skill usage](https://code.claude.com/docs/en/skills) with a PreToolUse hook to find popular or undertriggering skills [](https://x.com/trq212/status/2033949937936085378)
+- use a [PostToolUse hook](https://code.claude.com/docs/en/hooks) to auto-format code — Claude generates well-formatted code, the hook handles the last 10% to avoid CI failures [](https://x.com/bcherny/status/2007179852047335529)
+- route [permission requests](https://code.claude.com/docs/en/hooks) to Opus via a hook — let it scan for attacks and auto-approve safe ones 🚫👶 [](https://x.com/bcherny/status/2017742755737555434)
+- use a [Stop hook](https://code.claude.com/docs/en/hooks) to nudge Claude to keep going or verify its work at the end of a turn [](https://x.com/bcherny/status/2021701059253874861)
+
+■ **Workflows (8)**
- avoid agent dumb zone, do manual [/compact](https://code.claude.com/docs/en/interactive-mode) at max 50%. Use [/clear](https://code.claude.com/docs/en/cli-reference) to reset context mid-session if switching to a new task
- vanilla cc is better than any workflows with smaller tasks
- use [/model](https://code.claude.com/docs/en/model-config) to select model and reasoning, [/context](https://code.claude.com/docs/en/interactive-mode) to see context usage, [/usage](https://code.claude.com/docs/en/costs) to check plan limits, [/extra-usage](https://code.claude.com/docs/en/interactive-mode) to configure overflow billing, [/config](https://code.claude.com/docs/en/settings) to configure settings — use Opus for plan mode and Sonnet for code to get the best of both [](https://x.com/_catwu/status/1955694117264261609)
@@ -156,19 +172,16 @@ All major workflows converge on the same architectural pattern: **Research → P
- use [Esc Esc or /rewind](https://code.claude.com/docs/en/checkpointing) to undo when Claude goes off-track instead of trying to fix it in the same context
- commit often — try to commit at least once per hour, as soon as task is completed, commit.
-■ **Workflows Advanced (10)**
+■ **Workflows Advanced (7)**
- use ASCII diagrams a lot to understand your architecture [](https://x.com/bcherny/status/2017742759218794768)
-- [agent teams with tmux](https://code.claude.com/docs/en/agent-teams) and [git worktrees](https://x.com/bcherny/status/2025007393290272904) for parallel development
- use [/loop](https://code.claude.com/docs/en/scheduled-tasks) for recurring monitoring — poll deployments, babysit PRs, check builds (runs up to 3 days)
- use [Ralph Wiggum plugin](https://github.com/shanraisshan/novel-llm-26) for long-running autonomous tasks [](https://x.com/bcherny/status/2007179858435281082)
- [/permissions](https://code.claude.com/docs/en/permissions) with wildcard syntax (Bash(npm run *), Edit(/docs/**)) instead of dangerously-skip-permissions [](https://x.com/bcherny/status/2007179854077407667)
- [/sandbox](https://code.claude.com/docs/en/sandboxing) to reduce permission prompts with file and network isolation — 84% reduction internally [](https://x.com/bcherny/status/2021700506465579443) [](https://creatoreconomy.so/p/inside-claude-code-how-an-ai-native-actually-works-cat-wu)
- tag [@claude](https://github.com/apps/claude) on a coworker's PR to auto-generate lint rules for recurring review feedback — automate yourself out of code review 🚫👶 [](https://youtu.be/julbw1JuAz0?t=2715) [](https://youtu.be/julbw1JuAz0?t=2715)
-- use [on-demand hooks](https://code.claude.com/docs/en/skills) in skills — /careful blocks destructive commands, /freeze blocks edits outside a directory [](https://x.com/trq212/status/2033949937936085378)
- invest in [product verification](https://code.claude.com/docs/en/skills) skills (signup-flow-driver, checkout-verifier) — worth spending a week to perfect [](https://x.com/trq212/status/2033949937936085378)
-- [measure skill usage](https://code.claude.com/docs/en/skills) with a PreToolUse hook to find popular or undertriggering skills [](https://x.com/trq212/status/2033949937936085378)
-■ **Debugging (6)**
+■ **Debugging (7)**
- make it a habit to take screenshots and share with Claude whenever you are stuck with any issue
- use mcp ([Claude in Chrome](https://code.claude.com/docs/en/chrome), [Playwright](https://github.com/microsoft/playwright-mcp), [Chrome DevTools](https://developer.chrome.com/blog/chrome-devtools-mcp)) to let claude see chrome console logs on its own
- always ask claude to run the terminal (you want to see logs of) as a background task for better debugging