Agent skill

claude-md

Create or update CLAUDE.md files following best practices for optimal AI agent onboarding

Stars 16,343
Forks 1,898

Install this agent skill to your Project

npx add-skill https://github.com/luongnv89/claude-howto/tree/main/03-skills/claude-md

SKILL.md

User Input

text
$ARGUMENTS

You MUST consider the user input before proceeding (if not empty). User may specify:

  • create - Create new CLAUDE.md from scratch
  • update - Improve existing CLAUDE.md
  • audit - Analyze and report on current CLAUDE.md quality
  • A specific path to create/update (e.g., src/api/CLAUDE.md for directory-specific instructions)

Core Principles

LLMs are stateless: CLAUDE.md is the only file automatically included in every conversation. It serves as the primary onboarding document for AI agents into your codebase.

The Golden Rules

  1. Less is More: Frontier LLMs can follow ~150-200 instructions. Claude Code's system prompt already uses ~50. Keep your CLAUDE.md focused and concise.

  2. Universal Applicability: Only include information relevant to EVERY session. Task-specific instructions belong in separate files.

  3. Don't Use Claude as a Linter: Style guidelines bloat context and degrade instruction-following. Use deterministic tools (prettier, eslint, etc.) instead.

  4. Never Auto-Generate: CLAUDE.md is the highest leverage point of the AI harness. Craft it manually with careful consideration.

Execution Flow

1. Project Analysis

First, analyze the current project state:

  1. Check for existing CLAUDE.md files:

    • Root level: ./CLAUDE.md or .claude/CLAUDE.md
    • Directory-specific: **/CLAUDE.md
    • Global user config: ~/.claude/CLAUDE.md
  2. Identify the project structure:

    • Technology stack (languages, frameworks)
    • Project type (monorepo, single app, library)
    • Development tools (package manager, build system, test runner)
  3. Review existing documentation:

    • README.md
    • CONTRIBUTING.md
    • package.json, pyproject.toml, Cargo.toml, etc.

2. Content Strategy (WHAT, WHY, HOW)

Structure CLAUDE.md around three dimensions:

WHAT - Technology & Structure

  • Technology stack overview
  • Project organization (especially important for monorepos)
  • Key directories and their purposes

WHY - Purpose & Context

  • What the project does
  • Why certain architectural decisions were made
  • What each major component is responsible for

HOW - Workflow & Conventions

  • Development workflow (bun vs node, pip vs uv, etc.)
  • Testing procedures and commands
  • Verification and build methods
  • Critical "gotchas" or non-obvious requirements

3. Progressive Disclosure Strategy

For larger projects, recommend creating an agent_docs/ folder:

agent_docs/
  |- building_the_project.md
  |- running_tests.md
  |- code_conventions.md
  |- architecture_decisions.md

In CLAUDE.md, reference these files with instructions like:

markdown
For detailed build instructions, refer to `agent_docs/building_the_project.md`

Important: Use file:line references instead of code snippets to avoid outdated context.

4. Quality Constraints

When creating or updating CLAUDE.md:

  1. Target Length: Under 300 lines (ideally under 100)
  2. No Style Rules: Remove any linting/formatting instructions
  3. No Task-Specific Instructions: Move to separate files
  4. No Code Snippets: Use file references instead
  5. No Redundant Information: Don't repeat what's in package.json or README

5. Essential Sections

A well-structured CLAUDE.md should include:

markdown
# Project Name

Brief one-line description.

## Tech Stack
- Primary language and version
- Key frameworks/libraries
- Database/storage (if any)

## Project Structure
[Only for monorepos or complex structures]
- `apps/` - Application entry points
- `packages/` - Shared libraries

## Development Commands
- Install: `command`
- Test: `command`
- Build: `command`

## Critical Conventions
[Only non-obvious, high-impact conventions]
- Convention 1 with brief explanation
- Convention 2 with brief explanation

## Known Issues / Gotchas
[Things that consistently trip up developers]
- Issue 1
- Issue 2

6. Anti-Patterns to Avoid

DO NOT include:

  • Code style guidelines (use linters)
  • Documentation on how to use Claude
  • Long explanations of obvious patterns
  • Copy-pasted code examples
  • Generic best practices ("write clean code")
  • Instructions for specific tasks
  • Auto-generated content
  • Extensive TODO lists

7. Validation Checklist

Before finalizing, verify:

  • Under 300 lines (preferably under 100)
  • Every line applies to ALL sessions
  • No style/formatting rules
  • No code snippets (use file references)
  • Commands are verified to work
  • Progressive disclosure used for complex projects
  • Critical gotchas are documented
  • No redundancy with README.md

Output Format

For create or default:

  1. Analyze the project
  2. Draft a CLAUDE.md following the structure above
  3. Present the draft for review
  4. Write to the appropriate location after approval

For update:

  1. Read existing CLAUDE.md
  2. Audit against best practices
  3. Identify:
    • Content to remove (style rules, code snippets, task-specific)
    • Content to condense
    • Missing essential information
  4. Present changes for review
  5. Apply changes after approval

For audit:

  1. Read existing CLAUDE.md
  2. Generate a report with:
    • Current line count vs target
    • Percentage of universally-applicable content
    • List of anti-patterns found
    • Recommendations for improvement
  3. Do NOT modify the file, only report

AGENTS.md Handling

If the user requests AGENTS.md creation/update:

AGENTS.md is used for defining specialized agent behaviors. Unlike CLAUDE.md (which is for project context), AGENTS.md defines:

  • Custom agent roles and capabilities
  • Agent-specific instructions and constraints
  • Workflow definitions for multi-agent scenarios

Apply similar principles:

  • Keep focused and concise
  • Use progressive disclosure
  • Reference external docs instead of embedding content

Notes

  • Always verify commands work before including them
  • When in doubt, leave it out - less is more
  • The system reminder tells Claude that CLAUDE.md "may or may not be relevant" - the more noise, the more it gets ignored
  • Monorepos benefit most from clear WHAT/WHY/HOW structure
  • Directory-specific CLAUDE.md files should be even more focused

Expand your agent's capabilities with these related and highly-rated skills.

luongnv89/claude-howto

self-assessment

Comprehensive Claude Code self-assessment and learning path advisor. Runs a multi-category quiz covering 10 feature areas, produces a detailed skill profile with per-topic scores, identifies specific gaps, and generates a personalized learning path with prioritized next steps. Use when asked to "assess my level", "take the quiz", "find my level", "where should I start", "what should I learn next", "check my skills", "skill check", or "level up".

16,343 1,898
Explore
luongnv89/claude-howto

lesson-quiz

Interactive lesson-level quiz for Claude Code tutorials. Tests understanding of a specific lesson (01-10) with 8-10 questions mixing conceptual and practical knowledge. Use before a lesson to pre-test, during to check progress, or after to verify mastery. Use when asked to "quiz me on hooks", "test my knowledge of lesson 3", "lesson quiz", "practice quiz for MCP", or "do I understand skills".

16,343 1,898
Explore
luongnv89/claude-howto

brand-voice-consistency

Ensure all communication matches brand voice and tone guidelines. Use when creating marketing copy, customer communications, public-facing content, or when users mention brand voice, tone, or writing style.

16,343 1,898
Explore
luongnv89/claude-howto

code-review-specialist

Comprehensive code review with security, performance, and quality analysis. Use when users ask to review code, analyze code quality, evaluate pull requests, or mention code review, security analysis, or performance optimization.

16,343 1,898
Explore
luongnv89/claude-howto

api-documentation-generator

Generate comprehensive, accurate API documentation from source code. Use when creating or updating API documentation, generating OpenAPI specs, or when users mention API docs, endpoints, or documentation.

16,343 1,898
Explore
luongnv89/claude-howto

code-refactor

Systematic code refactoring based on Martin Fowler's methodology. Use when users ask to refactor code, improve code structure, reduce technical debt, clean up legacy code, eliminate code smells, or improve code maintainability. This skill guides through a phased approach with research, planning, and safe incremental implementation.

16,343 1,898
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results