说实话有点心虚——毕竟 Cursor 社区这么大,说退订怕被喷。
但事实就是,自从今年 1 月装了 Claude Code,我打开 VS Code 的次数断崖式下跌。不是 Cursor 不好用,而是当你习惯了终端里一条命令搞定一切,再回去点鼠标就觉得多余了。上周翻了一下 shell history,80% 以上的编码工作都在终端完成。
正好前几天 Hacker News 上连续出现两篇 Claude Code 相关的帖子,评论区讨论得很热。索性把这两个月摸出来的东西系统整理一下。
先说谁该来、谁别来
Claude Code 不是 Cursor 的替代品,它们的目标用户其实不太一样:
| 维度 | Cursor 更合适 | Claude Code 更合适 |
|---|---|---|
| 操作习惯 | 鼠标点击派 | 键盘终端党 |
| 项目偏好 | 前端/UI 开发 | 后端/脚本/DevOps |
| 改动范围 | 单文件局部修改 | 跨文件批量重构 |
| 上下文 | 手动圈选文件 | 自动扫描仓库 |
| 网络要求 | 内置模型直连 | 自定义 API 端点 |
后端、写脚本、搞运维基建、做开源——这些场景下 Claude Code 的体验确实碾压。前端频繁预览 UI 的话,可能还是编辑器更顺手。
一、CLAUDE.md 分层——大多数人装完就忽略了
CLAUDE.md 是 Claude Code 最被低估的能力。它相当于给 AI 写了一份项目说明书,而且支持目录级分层叠加——根目录写全局规范,子目录写局部规范,自动合并。
我一个全栈项目的目录结构:
项目根/CLAUDE.md ← 技术栈、commit 规范、全局约定
├── backend/CLAUDE.md ← Python + FastAPI 相关
│ └── tests/CLAUDE.md ← pytest 测试策略
└── frontend/CLAUDE.md ← Next.js App Router 约定
根目录的 CLAUDE.md 大致长这样:
# 项目上下文
## 技术栈
- Python 3.12 + FastAPI + SQLAlchemy 2.0(后端)
- Next.js 14 App Router + Tailwind(前端)
- PostgreSQL 15 + Redis 7
- 部署:Docker + Railway
## 代码规范
- Python: ruff 格式化,类型标注必须完整
- TypeScript: strict mode,禁止 any
- commit 用 conventional commits
## 状态标记
- /api/v2/ 重构中,v1 代码不要动
- auth/ 下有 session→JWT 迁移的遗留代码待清理
测试子目录单独维护规范:
# 测试规范
## Fixtures
- db_session:测试库,每个 case 自动回滚
- auth_client:带 JWT token 的已登录客户端
- mock_redis:fake 实现,不连真实 Redis
## 约定
- 一个函数测一个行为
- 多组入参用 parametrize
- API 测试必须覆盖 200/422/401/404
配好之后效果很明显:在 backend/ 下聊天,Claude Code 自动遵循 Python 规范;切到 frontend/ 就变 TypeScript 模式。根据 Anthropic 官方文档的说法,使用 CLAUDE.md 后指令遵循率提升约 40%,我自己的体感也基本吻合。
二、tmux 多会话并行——终端的原生优势
Cursor 同时只能跑一个 AI 对话。终端天然支持多实例。
我的日常布局是 tmux 开三个窗格:
# 窗格 1:今天的主线任务
claude "重构 auth/,JWT 逻辑从 middleware 抽到独立 service 层"
# 窗格 2:同步补测试
claude "给 api/v2/users.py 补单测,覆盖 CRUD + 权限边界"
# 窗格 3:自己写代码或者 review PR
上周五下午用这个模式,同时推进了认证模块重构(窗格 1)、47 个测试用例(窗格 2)、3 个 PR review(窗格 3)。换以前至少排两天。
要注意的是并行会话共享文件系统。两个会话改同一个文件会冲突,所以我的原则是按目录分工——一个改 auth/,一个改 tests/,物理隔离。
三、Git 深度集成——不只是执行命令
Claude Code 对 git 的理解超出"跑 git 命令"的层面,它能理解版本控制的语义。
智能拆 commit:改了一堆文件,想拆成有意义的小 commit?
claude "分析当前所有未提交改动,按功能拆分成独立 commit。
规则:每个 commit 一个功能点,conventional commits 格式,
先 stage 让我过目再 commit"
它会自动把 models/user.py 和 migrations/xxx_add_avatar.py 归到一起(feat(user): add avatar field),把 utils/logger.py 单独拎出来(refactor(logging): switch to structured logging)。
Bug 溯源:
claude "最近一周的 commit 里,哪些改动可能导致 /api/users/me 偶发 500?
逐个分析 diff,给出判断和置信度"
它会 git log --since='1 week ago' → 逐个 git show 分析 → 输出:
commit a3f2b1c "refactor: async db session" — 高度可疑(90%) 把 db session 改成异步了,但
/api/users/me的get_current_user没加 await...
根据 GitHub Octoverse 2025 的数据,AI 辅助 Code Review 平均节省 35% 的审查时间。用 Claude Code 做 review 的体验确实符合这个数字。
自动生成 Changelog:
claude "对比 v1.2.0 tag 和当前 HEAD,生成面向用户的 Changelog,
按 Features / Fixes / Breaking Changes 分类"
四、自定义 API 端点——国内开发者的刚需
在国内用 Cursor 最头疼的就是网络延迟。Claude Code 支持自定义端点,一行环境变量搞定:
# ~/.bashrc 里加上
export ANTHROPIC_BASE_URL="https://api.ofox.ai/v1" # 国内直连,延迟稳定
export ANTHROPIC_API_KEY="sk-xxx"
source ~/.bashrc
配好后延迟从 3-5 秒降到 1 秒以内,是质变级别的体验差异。AI 响应快了,注意力就不会被打断,等待时切去刷手机的频率大幅下降。
如果不同项目想用不同配置,配合 direnv 很方便:
# 个人项目 .envrc — 用 Sonnet 省钱
export ANTHROPIC_BASE_URL="https://api.ofox.ai/v1"
# 公司项目 .envrc — 用官方 Opus
export ANTHROPIC_BASE_URL="https://api.anthropic.com/v1"
进不同目录自动切环境,完全无感。
五、Hooks 自动化——改完代码自动跑检查
Claude Code 支持 hooks,在特定事件触发时自动执行脚本。配好后能省掉大量手动操作。
我目前在用的配置(.claude/settings.json):
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"command": "ruff check --fix $CLAUDE_FILE_PATH && ruff format $CLAUDE_FILE_PATH"
},
{
"matcher": "Edit",
"command": "[ -f pytest.ini ] && python -m pytest tests/ -x -q --tb=short 2>/dev/null || true"
}
]
}
}
效果:每次 Claude Code 编辑 Python 文件 → 自动格式化 + lint → 自动跑测试。测试挂了它直接看到报错,下一轮自动修。
更进一步可以加 mypy:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit",
"command": "mypy $CLAUDE_FILE_PATH --ignore-missing-imports 2>&1 | tail -5"
}
]
}
}
等于把 CI 的反馈循环从"push → 等 5 分钟 → 看报错 → 改 → 再 push"压缩到了实时级别。
六、常用命令速查
| 命令 | 用途 | 我的使用频率 |
|---|---|---|
/compact | 压缩对话上下文 | ⭐⭐⭐ |
/cost | 查看本次 token 消耗 | ⭐⭐⭐ |
/init | 自动生成 CLAUDE.md | ⭐⭐ |
/model | 运行时切模型 | ⭐⭐ |
/clear | 清空对话 | ⭐ |
/review | 审查当前 git diff | ⭐⭐ |
重点说 /compact:200K 的上下文窗口听着大,跨文件重构时消耗极快。我的经验——/cost 显示超 50K token 就该 /compact 了;完成一个独立任务也顺手压缩一下。它会保留关键决策和文件结构,丢弃具体 diff 细节,压缩后响应速度恢复如初。
我的一天
09:00 终端 → 项目目录 → claude
09:05 "看看昨晚 CI 有没有挂的"
09:15 修完 CI → /compact → 进入今天主线
09:20 tmux 双窗格:开发 + 测试
12:00 "把上午改动按功能拆 commit"
14:00 继续开发 or review PR
17:30 "总结今天改动,生成周报素材"
17:45 /cost 看消耗 → 日均 $3-8(Sonnet)
实际月费用
| 方案 | 月费 | 备注 |
|---|---|---|
| Cursor Pro | $20(固定) | 有请求次数上限 |
| Claude Code + Sonnet | ~$80 | 无限制,重度使用费用会涨 |
| Claude Code + Sonnet(API 中转) | ~$50 | 延迟更低,省 30-40% |
| Claude Code + Haiku(轻任务) | ~$15 | 简单补全够用 |
我的策略:日常 Sonnet,格式化/补全类切 Haiku,月均 $50 上下。比 Cursor Pro 贵一倍多,但换来的是零限制和更强的能力,对于后端重度场景来说值得。
常见问题
Q: Claude Code 收费吗?
A: 工具本身免费(npm install -g @anthropic-ai/claude-code),按 API 调用量计费。Sonnet 日常 10+。
Q: 和 GitHub Copilot CLI 什么区别?
A: Copilot CLI 定位是终端命令补全,Claude Code 是终端里的 AI 工程师——理解整个仓库、跨文件重构、分析 git 历史、自动跑测试,能力维度不在一个层面。
Q: 代码安全怎么样?
A: 和 Cursor、Copilot 一样通过 API 传输处理。Anthropic 承诺 API 数据不参与模型训练。有严格合规要求的可以走私有部署。
更多 AI 开发实战分享 → ofox.ai/blog
最后更新:2026-03-24