拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Claude Code 实战指南:从安装配置到第一次代码修改的完整流程

Claude Code 实战指南:从安装配置到第一次代码修改的完整流程

1. 为什么我最终把主力开发环境切到了 Claude Code

第一次听说 Claude Code 是在一个做后端的朋友群里,有人甩了张截图,说“这玩意儿能直接读你整个项目,改完代码还顺手把 commit 写了”。当时我的第一反应是:又一个套壳工具,噱头大于实用。毕竟这些年各种 AI 编程助手我用过不下十款,从最早的代码补全插件到后来的对话式助手,大多数停留在“你问它答”的阶段,真正能落到工程实践里的少之又少。

真正让我改变看法的是一个很具体的场景。我手上有个维护了三年的老项目,代码结构混乱,注释稀少,每次改一个功能都要花大量时间在“找代码”上。有一次我试着把整个项目目录交给 Claude Code,让它帮我定位一个支付回调的 bug。它没有像其他工具那样只给我一段泛泛的建议,而是直接读了我项目里的路由文件、控制器、模型层,最后精准地指出问题出在一个我早就忘了的中间件里。那一刻我意识到,这东西和之前那些“聊天机器人”有本质区别——它是真的在“读”你的代码,而不是在“猜”你的代码。

Claude Code 是 Anthropic 推出的命令行 AI 编程工具,它和 VS Code 插件、网页版对话最大的不同在于:它运行在你的终端里,拥有对你本地文件系统的读写权限,可以执行 shell 命令、运行测试、查看 git 历史,甚至能自己决定下一步该做什么。你可以把它理解成一个坐在你旁边、能直接操作你电脑的资深工程师。它适合谁?如果你已经会用命令行、了解 Git 基本操作、手头有正在维护的项目,那它几乎能立刻提升你的效率。如果你是完全的新手,也没关系,这篇内容会从安装开始,一步步带你完成第一次代码修改。

我写这篇东西的初衷很简单:网上关于 Claude Code 的教程要么太浅,只告诉你“怎么装”,要么太散,东一榔头西一棒子。我想把从零到第一次成功改代码的完整路径梳理清楚,包括我踩过的坑、验证过的配置、以及那些官方文档里不会写的实操细节。你跟着走一遍,应该能少走不少弯路。

2. 安装前的环境准备与核心依赖梳理

2.1 操作系统与基础工具链的硬性要求

Claude Code 目前对操作系统的要求不算苛刻,Windows、macOS、Linux 都能跑,但体验差异挺大。我分别在 Windows 11、Ubuntu 22.04 和 macOS Sonoma 上装过,最省心的是 macOS 和 Ubuntu,Windows 需要额外注意一些细节。如果你用的是 Windows,强烈建议先装好 Git Bash 或者 WSL2,因为 Claude Code 的很多操作依赖 Unix 风格的命令,原生 PowerShell 虽然也能用,但偶尔会遇到路径分隔符和权限相关的怪问题。

Node.js 是必须的,版本建议 18 以上。我试过用 Node 16 跑,安装过程没报错,但运行时会出现一些莫名其妙的模块加载失败。后来查了官方 issue 才知道,Claude Code 内部用了一些较新的 ES 模块特性,Node 16 支持不完整。所以第一步,先确认你的 Node 版本:

node -v npm -v

如果版本低于 18,去 Node.js 官网下载 LTS 版本重新安装。Windows 用户直接下 msi 安装包,一路下一步就行。macOS 用户如果用 Homebrew,brew install node更省事。Ubuntu 用户可以用 NodeSource 的源,比系统自带的版本新很多:

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt-get install -y nodejs

Git 也是必须的,因为 Claude Code 会频繁调用 git 命令来查看变更、生成 diff、甚至自动提交。Windows 上装 Git 的时候,有个选项叫“Adjusting your PATH environment”,记得选“Git from the command line and also from 3rd-party software”,这样在 CMD 和 PowerShell 里都能直接用 git 命令。装完之后验证一下:

git --version git config --global user.name "你的名字" git config --global user.email "你的邮箱"

这两条 config 命令很多人会忽略,但如果不设置,Claude Code 在尝试自动提交时会报错,提示“Author identity unknown”。我一开始就栽在这上面,折腾了十几分钟才反应过来。

2.2 账号权限与网络环境的提前确认

Claude Code 需要 Anthropic 的账号授权才能使用。目前它支持两种方式:一种是直接用 Claude 的订阅账号登录,另一种是通过 API Key 调用。如果你用的是订阅账号,有个坑要注意:某些组织管理员会在后台关闭 Claude Code 的访问权限,登录时会提示“Your organization has disabled Claude subscription access for Claude Code”。遇到这种情况,要么找管理员开通,要么改用 API Key 的方式。

API Key 的方式更灵活,但需要你有一个 Anthropic 的开发者账号,并且在控制台里生成 Key。费用是按 token 计算的,我实测下来,日常改改小项目,一个月几美元足够了。如果你只是尝鲜,订阅账号的额度更划算。

网络方面,Claude Code 需要访问 Anthropic 的 API 端点。国内部分网络环境下可能会遇到连接超时的问题,这个需要你自己想办法解决,我不展开。我的建议是,在安装之前先确认你的终端能正常访问外网,否则后面每一步都会卡住。

2.3 安装 Claude Code 的三种方式与选择建议

官方推荐的安装方式是用 npm 全局安装:

npm install -g @anthropic-ai/claude-code

这条命令我跑了大概两分钟,取决于网络速度。装完之后,在终端输入claude,如果看到欢迎界面和登录提示,说明安装成功。如果提示“command not found”,大概率是 npm 的全局 bin 目录不在 PATH 里。Windows 上可以用npm config get prefix查看全局目录,然后手动加到环境变量里。macOS 和 Linux 通常不会有这个问题。

第二种方式是用 npx 直接运行,不需要全局安装:

npx @anthropic-ai/claude-code

这种方式适合临时用一下,但每次都要下载,速度慢,不推荐长期使用。

第三种方式是下载官方提供的二进制包,适合没有 Node 环境的机器。不过这种方式更新比较麻烦,每次出新版本都要手动替换。我个人的建议是,如果你打算长期用,直接 npm 全局安装,省心。

安装完成后,第一次运行claude会引导你登录。订阅账号会打开浏览器让你授权,API Key 方式则让你粘贴 Key。登录成功后,你会看到一个交互式的命令行界面,光标在底部闪烁,等着你输入指令。到这里,安装就算完成了。

3. 第一次运行:从登录到项目初始化的完整流程

3.1 登录授权与界面初探

第一次运行claude的时候,终端会显示一个简洁的欢迎信息,然后提示你选择登录方式。我选的是订阅账号,它会自动打开浏览器,跳转到 Anthropic 的授权页面。点击“Authorize”之后,浏览器会显示一个成功页面,终端里也会同步显示“Login successful”。整个过程大概十秒钟,很顺畅。

登录成功之后,你会进入 Claude Code 的主界面。界面很干净,没有花里胡哨的东西,底部有一个输入框,上面是对话历史区域。你可以直接输入自然语言指令,比如“帮我看看这个项目的结构”,它会自动读取当前目录下的文件并给出分析。这里有个细节:Claude Code 默认只读取当前工作目录及其子目录,不会跑到上级目录去。所以用之前,先cd到你的项目根目录。

我建议第一次用的时候,先别急着改代码,让它做个“体检”。输入“这个项目是做什么的?用了哪些技术栈?”,它会扫描 package.json、requirements.txt、go.mod 之类的文件,然后给你一个概览。这个过程能帮你确认它是否真的读懂了你的项目,也能让你熟悉它的交互节奏。

3.2 项目初始化与 CLAUDE.md 的创建

Claude Code 有一个很重要的概念叫 CLAUDE.md。这个文件放在项目根目录下,相当于给 AI 的一份“项目说明书”。你可以在里面写清楚项目的架构、代码规范、常用命令、注意事项等等。Claude Code 每次启动时会自动读取这个文件,把它作为上下文的一部分。这意味着你不需要每次对话都重复解释“这个项目用的是什么框架”“测试怎么跑”。

创建 CLAUDE.md 很简单,在项目根目录下新建一个文件就行。内容可以手写,也可以让 Claude Code 帮你生成。我通常的做法是,先让它分析项目,然后输入“根据这个项目的情况,帮我生成一个 CLAUDE.md”。它会输出一份包含项目概述、目录结构、技术栈、常用命令的文档,我检查一遍,改改细节,保存下来。

一份典型的 CLAUDE.md 大概长这样:

# 项目概述 这是一个基于 Django 的电商后台系统,主要处理订单和库存。 # 技术栈 - Python 3.11 - Django 4.2 - PostgreSQL 15 - Redis 7 # 常用命令 - 启动开发服务器:python manage.py runserver - 运行测试:python manage.py test - 数据库迁移:python manage.py migrate # 代码规范 - 所有视图函数必须写 docstring - 模型字段必须加 verbose_name - 提交信息遵循 Conventional Commits

有了这个文件,后面每次让 Claude Code 改代码,它都会自动遵循这些规范,省去了大量重复沟通的成本。我实测下来,有了 CLAUDE.md 之后,它生成的代码风格一致性提升了非常多,几乎不需要我再手动调整格式。

3.3 第一次对话:让 Claude Code 读懂你的项目

项目初始化之后,我建议先做一次“探索式对话”。不要一上来就让它改代码,而是先让它带你熟悉项目。你可以问它:“这个项目的入口文件在哪里?”“用户认证的逻辑在哪个模块?”“数据库模型是怎么定义的?”这些问题能帮你验证它是否真的理解了项目结构,也能让你发现一些自己之前没注意到的代码细节。

我印象很深的一次是,我问它“这个项目的日志是怎么配置的”,它不仅找到了 settings.py 里的 LOGGING 配置,还顺带指出有一个中间件在每次请求时都会写一条 debug 日志,建议我在生产环境关掉。这种“顺手发现”的能力,是 Claude Code 和其他工具拉开差距的地方。它不是被动地回答你的问题,而是会主动思考“还有什么相关的事情你需要知道”。

这个阶段不需要着急,花个十几分钟和它聊聊你的项目,让它充分了解上下文。后面改代码的时候,你会发现它的建议精准很多。

4. 核心实操:用 Claude Code 完成第一次代码修改

4.1 选择一个合适的练手任务

第一次改代码,别挑太复杂的。我建议找一个“小而明确”的任务,比如修一个明显的 bug、加一个简单的校验、或者改一段文案。这样你能快速走完整个流程,建立信心,也能在出问题时更容易定位。

我当时选的任务是:项目里有一个用户注册接口,没有对邮箱格式做校验,导致一些乱七八糟的字符串也能注册成功。任务很明确:加一个邮箱格式校验。这个改动涉及的文件不多,逻辑也简单,适合练手。

在让 Claude Code 动手之前,先确保你的工作区是干净的。运行git status,如果有未提交的改动,先 commit 或者 stash 掉。这样做的好处是,Claude Code 改完之后,你可以用git diff清晰地看到它改了哪些地方,方便审查和回滚。

4.2 用自然语言描述需求与边界条件

给 Claude Code 下指令的时候,描述得越具体,结果越符合预期。我当时的指令是这样的:

在用户注册接口里加一个邮箱格式校验。要求:1. 使用正则表达式校验,正则写在单独的 utils 文件里;2. 如果邮箱格式不对,返回 400 错误,错误信息为“邮箱格式不正确”;3. 不要改动现有的测试文件,但请告诉我需要补哪些测试用例。

这条指令包含了三个关键信息:做什么、怎么做、不做什么。特别是“不做什么”这一点很重要,因为 Claude Code 有时候会“过度热情”,顺手帮你重构一些它觉得不好的代码。如果你不想让它动某些文件,一定要提前说清楚。

它收到指令后,会先读取相关文件,然后给出一个修改计划。比如它会说:“我打算在 utils/validators.py 里新增一个 validate_email 函数,然后在 views/auth.py 的 register 视图里调用它。你确认吗?”这时候你可以检查它的计划是否合理,如果有问题就指出来,它会调整。确认之后,它才会真正开始改代码。

4.3 审查 diff、运行测试与手动验证

Claude Code 改完代码后,会在终端里显示一个 diff,用绿色和红色标出新增和删除的行。我建议你仔细看一遍,确认没有误删或者改错的地方。看完之后,运行git diff再确认一次,因为终端里的 diff 有时候会因为滚动而看不全。

接下来是运行测试。如果你的项目有测试套件,直接跑一遍。我当时跑的是python manage.py test,结果有两个测试挂了。Claude Code 会自动读取测试输出,然后分析失败原因。它发现是我之前的一个测试用例里用的邮箱格式不合法,现在被新校验拦住了。它建议我修改那个测试用例的邮箱,我同意之后,它自动改了,再跑一遍,全绿。

测试通过之后,别忘了手动验证一下。我启动开发服务器,用 curl 发了一个格式错误的邮箱,确认返回了 400 和正确的错误信息。又发了一个格式正确的,确认注册成功。这一步不能省,因为测试覆盖不到所有边界情况,手动验证能发现一些意想不到的问题。

4.4 提交代码与生成规范的 commit message

验证通过之后,就可以提交了。你可以让 Claude Code 帮你生成 commit message:

帮我提交这次改动,commit message 用 Conventional Commits 格式。

它会自动运行git add和git commit,并生成类似这样的信息:

feat(auth): add email format validation for user registration - Add validate_email function in utils/validators.py - Call validation in register view - Return 400 with error message for invalid email format

这个 commit message 清晰、规范,比我自己手写的还标准。提交完成后,你可以用git log确认一下。到这里,第一次代码修改的完整流程就走完了。整个过程大概花了十五分钟,其中大部分时间是在审查和验证,真正改代码的时间很短。

5. 常见问题排查与避坑经验实录

5.1 安装与登录阶段的典型故障

问题一:npm 安装报错“EACCES: permission denied”

这个在 macOS 和 Linux 上很常见,原因是 npm 的全局目录需要 root 权限。解决方案有两种:一是用sudo npm install -g,但不推荐,因为可能导致后续权限混乱;二是修改 npm 的全局目录到用户目录下:

mkdir ~/.npm-global npm config set prefix '~/.npm-global' export PATH=~/.npm-global/bin:$PATH

然后把最后一行加到.bashrc或.zshrc里。这样以后安装全局包就不需要 sudo 了。

问题二:登录时提示“Your organization has disabled Claude subscription access for Claude Code”

这个前面提过,是组织管理员关闭了权限。如果你用的是个人账号,检查一下是不是选错了登录方式。如果确实是组织账号,联系管理员开通,或者改用 API Key。

问题三:终端里输入claude没反应,或者提示“command not found”

先确认 npm 全局 bin 目录在 PATH 里。Windows 上可以用where claude找一下,如果找不到,说明安装没成功或者 PATH 没配好。重新安装一遍,注意看安装日志里有没有报错。

5.2 代码修改过程中的权限与上下文问题

问题四:Claude Code 说“我没有权限读取这个文件”

这种情况通常发生在文件权限设置比较严格的项目里。检查一下文件的读写权限,确保当前用户有访问权。另外,如果项目在 WSL 里,而 Claude Code 装在 Windows 侧,跨文件系统的访问可能会受限。建议在同一个环境里安装和运行。

问题五:它改代码的时候“跑偏了”,改了一些我没让它改的地方

这是最常见的问题。根本原因是上下文不够明确。解决方案是在指令里明确列出“不要改动”的文件或模块。另外,CLAUDE.md 里也可以写清楚“除非明确要求,否则不要重构现有代码”。我后来在 CLAUDE.md 里加了一条“修改代码时,只改动与任务直接相关的文件,不要顺手优化其他代码”,之后这种情况就很少发生了。

问题六:改完代码后,测试跑不过,但它不知道怎么修

有时候测试失败的原因比较复杂,Claude Code 可能一时半会儿找不到根因。这时候你可以手动介入,把错误信息贴给它,或者告诉它“你看看 xxx 文件里的 yyy 函数,是不是和这个有关”。给它一点提示,它通常能很快定位问题。如果实在搞不定,就git checkout .回滚,重新来一遍,换个思路描述需求。

5.3 高频问题速查表

问题现象可能原因解决方法
安装时报 EACCESnpm 全局目录权限不足修改 prefix 到用户目录
登录提示组织禁用管理员关闭了权限联系管理员或改用 API Key
命令找不到PATH 未配置将 npm 全局 bin 加入 PATH
读取文件失败文件权限或跨系统访问检查权限,确保同环境运行
改动了无关代码指令边界不清晰明确“不要改动”范围,CLAUDE.md 加约束
测试失败无法修复问题复杂,上下文不足手动提供线索,或回滚重来
提交时报作者未知git config 未设置设置 user.name 和 user.email
运行速度慢网络或项目过大检查网络,用 .claudeignore 排除大文件

5.4 我踩过的三个印象最深的坑

第一个坑是没设 git config 就让它提交,结果报错“Author identity unknown”。当时我以为是权限问题,折腾了半天才发现是 git 的基础配置没做。这个坑很小,但很耽误时间。

第二个坑是项目里有一个巨大的日志文件,大概几百兆,Claude Code 每次启动都会尝试读取它,导致启动速度极慢。后来我在项目根目录建了一个.claudeignore文件,把日志目录和 node_modules 排除掉,速度立刻恢复正常。这个文件的作用类似.gitignore,但专门针对 Claude Code。

第三个坑是我让它改一个 Python 文件,它改完之后我发现缩进全乱了。原因是那个文件里混用了 tab 和空格。Claude Code 默认用空格,但原文件里有些行是 tab,导致格式不一致。后来我在 CLAUDE.md 里加了一条“所有 Python 文件使用 4 个空格缩进,禁止使用 tab”,问题就解决了。

6. 进阶配置:让 Claude Code 更贴合你的工作流

6.1 用 CLAUDE.md 定制项目专属规则

CLAUDE.md 的潜力远不止“项目说明”。你可以把它当成一份给 AI 的“员工手册”,里面可以写任何你希望它遵守的规则。比如:

  • 代码风格:用 black 格式化,行宽 88
  • 提交规范:Conventional Commits,scope 用模块名
  • 测试要求:新增功能必须补测试,测试文件放在 tests/ 目录下
  • 禁止事项:不要修改 migrations 目录下的文件,不要动 vendor 目录

我甚至见过有人在 CLAUDE.md 里写“每次改完代码后,用 ruff 检查一遍,如果有 lint 错误,自动修复”。Claude Code 真的会照做。这种定制化能力,让它在不同项目里的表现差异很大。你投入时间打磨 CLAUDE.md,它回报给你的效率提升是成倍的。

6.2 与 VS Code 的协同使用方式

虽然 Claude Code 是命令行工具,但它和 VS Code 配合起来很顺手。我通常的 workflow 是:在 VS Code 的集成终端里运行 Claude Code,这样改完代码后,VS Code 的文件树和编辑器会实时刷新,我可以直接在编辑器里审查 diff。VS Code 的 Git 面板也能直观地看到变更,比在终端里看 diff 舒服很多。

另外,VS Code 有个插件叫 “Claude Code for VS Code”,装完之后可以在命令面板里直接调用 Claude Code,不用切到终端。不过我用下来觉得还是终端里更灵活,插件适合快速问一些问题。

6.3 本地模型接入的可行性探讨

有人问能不能让 Claude Code 调用本地模型,比如通过 LM Studio 跑一个 Qwen 或者 Llama。技术上是可以的,因为 Claude Code 支持自定义 API 端点。你可以在配置里把 API Base URL 指向本地的 LM Studio 服务,然后把模型名改成你本地加载的模型。但实际体验嘛,我只能说“能跑,但不好用”。本地小模型的代码理解能力和 Claude 差距太大,改出来的代码经常需要大量手动修正。如果你只是想在断网环境下用,可以折腾一下;如果追求效率,还是老老实实用官方 API。

配置方法大概是这样:在~/.claude/config.json里加上:

{ "apiBaseUrl": "http://localhost:1234/v1", "apiKey": "lm-studio", "model": "qwen2.5-coder-7b" }

然后重启 Claude Code。注意,本地模型的上下文窗口通常比较小,处理大项目时会频繁截断,体验很差。我试过一次就换回来了。

6.4 团队协作中的权限管理与安全边界

如果你在团队里推广 Claude Code,有几个点需要注意。首先是 API Key 的管理,不要让每个人都用自己的 Key,最好用一个团队共享的 Key,方便统一计费和监控。其次是代码安全,Claude Code 会把代码片段发送到 Anthropic 的服务器,如果项目涉及敏感信息,需要提前评估合规风险。最后是权限控制,Claude Code 默认可以执行任意 shell 命令,这在共享环境中是个隐患。可以通过配置文件限制它只能执行白名单里的命令,比如只允许 git、npm、python 这些。

我在团队里推的时候,先在小范围试了两周,收集反馈,调整 CLAUDE.md 和权限配置,然后再全面推广。这样比一上来就全员铺开稳妥得多。

7. 一些让我持续用下去的真实体会

用 Claude Code 大概三个月了,它已经成了我日常开发中离不开的工具。最明显的感受是,我花在“找代码”和“写样板代码”上的时间大幅减少,可以把精力集中在架构设计和业务逻辑上。以前改一个跨多个模块的功能,光是理清调用关系就要半小时,现在让它先分析一遍,几分钟就能拿到清晰的脉络。

但它也不是万能的。复杂业务逻辑的判断、涉及多方权衡的技术决策、需要创造性思维的架构设计,这些它目前还做不好。我的定位是:把它当成一个执行力很强但经验尚浅的初级工程师,你给它明确的任务和边界,它能完成得很好;你让它自己发挥,它可能会跑偏。

另外,审查它的输出是必须的。我见过它把==改成is导致 bug 的情况,也见过它生成的 SQL 查询没有加索引导致性能问题。AI 写的代码,最终责任还是在你身上。每次提交前看一眼 diff,跑一遍测试,这个习惯不能丢。

如果你还没试过 Claude Code,我建议从一个小项目开始,花一个下午走完安装、配置、改代码、提交的完整流程。第一次成功让它帮你改完一个 bug 并提交,那种“原来可以这样”的感觉,会让你重新思考自己的工作方式。

返回列表