claude-md

GitHub

指导创建、更新或审计 CLAUDE.md 文件,确保符合最佳实践以优化 AI Agent 的代码库接入。

03-skills/claude-md/SKILL.md luongnv89/claude-howto

Trigger Scenarios

需要初始化项目AI配置 优化现有CLAUDE.md内容 检查CLAUDE.md质量

Install

npx skills add luongnv89/claude-howto --skill claude-md -g -y
More Options

Non-standard path

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

Use without installing

npx skills use luongnv89/claude-howto@claude-md

指定 Agent (Claude Code)

npx skills add luongnv89/claude-howto --skill claude-md -a claude-code -g -y

安装 repo 全部 skill

npx skills add luongnv89/claude-howto --all -g -y

预览 repo 内 skill

npx skills add luongnv89/claude-howto --list

SKILL.md

Frontmatter
{
    "name": "claude-md",
    "description": "Create or update CLAUDE.md files following best practices for optimal AI agent onboarding"
}

User Input

$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 main project file loaded into every conversation (alongside auto memory and unscoped rules). 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:

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: Keep it under a few hundred lines; shorter is better
  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:

# 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:

  • Kept under a few hundred lines; shorter is better
  • 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:

Since v2.1.277, Claude Code reads AGENTS.md directly as project instructions — but only when the working directory and every directory above it contain no CLAUDE.md, .claude/CLAUDE.md, or CLAUDE.local.md. ~/.claude/CLAUDE.md, managed CLAUDE.md, and .claude/rules/ do not count for that check and keep loading alongside. Which files are read is controlled by Project instructions in /config: claude-md-or-agents-md (default), claude-md-and-agents-md, claude-md, or managed-only. Where direct reading is unavailable — versions before v2.1.277 (before v2.1.281 on Bedrock/Vertex/Foundry, LLM gateways, or with telemetry disabled), or the first session after upgrading — fall back to importing it from CLAUDE.md with @AGENTS.md, or symlinking CLAUDE.md to it.

AGENTS.md is a cross-tool project-context file — the same category of document as CLAUDE.md, not an agent-definition format. It exists so several coding agents can share one set of project conventions:

  • Build, test, and lint commands
  • Code style and architectural conventions
  • Repository layout and where things live

Subagents are defined separately, in .claude/agents/*.md — not in AGENTS.md.

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

Last Updated: October 15, 2026 Claude Code Version: 2.1.300 Sources:

Version History

  • f24cc80 Current 2026-10-19 08:59

    同步至 Claude Code v2.1.300,修正命令匹配及插件评估等漂移问题。

  • 4f57038 2026-09-28 01:49

    同步至 Claude Code v2.1.283,修复因版本变更导致的过时声明,调整模型默认值及命令别名说明。

  • 8aeb5a7 2026-09-22 14:17

    同步至Claude Code v2.1.278,修正了关于AGENTS.md读取行为、已移除命令及权限规则的过时描述,并更新了功能可用性说明。

  • 1c04dbf 2026-08-20 01:24

    修复示例代码错误、依赖检查脚本逻辑、数据库配置变量;更正命令模板名称、权限设置及钩子事件数量等事实性错误;修复翻译表计数及未平衡的代码块标记。

  • 97fc961 2026-07-25 07:26

Same Skill Collection

.claude/skills/lesson-quiz/SKILL.md
.claude/skills/self-assessment/SKILL.md
03-skills/blog-draft/SKILL.md
03-skills/brand-voice/SKILL.md
03-skills/code-review-specialist/SKILL.md
03-skills/doc-generator/SKILL.md
03-skills/refactor/SKILL.md
uk/03-skills/blog-draft/SKILL.md
uk/03-skills/brand-voice/SKILL.md
uk/03-skills/claude-md/SKILL.md
uk/03-skills/code-review-specialist/SKILL.md
uk/03-skills/doc-generator/SKILL.md
uk/03-skills/refactor/SKILL.md
vi/03-skills/blog-draft/SKILL.md
vi/03-skills/brand-voice/SKILL.md
vi/03-skills/claude-md/SKILL.md
vi/03-skills/code-review-specialist/SKILL.md
vi/03-skills/refactor/SKILL.md
zh/03-skills/blog-draft/SKILL.md
zh/03-skills/brand-voice/SKILL.md
zh/03-skills/code-review-specialist/SKILL.md
zh/03-skills/doc-generator/SKILL.md
zh/03-skills/refactor/SKILL.md
zh/03-skills/claude-md/SKILL.md

Metadata

Files
0
Version
f24cc80
Hash
3c3309bb
Indexed
2026-07-25 07:26

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-02 20:45
浙ICP备14020137号-1