熟能生巧
claude-code-best-practice 是一个专注于提升 Claude AI 编程助手使用效率的最佳实践指南库。该项目系统性地整理了如何通过“代理工程”来构建和管理复杂的 AI 工作流。其核心在于将任务分解为三种可组合的模块:子代理(Subagents)作为拥有独立身份和工具的自主执行者;命令(Commands)作为可注入现有上下文的用户调用模板;技能(Skills)作为可配置、可自动发现的可复用知识块。此外,项目还涵盖了工作流编排、事件钩子、以及通过 MCP 协议连接外部工具等方法。这套实践旨在帮助开发者,特别是那些进行“氛围编码”或构建智能体应用的工程师,更高效、结构化地利用 Claude Code,将简单的提示交互升级为可维护、可扩展的自动化系统。
💡 应用场景
这个项目最适合需要将Claude AI从简单的对话助手升级为可编程、可扩展、可维护的自动化编码伙伴的场景,特别是团队协作和复杂项目开发。
复杂任务自动化分解
问题:开发者需要Claude处理一个复杂的多步骤任务(如重构整个代码库),但单次提示难以清晰描述所有要求,且Claude容易在长对话中迷失上下文。
方案:使用项目的子代理(Subagents)概念,为重构任务创建专门的“重构专家”代理,配置其工具、权限和记忆,让它在独立上下文中专注执行特定子任务。
示例:创建一个`.claude/agents/refactor-agent.md`,定义该代理专门负责代码重构,拥有访问文件系统、运行测试的权限,并配置其记忆规则,然后通过工作流编排让多个这样的子代理协作完成大型重构。
团队共享AI工作流
问题:团队中每个成员都在重复编写相似的Claude提示来执行常见任务(如生成API文档、代码审查),导致效率低下且质量参差不齐。
方案:利用项目的技能(Skills)和命令(Commands)机制,将团队的最佳实践封装成可复用的知识块和模板,放入项目仓库的`.claude/`目录中,实现自动发现和共享。
示例:将“生成Swagger风格API文档”的提示模板保存为`.claude/skills/api-doc/SWAGGER_DOC.md`技能,团队成员只需在对话中提及`@api-doc`,Claude就会自动加载并使用这个标准化模板。
连接外部工具和数据
问题:开发者希望Claude在编码时能实时查询数据库、调用内部API或使用特定开发工具,但Claude本身无法直接访问这些外部资源。
方案:通过项目介绍的MCP(Model Context Protocol)服务器配置,将外部工具(数据库、API、内部系统)安全地暴露给Claude,使其能在编码上下文中直接使用这些工具。
示例:配置一个连接公司内部JIRA的MCP服务器,当Claude编写与特定任务相关的代码时,可以自动查询JIRA获取任务详情、验收标准,确保代码符合需求。
维护长期项目记忆
问题:在长期项目中,开发者需要Claude记住项目的架构决策、技术债务、特定约定等上下文,但Claude的对话记忆有限且易丢失。
方案:使用项目的记忆系统,通过`CLAUDE.md`文件、规则目录(`.claude/rules/`)和项目特定记忆文件夹,为Claude建立持久化的项目上下文记忆。
示例:在项目根目录创建`CLAUDE.md`记录核心架构,在`.claude/rules/`中放置编码规范文件,Claude在每次会话开始时都会自动加载这些记忆,保持对项目长期背景的理解。
📊 项目信息
- 语言
- HTML
- Stars
- ⭐ 55,187
- Forks
- 5,547
- 今日新增
- +177
- 排名
- #9
- 收录
- 语言榜
- 趋势日期
- 2026年5月27日
- 最后推送
- 2026/5/27
🏷️ 标签
难度
初级
预计时间
3-5小时
目标人群
对AI编程助手(特别是Claude Code)感兴趣,希望从简单的提示交互转向结构化、自动化工作流的开发者。适合有一定编程基础,但可能是第一次接触“代理工程”概念的初学者。
🎯 学完你将掌握
你将学会如何将Claude Code从一个聊天工具,升级为一个可编排、可扩展的自动化开发系统,掌握子代理、命令、技能等核心模块的创建与使用。
📋 前置知识
你需要知道如何安装和启动Claude Code,并能通过简单的文本提示让它帮你完成基础的编程任务(如写代码、解释代码)。这是使用本项目所有高级功能的基础。
项目中的配置文件和模块通常存放在`.claude`目录下,了解Git的基本操作(如克隆仓库、查看文件)有助于你更好地探索和部署这些配置。
Claude Code主要通过命令行启动,并且很多高级功能(如CLI标志、Hooks脚本)需要在终端中操作。
📚 学习资源
Anthropic Claude Code 官方文档
最权威的功能说明和基础教程,是理解所有最佳实践的基石。
本项目 `best-practice/` 目录下的Markdown文件
针对子代理、命令、技能等核心概念的详细最佳实践指南,是项目的精华所在。
Boris Cherny (Claude Code创造者) 的X(Twitter)
README中引用了大量他的推文。关注他可以获得第一手的新功能公告、使用技巧和设计哲学。
`implementation/` 目录下的实现示例
提供了子代理、定时任务等功能的具体实现代码,适合在理解概念后进行模仿。
🗺️ 学习阶段
环境准备与概念理解
确认Claude Code已安装
打开终端,运行 `claude --version` 或直接输入 `claude`,确保Claude Code可以正常启动。如果未安装,请前往Anthropic官网下载安装。
克隆并浏览项目仓库
在GitHub上找到 `shanraisshan/claude-code-best-practice` 仓库,将其克隆到本地,或直接在线浏览README和目录结构。重点关注 `.claude/` 目录下的结构。
理解三大核心概念
阅读README中关于 Subagents(子代理)、Commands(命令)、Skills(技能)的简要描述。记住:子代理是独立的“员工”,命令是“快捷指令”,技能是“可复用的知识包”。
快速上手:创建你的第一个命令
在项目中创建 .claude 目录
在你自己的一个项目根目录下,创建一个名为 `.claude` 的隐藏文件夹。这是Claude Code读取配置的标准位置。
创建第一个命令文件
在 `.claude` 目录下创建 `commands` 文件夹,然后在其中创建一个 `.md` 文件,例如 `explain-code.md`。文件内容可以是一个简单的提示模板,如:“请用通俗的语言解释以下代码: ``` {{code}} ```”
在Claude Code中调用命令
启动Claude Code并进入你创建了 `.claude/commands` 目录的项目。在聊天输入框中,输入 `/`,你应该能看到你刚创建的 `explain-code` 命令出现在列表中。选择它,然后按照提示输入一段代码进行测试。
核心模块实践:技能与子代理
探索并创建一个简单技能
参考项目中的 `best-practice/claude-skills.md` 文档。在 `.claude/skills/` 目录下创建一个子文件夹(如 `my-first-skill`),并在其中创建 `SKILL.md` 文件。内容可以定义一些关于你常用技术栈(如React、Python)的编码规范或最佳实践。
了解子代理的配置
阅读 `best-practice/claude-subagents.md`。子代理配置更复杂,初期建议以理解为主。浏览项目 `.claude/agents/` 下的示例文件,了解一个子代理如何定义自己的身份、职责和可用工具。
尝试一个预设工作流
查看项目中的 `orchestration-workflow/orchestration-workflow.md` 以及 `development-workflows/` 下的内容。选择一个简单的预设工作流(如“Superpowers”或“Get Shit Done”),按照其说明,在你的 `.claude/commands/` 目录下创建对应的计划命令文件。
进阶探索与个性化
配置基础设置
在 `.claude/` 目录下创建 `settings.json` 文件。参考项目的 `.claude/settings.json` 示例或 `best-practice/claude-settings.md`,设置一些基本选项,比如默认模型、权限模式(可以先设为 `auto` 体验自动模式)。
浏览“热门功能”与“技巧”
翻阅README的“🔥 Hot”功能列表和“💡 TIPS AND TRICKS”部分。选择1-2个你感兴趣的功能深入了解,例如“Simplify & Batch”(简化与批量操作)或“Voice Dictation”(语音输入)。
规划你的下一个实践项目
基于所学,设想一个你想用Claude Code自动化的小任务。例如:自动为新增的API接口生成测试用例。思考这个任务需要组合使用命令、技能还是子代理。
⚠️ 常见错误
❌ 混淆“命令”和“技能”。
✅ 记住:命令(Commands)是用户主动调用的“动作”,以 `/` 开头;技能(Skills)是Claude在对话中自动调用的“知识”,用于丰富上下文。命令更偏向流程控制,技能更偏向知识库。
❌ 将配置文件放在错误的位置。
✅ 所有 `.claude/` 目录下的配置(agents, commands, skills, settings.json)都必须放在你希望Claude Code生效的“项目根目录”下,而不是克隆的本指南仓库里。每个项目都可以有自己的个性化配置。
❌ 过度设计,一开始就想创建复杂的子代理或工作流。
✅ 遵循“从命令开始”的路径。先用命令解决一个具体的、重复的提示需求。熟练后,再将其中可复用的知识抽象成技能,最后再考虑是否需要独立的子代理来执行多步骤复杂任务。
❌ 修改配置后忘记重启Claude Code。
✅ Claude Code在启动时会加载配置。任何对 `.claude/` 目录下文件的增删改,都需要重启Claude Code(或至少重启当前会话)才能生效。
🚀 后续方向
1. 深入研究MCP协议:学习如何将外部工具(数据库、API)连接至Claude Code,极大扩展其能力边界。 2. 探索Hooks:实现事件驱动的自动化,如在文件保存后自动运行测试或格式化代码。 3. 参与社区:寻找并尝试他人分享的插件(Plugins),或将你自己打磨好的命令、技能打包分享。 4. 整合到团队流程:研究如何将Claude Code与GitHub Actions、Slack等工具结合,用于自动化代码审查、CI/CD等团队协作场景。


