
一、安装 Claude Code
Claude Code 有 2 种安装方式,可以通过官方原生方式安装,也可以通过 npm 包管理器进行安装。虽然官方原生安装方式可以自动更新 Claude Code,但我更推荐第二种,因为通过 npm 安装对国内用户更友好,安装更快。
1. 官方原生安装方式
macOS、Linux、WSL:
curl -fsSL https://claude.ai/install.sh | bash
Windows PowerShell:
irm https://claude.ai/install.ps1 | iex
Windows CMD:
注意: Windows 用户需要先安装 Git for Windows。
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
2. npm 包管理器安装方式
环境准备
请确保你的系统中已经安装了 Node.js 18.0 或更高版本。
macOS 用户:
推荐使用 nvm 方式安装 Node.js 或 Homebrew 方式
不推荐直接安装包安装(后续可能会遇到权限问题)
Windows 用户:
- 需要先安装 Git for Windows
全局安装 Claude Code
在终端中执行以下命令来全局安装 Claude Code:
npm install -g @anthropic-ai/claude-code
安装完成后,可以通过以下命令检查 Claude 是否安装成功:
claude --version
如果在终端中成功显示版本号,类似如下信息则表示安装成功:

这个时候虽然安装成功了,但如果你不是海外用户的话,运行 Claude Code 大概率会出现这样的提示,因为 Claude Code 的母公司 Anthropic 把大陆用户给墙了。

但是方法总比困难多,我们可以接入国产大模型来使用 Claude Code。如果把 Claude Code 比作是一辆跑车的话,那么底层大模型就是它的引擎。让我们现在把这辆跑车的引擎替换为国产引擎吧!
二、启动 Claude Code

1. Claude Code 接入国产大模型
现在国内主流的大模型厂商(智谱、Kimi、miniMax)和互联网公司(阿里、字节)都已提供 Claude Code 的接入方式。我这里选择了智谱,你可以根据自己的实际情况选择接入哪家厂商。
接入教程:
智谱接入 Claude Code 教程
Kimi 接入 Claude Code 教程
miniMax 接入 Claude Code 教程
阿里接入 Claude Code 教程
字节接入 Claude Code 教程
2. 运行 Claude Code
接入国产大模型后,在终端中输入 claude, Claude Code 就启动啦!

三、使用 Claude Code
Claude Code 这辆车现在已经处于随时可行驶的状态啦,接下来学习一些驾驶技巧吧!
1. 给车子装上“摄像头”与“雷达”

1.1 通过 @ 赋予大模型看见车内的“摄像头”
我们有时是基于某些文件的内容与大模型进行交流的,如果每次都要复制文件内容给它,就太麻烦了。在 Claude Code 中可以用 @ 命令快速指向某个文件或文件夹,同时 @ 命令具有联想功能,使用起来非常方便。
语法:@your_file_path

1.2 通过 ! 赋予大模型看见外部环境的“雷达”
一辆车在行驶时不仅需要监控系统内部,也需要时刻观察外部环境的状况。使用 ! 命令 可以在与 Claude Code 对话时执行 Shell 命令,而且 Shell 命令执行的结果会成为下一轮对话的上下文。
语法:! your_shell_command

提示: 这里是一个简单的示例,不使用 ! 命令,大模型也能通过执行相应的 Shell 命令获取当前目录下的文件。
2. 松一点刹车,让车开起来
为了防止 Claude Code 在你的环境中横冲直撞造成危险(如随意执行 rm -rf 命令),它的设计师给它设计了一套严格的安全机制。Claude Code 在需要执行一些 Shell 命令时会主动寻求你的意见,如下图,只有当你同意时,它才会执行相应的命令。我们逐渐松一点刹车,让 Claude Code 这辆车开起来吧!
注意: 关于 Claude Code 的安全机制的详细内容后面会进一步介绍。


3. 让车子开起来更舒适

虽然现在车子能开起来了,但是还是毛坯风。接下来通过一些配置让 Claude Code 用起来更方便、更舒心!
3.1 驾驶员记忆功能
对于一些“常识性”的东西(比如当前项目的功能、技术栈、编码规范),如果每次使用 Claude Code 时都要给它说一遍,就太麻烦了。所以 Claude Code 的设计师给它配置了“记忆功能”。
3.1.1 CLAUDE.md
CLAUDE.md 文件中可以把项目规约、开发者的编码习惯等放进去,这样 Claude Code 在后续编码过程中都会时刻记住其中的内容。
以下是一个 Java 项目的 CLAUDE.md 部分内容:

3.1.2 修改记忆的工具 /init、/memory
对于一个存量的项目不知道 CLAUDE.md 文档怎么写?Claude Code 提供了一个 /init 命令,可以根据你的存量代码自动生成 CLAUDE.md 文档,之后你可以根据其中的内容再进行一些增删改,提高效率。
Claude Code 不仅提供了便捷的创建记忆的命令,也提供了便捷的修改记忆的方法。你可以通过 /memory 命令查看已有的 CLAUDE.md 文档的内容,并进行增删改。或者你在项目开发过程中如果有什么想法,可以通过命令,如:“帮我把这条加到记忆中” 来修改记忆。
提示: Claude Code 具有灵活的记忆加载机制。对于有多个
CLAUDE.md文件的大型项目,Claude Code 会从当前目录逐级向上查找CLAUDE.md文档,并将这些记忆合并在一起。当你 @ 某个子目录中的文件时,Claude 会搜索该目录中是否存在CLAUDE.md文档,实现按需加载。
注意:
CLAUDE.md文档的层级分为 3 级,分别是 企业级(Linux/MacOS 路径:/etc/cluade-code/CLAUDE.md, Windows 路径:C:\Program Files\ClaudeCode\CLAUDE.md)、项目级(路径:./.claude/CLAUDE.md)和用户级(路径:~/.claude/CLAUDE.md),且优先级从高到低。
3.2 国有国法,车有车规
3.2.1 交通法规 constitution.md
遵守交通规则是开车上路时保障安全和高效的底线。在 Claude Code 中也有类似于交通法规的东西限制它的行为底线,就是 constitution.md 文件。
如果说 CLAUDE.md 文档是一个指导手册,指导 Claude Code 的行为,那么 constitution.md 就像它的名字一样是一份宪章,里面规定了 Claude Code 一定不能做什么事情,它具有最高的限制权。
注意:
constitution.md没有像CLAUDE.md一样的快捷生成方式,需要根据项目情况进行编写。其文档层级与CLAUDE.md相同,分为企业级、项目级和用户级,此处不多赘述。
3.2.2 权限控制
宪法还是有些抽象,在具体的执行上,到底什么能做?什么不能做?什么是需要问了才知道的?
这就与 Claude Code 的权限体系相关了。Claude Code 的权限模式分为 4 种:
default: 默认只读,需要执行写命令时进行询问
plan: 只读+计划,通常不会执行
acceptEdits: 具有读写文件的权限,无需批准。但是执行 Bash 命令时仍然需要批准
bypassPermissions: 读写权限+Bash 命令执行权限,跳过所有权限提示
提示: 上述四种权限中
default、plan、acceptEdits可以通过Shift+Tab快捷键在 Claude Code 内部进行切换。bypassPermissions权限需要在启动 Claude 时添加--dangerously-skip-permissions参数。
3.2.3 权限规则
上述的四种模式提供了宏观的控制,在 settings.json 文件中可以进行更加细微的权限控制。对于具体的命令,有 3 种权限,分别是 deny、allow 和 ask。deny 的命令一定不执行,allow 的命令允许执行,ask 的命令需要问了才知道。
配置示例:
{
"permissions":{
"allow":[
"Read(*.java)",// 总是允许读取 Java 文件
"mcp__github"// 总是允许使用名为 'github' 的 MCP 服务器的所有工具
],
"ask":[
"Edit(*.yml)"// 编辑 yml 文件时总是询问
],
"deny":[
"Bash(rm:-rf:*)",// 绝对禁止 `rm -rf`
"Bash(git:push:--force)"// 绝对禁止强制推送
]
}
}
【重要】Read/Edit 规则的路径模式非常讲究:
path或./path: 相对于当前工作目录。例如:Read(*.java)会匹配当前目录下的.java文件。/path: 相对于settings.json文件所在目录。例如:在项目级的./.claude/settings.json中,Deny(Read(/config/**))会禁止读取项目根目录下的config文件夹。~/path: 相对于用户主目录。例如:Deny(Read(~/.ssh/id_rsa))会禁止 AI 读取你的 SSH 私钥。//path: 文件系统的绝对路径。例如:Deny(Read(//etc/passwd))会禁止 AI 读取系统的密码文件/etc/passwd。请务必区分,错误的路径模式可能会导致你的安全规则失效!
其他注意事项:
Read/Write/Edit使用的是类似.gitignore的语法,Bash使用的是基于前缀匹配的规则(不是 glob 或 regex)。WebFetch和MCP也可以加入到权限控制当中(MCP 权限规则不支持通配符*。要允许一个服务器的所有工具,请直接使用服务器名,如mcp__github)。
3.3 内部道路——风险隔离
上面我们只是限制了我们能想到的风险,AI 仍然有可能执行一些未知的致命动作。Claude Code 的设计师也考虑到了这一点,提供了一个终极的方案——沙箱机制,就像是在内部道路练车一样,避免对外界造成破坏。
注意: Windows 系统目前不支持沙箱,如果想在 Windows 系统中使用,可以安装 Linux 虚拟机或者 WSL2。
在 Claude Code 中使用 /sandbox 指令可以开启沙箱,但是在这之前你需要安装 2 个关键的 Linux 工具:
bwrap (Bubblewrap): 一个容器化工具,利用 Linux 内核的命名空间特性,为进程创建高度隔离的运行环境。
socat: 多功能的网络中继工具,用于沙箱内外的通信。
在 Ubuntu 系统可以通过以下命令进行安装:
sudo apt-get update && sudo apt-get install -y bubblewrap socat
运行 /sandbox 命令不会直接启用沙箱,而是进到一个交互式的配置菜单:

配置选项:
Sandbox BashTool, with auto-allow: 启用沙箱,Bash 命令自动执行不询问(除部分不在沙盒安全边界内的指令,如通过网络访问非 allow 权限的主机)
Sandbox BashTool, with regular permissions: 启用沙箱,Bash 命令的执行依然遵循上一部分中的权限体系
提示: 启用沙箱后,下次在当前目录再次启动 Claude Code 时,沙箱仍然是启用状态。
3.4 倒车——状态回溯

开车难免开错路,开错了可以倒回去。Claude Code 中也提供了“倒车”的机制——Checkpointing 机制,就是你开发过程中的“自动存档系统”。它的工作原理可以概括为以下几点:
1. 触发时机
每当你(用户)提交一个新的 Prompt 时,Checkpointing 系统就会被触发。它会在 AI 开始思考和行动之前,悄悄地为你的项目状态创建一个快照。
2. 保存内容
这个快照并不仅仅是代码的备份,它完整地记录了那一刻的“时空切片”,主要包含两部分信息:
代码状态: 当前会话中所有被 AI 读取或修改过的文件的完整内容
对话状态: 到那一刻为止的完整对话历史
与 Checkpointing 机制配套的是 /rewind 命令,它可以帮你把代码与对话状态恢复到检查点的样子。
注意: 对于
!和 Bash 命令造成的影响是无法恢复的。你自己做的编辑也是不会记录在检查点中。
3.5 一键启动——自定义指令
经过上面的一系列配置,我们已经尽最大的可能保证 Claude Code 不会对你的电脑造成任何伤害。接下来让我们来学习如何将 Claude Code 这辆车开得又快又好吧!
在使用 Claude Code 时,有一些提示词是经常要用到的,比如代码审查、代码提交等,但是重复的提示词每次都要打一次真的很烦。Claude Code 的设计师为了解决这个问题,提供了自定义指令的功能,无论多长的提示词都可以浓缩到一个指令中,之后就像汽车的一键启动功能一样一键调用即可。
3.5.1 自定义指令的创建方法
位置:
项目级指令: 在项目根目录下
./.claude/commands/用户级指令: 在用户主目录下
~/.claude/commands/
一个自定义指令对应一个 markdown 文件,文件名就是自定义指令的名称。
参数类型:
自定义指令还可以携带参数,一种是单个参数的指令,一种是多个参数的指令,定义方式如下:
单参数指令: 使用
$ARGUMENTS$占位符多参数指令: 使用
$1、$2、$3……
使用建议:
当你的指令需要接收的是一段不确定长度的、完整的自然语言描述或单一 ID 时,使用
$ARGUMENTS$当你的指令需要接收的是几个固定的、有明确顺序和含义的结构化参数时,使用位置参数
$1、$2、$3……
3.5.2 进阶技巧
1. 使用 Frontmatter 定义元数据
Frontmatter 是 Markdown 文件顶部的一种特殊格式,用 --- 包围的 YAML 元数据块,它用来存储文件的配置信息。
示例:
---
description:为指定的Java方法生成符合团队规范的单元测试。
argument-hint: [file_path] [function_name]
model:opus
allowed-tools:Write
---
根据我们在`constitution.md`中定义的"测试先行"原则,为`@$1`中的`$2`函数编写一份完整的单元测试。
测试文件应该命名为`XXXTest.java`。
……
参数说明:
description: 指令的描述信息,在使用时可以看到argument-hint: 参数提示信息,输入指令并按下空格后可以看到参数的提示信息model: 允许为这个指令强制指定一个 AI 模型allowed-tools: 专门为这个指令设置的权限
2. 在指令中使用 ! 调用 Shell 命令
示例:
---
description:根据当前暂存区的代码变更,生成一条符合ConventionalCommits规范的CommitMessage。
allowed-tools:Bash(gitadd:*)
---
你是一位Git专家。请根据以下代码变更的diff信息,为我生成一条符合ConventionalCommits规范的、高质量的`gitcommit`消息。
**当前分支:**
!`gitbranch--show-current`
**暂存区变更(StagedChanges):**
!`gitdiff--staged`
请只输出commitmessage本身,不要有任何额外的解释。
说明: Claude 在执行指令前会先执行
!的 Shell 命令,将 Shell 命令的输出回填到指令描述后再执行。
3.6 见机行事——Hooks 机制
到目前为止,Claude Code 一直都是被动做事,有些事情我们希望它在完成某些特定的任务后主动去做,比如改完代码后直接执行编译命令、执行完任务后自动给我们发一个系统通知……
这种“条件反应”式的主动做事能力就是 Claude Code 的 Hooks 机制,当特定的事件发生之后,Claude Code 按照预先安排好的执行特定的事项。
1. Hooks 事件的种类:
Claude Code 现在有 21 个特定的事件:
| SessionStart | ||
| UserPromptSubmit | ||
| PreToolUse | ||
| PermissionRequest | ||
| PostToolUse | ||
| PostToolUseFailure | ||
| Notification | ||
| SubagentStart | ||
| SubagentStop | ||
| Stop | ||
| TeammateIdle | ||
| TaskCompleted | ||
| InstructionsLoaded | ||
| ConfigChange | ||
| WorktreeCreate | ||
| WorktreeRemove | ||
| PreCompact | ||
| PostCompact | ||
| Elicitation | ||
| ElicitationResult | ||
| SessionEnd |
2. 创建 Hooks
手动配置
与自定义命令不同,Hooks 是配置在 settings.json 文件中的。
用户级:~/.claude/settings.json
项目级:.claude/settings.json
Hooks 配置示例:
{
"hooks": {
"<eventname>": [ // 如 PostToolUse
{
"matcher": "<toolpattern>", // 匹配工具的模式
"hooks": [
{
"type": "command",
"command": "<your-shell-command-here>",
"timeout": 60 // 可选的超时时间(秒)
}
]
}
]
}
}
</your-shell-command-here></toolpattern></eventname>
参数说明:
matcher:匹配器,定义了 Hooks 执行时的匹配模式command:要执行的 Shell 命令
系统引导配置
通过 /hooks 命令,系统可以引导你完成创建一个 Hooks
3.7 「车联网」——MCP 工具扩展

现在 Claude Code 变得有能力又主动,但是能力似乎还不够,它只能活动在我们环境中这一亩三分地上,比如我想让他查一下阿里云的日志,他是做不到的,这个时候,就需要 MCP 工具了。
虽然与外界交互这种能力有时通过提示词也可以完成,但是 MCP 提供了一种标准,让这个过程更加标准、安全。
添加远端 MCP 服务
(添加远端服务目前仅支持 HTTP 协议,SSE 协议已废弃)
claude mcp add --transport http <name> <url></url></name>
示例:
# 添加一个支持 GitHub 集成的远端 MCP 服务
claude mcp add --transport http github-mcp https://api.example.com/mcp/github
添加本地 MCP 服务
claude mcp add --transport stdio <name> -- <command> [args...]
# Real example: Add Airtable server
claude mcp add --transport stdio --env AIRTABLE_API_KEY=YOUR_KEY airtable \
-- npx -y airtable-mcp-server
</command></name>
示例:
# 添加一个支持本地文件系统操作的 MCP 服务
claude mcp add --transport stdio filesystem-mcp -- npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory
# 添加 SQLite 数据库 MCP 服务
claude mcp add --transport stdio sqlite-mcp -- npx -y @modelcontextprotocol/server-sqlite --db-path /path/to/database.db
添加之后可以在 Claude Code 中通过 /mcp 指令查看 MCP Server 列表和状态
3.8 职业驾照——技能专业化
到目前为止,Claude Code 已经能胜任大多数驾驶任务了。但“会开车”和“开车专家”之间,隔着成千上万小时的刻意练习。
如果说 Commands 让 Claude Code 知道“怎么开”,那 Skills 则让它在特定领域知道如何“开得更专业”。
Skills 与 Command 的区别在于,Command 需要用户主动调用,Skills 是 Claude Code 根据 Skills 的描述自主选择是否要调用的。
创建一个 Skill
1。基础版
位置:
项目级 Skill 在项目根目录下(./.claude/skills/)
用户级 Skill 在用户主目录下(~/.claude/skills/)
一个技能对应一个 markdown 文件或一个包含 SKILL.md 的文件夹。
文件内容:
在 markdown 文件中可以使用 Frontmatter 对技能进行描述,在文件的主体部分描写 AI 需要遵循的具体步骤、指南和示例。
以下是一个完整的 Skill 文件示例:
---
name: "代码审查专家"
description: "系统化地审查代码质量、安全性和最佳实践"
---
# 代码审查专家技能
## 审查流程
1. **代码质量检查**
- 检查命名规范
- 评估代码复杂度
- 识别潜在的性能问题
2. **安全性审查**
- 检查输入验证
- 识别常见的安全漏洞
- 验证权限控制
3. **最佳实践验证**
- 确保符合项目规范
- 检查文档完整性
- 评估测试覆盖率
## 示例输出格式
```markdown
### 代码审查结果
**文件**: `src/auth.js`
**严重问题**: 2 个
**建议**: 5 个
...
name:技能名称description:技能描述
2。进阶版
在 SKILL.md 文件中不仅可以简单的对技能 进行描述,还可以引用其他的.md 文件和 Shell 脚本文件等,以下是一个官方示例 Skill 的层级。
pdf-processing-skill/
├── SKILL.md # 技能的入口和核心指令
├── forms.md # 专门处理PDF表单的详细指南
├── reference.md # 更深入的PDF处理技术参考
└── scripts/
├── fill_form.py # 可被SKILL.md中指令调用的Python脚本
└── ... # 其他辅助脚本
注:Claude 中对于 Skill 也是采用了灵活加载的方式,Claude 启动时会扫描所有可用的 Skills,然后加载它们的 YAML Frontmatter,等到真的需要使用这个 Skill 的时候才会加载 markdown 文件的正文,如果正文中引用了其他的.md 文档或者 Shell 脚本,只有在执行到的时候才会进行加载。
3.9 组建车队——Sub-Agent 协作机制
一个篱笆三个桩,一个好汉三个帮。我们的 Claude Code 现在已经很牛了,如果能有多个这么牛的助手一起为我们做事就好了。
Sub-Agent 机制正是为了解决这个问题而设计的。每个 Sub-Agent 都可以被赋予特定的专业角色和技能,比如“代码审查专家”、“测试工程师”、“文档编写者”等等。当主 Agent 接到一个复杂任务时,它可以协调多个 Sub-Agent 并行工作,就像一个项目经理带领着专业团队一样,让每个人都发挥自己的专长。
我们把与我们进行进行对话,即我们直接下达的命令的 Agent 称为主 Agent,它比较全能,其他的由我们创建的 Agent 成为 Sub-Agent,他们由主 Agent 进行调遣。
创建一个 Sub-Agent
Sub-Agent 有 2 种创建方式,分别为通过.md文件创建和通过/agents 命令创建
通过.md文件创建
一个 subgent 的 markdown 文件由 2 部分组成,分别是顶部的 YAML Frontmatter 和下方的 Markdown 正文。
---
name: code-reviewer
description: Expert code review specialist. Proactively reviews code for quality, security, and maintainability. Use immediately after writing or modifying code. MUST BE USED for all code changes.
tools: Read, Grep, Glob
model: inherit
---
# Code Review Guidelines
When reviewing code, focus on:
1. **Security**: Check for potential vulnerabilities
2. **Performance**: Identify inefficient patterns
3. **Readability**: Ensure code is clear and maintainable
4. **Best Practices**: Verify adherence to language conventions
Frontmatter 中主要使用了 4 个参数,分别是
name(必填): Sub-Agent 的名称,必须是小写字母和连字符的组合。如:code-reviewerdescription(必填): Sub-Agent 定义中最重要的部分。需要包括能力说明、触发时机和触发关键词。如:Expert code review specialist. Proactively reviews code for quality, security, and maintainability. Use immediately after writing or modifying code. MUST BE USED for all code changes.tools(选填): Agent 可用的工具集,如果不定义则默认继承主会话的工具权限。如:Read, Writemodel(选填):为 Agent 指定特定的模型。如果不指定则使用默认的模型。可以选择以下三种之一:opus, sonnet, haiku。也可以填 inherit,表示与主会话使用相同的模型。
在 Frontmatter 中定义了 Agent 核心功能与使用方式,在 Markdown 的部分则需要让 Agent 更加丰满,比如他要如何工作等。
通过/agents 命令创建
在 Claude Code 输入/agents 命令后,会进入一个交互式管理界面,如果你还没有 Agent,只会有一个 Create new agent 的选项,然后跟随界面引导就可以创建一个 Sub-Agent 啦。

编辑 Sub-Agent
当创建好一个 Sub-Agent 之后,再次使用/agents 命令可以看到刚才创建好的 Sub-Agent 列表,选中之后进入二级菜单可以查看、编辑和删除该 Sub-Agent。
使用 Sub-Agent
Sub-Agent 的使用方式很灵活,可以隐式调用,也可以显式调用。
隐式调用
主 Agent 会根据任务与 Sub-Agent 的关联性自主决定是否调用 Sub-Agent。你只需要描述任务需求,主 Agent 会自动识别并匹配合适的 Sub-Agent。
示例:
用户:”帮我审查一下这个代码的安全性”
此时主 Agent 会去调用刚才创建好的 code-reviewer Sub-Agent
显式调用
当你明确知道需要调用哪个 Sub-Agent 时,可以在提示词中直接指定其名称。这种方式特别适合编排多个 Sub-Agent 之间的工作流程。
调用语法:在提示词中直接使用 Agent 名称
工作流编排示例:
“首先使用 `planner` agent 对任务进行详细的拆分规划,
之后使用 `java-expert` agent 执行编码任务,
最后使用 `code-reviewer` agent 对代码进行审查”
结语
至此,Claude Code 这辆“跑车”已经从出厂、改装引擎(接入国产大模型)、加装安全配置(权限控制、沙箱机制)、升级驾驶辅助系统(记忆、自定义指令、Hooks、MCP、Skills、Sub-Agents),到最终组建专业车队(Sub-Agent 协作),完成了全方位的装备升级。(其中一些 Claude Code 的功能如 Team、Headless 模式,因为笔者没有找到合适的应用场景,所以没有写,你如果感兴趣的话,可以自己去官网研究一下)
现在,你已经掌握了驾驶这辆“AI 超跑”的全部技巧。从基础的文件操作( @命令)到高级的多代理协作,从简单的代码编写到复杂的自动化工作流,Claude Code 都能成为你得力的编程助手。
下一步建议:
从简单任务开始:先用 Claude Code 完成一些日常的代码审查、文档编写等任务,熟悉它的“驾驶感”
逐步解锁高级功能:在基础使用熟练后,尝试配置自定义指令、Skills 和 Sub-Agents,让它更懂你的项目
持续优化配置:根据实际使用体验,不断调整权限规则、Hooks 触发器等,打造最适合自己的开发环境
记住,Claude Code 再强大也只是工具,真正的“车技”还需要你在实际项目开发中不断磨练。祝你在 AI 辅助编程的道路上,越开越快,越开越稳!
相关资源:
Claude Code 官方文档
MCP 工具扩展生态
夜雨聆风