Claude Code 使用指南:安装、CLAUDE.md 配置与 Skills 实战
Claude Code 是运行在终端里的 AI 编程助手。与网页版 Claude 不同,它能直接读写项目文件、执行 shell 命令、操作 git,不需要你手动复制粘贴代码和输出。
安装
需要 Node.js 18 或以上版本。
# 检查 Node.js 版本node -v
# 全局安装 Claude Codenpm install -g @anthropic-ai/claude-code
# 验证安装claude --version首次运行需要登录 Anthropic 账号:
claude# 终端会输出一个授权 URL,在浏览器里打开并授权授权完成后,终端直接进入交互模式,可以开始对话。
基本用法
交互模式
在项目根目录运行 claude,进入持续对话的交互模式:
cd your-projectclaude# 进入交互模式,Claude 自动读取目录结构Claude Code 启动时会扫描当前目录的文件结构,不需要手动描述项目布局。
单次命令模式
直接在命令后跟问题,执行后退出:
claude "review the changes I just made"claude "the test in auth.test.ts is failing, fix it"claude "找出所有没有处理错误的 async 函数"常用交互指令
在交互模式下可以用斜杠命令:
| 指令 | 说明 |
|---|---|
/help | 查看所有可用指令 |
/clear | 清除当前对话上下文 |
/compact | 压缩上下文,保留关键信息节省 token |
/cost | 查看当前会话的 token 消耗 |
/exit | 退出交互模式 |
CLAUDE.md:项目级持久指令
在项目根目录放 CLAUDE.md,Claude Code 每次启动时自动加载,不需要每次重复说明背景。
作用等同于 Claude Projects 的 System Prompt,但专门针对命令行场景,且跟随项目 git 仓库,团队所有成员共享同一份指令。
推荐写法
# 项目说明
这是一个 Fastify + Prisma 的 REST API 项目,TypeScript 编写。
## 技术栈- Node.js 22,TypeScript strict 模式- 测试框架:Vitest(不用 Jest)- ORM:Prisma,不写原生 SQL
## 代码约定- 函数式优先,避免 class- 变量命名用 camelCase- 提交信息格式:`type(scope): message`,描述用中文
## 常用命令- `npm run dev` 启动开发服务器- `npm test` 运行测试- `npx prisma studio` 打开数据库 GUI多级 CLAUDE.md
Claude Code 会读取以下位置的 CLAUDE.md,全部叠加生效:
~/.claude/CLAUDE.md # 全局指令,所有项目共用project/CLAUDE.md # 项目根目录project/src/CLAUDE.md # 子目录,只在该目录内的操作时生效全局 CLAUDE.md 适合放个人习惯(如偏好的代码风格、语言偏好),项目级放项目约束。
Skills:可复用提示词模块
Skills 是通过 /skill-name 调用的专项任务模块,避免重复描述同类任务的执行方式。
# 生成符合规范的 git commit/commit
# 审查指定 PR/review-pr 42
# 简化最近修改的代码/simplify内置 Skills 和自定义 Skills 的完整说明见 Claude Code Skills。
权限与安全
Claude Code 有文件读写和命令执行权限,操作前会显示计划并请求确认。
权限模式
启动时可以指定权限级别:
# 默认模式:每次敏感操作都请求确认claude
# 自动批准所有操作(适合脚本化场景,谨慎使用)claude --dangerously-skip-permissions哪些操作会请求确认
- 写入或删除文件
- 执行 shell 命令
- git 操作(commit、push 等)
- 网络请求
只读操作(读文件、搜索代码、运行测试)不需要额外确认。
在生产环境目录下运行 Claude Code 时,--dangerously-skip-permissions 可能造成不可逆的文件修改。建议只在开发环境或明确知道操作范围时使用。
典型工作流
修复测试
claude "auth.test.ts 里的第 3 个测试在报 TypeError,帮我修复"# Claude 读取测试文件和被测文件,定位问题,直接修改代码代码审查
claude "review the changes I just made, focus on security issues"# Claude 读取 git diff,输出审查意见跨文件重构
claude "把项目里所有用 callbacks 写的异步函数改成 async/await,保持逻辑不变"# Claude 搜索整个项目,批量修改,修改前显示计划理解陌生代码库
claude "解释一下 src/auth 目录的整体结构,以及各文件之间的调用关系"# Claude 遍历目录,输出结构说明搭配 MCP 使用
Claude Code 本身不直接使用 MCP,但可以和配置了 MCP 的 Claude Desktop 互补:Claude Code 负责文件操作和 git,Claude Desktop 负责需要外部工具(数据库查询、GitHub API 等)的任务。MCP 配置方式参考 MCP 系列。
常见问题
claude 命令找不到,提示 command not found
npm 全局安装后,claude 命令需要在 PATH 里。检查:
```bash# 查看 npm 全局安装目录npm root -g
# 查看全局 bin 目录npm bin -g# 输出如 /usr/local/bin,确认这个路径在你的 PATH 里```
如果不在 PATH 里,在 `~/.zshrc` 或 `~/.bashrc` 里追加:
```bashexport PATH="$(npm bin -g):$PATH"```
然后 `source ~/.zshrc` 使配置生效。授权完成后还是提示未登录
删除本地凭证文件,重新走一遍授权:
```bashrm -rf ~/.claude/credentials.jsonclaude# 重新走授权流程```Claude Code 会读取哪些文件?
Claude Code 读取你主动提及的文件、当前目录的结构(文件名和路径),以及执行任务时它认为相关的文件(会先告知再读取)。不会主动读取 .gitignore 里排除的文件或目录外的文件。敏感信息建议放在 .env 并加入 .gitignore。
如何控制 Claude Code 不修改某些文件?
在 CLAUDE.md 里明确说明:
```markdown## 禁止修改的文件- `src/config/production.ts`:生产配置,不要直接修改- `*.lock` 文件:不要手动编辑依赖锁定文件```
也可以在对话里直接说"不要修改 X 文件",Claude Code 会遵守。token 消耗太快怎么控制?
几个降低 token 消耗的方法:① 用 /compact 压缩上下文;② 任务完成后用 /clear 开新对话,不要把多个不相关任务堆在一个会话里;③ 用单次命令模式(claude "..." 而不是交互模式)处理独立任务,避免上下文积累。
延伸阅读
- Claude Code 国内使用指南:代理、中转站与 Router 方案对比 — 解决国内直连问题
- Claude Code 报错速查手册 — 安装、认证、运行时报错逐项排查
- Claude Pro、Max 5x、Max 20x 怎么选 — 三档套餐核心差异与超量计费说明
- Claude Code 国内使用成本对比:4 种方案 — 官方订阅、API 中转、国产模型横向对比
- 国内订阅 Claude Pro:支付宝买 Apple 礼品卡全流程 — 无境外信用卡的完整订阅方案
- Claude 使用技巧 — Projects 配置、提示词技巧、MCP 接入
本文最后更新于 2026-04,Claude Code 版本:最新稳定版。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
评论区
滚动到评论区附近或点击按钮后,再加载 Waline 脚本与请求。
云梯建站笔记