ClaudeClaude Code

在 VS Code 里用 Claude Code:接中转站、给它上下文、逐处审改动,以及插件、MCP 和常见问题

按 Claude Code 官方的 VS Code 文档整理,接着《三种入口》往下讲:中转站的地址和 key 要写进 VS Code 自己的设置;怎么把选区、终端输出、图片交给它;改动怎么逐处接受或撤回;会话、插件、MCP 和内置的 IDE 服务器;常用设置和快捷键;出了问题从哪查。本站尚未实测。

发布 · 约 13 分钟读完 · 经人工审核()· 本站的内容怎么来的

本文根据公开分享整理,本站尚未实测。操作前请对照文末的原始来源。

本页目录(12 节)
  1. 一、走中转站:地址和 key 写进 VS Code 的设置
  2. 二、给它上下文
  3. 三、审改动:可以一处一处地来
  4. 四、输入框里值得知道的几样
  5. 五、几个对话、会话和窗口重载
  6. 六、插件和 MCP
  7. 七、值得改的设置
  8. 八、快捷键
  9. 九、和命令行一起用
  10. 十、出了问题先查
  11. 这篇没有覆盖到的
  12. 相关文章

这篇接着《在 VS Code、JetBrains 和桌面应用里用 Claude Code》往下讲。那一篇讲了扩展怎么装、怎么打开、和命令行差在哪;这一篇讲每天用的时候真正会碰到的事:

  • 走中转站,地址和 key 写在哪才管用;
  • 怎么把选区、终端输出、图片交给它;
  • 它改了代码,怎么一处一处地接受或撤回;
  • 几个对话、插件、MCP 怎么管;
  • 哪些设置和快捷键值得改,出了问题从哪查。

全文按 2026-10-21 的官方文档整理。本站的测试环境是没有图形界面的服务器,VS Code 扩展没有实测,按钮和菜单的名字照文档写。

先看版本。 扩展的版本号就是它里面那份 Claude Code 的版本号,在扩展视图里看得到。下文标着“2.1.xxx 起”的功能,扩展版本不到就没有。扩展的 ID 是 anthropic.claude-code。

一、走中转站:地址和 key 写进 VS Code 的设置

这是国内读者最先卡住的地方。官方的网关文档说得很明确:

  • 扩展在启动前会先自己检查一遍凭据,它看的是 VS Code 用户设置里的 claudeCode.environmentVariables;
  • 写在 ~/.claude/settings.json 里的值能传到它启动的进程里,但过不了扩展自己的这道登录检查。

所以用命令面板运行 Preferences: Open User Settings (JSON),加上:

{
  "claudeCode.environmentVariables": [
    { "name": "ANTHROPIC_BASE_URL", "value": "https://你的中转站地址" },
    { "name": "ANTHROPIC_AUTH_TOKEN", "value": "你的key" }
  ]
}

中转站要 x-api-key 的,把第二行的名字换成 ANTHROPIC_API_KEY。地址不带 /v1。更完整的说明见《Claude Code 接入中转站》。

几件相关的事:

  • 在终端里能用、在扩展里不行,多半是 VS Code 没继承你 shell 里的环境变量。官方的两个办法:把变量写进上面这个设置;或者在已经设好变量的终端里用 code . 启动 VS Code。
  • 还弹登录界面。 VS Code 文档在“用第三方服务”一节里让 Bedrock 这类用户勾上 Disable Login Prompt(claudeCode.disableLoginPrompt),用来跳过登录提示。网关文档讲 VS Code 时没有提这一步。走中转站的,设好变量后如果还反复要求登录,可以试试勾上它。这一条是本站对照两页文档给的建议,没有实测。
  • 确认用的是哪份凭据:在输入框里输入 /status(2.1.280 起),看账号、模型和 MCP 的信息。启动时报两份凭据冲突的,按网关文档的说法删掉其中一份。
  • 哪些功能没有。 文档说,用第三方服务(文档举的是 Bedrock、Google Cloud、Foundry)时,依赖 claude.ai 账号的功能不出现:套餐用量的进度条、语音输入、云端会话的 Web 标签页。Claude in Chrome(/chrome)也要 claude.ai 账号。此时 /usage 显示的是这个会话自己的花费和 token 数,不是套餐额度;问题报告不发给 Anthropic,只存在本机的 ~/.claude/feedback-bundles/。文档没有说经 ANTHROPIC_BASE_URL 接的网关算不算这里的“第三方服务”,按道理没有 claude.ai 账号的这些功能都用不了。

二、给它上下文

想给它的 怎么做
编辑器里选中的代码 选中就行,它自动看得到,输入框底部会显示选了几行。按 Option+K(Mac)或 Alt+K(Windows、Linux)插入一个带行号的引用,比如 @app.ts#5-10
正在看的文件 默认也会带上,输入框里显示文件名。只想带选区,关掉 claudeCode.attachOpenFile(2.1.271 起)
某个文件或文件夹 @ 加名字,模糊匹配:@auth 能匹配到 auth.js、AuthService.ts;文件夹要带结尾的斜杠,比如 @src/components/
终端里的输出 @terminal:终端的标题,报错和日志不用再复制粘贴
图片 从剪贴板直接粘进输入框。截图怎么交、它看得有多细,见《让 Claude Code 看图》
别的文件 按住 Shift 拖进输入框
很长的 PDF 可以让它只读第几页;要在运行 Claude Code 的机器上装 poppler-utils

两个保护措施要知道:

  • 敏感文件的选区不会发出去,但只在对话面板里。 文件被 files.exclude 或 search.exclude 排除,或者被 .gitignore 忽略(search.useIgnoreFiles 和扩展的 respectGitIgnore 都开着,默认如此),在这种文件里选中的文字,Claude 最多只拿到文件路径。文档特别说明,在内置终端里跑的命令行不做这个过滤,选中什么就发什么。.env 这类文件要真挡住,在设置里加一条 Read 拒绝规则。
  • 看不见的字符会被去掉。 粘贴时提示“去掉了几个不可见字符”,说明已经清理好放进来了;发送时出现这个提示,说明这次什么也没发出去,清理过的文本退回输入框,再发一次才按你看到的内容发送。

三、审改动:可以一处一处地来

先看输入框底部的权限模式。2.1.283 起默认是 Auto(之前的版本只在 Pro、Max、Team 套餐上默认 Auto),大多数操作由分类器判断,不一个个问你。想每次改文件都先看一眼,切到 Manual。各模式的区别见《权限模式怎么选》。

Manual 模式下,它要改文件时先把原文和改动左右对照摆出来:

  • 可以直接在 diff 里改。 你改了它提议的内容再接受,它会被告知你动过,不会以为文件还是它原来写的样子。
  • 逐处接受或撤回(2.1.275 起)。 每一处改动下面有 Accept this change 和 Reject this change。也可以把光标放在那一处,用右键菜单或命令面板的 Claude Code: Accept Change at Cursor、Reject Change at Cursor。改动超过 100 处的 diff 没有逐处的按钮,只能整个文件接受或拒绝。
  • 先出计划。 Plan 模式下,计划会作为一份完整的 Markdown 文档在编辑器里打开,可以加行内批注再让它开始。2.1.280 起可以用 /plan 进入,/plan 修一下登录的 bug 是进入并直接开始规划,/plan open 在编辑器里打开计划文件。
  • 改坏了退回去。 鼠标悬在任何一条消息上,有三个回退选项:从这里分出一个新对话、把代码退回到这里、两样都做。用命令改的文件退不回来。

四、输入框里值得知道的几样

  • 模型和 effort。 点输入框底部的模型名,或者输入 /model(2.1.284 起)。支持 effort 的模型多一行 Effort:选 max 只对这个会话有效,选别的档位会存成这个模型的默认值。开了动态工作流的,下面还有 Ultracode 开关。
  • Customize 一栏(点 / 打开命令菜单):查看和增删 hooks、权限规则(2.1.269 起),开关自动记忆、浏览和修改记忆(2.1.274 起),编辑 CLAUDE.md(Instructions),看沙箱状态(/sandbox),导出对话(/export)。
  • 旁支问题:/btw 你的问题(2.1.227 起),答案在旁边的面板里,不进对话历史。
  • 复制和书签:/copy 复制最新一条回复,/copy 2 复制倒数第二条(2.1.277 起);书签用 /bookmarks 打开(2.1.286 起)。
  • 上下文和缓存。 输入框旁边显示上下文用了多少,可以手动 /compact。旁边还有一个缓存时钟,估算提示缓存还剩几分钟过期;数字消失、图标变红,说明缓存大概率已经过期,下一条会更慢、更贵。按量计费的,停下来想事情之前看一眼。
  • 子代理和后台任务。 有子代理时输入框底部显示 “2 agents” 这样的计数,点开是一棵树,能看每个的状态、耗时、token,也能停掉(2.1.269 起)。后台命令和子代理也在这里,用 /tasks 打开。命令或子代理让它等太久时,点工具调用下面的 Run in background(2.1.287 起),它就不等了。2.1.286 起按 Stop 或 Esc 只结束当前这一轮,后台的代理还会继续跑,要在这张图里停。子代理的进阶用法见《子代理进阶》。
  • 思考过程:在 / 菜单里打开扩展思考,Ctrl+O 展开或收起这个会话里所有的思考块。
  • 换行:Shift+Enter。

五、几个对话、会话和窗口重载

  • 同时开几个对话:命令面板 Open in New Tab(Cmd+Shift+Esc / Ctrl+Shift+Esc)或 Open in New Window,各自独立。标签页上的星芒图标出现蓝点,是有权限请求在等你;橙点,是你没看的那个标签里它已经做完了。
  • 面板放哪:把面板拖到右侧栏、左侧栏或编辑区。主会话放侧栏、支线任务开新标签,是文档推荐的用法。
  • 分组和筛选(2.1.229、2.1.271 起):在活动栏的会话列表里右键建组、移入移出;顶部可以只看需要你输入的、正在跑的或没读的。
  • 归档:默认 14 天没动静的会话自动归档(开着的、没读的、在组里的除外),在扩展设置 archiveInactiveSessions 里改天数或关掉(第七节)。2.1.257 以前这个操作叫 Delete session,删了找不回来;升级后那些会话会出现在 Archived sessions 下。
  • 重载窗口之后:在编辑区标签里的对话会跟着回来;在侧栏里的,只有最近 10 分钟有过消息的才回来,别的从会话历史里恢复。重载打断了它正在做的一步,回来后会接着做(2.1.274 起,claudeCode.continueAfterReload 可以关)。一个对话连续两次没打开完,面板就不再自动打开它,并提示它 “was not reopened”,避免面板一直卡死。
  • 同一个对话不要两处开。 它还在终端里或另一个窗口开着时,输入框位置会提示,说两处同时用会把消息弄混;先关掉另一边,再点 Open here anyway。

六、插件和 MCP

插件:输入 /plugins 打开 Manage plugins。

  • Plugins 标签里装、开关、卸载。装的时候选范围:只给自己(所有项目)、给这个项目(和协作者共享)、只在本机的这个仓库。
  • 项目共享的设置里启用的插件,关掉或卸载时会问你是只对自己关,还是改共享的设置(对所有人生效)。
  • Marketplaces 标签里加市场:GitHub 仓库、网址或本地路径。移除一个市场,会卸载从它装的所有插件,确认框里先列出来。
  • 可以发一个安装链接给同事,形如 vscode://anthropic.claude-code/install-plugin?plugin=插件名&marketplace=owner/repo,对方点开会停在选范围那一步,不会直接装。
  • 扩展管插件用的是和命令行同样的命令,两边装的通用。插件怎么写,见《做一个 Claude Code 插件》。

MCP:在对话里输入 /mcp,可以加、删、开关、重连服务器,管理 OAuth 认证(在对话框里加删要 2.1.261 起)。也可以在内置终端里用 claude mcp add,两边存的是同一份配置,改了以后新开的对话才生效。注意 claude mcp add 保存时不检查凭据,填错了也收;开个新对话、/mcp 里显示 Connected 才算接上,显示 Failed 就是凭据或地址不对。用法见《Claude Code 接 MCP 服务器实战》。

内置的 IDE 服务器。 扩展一启动就在本机跑一个叫 ide 的 MCP 服务器,内置终端里的命令行会自动连上它,用 VS Code 的 diff 视图显示改动、读你的选区。几个细节:

  • 只监听 127.0.0.1,端口在 10000 到 65535 之间随机,不能配置;每次扩展启动生成一个新的令牌,写在 ~/.claude/ide/<端口>.lock 里,只有你自己能读。
  • 给模型用的只有两个工具:mcp__ide__getDiagnostics(读 Problems 面板里的错误和警告,只读)和 mcp__ide__executeCode(在当前的 Jupyter 笔记本里跑 Python)。
  • 跑笔记本代码每次都要你点头:它把代码作为新单元格插到笔记本末尾,再弹出 VS Code 自己的选择框问 Execute 还是 Cancel。权限规则里放行了这个工具,也只是允许它“提出”运行,真正运行要你在这个框里点。
  • 对话面板里读诊断用的是另一个内置服务器,工具名是 mcp__claude-vscode__getDiagnostics(2.1.285 起)。不想让它读,两个名字都要写进 permissions.deny,Read 拒绝规则管不到它们。

七、值得改的设置

扩展有两处设置:VS Code 里的扩展设置(Cmd+, / Ctrl+,,进 Extensions > Claude Code),管扩展在编辑器里的行为;~/.claude/settings.json,和命令行共用,放允许的命令、环境变量、hooks、MCP。在后者里加一行 "$schema": "https://json.schemastore.org/claude-code-settings.json",VS Code 会给所有设置补全和校验。

扩展设置里常用的(完整键名前面都带 claudeCode.):

设置 默认 作用
environmentVariables [] 给 Claude 进程设环境变量,接中转站就写在这里(第一节)
disableLoginPrompt false 跳过登录提示,文档说给第三方服务用
initialPermissionMode 不设 新对话的起始模式:default、plan、acceptEdits、bypassPermissions。只读用户设置,忽略工作区设置(2.1.225 起)
preferredLocation panel 在哪打开:sidebar(右侧栏)或 panel(新标签页)
useCtrlEnterToSend false 改成 Ctrl/Cmd+Enter 发送,Enter 换行
autosave true 它读写文件前先自动保存
attachOpenFile true 自动带上正在看的文件
respectGitIgnore true 搜索和选区排除 .gitignore 里的文件
allowDangerouslySkipPermissions false 在模式里加上 Bypass permissions。文档说只在不联网的沙箱里用
useTerminal false 不用图形面板,改成命令行那样的界面
archiveInactiveSessions 14 多少天没动静就归档,0 是不归档
claudeProcessWrapper 不设 用另装的 claude 来跑。扩展没有带你这个平台的二进制时用

八、快捷键

做什么 Mac Windows、Linux
在编辑器和 Claude 输入框之间切换 Cmd+Esc Ctrl+Esc
在新标签页开一个对话 Cmd+Shift+Esc Ctrl+Shift+Esc
插入当前文件和选区的引用 Option+K Alt+K
重新打开刚关掉的 Claude 标签 Cmd+Shift+T Ctrl+Shift+T
只看提问和回答,收起工具调用(Focus view) Ctrl+Option+F Ctrl+Alt+F
新对话(要先打开 enableNewConversationShortcut) Cmd+N Ctrl+N
打开内置终端跑命令行 Cmd+` Ctrl+`

macOS Tahoe 起,Cmd+Esc 默认被系统的游戏浮层占了:到系统设置的 Keyboard → Keyboard Shortcuts → Game Controllers 里取消 Game Overlay,或者在 VS Code 的快捷键设置(Cmd+K Cmd+S)里给 Claude Code: Focus input 换个键。

九、和命令行一起用

  • 要用扩展里没有的东西(! 开头直接跑命令、Tab 补全、全部的命令和 skill),在内置终端里运行 claude。装了扩展不等于终端里有 claude,要另外安装命令行。

  • 内置终端里的命令行会自动连上 VS Code,用它的 diff 视图、读选区和诊断;外部终端里输入 /ide 连上。

  • 两边的对话历史是通的,终端里 claude --resume 能找到扩展里的对话。

  • 卸掉扩展又自己装回来了? 在内置终端里运行 claude 会自动重装扩展。要保持卸载,在 /config 里关掉 Auto-install IDE extension,或者把 autoInstallIdeExtension 设成 false,或者设这个环境变量:

    export CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL=1

    连扩展的数据和设置一起清掉,删掉它的存储目录:

    # macOS
    rm -rf ~/Library/"Application Support"/Code/User/globalStorage/anthropic.claude-code
    # Linux
    rm -rf ~/.config/Code/User/globalStorage/anthropic.claude-code

十、出了问题先查

现象 先做什么
装不上扩展 VS Code 要 1.94.0 以上;看 VS Code 有没有装扩展的权限;从 VS Code 的扩展市场网页直接装
看不到星芒图标 先打开一个文件;Developer: Reload Window;暂时停掉别的 AI 扩展;工作区处在受限模式时扩展不工作。点右下角状态栏的 ✻ Claude Code 也能打开
终端里能用,扩展里要求登录或报认证错 凭据写进 claudeCode.environmentVariables,或从终端 code . 启动(第一节)
SSL certificate verification failed、Self-signed certificate detected 公司代理或自签证书的问题,见《网络和数据》
恢复的对话一开始是空白的 正常,进程在启动,一秒左右出现 Waiting for your plugins…,最长等 20 秒左右
每次重载、对话回来时面板卡死或只显示 Something went wrong 把扩展升到 2.1.301 以上
公式显示成原始的 LaTeX 渲染公式要 2.1.301 起,命令行界面模式(useTerminal)下不渲染
发了消息一直没回应 看网络;开个新对话试试;在终端里跑 claude 看更详细的报错,见《常见报错怎么查》
想看扩展自己的日志 命令面板 Claude Code: Show Logs

这篇没有覆盖到的

  • 全篇没有实测。 按钮、菜单名和版本要求照 2026-10-21 的官方文档写,扩展更新很快,以你看到的为准。
  • 走中转站时哪些功能能用,官方只对 Bedrock 这类第三方服务做了说明,网关算不算在内没有写;disableLoginPrompt 要不要勾,是本站的建议。
  • **读屏、LaTeX 的细节、从别的工具用 vscode://anthropic.claude-code/open 打开标签、继续 claude.ai 上的云端会话、在浏览器里自动操作(@browser)**只提了名字或没有展开,要 claude.ai 账号的功能走中转站用不了。
  • 开发容器、远程 SSH 下的 VS Code、Cursor 等分支编辑器的差别没有展开。

相关文章

来源

通过 API 中转站使用这些模型?到 Veridrop 免费检测中转站给你的是不是它声称的模型,或者看看中转站排行榜前 100 名。

相关文章