在 VS Code 里装好 AI 编码扩展之后,很多人停留在「打开对话框、把问题贴进去」这一步——把面板当成了一个悬浮在编辑器旁边的聊天窗口。这样用不算错,但只摸到了一角:选中即提问、内联 diff 修改、会话延续这些能力,才是扩展区别于网页版对话的核心。这篇按使用顺序给一条完整链路:登录后先认识面板的几个区、怎么把选中的代码钉进问题里、内联修改怎么在 diff 里做决定,最后说清什么活适合留在扩展、什么活该交给命令行。
面板布局:登录后先认识四个区
完整链路从面板开始。装好扩展、用账号登录后,侧边栏的面板大体分四个区:最上面是模式与档位的选择区——对话模式问问题、agent 模式动手改,它与自动补全是两种东西,分工见补全与 agent一篇;审批档位建议先用 suggest,看它怎么改、改得对不对,熟练后再升到 auto-edit,升级时机的判断见审批模式详解一篇。中间是会话主区,你与它的每轮对话都在这里,长会话建议适时开新会话,上下文干净答案才准。下方是输入区,除了打字,还能通过引用按钮把当前文件或选中的代码挂进问题。边上是会话列表,历史会话可回看可续聊。第一次使用的完整动线:打开项目文件夹、确认信任、登录、发第一条消息,一步不缺,后面每一步都建立在这套布局上。
| 区域 | 位置 | 能做什么 | 使用要点 |
|---|---|---|---|
| 模式与档位区 | 面板最上面 | 选对话模式或 agent 模式,选审批档位 | 审批先用 suggest,看它改得对不对,熟练后再升 auto-edit |
| 会话主区 | 面板中间 | 你与它的每轮对话都在这里 | 长会话适时开新的,上下文干净答案才准 |
| 输入区 | 面板下方 | 打字提问,用引用按钮把当前文件或选中代码挂进问题 | 先在编辑器里选中代码再发问,注意力收窄到选区 |
| 会话列表 | 面板边上 | 历史会话可回看可续聊 | 换了任务就开新会话,旧会话留在列表里备查 |
选中提问:把上下文钉进问题里
面板用得顺手与否,分水岭在上下文给得准不准。直接在输入框里问「这个函数为什么报错」,agent 只能看到它自己收集的上下文,答案容易隔靴搔痒;正确的做法是先在编辑器里选中那段代码,再发起提问——选中的内容会作为明确的引用挂进对话,模型的注意力落点立刻从整个仓库收窄到十几行代码上。选中提问的高频用法有三类:对着报错选中出错代码问原因、选中一段看不懂的依赖代码问逻辑、选中一个函数问能不能简化。想让 agent 的回答更贴项目,还要靠项目里的 AGENTS.md 把约定写清楚——命令怎么跑、边界在哪,机制见AGENTS.md 写法一篇。拿不准选中范围给多给少,可以把同一问题分别带上下文与不带上下文各问一遍,让 DeepSeek 对比两份答案的差异,选区的价值当场看明白。
内联修改:在 diff 里做决定
选中提问解决「看懂」,内联修改解决「改好」。在编辑器里直接对选中的代码说「把这段改成异步写法」,扩展会在原位给出修改建议,以 diff 视图呈现:绿的是新增、红的是删除,你逐块审阅,接受或放弃,改动才真正落到文件里。这套机制的关键在于决定权在你:diff 没接受之前,代码一个字都没动,看错了随时整个放弃,回到原样。内联修改通常不是一锤子买卖,接受之后可以在同一会话里继续追问「边界情况再补个判空」,agent 基于前一轮的上下文接着改,小步迭代比一次提一大堆要求更可控。想理解这些修改在底层是怎么写进文件的、改坏了该按什么顺序回查,apply_patch 机制一篇拆过底层的补丁流程;每次接受前顺手过一眼 git diff,是双保险的习惯。
会话与分工:什么活在扩展,什么活交给 CLI
最后一个问题是场景分工。扩展的强项是眼见为实:改哪几行、diff 长什么样、接受与否,全部在编辑器里完成,适合小步交互式的活——读懂一段代码、修一个局部问题、按会话迭代一个函数。命令行的强项是放手长跑:仓库级批量改动、要跑很久的自动化任务、需要脚本编排的流程,交给 CLI 更合适,插件与命令行各自的边界见插件与 CLI一篇的对照。两者不是二选一,而是接力:白天在扩展里小步磨细节,跑全量回归或批量重构时切到 CLI 挂着跑,回来验收。把这条分工想清楚,扩展才不会被当成只能聊天的侧边栏。上手阶段想让工具帮把手,可以让 Kimi 查一份扩展的官方功能清单对照着逐项试,豆包把「选中提问、内联修改、会话管理」整理成一张上手清单贴在工位上。
扩展上手速查
- 动线:装扩展、登录、打开并信任项目、面板发第一条消息
- 面板四区:模式档位、会话主区、输入引用、会话列表
- 选中提问:先选代码再发问,注意力从仓库收窄到选区
- 内联修改:diff 逐块接受或放弃,同一会话小步迭代
- 分工:眼见为实留扩展,长跑批量交 CLI,两者接力
VS Code 扩展上手怎么办速查
- 选中提问时,选多少代码合适?:以能覆盖问题为限。报错类选中报错函数与调用处即可,逻辑理解类选完整函数体;选太少上下文不够,选太多注意力又被稀释,拿不准就先选函数级。
- 内联修改接受错了还能反悔吗?:能。文件在 git 管理下随时可以按 diff 回退到接受前的状态;没进版本控制的文件,接受前先看一眼 diff,改动范围心里有数再点接受。
- 会话越聊越长要不要开新的?:换了任务就开新会话。长会话里早期的报错与方案会一直占着上下文,新任务带着旧包袱,回答容易串味;旧会话留在列表里随时可回看。


