对于一名开发者而言,Claud code 想必不用我过多介绍了吧,从刚出来时的质疑,到越来越多的人从 cursor/trae 等转向 Claude code,都足以证明它确实定义了新的编程方式。
如果你还没有尝试过,那么今天咱们就一起从基础指令到会话管理、从基础的代码辅助到极致的思考策略。无论是代码编辑、修复 bug、自动化测试,代码审查,Claude Code 都能显著简化流程,大幅提升开发和协作效率。文章较长,建议收藏转发。
安装 Claude code(以下简称 CC)的安装十分简单,确保你有NodeJs环境,然后在终端执行如下命令即可
npm install -g @anthropic-ai/claude-code安装以后如果你输入claude --version能够正常打印出版本号,就说明你已经安装好了。
配置账号 众所周知,Anthropic封号是出了名的,对于咱们这种网络环境不好、也没有支付条件的开发者而言,众多的代理站是我们的选择之一,这里我就使用代理站来做演示,当然你也可以参考我之前的 Kimi2 的文章用 Kimi K2 写前端是一种什么体验?还支持 Claude Code 接入?,用 kimi 官方的地址和 api_key 作为代理使用,当然模型上还是会有一定的折扣。
ok,废话不多说,这里我选用的代理站是下面的地址,如果你也想尝试,可以用这个邀请码,我们会分别有一些奖励。
https://anyrouter.top/register?aff=Qcc2
注册好以后,你可以生成一个 API TOKEN,然后在你本地的 shell 里面配置一下。
我这里以 oh-my-zsh 为例,只需要在 .zshrc 文件中添加如下内容
exportANTHROPIC_AUTH_TOKEN={your_token} exportANTHROPIC_BASE_URL=https://anyrouter.top然后source .zshrc即可。
然后你在终端输入claude即可,如果你看到了 BASE URL 如下,并且没有提示login,那么就说明成功了
在编辑器中使用 如果你觉得在终端中每次切换窗口比较麻烦,也可以在编辑器中安装Claude code的插件,目前vscode 和Jetbrains 系列都有自己的插件,这里以 vscode 为例,我们在插件中心安装claude code插件以后,随便打开一个文件,在最上方就能看到 cluade code 的标识。
点击以后就能在旁边直接开启一个终端的界面,并进入到 CC,同时你的编辑器打开或者选中的文件内容也能直接同步到 CC 中,这样子更加方便你的操作。
slash 命令大全 CC 是一个在终端内执行的大模型编辑器,当我们打开 CC 以后,如果该项目之前没有用 CC 编辑过,发现它会提示我们输入/init 命令,我们先梳理一下它到底有哪些命令,再来分别讲解
/help/add-dir/Agents/bug/clear/compact/config/cost/doctor/exit/init/login/MCP/memory/model/permissions/pr_comments/review/status/terminal-setup/vim
Claude.md CLAUDE.md是 CC 在执行/init命令时自动生成的文档文件,主要用于记录当前会话、项目或工作目录下与 Claude 模型交互的相关信息、配置和使用说明。它在开发者、AI 工具集成、协作中扮演“自述文件”的角色。
Claude Code在运行时会优先阅读该文件,这非常有助于Claude快速理解我们的项目。
当我们执行/init的时候,可以看到 CC 自己列出了几条 todo List,并自己开始执行
⏺ I'll analyze the codebase and create a CLAUDE.md file with essential information for future Claude Code instances. ⏺ Update Todos ⎿ ☐ Explore codebase structure and architecture ☐ Read package.json and build configuration ☐ Analyze source code files and main modules ☐ Create comprehensive CLAUDE.md file ☐ Check for existing documentation and rulesclaude.md 主要包括 📌Project Overview :项目的具体功能和核心技术栈等 ⚙️Core Architecture :对主要模块做解释。 💡Build Commands :一些核心的命令,比如打包、开发等。 📂Development Notes :核心开发信息等。 当然你可以在项目根和子目录创建多个 CLAUDE.md,为每个上下文提供自己个性化的配置。
项目根目录/CLAUDE.md团队共享的项目级配置,提交至 Git,供所有成员使用 项目根目录/CLAUDE.local.md个人本地覆盖配置,建议加入.gitignore避免影响他人 父目录/CLAUDE.md在 Monorepo 结构中自动继承的上级配置(递归向上查找) 子目录/CLAUDE.md针对特定子模块或功能的独立配置(优先于父级配置加载) ~/.claude/CLAUDE.md
自己添加信息到Cluade.md 我们也可以自己添加一些额外的信息到claude.md文件中,方便 CC 更好的了解我们的上下文。
一个是直接编辑文件,另外也可以通过# 你的内容然后选择保存的位置即可
图片上传 CC 中也可以上传图片,**在 mac 下使用的是contrl+v而不是command+v**,粘贴以后会显示一个图片占位符。
快捷键操作 /:也就是我们上面提到的 slash 命令,当我们输入/以后,可以输入开头字符,然后按 tab 即可补全!:执行 shell 命令,比如!ls -al,就是等效于直接在终端执行 ls -al 命令会话管理 CC 本质上还是一个vibe coding,所以对于我们之前在Cursor的使用来说,我们需要能切换会话,新建会话等操作
新建会话 如果我们已经在 CC 会话中了,可以执行/clear清除聊天上下文
切换会话 如果你此时想回到之前的一个对话中,可以输入/resume
CC 会列出来所有的会话,然后你选择一个之前的,就可以回到当时的会话上下文中了
启动时恢复历史会话 在启动的时候,执行claude -c,可以继续上次对话
也可以执行claude -r,可以选择历史对话继续。
上下文压缩 Claude Code提供了/compact,它的作用是压缩对话历史,只保留上下文摘要,从而减少 token 占用。 这样 Claude 就不会因为上下文太杂而跑偏。
强大的工作流管理 启动前的“预训练”:先理解,再执行 在使用 CC 处理任务时,别急着让它立刻动手。更有效的方法,是先让它“进入情境”——先读懂相关内容、形成全局理解,再动笔执行。
举个例子:
如果你希望 Claude 优化一个后端模块,别直接发出“重构这段代码”的指令。更稳妥的方式是:
引导它先查看相关目录(如/src/services/user/),提取结构、功能点和依赖关系; 等它输出理解结果后,再提出具体需求,例如:“将 A 功能迁移至 B 并优化数据处理流程”。 这种“引导理解 → 再执行”的方法,远比直接下任务要可靠得多。
唤起深层次推理:切换“深思模式” 如果想激发它的深度思考能力,你可以通过特定提示词引导它更专注地推理。
以下是一些有效关键词:
这些词汇会促使 Claude 更谨慎地思考,虽然响应速度可能会慢一点,但整体结果往往更有深度、考虑更全面(当然 Token 烧的也越多...)。
准确表达你的需求,别让模型去猜 Claude 不具备“读心术”。如果你给出的指令过于模糊,它往往只能“猜测你的意图”,这会导致输出质量大打折扣。
更好的做法是:
如果能附上流程图、时序图、数据流图,那效果会更好。 简单来说:你越清楚地描述任务,它越能精准执行;你越模糊,它越容易跑偏。
自定义命令 我们可以在.claude/commands/目录下创建一些特定的 md 文件。然后我们在输入/的时候就能看到我们自定义的命令了
定义位置
输入命令
执行结果
这里有 2 种级别的指令
用户级命令:~/.claude/commands/,可以看到前缀user:。 项目级命令:.claude/commands/,可以看到前缀project:。 传入参数 假设在 .claude/commands/ 文件夹里新建了一个 optimize.md 文件,里面写上:
请分析并修复这个GitHub Issue:$ARGUMENTS。 按照以下步骤操作: 1. 使用`gh issue view`命令查看Issue详情 2. 理解Issue描述 3. 在代码库中搜索相关文件 4. 实施必要的修改来解决Issue 5. 编写并运行测试来验证修复 6. 确保代码通过代码风格检查和类型检查 7. 创建描述性的提交信息 8. 推送代码并创建PR 请记住所有GitHub相关操作都使用GitHub CLI工具(`gh`)来完成保存后,你就可以在 Claude Code 中执行/optimize 1234,让 Claude 自动修复指定的 GitHub issue。其中1234是Issue的ID,而指令中的ARGUMENTS会被自动替换成1234
多个 CC 一起使用 在使用 Claude Code 时,如果你希望同时处理多个任务、多个分支,并让每个实例彼此完全隔离,Git worktrees 是非常实用的方案。
Git worktree 允许你将同一个 Git 仓库的不同分支分别检出到独立的目录中。每个 worktree 有自己的工作目录、隔离的文件状态,但共享相同的 Git 历史。
官方文档见:https://git-scm.com/docs/git-worktree
步骤一:创建新的 worktree 如果你要创建新的分支并启动一个新的工作副本:
git worktree add ../project-feature-a-b feature-a如果你已经有一个现成的分支:
git worktree add ../project-bugfix bugfix-123这会在项目外部(如 ../project-feature-a)创建一个独立的目录,其中包含该分支的完整工作目录。
步骤二:在每个 worktree 中运行 Claude Code 进入新的 worktree:
cd../project-feature-a claude再开一个 worktree:
cd../project-bugfix claude每个会话运行在各自独立的代码环境中,Claude Code 实例互不干扰。
步骤三:管理 worktree 列出当前所有 worktree:
git worktree list删除一个 worktree:
git worktree remove ../project-feature-a注意:删除 worktree 不会删除 Git 分支,只会清理目录。
注意事项: 每个 worktree 相当于独立的 Claude Code 沙盒,适合并行处理多个任务(如 bug 修复、特性开发、重构)。 在一个 worktree 中的更改不会影响另一个 worktree。 所有 worktrees 共享相同的 Git 历史和远程设置,便于统一推送。 使用有意义的目录名(如 project-auth, project-api-v2)能帮助你快速区分任务。 MCP 配置 接下来我们看看在 CC 中如何配置 MCP servers
命令行添加 如果你赶时间,这是最快的添加方法,我们用官方的 filesystem 举例:
claude mcp add filesystem -s user -- npx -y @modelcontextprotocol/server-filesystem ~/Documents ~/Desktop会打印出
Added stdio MCP server filesystem withcommand: npx -y @modelcontextprotocol/server-filesystem /Users/hockor/Documents /Users/hockor/Desktop to user config File modified: /Users/hockor/.claude.json然后我们输入claude mcp list就能打印出我们配置过的 mcp 服务,也可以在 CC 里面 执行/mcp list。
配置文件添加 很多开发者觉得CLI向导太繁琐,特别是输错了要重来。直接编辑配置文件更高效:
找到配置文件位置 macOS/Linux: ~/.claude.json Windows: %USERPROFILE%.claude.json 编辑配置文件 { "mcpServers": { "filesystem": { "type":"stdio", "command":"npx", "args": ["-y","@modelcontextprotocol/server-filesystem","/Users/username/Documents"], "env": {} }, "github-server": { "type":"sse", "url":"https://api.github.com/mcp" } } }提示 使用 -s 或 --scope 标志指定配置存储位置: local(默认):仅在当前项目中对您可用(在旧版本中称为 project) project:通过 .mcp.json 文件与项目中的每个人共享 user:在所有项目中对您可用(在旧版本中称为 global) 使用 -e 或 --env 标志设置环境变量(例如,-e KEY=value) 使用 MCP_TIMEOUT 环境变量配置 MCP 服务器启动超时(例如,MCP_TIMEOUT=10000 claude 设置 10 秒超时) 随时使用 Claude Code 中的 /mcp 命令检查 MCP 服务器状态 MCP 遵循客户端-服务器架构,其中 Claude Code(客户端)可以连接到多个专用服务器 Claude Code 支持 SSE(服务器发送事件)和可流式传输的 HTTP 服务器进行实时通信 使用 /mcp 与需要 OAuth 2.0 身份验证的远程服务器进行身份验证 Hooks Claude Code 为我们提供多个 hook 事件,它们能在工作流的不同阶段触发:
PreToolUse:在工具调用之前运行(可以阻止调用) Notification:当 Claude Code 发出通知时运行 Subagent Stop:subagent 任务完成时运行 每个事件会接收不同的数据,并可在不同层面控制 Claude 的行为。比如帮助我们
通知:自定义当 Claude Code 等待您的输入或运行某些内容的权限时如何获得通知。 自动格式化:在每次文件编辑后对 .ts 文件运行 prettier,对 .go 文件运行 gofmt 等。 日志记录:跟踪和计算所有执行的命令以用于合规性或调试。 反馈:当 Claude Code 产生不遵循您的代码库约定的代码时提供自动反馈。 配置hooks 当我们运行/hooks命令时,可以选择一个执行阶段,然后选择添加 new matcher,这里我们选择PreToolUse ,在工具调用之前
选择 + Add new matcher… 以仅在 Bash 工具调用上运行您的钩子。
为匹配器输入Bash。
然后输入 command
jq -r'"\(.tool_input.command) - \(.tool_input.description // "No description")"'>> ~/.claude/bash-command-log.txt这个命令的作用就是从 JSON 数据中提取命令执行信息,并将结果格式化为特定的字符串后追加写入到 ~/.claude/bash-command-log.txt 文件中
最后选择保存位置即可。
钩子配置和权限配置一样,保存在配置文件里,该配置文件可以放在下面这些位置:
用户设置(~/.claude/settings.json):用户私有,适用于所有项目 共享项目设置(.claude/settings.json):提交到 Git 仓库,团队成员共用 本地项目设置(.claude/settings.local.json):不提交到 Git 仓库,用户私有,只适用于当前项目 企业管理策略(/path/to/policies.json):在企业环境下,系统管理员可以强制执行用户无法覆盖的安全策略,优先级最高 触发 hooks 我们让 CC 查看一次最近的提交记录,可以看到它执行了一个 Bash 命令
然后我们去我们存储的文件看一下
sub Agent Sub Agent 是为了解决 AI 多任务执行能力不足的问题而设计的,特别适用于:
在插件系统(tool use)中复用工具调用上下文 类似于让 Claude 具备一个“临时招募专家团队”的能力,每个 sub agent 都是某方面的专家。
Sub Agent 是 Claude 在执行复杂任务时,自动派生出的独立小 agent ,它们具备以下特征:
任务专注 每个 sub agent 聚焦于一个子任务,比如调用某个函数、构造中间数据结构等 上下文隔离 Sub agent 有自己的一段上下文,不会干扰主 agent 的记忆和历史 可并发运行 Claude 可以并行创建多个 sub agent 执行任务,再整合结果 临时生命周期 用完即丢,不会长期保留,用于减轻主 agent 的负担 Agent 架构下的多角色扮演 某种程度上是“agent 中的 agent”,在调用复杂工具链时非常实用
简单举例 假设你问 Claude:
帮我分析这段 Python 代码中的 SQL 注入风险,并重构为参数化查询。
Claude 背后可能做了这样的事:
创建 Sub Agent A:专门分析代码中的 SQL 字符串拼接方式 创建 Sub Agent B:查阅 SQLite 的参数化语法 创建 Sub Agent C:根据上下文生成新的安全版本代码 你看到的是 Claude 的一个回复,但它背后是多个 Sub Agent 协作的结果。
[User Input] ↓ [Claude 主 Agent] ├──> Sub Agent A:调用函数或文档分析 ├──> Sub Agent B:执行代码 └──> Sub Agent C:工具链推理 ↓ [合并输出] ↓ [Response to User]这一块内容我个人也还在摸索中,更多信息可以查看官网:https://docs.anthropic.com/zh-CN/docs/claude-code/sub-agents
监控成本 /cost 使用 /cost 可以查看消费情况,可以查看总花费、总使用时长、模型使用情况等信息。
ccusage /cost 的作用比较局限,只能查看当前会话的消耗。推荐使用ccusage进行更细致的监控。 cc
sudo npm install -g ccusage一些使用方法
# 基础用法 ccusage # 显示每日报告(默认) ccusage daily # 每日 token 使用量及费用 ccusage monthly # 月度汇总报告 ccusage session # 按会话统计用量 ccusage blocks # 5小时计费窗口数据 # 实时监控 ccusage blocks --live # 实时用量仪表盘 # 筛选与选项 ccusage daily --since 20250525 --until 20250530 # 指定日期范围 ccusage daily --json # 输出 JSON 格式 ccusage daily --breakdown# 按模型细分费用建议:
通过 /compact、精准查询、拆解任务等方式降低 token 使用 总结 Claude Code 是开发者提升效率、自动化编程、改善协作的强大工具。无论是日常开发、团队协作还是复杂项目管理,Claude Code 都能为你带来全新的 AI 编程体验。快来试试,开启高效开发新篇章!