Claude Code 中转介绍

最佳实践

Prompt caching、CLAUDE.md、上下文管理、调试与团队协作的实战经验。

模型选择策略

场景推荐模型理由
日常 80% 任务claude-sonnet-4-6又快又好又便宜
难题 / 架构 / 跨模块重构claude-opus-4-7推理最强,多等几秒值得
Tab 补全、commit msgclaude-haiku-4-5-20251001最快、最便宜
生产环境 / CI 锁版本claude-sonnet-4-5-20250929 等快照行为永久锁定,可复现

Prompt Caching:省钱 80% 的关键

长 system prompt 必缓存

500+ tokens 的 system prompt 加上 cache_control,命中后只算 10% 价格

大段固定 context 必缓存

API 文档、代码库片段、规范说明等固定内容写一次缓存全程复用

代码示例

from anthropic import Anthropic

client = Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://nexor.nexoraivision.com/v1"
)

LONG_SYSTEM = """
你是这个项目的资深贡献者。规则:
1. ...(500+ tokens 的详细规则)
"""

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    system=[
        {
            "type": "text",
            "text": LONG_SYSTEM,
            "cache_control": {"type": "ephemeral"}  # 关键
        }
    ],
    messages=[{"role": "user", "content": "..."}]
)

# 查看缓存命中情况
print(response.usage)
# {
#   "input_tokens": 10,
#   "cache_creation_input_tokens": 0,    # 0 表示命中
#   "cache_read_input_tokens": 523,       # 命中的缓存 token 数
#   "output_tokens": 150
# }

Claude Code CLI 自动开启

CLI 默认对 system prompt 和 CLAUDE.md 启用 prompt caching,无需手动配

CLAUDE.md:项目记忆系统

在项目根目录建 CLAUDE.md,Claude Code 每次启动会自动加载并 cache。

推荐内容

# 项目名

## 技术栈
- Vue 3 + TypeScript + Nuxt 4
- pnpm 包管理
- Vitest 测试

## 目录结构
- `app/` — Nuxt 应用代码
- `server/` — API routes
- `content/` — 文档 Markdown

## 编码规范
- 函数式优先,避免类继承
- 错误用 Result<T,E>,不抛异常
- 组件命名 PascalCase,工具函数 camelCase

## 常用命令
```bash
pnpm dev          # 启动 dev server
pnpm test         # 跑测试
pnpm lint:fix     # 自动修 lint

已知坑

  • nuxt-content 不支持嵌套 frontmatter
  • vite 7.x 与某些插件不兼容

### 自动生成

```bash
claude
> /init       # 让 Claude 帮你生成 CLAUDE.md

它会扫描项目结构、package.json、README 自动写一份。

嵌套层级

支持多层 CLAUDE.md

项目/
├── CLAUDE.md              # 全局约定
└── packages/
    └── api/
        └── CLAUDE.md      # API 包专属约定

切换工作目录时 Claude 会自动加载对应的 CLAUDE.md

上下文管理

别一次塞 50 个文件

塞太多模型反而分散。只放与当前任务直接相关的文件

用 @ 引用 vs --add-dir

# 交互模式:精准引用
> 看下 @src/api/user.ts 的 getUserById 函数

# 启动时:批量加载
claude --add-dir ./src/api

长会话用 /compact

会话变长后主动压缩:

> /compact

Claude 会概括历史保留要点,腾出上下文空间。

切话题前 /clear

完成一个任务后切到无关任务前,先 /clear

Prompt 写法

❌ 不好

帮我写个登录功能

✅ 好

基于 @src/auth/ 现有代码,给登录功能加上:
1. 邮箱 + 密码登录
2. 失败 3 次锁定 5 分钟
3. 锁定时间存 Redis,key 格式 `lock:user:<email>`
4. 写 vitest 测试覆盖:正常登录、密码错、锁定中、解锁后
5. 用现有的 Result<T,E> 错误处理风格,不要 throw

参考 @src/auth/utils.ts 的命名风格。

长任务先 plan 再 execute

> 我想给现有的 KV 缓存层加 LRU 淘汰策略,不破坏已有调用方。
> 先告诉我你打算怎么改、影响哪些文件、风险点。不要写代码。

[Claude 给方案]

> 方案 OK,按你说的顺序开始改。每改完一个文件先告诉我,我看完确认你再继续。

让 Claude 先输出计划再实现,错误率显著下降。

安全与隐私

必备配置

配置作用
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1关闭遥测、版本检查等无关流量
CLAUDE_CODE_ATTRIBUTION_HEADER=0不把请求标记为 Claude Code
OpenCode store: false不持久化响应

Key 永远不进 Git

**/.claude/settings.json
**/.continue/config.json
**/opencode.json

给生产 Key 加 IP 白名单

控制台 → API Keys → 点 Key → IP 白名单填 CI / 服务器公网 IP。

分环境用不同 Key

  • 本地开发:一个 Key,宽松额度
  • CI / 生产:另一个 Key,开 IP 白名单 + 日额度上限

调试与排错

让 Claude 解释错误

npm test 2>&1 | claude -p "解释这堆失败,从最根本的问题开始排"

让 Claude 自动迭代修

claude --max-turns 20 "实现 utils/date.ts 的 formatRelative,写完跑 npm test,失败就改直到全过"

--max-turns 限制最多回合数,防止跑飞。

--verbose 看请求详情

claude --verbose "..."

会打印每个 HTTP 请求 / 响应详情,方便排查中转是否生效。

健康检查

claude doctor

输出:环境变量是否设、Key 是否有效、节点延迟、CLI 版本是否最新。

与团队协作

共享 prompt 模板

项目/
└── .claude/
    └── prompts/
        ├── review-pr.md
        ├── write-test.md
        └── debug-flake.md

执行:

claude -p "$(cat .claude/prompts/review-pr.md)"

CI 里跑 Claude 做代码 review

GitHub Actions 示例:

- name: Claude PR review
  env:
    ANTHROPIC_BASE_URL: https://nexor.nexoraivision.com
    ANTHROPIC_AUTH_TOKEN: ${{ secrets.NEXOR_CLAUDE_KEY }}
  run: |
    git diff origin/main --unified=10 > diff.txt
    claude -p --output-format json --model claude-sonnet-4-6 \
      "review 下面的 diff,输出 JSON: {issues:[{file,line,severity,message}]}" \
      < diff.txt > review.json

长任务通知

# macOS
claude "重构 auth 模块" -f src/auth/*.ts && \
  osascript -e 'display notification "完成" with title "Claude"' && \
  afplay /System/Library/Sounds/Glass.aiff

更多见 通知配置

性能优化清单

  • ✅ 用 claude-sonnet-4-6 替代默认(不是必须 Opus)
  • ✅ 长 system prompt 加 cache_control
  • ✅ 控制台节点选「自动」(智能选最快)
  • ✅ Tab 补全用 claude-haiku-4-5-20251001
  • ✅ 项目根放 CLAUDE.md(自动缓存)
  • ✅ 长会话主动 /compact 压缩
  • ✅ 跑批量任务别开 --verbose(IO 拖慢)
长任务跑完想自动提醒?配置 通知系统