复制下面这句话,粘贴给 Claude Code、Codex、Cursor 等 AI 编程工具,它会读取安装说明并在你确认后完成安装。
请阅读 https://ai.atlankj.com/install/asset/gh-claude-md-0cf2a25442d6 ,按照其中的说明把「claude-md」安装到你(当前 AI 工具)中。执行前先告诉我将运行的命令和写入的位置,等我确认。
查看 AI 将读取的安装说明正在读取 GitHub 原文…
内容来自 GitHub 原始文件,由原作者维护。在 GitHub 查看
$ARGUMENTS
在继续之前,你必须先考虑用户输入(如果不为空)。用户可能会指定:
create - 从零创建新的 CLAUDE.mdupdate - 改进已有的 CLAUDE.mdaudit - 分析并报告当前 CLAUDE.md 的质量src/api/CLAUDE.md 代表目录级说明)LLM 是无状态的:CLAUDE.md 是每次对话中唯一会自动包含的文件。它是让 AI agent 了解代码库的主要入门文档。
少即是多:前沿 LLM 大约能遵循 150-200 条指令。Claude Code 的系统提示词本身已经占了大约 50 条,因此 CLAUDE.md 必须聚焦且简洁。
只放通用信息:只包含每次会话都适用的内容。任务特定的说明应该放在单独文件里。
不要把 Claude 当成 lint 工具:风格指南会膨胀上下文并降低指令遵循效果。应改用确定性工具(如 prettier、eslint 等)。
绝不自动生成:CLAUDE.md 是 AI harness 中杠杆最高的位置。应该经过认真思考后手工编写。
首先分析当前项目状态:
检查是否存在已有的 CLAUDE.md 文件:
./CLAUDE.md 或 .claude/CLAUDE.md**/CLAUDE.md~/.claude/CLAUDE.md识别项目结构:
查看已有文档:
围绕三个维度组织 CLAUDE.md:
对于较大的项目,建议创建 agent_docs/ 文件夹:
agent_docs/
|- building_the_project.md
|- running_tests.md
|- code_conventions.md
|- architecture_decisions.md
在 CLAUDE.md 中引用这些文件,并写明:
关于详细的构建说明,请参考 `agent_docs/building_the_project.md`
重要:使用 file:line 引用,而不是代码片段,以避免上下文过时。
创建或更新 CLAUDE.md 时:
一个结构良好的 CLAUDE.md 应包含:
# 项目名称
一句简短的项目描述。
## 技术栈
- 主语言和版本
- 关键框架/库
- 数据库/存储(如有)
## 项目结构
[仅适用于 monorepo 或复杂结构]
- `apps/` - 应用入口
- `packages/` - 共享库
## 开发命令
- 安装:`command`
- 测试:`command`
- 构建:`command`
## 关键约定
[只保留非显而易见、高影响的约定]
- 约定 1,简要说明
- 约定 2,简要说明
## 已知问题 / 坑点
[经常让开发者踩坑的内容]
- 问题 1
- 问题 2
不要包含:
在最终确定前,检查:
create 或默认模式:update:audit:如果用户请求创建或更新 AGENTS.md:
从 v2.1.277 起,Claude Code 会直接把 AGENTS.md 作为项目指令读取。 但前提是工作目录以及它上面的每一级目录都没有 CLAUDE.md、.claude/CLAUDE.md 或 CLAUDE.local.md。~/.claude/CLAUDE.md、受管理的 CLAUDE.md 和 .claude/rules/ 不计入这项检查,它们仍会一并加载。该行为由 /config 中的 Project instructions 控制:claude-md-or-agents-md(默认)、claude-md-and-agents-md、claude-md、managed-only。在无法直接读取的环境中 — v2.1.277 之前的版本(在 Bedrock/Vertex/Foundry、LLM 网关或关闭遥测的情况下为 v2.1.281 之前),或升级后的第一个会话 — 退回到在 CLAUDE.md 中用 @AGENTS.md 导入,或者把 CLAUDE.md 软链接到它。
AGENTS.md 是一个跨工具的项目上下文文件 — 和 CLAUDE.md 属于同一类文档,而不是 agent 定义格式。它的存在是为了让多个编码 agent 共用同一套项目约定:
Subagents 是单独定义的,放在 .claude/agents/*.md 里 — 不在 AGENTS.md 中。
同样适用以下原则: