用过新版Copilot Agent聊天的朋友应该都见过斜杠指令,输入 / 之后唤起各种命令,像 /skills、/mcp、/agents。
最近 vscode把Copilot的slash‑commands斜杠命令原生整合进VSCode编辑器。看到这个更新的时候不少人会疑惑:Copilot Chat发布已经有挺长一段时间了,斜杠命令明明很早就存在,为啥VSCode到现在才做这件事?
背后其实是两套独立运行的系统在打架。
很长一段时间里面,VSCode本体和Copilot聊天扩展是两套东西。VSCode这边自己维护一套聊天交互层;Copilot又自带一套Agent运行时。
于是就出现了很别扭的局面:编辑器UI会优先拦截掉 /agents、/skills、/instructions 这些斜杠。用户敲完斜杠,还没来得及送到Copilot运行时去解析,先被VSCode本身给截住了。结果就是一部分Agent专属的斜杠命令直接失效,自动补全列表里面也找不到。
相当于前台是VSCode的聊天框,后台干活的却是Copilot Agent引擎。前台拦了消息,后台根本收不到。两边各管一套命令,很容易发生命令冲突。有些斜杠在扩展CLI(TUI终端界面)上跑的好好的,粘贴到VSCode内置聊天面板直接就无效。同一个指令,换个入口就不能用,体验割裂感很强。
那为什么不早点改掉拦截逻辑?
原因在于边界划分。到底哪些命令归VSCode处理,哪些交给Copilot运行时,之前并没有划清楚。VSCode团队不敢贸然直接放开全部斜杠。一旦全部放行,编辑器原有自己的聊天斜杠功能有可能直接坏掉。
两边属于不同的开发模块,改动一处就要评估一大片连锁影响,不能简单一行代码删掉拦截就完事。
这次 vscode做的改动,核心就是移除VSCode端对 /agents、/skills、/instructions 的UI拦截。把这些命令的处理权交还Copilot运行时。同时把 /skills、/plugin、/mcp 暴露到输入自动补全下拉提示里面。现在你直接在VSCode聊天输入框敲 /,编辑器就会展示由Copilot运行时主动上报出来的可用命令列表。不再由VSCode写死一份静态的命令清单。

以后MCP工具、skills能力持续迭代新增斜杠指令,就不用每次再来修改VSCode内核。运行时自己对外公布支持哪些指令,前端自动同步。
这件小小的修复也折射出AI编辑器开发的难点:AI Agent层不是简单跑在编辑器之上的插件;它需要深度融合。随着MCP生态慢慢发展,后续还会出现更多新斜杠命令,打通这套机制,也算为后面更多扩展能力铺平了道路。