Claude Code 最佳实践
从配置环境到跨并行会话扩展,充分利用 Claude Code 的提示和模式。
Claude Code 是一个代理式编码环境。与等待回答问题的聊天机器人不同,Claude Code 可以读取你的文件、运行命令、进行更改,并在你观看、重定向或完全离开的情况下自主解决问题。
核心约束:上下文窗口大多数最佳实践都基于一个约束:Claude 的上下文窗口填充速度很快,随着填充,性能会下降。
Claude 的上下文窗口保存你的整个对话,包括每条消息、Claude 读取的每个文件和每个命令输出。当上下文窗口即将满时,Claude 可能会开始”遗忘”早期的指令或犯更多错误。
给 Claude 一种验证其工作的方式当 Claude 能够验证自己的工作时,例如运行测试、比较屏幕截图和验证输出,它的表现会显著提高。
策略示例
策略
之前
之后
提供验证标准
“...
CLI 参考
CLI 参考
Claude Code 命令行界面的完整参考,包括命令和标志。
CLI 命令
命令
描述
示例
claude
启动交互式会话
claude
claude "query"
使用初始提示启动交互式会话
claude "explain this project"
claude -p "query"
通过 SDK 查询,然后退出
claude -p "explain this function"
cat file | claude -p "query"
处理管道内容
cat logs.txt | claude -p "explain"
claude -c
继续当前目录中最近的对话
claude -c
claude -c -p &...
常见工作流程
常见工作流程
使用 Claude Code 探索代码库、修复错误、重构、测试和其他日常任务的分步指南。
理解新代码库快速获取代码库概览
导航到项目根目录:cd /path/to/project
启动 Claude Code:claude
请求高级概览:give me an overview of this codebase
深入了解特定组件:
explain the main architecture patterns used here
what are the key data models?
how is authentication handled?
查找相关代码
要求 Claude 查找相关文件:find the files that handle user authentication
获取有关组件如何交互的上下文:how do these authenticat...
扩展 Claude Code
扩展 Claude Code
了解何时使用 CLAUDE.md、Skills、subagents、hooks、MCP 和 plugins。
概述扩展插入代理循环的不同部分:
CLAUDE.md 添加 Claude 每个会话都能看到的持久上下文
Skills 添加可重用的知识和可调用的工作流
MCP 将 Claude 连接到外部服务和工具
Subagents 在隔离的上下文中运行自己的循环,返回摘要
Agent teams 协调多个独立的 Claude Code 会话
Hooks 完全在循环外作为确定性脚本运行
Plugins 打包和分发这些功能
将功能与您的目标相匹配
功能
作用
何时使用
示例
CLAUDE.md
每次对话加载的持久上下文
项目约定、”始终执行 X” 规则
“使用 pnpm,而不是 npm。在提交前运行测试。”
Skill
Claude 可以使用...
使用 Hooks 自动化工作流
使用 hooks 自动化工作流
当 Claude Code 编辑文件、完成任务或需要输入时自动运行 shell 命令。
设置你的第一个 hook通过 /hooks 交互式菜单创建 hook:
在 Claude Code CLI 中输入 /hooks
选择 hook 事件(如 Notification)
配置匹配器(或保留为空以匹配所有)
添加要运行的命令
选择存储位置(用户设置或项目设置)
你可以自动化什么在 Claude 需要输入时获得通知macOS:
123456789101112131415{ "hooks": { "Notification": [ { "matcher": "", "hooks"...
通过 MCP 连接工具
通过 MCP 将 Claude Code 连接到工具
了解如何使用 Model Context Protocol 将 Claude Code 连接到您的工具。
使用 MCP 可以做什么连接 MCP servers 后,您可以要求 Claude Code:
从问题跟踪器实现功能:”添加 JIRA 问题 ENG-4521 中描述的功能,并在 GitHub 上创建 PR。”
分析监控数据:”检查 Sentry 和 Statsig 以检查 ENG-4521 中描述的功能的使用情况。”
查询数据库:”根据我们的 PostgreSQL 数据库,找到 10 个使用功能 ENG-4521 的随机用户的电子邮件。”
集成设计:”根据在 Slack 中发布的新 Figma 设计更新我们的标准电子邮件模板”
自动化工作流:”创建 Gmail 草稿,邀请这 10 个用户参加关于新功能的反馈会议。”
安...
记忆和 CLAUDE.md
Claude 如何记住你的项目
使用 CLAUDE.md 文件为 Claude 提供持久指令,并让 Claude 通过自动记忆自动积累学习。
每个 Claude Code 会话都从一个全新的上下文窗口开始。两种机制可以跨会话传递知识:
CLAUDE.md 文件:你编写的指令,为 Claude 提供持久上下文
自动记忆:Claude 根据你的更正和偏好自己编写的笔记
CLAUDE.md 与自动记忆对比
CLAUDE.md 文件
自动记忆
谁编写
你
Claude
包含内容
指令和规则
学习和模式
范围
项目、用户或组织
每个工作树
加载到
每个会话
每个会话(前 200 行)
用于
编码标准、工作流、项目架构
构建命令、调试见解、偏好
CLAUDE.md 文件选择 CLAUDE.md 文件的位置
范围
位置
目的
共享对象
托管策略
系统...
配置权限
配置权限
使用细粒度权限规则、模式和托管策略来控制 Claude Code 可以访问和执行的操作。
权限系统Claude Code 使用分层权限系统来平衡功能和安全性:
工具类型
示例
需要批准
“是,不再询问”行为
只读
文件读取、Grep
否
不适用
Bash 命令
Shell 执行
是
每个项目目录和命令永久有效
文件修改
Edit/Write 文件
是
直到会话结束
管理权限使用 /permissions 查看和管理 Claude Code 的工具权限:
Allow 规则让 Claude Code 使用指定的工具而无需手动批准
Ask 规则在 Claude Code 尝试使用指定工具时提示确认
Deny 规则防止 Claude Code 使用指定的工具
规则按顺序评估:deny -> ask -> allow。第一个匹配的规...
快速入门
快速入门
欢迎使用 Claude Code!
本快速开始指南将在几分钟内让您使用 AI 驱动的编码辅助。
开始前确保您拥有:
打开的终端或命令提示符
一个要处理的代码项目
一个 Claude 订阅或 Anthropic Console 账户
步骤 1:安装 Claude Code原生安装(推荐)macOS, Linux, WSL:
1curl -fsSL https://claude.ai/install.sh | bash
Windows PowerShell:
1irm https://claude.ai/install.ps1 | iex
Windows CMD:
1curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install....
Claude Code 设置
Claude Code 设置
使用全局和项目级设置以及环境变量配置 Claude Code。
配置作用域Claude Code 使用作用域系统来确定配置应用的位置以及与谁共享。
可用作用域
作用域
位置
影响范围
与团队共享?
Managed
服务器管理的设置、plist / 注册表
机器上的所有用户
是(由 IT 部署)
User
~/.claude/ 目录
您,跨所有项目
否
Project
存储库中的 .claude/
此存储库上的所有协作者
是(提交到 git)
Local
.claude/*.local.* 文件
您,仅在此存储库中
否(gitignored)
作用域优先级当在多个作用域中配置相同的设置时,更具体的作用域优先:
Managed(最高)- 无法被任何内容覆盖
命令行参数 - 临时会话覆盖
Local - 覆盖项目和用户设...
创建自定义 subagents
创建自定义 subagents
在 Claude Code 中创建和使用专门的 AI subagents,用于特定任务的工作流和改进的上下文管理。
什么是 SubagentsSubagents 是处理特定类型任务的专门 AI 助手。每个 subagent 在自己的 context window 中运行,具有:
自定义系统提示
特定的工具访问权限
独立的权限
Subagents 帮助您
保留上下文:将探索和保持在主对话之外
强制执行约束:限制 subagent 可以使用的工具
跨项目重用配置:使用用户级 subagents
专门化行为:为特定领域使用专注的系统提示
控制成本:将任务路由到更快、更便宜的模型
内置 subagentsExplore
Model: Haiku(快速、低延迟)
Tools: 只读工具
Purpose: 文件发现、代码搜索、代码库探索
Plan
Mod...
故障排除
故障排除
发现 Claude Code 安装和使用中常见问题的解决方案。
安装问题常见错误消息
错误
解决方案
command not found: claude
修复 PATH
syntax error near unexpected token '<'
安装脚本返回 HTML
curl: (56) Failure writing output to destination
先下载脚本,然后运行
Linux 上安装期间 Killed
添加交换空间
TLS connect error
更新 CA 证书
Failed to fetch version
检查网络连接
Invoke-Expression: Missing argument
使用正确的 shell
调试步骤检查网络连接验证可以访问 Google Cloud Sto...