====== Anatomie Claude Code projektu ====== [[https://x.com/BharukaShraddha/status/2029836408232497678|Shraddha Bharuka]] popsala strukturu repozitáře, která umožňuje, aby Claude Code fungoval jako zkušený inženýr přímo v projektu — ne jako chatbot. Základem je 5 komponent, které dávají Claudovi nepřetržitý přístup ke čtyřem typům informací: **proč** systém existuje, **kde** se věci nacházejí, **jaká jsou pravidla** a **jak se práce dělá**. {{ software:vyvoj:claude-code:claude-code-anatomie.jpg?600 |Anatomie Claude Code projektu}} ===== CLAUDE.md = Paměť repozitáře ===== ''CLAUDE.md'' je řídící soubor celého projektu — ne knowledge dump, ale stručný přehled tří věcí: * **Proč** — účel systému * **Co** — mapa repozitáře * **Jak** — pravidla a příkazy Pokud je soubor příliš dlouhý, model začne přehlížet důležitý kontext. Doporučení: udržovat ho stručný. ===== .claude/skills/ = Znovupoužitelné expertní módy ===== Místo opakovaného přepisování instrukcí se běžné workflows převedou do skills uložených v '''.claude/skills/''': * checklist pro code review * playbook pro refaktoring * postup pro release * průvodce debuggingem Výsledek: konzistentní chování napříč sezeními i v rámci týmu. ===== .claude/hooks/ = Guardrails ===== Modely zapomínají, hooks ne. Hooks zajišťují deterministické chování: * spuštění formátovače po každé editaci * spuštění testů při změnách klíčových částí * blokování nebezpečných adresářů (''auth/'', ''billing/'', ''migrations/'') ===== docs/ = Progresivní kontext ===== Dokumentace nepatří do promptů. Claude potřebuje pouze vědět, kde pravda žije: * přehled architektury * ADR (záznamy o architektonických rozhodnutích) * provozní runbooky Tím se zachová čistý kontext a model si sám načte správný zdroj, když ho potřebuje. ===== Lokální CLAUDE.md pro rizikové moduly ===== Malé ''CLAUDE.md'' soubory umístěné přímo u „ostrých hran" kódu: * ''src/auth/CLAUDE.md'' * ''src/persistence/CLAUDE.md'' * ''infra/CLAUDE.md'' Claude vidí upozornění a pravidla přesně tehdy, když v daném místě pracuje. > Prompting is temporary. Structure is permanent. When your repo is organized this way, Claude stops behaving like a chatbot… and starts acting like a project-native engineer. ===== Zdroje ===== * [[https://x.com/BharukaShraddha/status/2029836408232497678|Shraddha Bharuka – The Anatomy of a Claude Code Project (X/Twitter)]]