Skip to content

第一次运行

装好、登录好之后,这一节我们进真实项目跑一次。目标是让你亲眼看见 Claude Code 是怎么工作的,理解它每一步在做什么。

准备一个练手项目

如果手头没有合适项目,我们从零建一个最小的 Node.js Express 服务:

bash
mkdir claude-first-run && cd claude-first-run
npm init -y
npm install express
git init

新建一个 server.js,写最少的代码:

javascript
const express = require('express')
const app = express()

app.get('/', (req, res) => {
  res.send('Hello Claude Code')
})

app.listen(3000, () => {
  console.log('listening on 3000')
})

提交一个初始版本,方便后面观察 Claude 的改动:

bash
git add . && git commit -m "init: minimal express server"

启动 Claude Code

在项目根目录里直接运行:

bash
claude

第一次进入某个项目时,Claude Code 会问你要不要信任这个目录。信任之后它就可以读写这个目录里的文件、以你的身份执行命令。选 Yes 之后进入对话界面,等着你输入第一句话。

项目信任

信任是按目录记录的。同一个项目下一次运行就不会再问。如果你把 Claude Code 指向陌生目录,一定要先看一眼再点信任,特别是那种带自动化脚本的开源项目。

让 Claude Code 加一个 /health 端点

在输入框里敲这句:

text
帮我在 server.js 里加一个 GET /health 端点,返回 JSON { status: 'ok', uptime: 秒数 },
然后写一个 supertest 单测跑通,最后把改动 commit 上去。

按回车,Claude Code 会开始工作。观察终端里发生了什么,你会看到它按下面顺序动作。

第一步,Read 工具读现有代码

Claude Code 首先会调用 Read 工具,把 server.jspackage.json 读出来,看你已经有什么。这一步在对话里会显示成一行小小的工具调用记录,比如:

text
Read(server.js)
  Read 12 lines

它读文件是为了确认代码风格、依赖情况,避免生成的代码和现有风格冲突。

第二步,Edit 或 Write 工具改代码

读完之后 Claude Code 会想清楚要改什么,然后调用 Edit 工具做局部替换。它会先给你看 diff,等你确认后才真正落盘。默认情况下每次写文件都会问一次,习惯之后可以按 Shift+Tab 切换到自动放行模式。

text
Edit(server.js)
  Updated server.js with 6 additions

如果需要新增文件,比如新写一个 server.test.js,它会用 Write 工具从零创建。

第三步,Bash 工具装依赖并跑测试

写完代码之后,Claude Code 需要装 supertestjest。它会调用 Bash 工具执行 npm install --save-dev supertest jest,等命令返回。Bash 工具第一次跑的时候也会问你是否放行,命令内容会完整显示给你看。

装完依赖再执行 npx jest,看到全绿之后它会告诉你测试通过了。如果测试失败,它会读错误输出,改代码,再跑一次,直到过为止。

第四步,再次 Bash 提交 git

最后 Claude Code 会用 Bash 工具跑一串 git 命令,把改动提交上去:

bash
git add server.js server.test.js package.json package-lock.json
git commit -m "feat: add /health endpoint with tests"

commit 完成后它会用一句话总结这次做了什么,等你的下一条指令。

理解四个基础工具

这一次对话里出现的四个工具,是 Claude Code 最核心的能力:

  • Read,读取本地文件内容进上下文,纯读,无副作用。
  • Edit,对已存在的文件做精确字符串替换,改一个函数、加一段代码都靠它。
  • Write,创建新文件或者整文件重写,粒度比 Edit 大。
  • Bash,在你机器上跑 shell 命令,装依赖、跑测试、跑 git、启动服务都通过它。

Claude Code 的运行本质就是循环调用这四个工具外加几个更高阶的(比如 Grep、Glob、WebFetch),直到任务完成。之后章节讲的 MCP、Skill、Subagent 都是围绕这套核心工具做扩展。

退出与恢复对话

当前会话干完事儿了,退出方式有三种:

  • 输入 /exit 或者 /quit
  • 连按两次 Ctrl+C。第一次 Claude Code 会问是不是要退出,第二次确认。
  • 直接关掉终端窗口,但这样会话不会被优雅保存。

想接着刚才的会话继续聊:

bash
claude --continue
# 或者简写
claude -c

-c 会自动恢复当前目录下最近一次会话的完整上下文,包括之前读过的文件、你和 Claude 的所有对话。想选一个稍早的会话恢复:

bash
claude --resume
# 或者简写
claude -r

它会列出历史会话让你选。

Ctrl+C 的两次含义

第一次 Ctrl+C 是打断当前正在执行的任务,比如 Claude 正在读一大堆文件、你想让它停下来重新给指令,按一次就够。第二次 Ctrl+C 才是退出程序。这样设计是为了防止误按丢会话。

复盘一下发生了什么

到这里你已经完成了 Claude Code 的第一次真实使用。回想整个过程,你实际上给它下达了一句人话指令,然后它自己规划步骤、读代码、写代码、装依赖、跑测试、提交 git,全程你只做了几次放行确认。这就是 Claude Code 和普通 chat 界面的核心区别,它不只是回答你的问题,它是在你的电脑上真的动手做事。

下一节我们把新手最容易踩的那些安装、配置、代理坑集中列出来,做成一个可查的排错手册。

本教程为社区中文学习整理,非官方发布。Claude Code 属于 Anthropic。