所有文章
发布于 2026 年 5 月 8 日· 8 分钟阅读

Claude Code 实际工作流:真实项目里怎么用

Claude CodeAI 编程Claude效率工具CLIAnthropic

和 Copilot 的本质区别

GitHub Copilot 是自动补全,你在写代码,它猜下一行。

Claude Code 是一个 Agent:你告诉它要做什么,它主动读你的代码文件、修改多个文件、运行命令、验证结果。你不需要复制代码给它,它自己去找。

白夜这个网站本身就是用 Claude Code 辅助开发的——从 Go 后端到 React 前端到 GitHub Actions CI/CD,大量实际的代码由它生成和修改。

关键词(可以展开学习): LLM Agent、Context Window、Tool Use / Function Calling、System Prompt


安装

需要:

  • Node.js 18+(node --version 验证)
  • Anthropic API key

→ 需要访问 Anthropic 官网注册?见《如何稳定访问 ChatGPT 和 Claude

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

配置 API key:

export ANTHROPIC_API_KEY=sk-ant-api03-...
# 建议加到 ~/.zshrc 或 ~/.bashrc 里,避免每次重新配置

进入项目目录并启动:

cd ~/code/my-project
claude

CLAUDE.md:最重要的一个文件

Claude Code 启动时会自动读取项目根目录的 CLAUDE.md,把它当成项目上下文。一次写好,之后每次对话都不需要再解释项目背景。

一个实际的例子(白夜网站的 CLAUDE.md):

# 项目上下文

Go + React 全栈博客,后端 Gin + GORM,前端 Vite + Tailwind CSS 4。

## 目录结构
- backend/cmd/server/main.go:程序入口
- backend/internal/handler/:HTTP handler
- backend/internal/service/:业务逻辑
- backend/internal/model/:数据模型
- frontend/src/:React 组件
- content/articles/:Markdown 文章(独立 git 仓库,不要直接修改)

## 开发命令
- 后端:cd backend && go run ./cmd/server
- 前端:cd frontend && npm run dev
- 测试:cd backend && go test ./...

## 约定
- API 路由前缀 /api
- 文章 frontmatter 必须包含 title/slug/category/tags/pubDate/readTime/summary
- 数据库用 GORM,不写原生 SQL

写得越具体,Claude Code 做出来的东西越符合你的预期。


日常使用场景

解释陌生代码

> 解释一下 backend/internal/cache/cache.go 是怎么工作的

Claude Code 会读取文件,用自然语言解释逻辑。比翻文档快,比自己猜准。

实现新功能

> 在后端加一个 GET /api/tags 接口,返回所有标签和每个标签的文章数

它会:

  1. 读取相关的 model、service、handler 文件
  2. 判断要改哪里、加什么
  3. 写代码并告诉你改了哪些文件
  4. 等你确认

Debug

把报错直接贴进去:

> go test ./... 报错:
panic: runtime error: invalid memory address or nil pointer dereference
goroutine 8 [running]:
github.com/waysup/baiye/internal/service.(*ArticleService).Get(...)
        service/article.go:47

帮我找原因

Claude Code 会读 service/article.go 第 47 行附近的代码,分析为什么出现 nil pointer。

跨文件重构

> redirect.go 里有一段原生 SQL,改成用 GORM 的方式写

它能同时修改多个文件,改完列出所有变更供你确认。

写测试

> 给 service/article.go 的 List 函数写单元测试,mock 掉数据库

实用技巧

先要计划,再要执行

Claude Code 权限大,能直接改文件。如果任务复杂,先让它说计划:

> 我想给搜索加分页功能,你打算怎么改?先说计划,不要动代码

确认没问题再让它执行,避免一次改了一堆你不想动的地方。

/compact:当对话太长时

Claude Code 的 context window 是有限的。对话很长后它开始"忘事",这时输入 /compact 让它压缩历史,腾出空间继续。

! 直接跑 shell 命令

不需要开另一个终端:

!git status
!docker compose ps
!curl http://localhost:8080/api/articles

指定范围,别让它乱改

# 不好
> 优化一下数据库查询

# 好
> service/article.go 里的 List 函数有 N+1 查询问题,只改这一个函数

范围越小越可控,越大越容易出意外修改。


费用参考

Claude Code 默认用 claude-sonnet-4-x,按 token 计费。

任务 大约消耗 tokens 费用
解释一个文件 5,000–15,000 $0.01–0.03
实现一个接口 20,000–50,000 $0.04–0.10
Debug 复杂问题 30,000–80,000 $0.06–0.16

日常开发约 $0.5–2/天,比 GitHub Copilot Pro($10/月)贵不了多少,但能做的事完全不同一个量级。

如果在意费用,可以在设置里切换到 claude-haiku-4-x,价格便宜约 10 倍,适合简单的读文件和解释类任务。


什么时候不适合用

  • 看提交历史git log / git blame 比问 Claude Code 准
  • 查文档:直接看官方文档,不要让它背书(它可能会记错 API 细节)
  • 大规模重构整个项目:风险太大,一次改太多文件容易出现连锁错误,分批来
  • 需要实时信息:它的知识有截止日期,最新的库版本、最新的 bug 要去看文档或 GitHub Issues

和直接问 Claude 网页版有什么不同

Claude Code(CLI) Claude 网页版
访问代码文件 自动读取 需要手动复制粘贴
执行命令 支持 不支持
跨文件修改 支持 需要手动处理每个文件
适合 编码、调试、重构 解释、写作、分析