
1. 为什么你的 Claude Code 总是“失忆”很多人第一次打开 Claude Code输入一句“帮我优化下这个接口”结果它把整个项目翻了一遍改出来的代码风格跟现有代码库完全不搭。问题不在模型能力而在于它不知道你的项目规则——用什么框架、命名怎么定、哪些目录不能碰。Claude Code 是 Anthropic 推出的终端级 AI 编程工具能读项目结构、改多文件、跑 Git 操作但它的“长期记忆”需要你亲手喂进去这个载体就是 CLAUDE.md。这篇聚焦 VS Code 里的落地配置怎么写出可复制的 CLAUDE.md 骨架、settings.json 怎么配、MCP 服务怎么注册以及每一步怎么验证它真的生效了。适合已经在用 VS Code、想让 AI 编程从“玩具”变成“日常工具”的开发者。下面所有配置我都实际跑过命令可以直接抄。2. 前置准备把模型接入层配好Claude Code 本身是客户端它需要一个稳定的模型服务入口。我这边用的是 TaoToken 做接入层官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 地址是 https://taotoken.net/api 。先注册账号然后在控制台创建 API Key地址是 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content Key 管理页在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。拿到 Key 之后别急着写代码先确认接入层通不通。在终端里跑一条最小请求curl -s https://taotoken.net/api/v1/models \ -H Authorization: Bearer $TAOTOKEN_API_KEY \ | head -c 500返回里能看到模型列表就说明 Key 有效。这一步很关键因为后面 Claude Code 的所有请求都走这个入口如果这里不通后面配再多也是白搭。环境变量建议写进 shell 配置别硬编码在项目里export TAOTOKEN_API_KEYsk-你的key export ANTHROPIC_BASE_URLhttps://taotoken.net/apiANTHROPIC_BASE_URL这个变量是 Claude Code 识别接入层地址的关键指向 TaoToken 的 API 端点即可。配完执行source ~/.zshrc或source ~/.bashrc让它生效。3. CLAUDE.md 骨架给项目装上长期记忆CLAUDE.md 放在项目根目录Claude Code 启动时会自动读取。它不是随便写写就行的结构清晰才能让模型快速抓住重点。下面是我在多个项目里沉淀出来的骨架你可以直接复制改# 项目名称 ## 技术栈 - 语言TypeScript 5.x / Node.js 20 - 框架Express 4.x - 数据库PostgreSQL Prisma - 测试Vitest ## 目录结构 - src/api/ 路由层只做参数校验和转发 - src/service/ 业务逻辑禁止直接操作数据库 - src/repo/ 数据访问层所有 SQL 走这里 - src/utils/ 纯函数工具无副作用 ## 编码规范 - 所有导出函数必须写 JSDoc - 错误统一用 AppError 类禁止裸 throw new Error - 异步操作必须 try/catch不允许吞异常 - 命名文件名 kebab-case变量 camelCase常量 UPPER_SNAKE ## 禁止事项 - 不要修改 migrations/ 目录下的历史文件 - 不要在 service 层直接 import prisma client - 不要引入新的第三方依赖除非我明确要求 ## 常用命令 - 开发pnpm dev - 测试pnpm test - 迁移pnpm prisma migrate dev写完之后在 Claude Code 里输入CLAUDE.md 总结一下这个项目的核心约束如果它能准确复述出“service 层不能直接操作数据库”这类规则说明记忆生效了。我试过把禁止事项写得很具体模型改代码时确实会绕开那些目录比口头提醒管用得多。4. settings.json 与 MCP 服务注册VS Code 里的 Claude Code 插件配置分两块一块是编辑器侧的 settings.json一块是 MCP 服务注册。先看 settings.json在.vscode/settings.json里加{ claude-code.apiBaseUrl: https://taotoken.net/api, claude-code.model: claude-sonnet-4-20250514, claude-code.autoReadClaudeMd: true, claude-code.maxTokens: 8192, claude-code.terminal.integrate: true }autoReadClaudeMd打开后每次会话自动加载项目记忆不用手动 。maxTokens根据项目复杂度调大项目建议 8192 以上。MCP 是 Claude Code 的扩展协议能让它对接外部工具。注册 MCP 服务在项目根目录建.mcp.json{ mcpServers: { filesystem: { command: npx, args: [-y, modelcontextprotocol/server-filesystem, ./src] }, github: { command: npx, args: [-y, modelcontextprotocol/server-github], env: { GITHUB_TOKEN: ${GITHUB_TOKEN} } } } }filesystem 服务让 Claude Code 能精确读写 src 目录github 服务让它能查 issue、提 PR。注册完重启 VS Code在 Claude Code 面板输入/mcp list能看到已注册的服务列表就说明加载成功。如果某个服务没出现检查 npx 是否能正常拉包以及 env 里的变量有没有导出。5. 验证请求从对话到改代码的完整链路配置齐了跑一遍完整链路验证。第一步在 Claude Code 里问一句CLAUDE.md 这个项目的 service 层有什么约束它应该回答“不能直接操作数据库”之类。第二步让它改一个真实文件把 src/service/user.ts 里的 getUserById 加上缓存用现有的 cache 工具观察它是否遵守了 CLAUDE.md 里的规范——比如有没有写 JSDoc、有没有用 AppError。第三步验证 MCP 是否真的在工作用 filesystem 服务列出 src/repo 下的所有文件如果它能准确列出说明 MCP 通道打通了。第四步验证 Git 集成帮我提交当前修改生成规范的 commit 信息它会先跑git diff然后生成类似feat(user): add cache to getUserById的提交信息。整条链路跑通说明你的 AI 编程工作流已经搭起来了。6. 本篇常见错排查报错一ANTHROPIC_BASE_URL不生效。现象是 Claude Code 一直转圈或提示连接失败。检查环境变量是否在当前 shell 会话里echo $ANTHROPIC_BASE_URL看输出。如果是 VS Code 里启动的终端可能需要重启 VS Code 让环境变量重新加载。报错二CLAUDE.md 没被读取。确认文件在项目根目录且 settings.json 里autoReadClaudeMd为 true。如果还不行手动CLAUDE.md引用一次看模型是否能读到内容。有时候是文件编码问题确保是 UTF-8。报错三MCP 服务启动失败。常见原因是 npx 拉包超时或权限不足。先在终端手动跑npx -y modelcontextprotocol/server-filesystem ./src看能否正常启动。如果报权限错误检查 Node 版本是否 ≥ 18。env 里的变量如果没导出服务会静默失败用echo $GITHUB_TOKEN确认。报错四模型改代码时忽略规范。多半是 CLAUDE.md 写得太笼统。把“遵循编码规范”改成具体条目比如“所有导出函数必须写 JSDoc”模型执行率会明显提升。规则越具体效果越好。报错五API Key 无效或额度不足。回到控制台检查 Key 状态和余额地址在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。如果 Key 被禁用或额度耗尽所有请求都会 401。7. 把工作流跑顺之后配置这件事第一次搭会花点时间但搭好之后每天省下的重复沟通成本很可观。CLAUDE.md 建议随项目演进持续更新每次发现模型犯同类错误就把规则补进去。MCP 服务按需加别一次注册太多启动慢还容易冲突。如果你想让 Claude Code 在长任务里更稳可以看看 Coding Plan 的用法地址是 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 适合需要连续编码或跑 Agent 的场景。模型对话入口在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 遇到配置问题可以先翻文档。Claude Code 的 Anthropic 兼容配置参考 https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。最后留一个我踩过的坑MCP 的 filesystem 服务如果指向了项目根目录模型可能会去读 node_modules 里的文件拖慢响应。把路径收窄到./src或具体业务目录速度会快很多。