updated tag colors, added Thariq badge, and linked tweet screenshots

- Swapped Boris tags to Claude orange (#CC7C5E) and orchestration workflow tags to blue (#3b82f6)
- Added Claude splash logo to boris-cherny.svg and boris-team.svg
- Created thariq.svg badge with matching style
- Changed community tag to pumpkin orange (#e67e22)
- Changed Command box in orchestration diagram to dark slate (#2C3E50)
- Replaced all shields.io Boris/Thariq badges in README with local SVGs
- Linked tweet screenshots in claude-memory.md and llm-day-to-day-degradation.md to source tweets

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Shayan Rais
2026-03-14 10:02:04 +05:00
parent f0e72695eb
commit 843f90cb4a
18 changed files with 163 additions and 43 deletions
+21 -21
View File
@@ -1,7 +1,7 @@
# claude-code-best-practice
practice makes claude perfect
![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2014%2C%202026%2006%3A41%20AM%20PKT-white?style=flat&labelColor=555) <a href="https://github.com/shanraisshan/claude-code-best-practice/stargazers"><img src="https://img.shields.io/github/stars/shanraisshan/claude-code-best-practice?style=flat&label=%E2%98%85&labelColor=555&color=white" alt="GitHub Stars"></a>
![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2014%2C%202026%2010%3A01%20AM%20PKT-white?style=flat&labelColor=555) <a href="https://github.com/shanraisshan/claude-code-best-practice/stargazers"><img src="https://img.shields.io/github/stars/shanraisshan/claude-code-best-practice?style=flat&label=%E2%98%85&labelColor=555&color=white" alt="GitHub Stars"></a>
[![Best Practice](!/tags/best-practice.svg)](best-practice/) *Click on this badge to show the latest best practice*<br>
[![Implemented](!/tags/implemented.svg)](implementation/) *Click on this badge to show implementation in this repo*<br>
@@ -95,42 +95,42 @@ claude
![Community](!/tags/community.svg)
**Prompting (4)**
- 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 [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742752566632544)
- after a mediocre fix — "knowing everything you know now, scrap this and implement the elegant solution" [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742752566632544)
- Claude fixes most bugs by itself — paste the bug, say "fix", don't micromanage how 👶 [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](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 👶 [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742755737555434)
- 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 [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2017742752566632544)
- after a mediocre fix — "knowing everything you know now, scrap this and implement the elegant solution" [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2017742752566632544)
- Claude fixes most bugs by itself — paste the bug, say "fix", don't micromanage how 👶 [![Boris](!/tags/boris-cherny.svg)](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 👶 [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2017742755737555434)
**Planning/Specs (5)**
- always start with [plan mode](https://code.claude.com/docs/en/common-workflows) [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2007179845336527000)
- start with a minimal spec or prompt and ask Claude to interview you using [AskUserQuestion](https://code.claude.com/docs/en/cli-reference) tool, then make a new session to execute the spec [![Thariq](https://img.shields.io/badge/Thariq-3b82f6?style=flat)](https://x.com/trq212/status/2005315275026260309)
- always start with [plan mode](https://code.claude.com/docs/en/common-workflows) [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2007179845336527000)
- start with a minimal spec or prompt and ask Claude to interview you using [AskUserQuestion](https://code.claude.com/docs/en/cli-reference) tool, then make a new session to execute the spec [![Thariq](!/tags/thariq.svg)](https://x.com/trq212/status/2005315275026260309)
- always make a phase-wise gated plan, with each phase having multiple tests (unit, automation, integration)
- spin up a second Claude to review your plan as a staff engineer, or use [cross-model](development-workflows/cross-model-workflow/cross-model-workflow.md) for review [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742745365057733)
- write detailed specs and reduce ambiguity before handing work off — the more specific you are, the better the output [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742752566632544)
- spin up a second Claude to review your plan as a staff engineer, or use [cross-model](development-workflows/cross-model-workflow/cross-model-workflow.md) for review [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2017742745365057733)
- write detailed specs and reduce ambiguity before handing work off — the more specific you are, the better the output [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2017742752566632544)
**Workflows (12)**
- [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/)). [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2007179840848597422)
- [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/)). [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2007179840848597422)
- 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
- 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) [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2007179847949500714)
- 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. [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2007179850139000872)
- 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) [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2007179847949500714)
- 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. [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2007179850139000872)
- [memory.md](https://code.claude.com/docs/en/memory), constitution.md does not guarantee anything
- 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 [skills in subfolders](reports/claude-skills-for-larger-mono-repos.md) for monorepos
- 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
- always use [thinking mode](https://code.claude.com/docs/en/model-config) true (to see reasoning) and [Output Style](https://code.claude.com/docs/en/output-styles) Explanatory (to see detailed output with ★ Insight boxes) in [/config](https://code.claude.com/docs/en/settings) for better understanding of Claude's decisions [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2007179838864666847)
- always use [thinking mode](https://code.claude.com/docs/en/model-config) true (to see reasoning) and [Output Style](https://code.claude.com/docs/en/output-styles) Explanatory (to see detailed output with ★ Insight boxes) in [/config](https://code.claude.com/docs/en/settings) for better understanding of Claude's decisions [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2007179838864666847)
- use ultrathink keyword in prompts for [high effort reasoning](https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking#tips-and-best-practices)
- [/rename](https://code.claude.com/docs/en/cli-reference) important sessions (e.g. [TODO - refactor task]) and [/resume](https://code.claude.com/docs/en/cli-reference) them later
- 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 (6)**
- use ASCII diagrams a lot to understand your architecture [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742759218794768)
- use ASCII diagrams a lot to understand your architecture [![Boris](!/tags/boris-cherny.svg)](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 [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](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 [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2007179854077407667)
- [/sandbox](https://code.claude.com/docs/en/sandboxing) to reduce permission prompts with file and network isolation [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2021700506465579443)
- use [Ralph Wiggum plugin](https://github.com/shanraisshan/novel-llm-26) for long-running autonomous tasks [![Boris](!/tags/boris-cherny.svg)](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 [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2007179854077407667)
- [/sandbox](https://code.claude.com/docs/en/sandboxing) to reduce permission prompts with file and network isolation [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2021700506465579443)
**Debugging (5)**
- make it a habit to take screenshots and share with Claude whenever you are stuck with any issue
@@ -141,11 +141,11 @@ claude
- use a [cross-model](development-workflows/cross-model-workflow/cross-model-workflow.md) for QA — e.g. [Codex](https://github.com/shanraisshan/codex-cli-best-practice) for plan and implementation review
**Utilities (5)**
- [iTerm](https://iterm2.com/)/[Ghostty](https://ghostty.org/) [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2017742753971769626)/[tmux](https://github.com/tmux/tmux) terminals instead of IDE ([VS Code](https://code.visualstudio.com/)/[Cursor](https://www.cursor.com/))
- [iTerm](https://iterm2.com/)/[Ghostty](https://ghostty.org/) [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2017742753971769626)/[tmux](https://github.com/tmux/tmux) terminals instead of IDE ([VS Code](https://code.visualstudio.com/)/[Cursor](https://www.cursor.com/))
- [Wispr Flow](https://wisprflow.ai) for voice prompting (10x productivity)
- [claude-code-voice-hooks](https://github.com/shanraisshan/claude-code-voice-hooks) for claude feedback
- [status line](https://github.com/shanraisshan/claude-code-status-line) for context awareness and fast compacting [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2021700784019452195)
- explore [settings.json](best-practice/claude-settings.md) features like [Plans Directory](best-practice/claude-settings.md#plans-directory), [Spinner Verbs](best-practice/claude-settings.md#display--ux) for a personalized experience [![Boris](https://img.shields.io/badge/Boris-3b82f6?style=flat)](https://x.com/bcherny/status/2021701145023197516)
- [status line](https://github.com/shanraisshan/claude-code-status-line) for context awareness and fast compacting [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2021700784019452195)
- explore [settings.json](best-practice/claude-settings.md) features like [Plans Directory](best-practice/claude-settings.md#plans-directory), [Spinner Verbs](best-practice/claude-settings.md#display--ux) for a personalized experience [![Boris](!/tags/boris-cherny.svg)](https://x.com/bcherny/status/2021701145023197516)
**Daily (3)**
- [update](https://code.claude.com/docs/en/setup) Claude Code daily and start your day by reading the [changelog](https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md)
@@ -173,7 +173,7 @@ claude
|[**Code Review**](https://code.claude.com/docs/en/code-review)|[Greptile](https://greptile.com), [CodeRabbit](https://coderabbit.ai), [Devin Review](https://devin.ai), [OpenDiff](https://opendiff.com), [Cursor BugBot](https://bugbot.dev)|
|[**Voice Mode**](https://x.com/trq212/status/2028628570692890800)|[Wispr Flow](https://wisprflow.ai), [SuperWhisper](https://superwhisper.com/)|
|[**Remote Control**](https://code.claude.com/docs/en/remote-control)|[OpenClaw](https://openclaw.ai/)
|**Cowork**|[OpenAI Operator](https://openai.com/operator), [AgentShadow](https://agentshadow.ai)
|[**Cowork**](https://claude.com/blog/cowork-research-preview)|[OpenAI Operator](https://openai.com/operator), [AgentShadow](https://agentshadow.ai)
|[**Tasks**](https://x.com/trq212/status/2014480496013803643)|[Beads](https://github.com/steveyegge/beads)
|[**Plan Mode**](https://code.claude.com/docs/en/common-workflows)|[Agent OS](https://github.com/buildermethods/agent-os)|
|[**Skills / Plugins**](https://code.claude.com/docs/en/plugins)|YC AI wrapper startups ([reddit](https://reddit.com/r/ClaudeAI/comments/1r6bh4d/claude_code_skills_are_basically_yc_ai_startup/))|