Skip to main content

claude-md-writer

Write CC-optimal CLAUDE.md and CLAUDE.local.md files. Use when creating, reviewing, or improving any CLAUDE.md — global, project-level, or local. Covers section authoring, compression, dedup boundaries, and quality scoring.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
anilcancakir/claude-code-plugin
آخر نشاط في المصدر
١٧ أبريل ٢٠٢٦ في ١٦:٠٧
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٢
التفرعات
١

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
3 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
claude-md-writer
description
Write CC-optimal CLAUDE.md and CLAUDE.local.md files. Use when creating, reviewing, or improving any CLAUDE.md — global, project-level, or local. Covers section authoring, compression, dedup boundaries, and quality scoring.
when_to_use
TRIGGER when: 'write CLAUDE.md', 'improve CLAUDE.md', 'review CLAUDE.md', 'create project instructions', working with any CLAUDE.md or CLAUDE.local.md file. DO NOT TRIGGER: writing skills, agents, commands, or rules (use respective creator skills).
effort
medium
# CLAUDE.md Writer Write CLAUDE.md files that Claude Code actually follows. Every line must earn its place — CLAUDE.md loads every conversation turn, consuming context window tokens each time. ## How CC Loads CLAUDE.md CLAUDE.md is delivered as a **user message after the system prompt** — advisory context, not enforced configuration. Adherence degrades with file length and conflicting rules. **Loading order** (lowest → highest priority): 1. Managed policy (`/Library/Application Support/ClaudeCode/CLAUDE.md`) — org-wide, cannot exclude 2. User global (`~/.claude/CLAUDE.md` + `~/.claude/rules/`) 3. Project walkup — from working dir upward: `./CLAUDE.md` + `./.claude/CLAUDE.md` + `./.claude/rules/` at each level 4. Local (`./CLAUDE.local.md`) — personal, not git-tracked 5. Additional dirs (via `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` env var) Subdirectory CLAUDE.md files lazy-load when Claude touches files in that directory. **Compaction**: CLAUDE.md survives `/compact` — re-read from disk and re-injected. Conversation-only instructions are lost. **Import syntax**: `@path/to/file` pulls in additional files. Max 5 hops. Relative paths resolve from the importing file. ## Size Limits | File | Target | Hard limit | |------|--------|------------| | Global `~/.claude/CLAUDE.md` | ≤120 lines | 40K chars (CC warning) | | Project `./CLAUDE.md` | ≤120 lines (~2500 tokens) | 40K chars (CC warning) | | `CLAUDE.local.md` | ≤50 lines | Same | | `MEMORY.md` | ≤200 lines or 25KB | Hard truncation | Shorter files = better adherence. Over 200 lines, instruction-following drops measurably. ## Core Principles - **Compression-first**: Every token costs every turn. One-liner per concept when possible - **Non-obvious only**: If Claude can infer it from reading code, don't state it - **Actionable**: Commands copy-paste-ready, paths real, steps concrete - **Project-specific**: Generic advice ("write tests", "use meaningful names") is noise - **Dedup-aware**: Don't repeat what CC system prompt or higher-level CLAUDE.md already provides ## File Type Guide ### Global CLAUDE.md (`~/.claude/CLAUDE.md`) Personal development partner configuration. Loaded in every CC session across all projects. **Sections** (in order): 1. **Identity** — Communication style, expertise assumption, language rule (3-4 lines) 2. **Tech Stack** — Backend, mobile, frontend, infra, environment. Remove unused lines 3. **Workflow** — Intent routing, delegation, research, execution, verification patterns 4. **Skills** — Table of detected skills with trigger descriptions 5. **MCP** — Enabled servers with one-line capabilities 6. **LSP** — Conditional on detected plugins 7. **Rules** — 3-5 imperatives. Defer detailed rules to `my-coding` skill **Compression-critical**: Workflow section (Intent Gate table + Research delegation) must survive verbatim — these are routing anchors that CC uses to decide how to act. ### Project CLAUDE.md (`./CLAUDE.md`) Project-specific context. Loaded in every conversation within this project directory. **Sections** (in order — include only if content discovered): 1. **Header** — Project name + one-line mission 2. **Commands** — Copy-paste-ready table (build, test, lint, dev) 3. **Architecture** — Annotated tree, depth 2, non-obvious purpose only 4. **Key Files** — Entry points, critical configs Claude wouldn't find easily 5. **Code Style** — Imperative conventions from project source (NOT generic) 6. **Testing** — Test commands + patterns 7. **Gotchas** — Non-obvious quirks, anti-patterns from source comments 8. **Skills & Extensions** — Approved references only **Dedup boundary**: NEVER duplicate global CLAUDE.md content (workflow, identity, tech stack, coding rules). Project = project-specific facts only. ### CLAUDE.local.md Personal project-specific preferences — gitignored. Appended after CLAUDE.md at same directory level (wins on conflict). **Use for**: Local URLs, sandbox endpoints, preferred test data, personal workflow shortcuts. Keep under 50 lines. ### .claude/rules/ Files Path-scoped conventions that inject when matching files are touched. - **Unconditional** (no frontmatter): loaded at launch alongside CLAUDE.md - **Path-scoped** (with `paths` frontmatter): inject only when matching files are opened - Use for detailed coding conventions that only matter for specific file patterns **Boundary**: Generic project conventions → CLAUDE.md. File-path-specific conventions → rules. ## Section Authoring Patterns ### Commands Section ```markdown ## Commands | Command | Description | |---------|-------------| | `npm run build` | Production build with optimization | | `npm test -- --watch` | Run tests in watch mode | ``` - Copy-paste-ready — exact command, not descriptions of commands - Skip obvious (`npm install`, `git clone`) - Include flags that matter (`--watch`, `--coverage`, `--runInBand`) ### Architecture Section ```markdown ## Architecture ``` src/ api/ # REST endpoints — one file per resource services/ # Business logic layer — no HTTP concerns models/ # Sequelize models with custom scopes jobs/ # Background job processors (Bull queues) ``` ``` - Depth 2 max — Claude can explore deeper with Glob - Annotate only directories whose purpose isn't obvious from name - Skip `node_modules/`, `dist/`, `.git/`, config dirs with clear names ### Code Style Section Good — project-specific, imperative, verifiable: ```markdown - Use barrel exports (`index.ts`) in every module directory - Prefer `readonly` arrays — use `ReadonlyArray<T>` not `T[]` for function params - Error responses use `AppError` class from `src/errors.ts` — never raw Error ``` Bad — generic, vague, unverifiable: ```markdown - Follow clean code principles - Use descriptive variable names - Handle errors properly ``` ### Gotchas Section Good — non-obvious, prevents debugging: ```markdown - Migrations auto-run at boot — never modify existing migration files, create new ones - `NEXT_PUBLIC_*` vars must be set at BUILD time, not runtime - Tests must run sequentially (`--runInBand`) due to shared DB state ``` Bad — obvious, generic: ```markdown - Be careful with database migrations - Environment variables must be configured - Tests should be independent ``` ### Key Files Section Good — entry points Claude wouldn't find: ```markdown - `src/bootstrap.ts` — Server bootstrap, DI container setup. Import order matters - `config/features.yml` — Feature flags. Changes require restart ``` Bad — discoverable or obvious: ```markdown - `package.json` — Node.js configuration - `src/index.ts` — Application entry point ``` ## Emphasis for Adherence Adding emphasis tokens improves instruction-following in longer files: ```markdown IMPORTANT: Always use pnpm, not npm. YOU MUST run tests before committing. ``` Use sparingly — if everything is IMPORTANT, nothing is. Reserve for rules where violation causes real damage. ## Quality Scoring Score each criterion (from Anthropic's official rubric): | Criterion | Weight | What earns full score | |-----------|--------|-----------------------| | Commands/Workflows | 20pts | All essential commands with context | | Architecture Clarity | 20pts | Key dirs explained, entry points identified | | Non-Obvious Patterns | 15pts | Gotchas, workarounds, "why we do it this way" | | Conciseness | 15pts | Dense content, no filler, no obvious info | | Currency | 15pts | Commands work, file refs accurate, stack current | | Actionability | 15pts | Copy-paste ready, concrete steps, real paths | **Red flags**: Commands that would fail, references to deleted files, outdated tech versions, generic advice, unfinished TODOs, duplicate info across files. ## Quality Checklist Before finalizing any CLAUDE.md: - Every line answers: "Would removing this cause Claude to make mistakes?" - No content already in higher-level CLAUDE.md (project files) - No obvious instructions or generic best practices - No file listings discoverable via Glob or LS - No setup/installation steps (use README for that) - No verbose multi-line explanations (one-liner per concept) - Architecture uses annotated tree, non-obvious only - Code Style conventions are imperative and verifiable - Gotchas are non-obvious quirks from actual codebase - Commands are copy-paste-ready with real flags - Token budget verified (global ≤120 lines, project ≤2500 tokens) - No conflicting rules across files (Claude picks arbitrarily on conflict) ## References | Topic | File | When to read | |-------|------|-------------| | Section patterns | [claude-md-patterns.md](references/claude-md-patterns.md) | Before writing — complete section templates, good/bad examples, monorepo patterns | | CLAUDE.md dedup | [claude-md-dedup-guide.md](references/claude-md-dedup-guide.md) | Before writing — dedup boundaries between global/project/rules/my-coding/CC system prompt | | CC dedup (general) | `${CLAUDE_SKILL_DIR}/../prompt-writer/references/cc-dedup-guide.md` | When checking what CC system prompt already provides |
عرض على GitHub