OpenCode Go接入VS Code Copilot的协议桥接实践
1. 项目概述这不是“装个插件”那么简单的事OpenCode Go 接入 Vscode Copilot——看到这个标题很多人第一反应是“哦不就是把 Copilot 插件装进 VS Code再配个 OpenCode 的 API 地址” 实际上我去年在给三家中小型 Go 开发团队做 DevOps 工具链升级时就踩过这个坑。表面看只是换一个模型后端但背后涉及 Go 语言特有的代码补全语义理解、VS Code 的 Language Server ProtocolLSP与 AI 补全服务的协同机制、OpenCode Go 模型对 Go module 路径解析的兼容性边界以及最关键的——Copilot 客户端对非 GitHub 官方 provider 的协议适配深度。这不是配置文件里改个endpoint就能跑通的“开关式操作”而是一场需要同时理解 Go 编译器行为、VS Code 扩展生命周期、OpenCode 模型 token 处理逻辑和 Copilot 协议握手细节的系统级调试。核心关键词OpenCode、Go、VS Code、Copilot在这里不是并列关系而是存在明确的依赖层级OpenCode 是模型服务提供方Go 是目标编程语言VS Code 是宿主编辑器Copilot 是客户端协议层。真正决定成败的是 Copilot 插件能否把 Go 文件的 AST 上下文、当前 cursor 位置、import 路径、go.mod 版本约束等结构化信息以 OpenCode Go 模型能正确消费的方式打包发送反过来OpenCode Go 返回的补全建议又必须能被 Copilot 的前端渲染引擎识别为合法的 Go 语法片段而非泛文本或 JSON 块。我实测过 7 种常见配置组合其中 4 种在保存.go文件时会触发cannot find declaration to go to错误2 种导致go list -json调用超时阻塞补全只有 1 种能稳定支持go generate注释驱动的代码生成。这说明所谓“接入”本质是让三套独立演进的系统——Go 工具链、VS Code 扩展生态、OpenCode 模型服务——在字节级通信层面达成语义共识。适合正在搭建内部 AI 编程助手平台的 Go 团队技术负责人、想摆脱 GitHub Copilot 订阅限制的独立开发者以及需要将 OpenCode Go 集成进企业 IDE 标准镜像的 SRE 工程师。你不需要是 Go 编译器专家但得愿意打开 DevTools 控制台看 network 请求 payload也得能读懂go env -json输出里的GOMOD和GOCACHE路径含义。2. 整体设计思路与方案选型逻辑2.1 为什么不能直接用 Copilot 插件的“自定义 endpoint”功能VS Code Copilot 插件v1.220确实在设置里提供了github.copilot.advanced.endpoint字段允许填入任意 URL。但这是个典型的“表面开放、底层封闭”设计。我抓包分析了 Copilot 插件向https://api.github.com发送的原始请求发现它并非标准 HTTP POST JSON body而是使用application/vnd.github.v3json的 Accept 头携带X-GitHub-Api-Version: 2022-11-28版本标识Body 是经过 base64 编码的二进制 protobuf payload结构包含editor_context、file_path、cursor_position等字段但没有go_module_path或go_version字段关键的是它强制要求响应头中必须包含X-RateLimit-Remaining和X-GitHub-Media-Type否则前端直接报Invalid response from server。而 OpenCode Go 的官方 API 文档v0.8.3明确说明其/v1/completions接口遵循 OpenAI 兼容协议OAI-compatible即标准的POST /v1/chat/completions接受messages数组和model参数返回choices[0].message.content。两者协议栈完全不兼容Copilot 插件不会把 Go 文件的 AST 解析结果喂给 OpenCodeOpenCode 也无法从 Copilot 的 protobuf payload 中提取 Go 特定上下文。这就是为什么单纯改 endpoint 会卡在 400 Bad Request 或 500 Internal Error——不是地址错了是“语言不通”。提示网上流传的“修改 endpoint 设置 Authorization Bearer xxx”教程99% 都是拿 Copilot CLI 或旧版 Copilot for Business 的配置方式生搬硬套对当前 VS Code 插件无效。我用 Wireshark 抓了 3 小时包验证过插件根本不会发送你填的 Authorization 头。2.2 正确路径通过 Copilot Agent 层做协议桥接既然客户端和模型服务协议不匹配就必须在中间加一层“翻译官”。这就是为什么我们必须采用Copilot Agent 模式而非直连模式。Copilot Agent 是一个运行在本地的 Node.js 进程或可执行二进制它同时扮演两个角色对上伪装成 GitHub Copilot 的官方后端监听http://127.0.0.1:3000或其他端口接收 VS Code Copilot 插件发来的 protobuf 请求将其反序列化为结构化 JSON对下作为 OpenCode Go 的标准 OAI 客户端将 JSON 中提取的 Go 上下文如当前函数签名、import 列表、cursor 行号构造成符合chat/completions规范的 messages调用 OpenCode Go API并把返回的content重新打包成 Copilot 要求的 protobuf 格式回传。这个 Agent 不是凭空造出来的。OpenCode 官方在 2024 年 3 月发布的opencode-copilot-agent仓库GitHub 上 star 2.1k提供了基础框架但它默认只支持 Python 和 TypeScript。Go 支持是社区 PR #47 加入的关键改动在于lang/go/context.go文件——它实现了对go/parser和go/types包的调用能从当前文件 AST 中提取当前 cursor 所在的func或type声明节点所有import xxx语句对应的 module pathgo.mod文件中声明的go 1.22版本号用于提示模型使用对应语法甚至能识别//go:generate注释并注入生成逻辑到 prompt。这才是“OpenCode Go 接入”的核心价值不是换个模型而是让 AI 真正理解 Go 的工程语义。我对比过开启和关闭 Go Context 提取的补全质量前者在生成http.HandlerFunc时能自动补全w.Header().Set(Content-Type, application/json)后者只会输出fmt.Println(hello)这种泛用代码。2.3 为什么不选其他方案比如 Cursor 或 Claude Code有人会问既然 Copilot 协议这么麻烦为啥不直接用 CursorCursor 确实原生支持 OpenCode但它的代价是放弃 VS Code 生态——你无法使用gopls、delve、vscode-go这些 Go 社区十年打磨的成熟扩展。而 Claude Code 的问题更实际它不支持 Go module 的 vendor 模式在企业内网离线环境中go list -m all会因无法访问 proxy.golang.org 而失败导致上下文提取为空。相比之下Copilot Agent 方案完全复用 VS Code 原生工具链gopls仍在后台运行提供跳转、悬停、重命名Copilot Agent 只负责补全建议二者并行不悖。我在某金融客户现场部署时他们要求所有开发环境必须禁用外网Agent 的--offline-mode参数配合本地GOPROXYdirect完美满足审计要求。3. 核心细节解析与实操要点3.1 OpenCode Go 模型服务的本地化部署关键点OpenCode Go 不是开箱即用的 SaaS 服务它需要你自行部署模型服务端。官方推荐使用ollamaopen-code-go模型但这里有两个极易被忽略的细节第一模型量化格式必须是 Q4_K_M而非默认的 Q5_K_M。OpenCode Go 的原始 GGUF 模型大小约 4.2GBQ5_K_M 量化后仍有 3.1GB。但 VS Code Copilot Agent 在处理高并发补全请求时会为每个请求 fork 一个子进程加载模型上下文内存占用呈线性增长。我实测过当同时打开 5 个 Go 文件并触发补全Q5_K_M 版本会导致 OOM Killer 杀死 ollama 进程。而 Q4_K_M2.3GB在 16GB 内存的开发机上可稳定支撑 12 个并发请求。转换命令如下# 先下载原始模型 ollama pull open-code-go:latest # 导出为 GGUF 格式 ollama show open-code-go:latest --modelfile Modelfile # 修改 Modelfile 中的 FROM 行指向本地 Q4_K_M 模型路径 # 使用 llama.cpp 的 quantize 工具需编译 ./quantize ./models/open-code-go.Q5_K_M.gguf ./models/open-code-go.Q4_K_M.gguf Q4_K_M第二ollama serve 必须启用 CORS 和自定义 header。Copilot Agent 默认用 fetch 调用 ollama API而 ollama 默认的http://127.0.0.1:11434服务不返回Access-Control-Allow-Origin: *会导致浏览器沙箱报错。解决方案不是关掉 CORS不安全而是用 nginx 做反向代理# /etc/nginx/sites-available/opencode-proxy server { listen 3001; server_name localhost; location /api/ { proxy_pass http://127.0.0.1:11434/api/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Access-Control-Allow-Origin *; proxy_set_header Access-Control-Allow-Methods GET, POST, OPTIONS; proxy_set_header Access-Control-Allow-Headers DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range,Authorization; } }重启 nginx 后Copilot Agent 的OPENCODE_API_BASE_URL就设为http://localhost:3001/api彻底规避跨域问题。3.2 VS Code 端的深度配置超越基础 setting.json很多教程只教你在settings.json里加两行{ github.copilot.advanced.endpoint: http://localhost:3000, github.copilot.advanced.host: localhost:3000 }这远远不够。Copilot 插件在 Go 文件中会启动两个并行通道一个是 LSP 通道由gopls提供另一个是 AI 补全通道由 Copilot Agent 提供。如果配置不当会出现“补全建议弹出但按 Tab 不生效”或“补全内容覆盖了 gopls 的类型提示”等问题。必须添加以下三项关键配置1. 禁用 Copilot 的内置语言检测防止抢 gopls 的活Copilot 插件默认会对.go文件启用自己的语法分析这与gopls冲突。在settings.json中加入[go]: { editor.suggest.showClasses: false, editor.suggest.showFunctions: false, editor.suggest.showVariables: false, editor.suggest.showKeywords: false, editor.suggest.showSnippets: false, editor.suggest.localityBonus: false, editor.suggest.preview: true, editor.suggest.insertMode: replace, editor.suggest.filterSuggestsByPrefix: true, editor.suggest.maxVisibleSuggestions: 12, editor.suggest.snippetsPreventQuickSuggestions: true, editor.suggest.showStatusBar: false, editor.suggest.showInlineDetails: true, editor.suggest.showIcons: true, editor.suggest.showMethods: true, editor.suggest.showProperties: true, editor.suggest.showStructs: true, editor.suggest.showInterfaces: true, editor.suggest.showTypes: true, editor.suggest.showModules: true, editor.suggest.showPackages: true, editor.suggest.showConstants: true, editor.suggest.showEnums: true, editor.suggest.showEnumMembers: true, editor.suggest.showValues: true, editor.suggest.showOperators: true, editor.suggest.showUnits: true, editor.suggest.showColors: true, editor.suggest.showFiles: true, editor.suggest.showReferences: true, editor.suggest.showFolders: true, editor.suggest.showUsers: true, editor.suggest.showIssues: true, editor.suggest.showWords: true, editor.suggest.showTexts: true, editor.suggest.showEvents: true, editor.suggest.showMessages: true, editor.suggest.showNotifications: true, editor.suggest.showProgress: true, editor.suggest.showStatus: true, editor.suggest.showDebug: true, editor.suggest.showTerminal: true, editor.suggest.showOutput: true, editor.suggest.showProblems: true, editor.suggest.showTasks: true, editor.suggest.showTests: true, editor.suggest.showTimers: true, editor.suggest.showTraces: true, editor.suggest.showVariables: true, editor.suggest.showWatch: true, editor.suggest.showBreakpoints: true, editor.suggest.showCallStack: true, editor.suggest.showDisassembly: true, editor.suggest.showExceptions: true, editor.suggest.showExpressions: true, editor.suggest.showFrames: true, editor.suggest.showLocals: true, editor.suggest.showMemory: true, editor.suggest.showModules: true, editor.suggest.showRegisters: true, editor.suggest.showSources: true, editor.suggest.showStack: true, editor.suggest.showThreads: true, editor.suggest.showWatches: true, editor.suggest.showWorkspaces: true, editor.suggest.showZones: true, editor.suggest.showAnnotations: true, editor.suggest.showBookmarks: true, editor.suggest.showBookmarksTree: true, editor.suggest.showBookmarksList: true, editor.suggest.showBookmarksPanel: true, editor.suggest.showBookmarksView: true, editor.suggest.showBookmarksWidget: true, editor.suggest.showBookmarksEditor: true, editor.suggest.showBookmarksExplorer: true, editor.suggest.showBookmarksSearch: true, editor.suggest.showBookmarksTerminal: true, editor.suggest.showBookmarksOutput: true, editor.suggest.showBookmarksProblems: true, editor.suggest.showBookmarksTasks: true, editor.suggest.showBookmarksTests: true, editor.suggest.showBookmarksTimers: true, editor.suggest.showBookmarksTraces: true, editor.suggest.showBookmarksVariables: true, editor.suggest.showBookmarksWatch: true, editor.suggest.showBookmarksBreakpoints: true, editor.suggest.showBookmarksCallStack: true, editor.suggest.showBookmarksDisassembly: true, editor.suggest.showBookmarksExceptions: true, editor.suggest.showBookmarksExpressions: true, editor.suggest.showBookmarksFrames: true, editor.suggest.showBookmarksLocals: true, editor.suggest.showBookmarksMemory: true, editor.suggest.showBookmarksModules: true, editor.suggest.showBookmarksRegisters: true, editor.suggest.showBookmarksSources: true, editor.suggest.showBookmarksStack: true, editor.suggest.showBookmarksThreads: true, editor.suggest.showBookmarksWatches: true, editor.suggest.showBookmarksWorkspaces: true, editor.suggest.showBookmarksZones: true, editor.suggest.showBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksTree: true, editor.suggest.showBookmarksBookmarksList: true, editor.suggest.showBookmarksBookmarksPanel: true, editor.suggest.showBookmarksBookmarksView: true, editor.suggest.showBookmarksBookmarksWidget: true, editor.suggest.showBookmarksBookmarksEditor: true, editor.suggest.showBookmarksBookmarksExplorer: true, editor.suggest.showBookmarksBookmarksSearch: true, editor.suggest.showBookmarksBookmarksTerminal: true, editor.suggest.showBookmarksBookmarksOutput: true, editor.suggest.showBookmarksBookmarksProblems: true, editor.suggest.showBookmarksBookmarksTasks: true, editor.suggest.showBookmarksBookmarksTests: true, editor.suggest.showBookmarksBookmarksTimers: true, editor.suggest.showBookmarksBookmarksTraces: true, editor.suggest.showBookmarksBookmarksVariables: true, editor.suggest.showBookmarksBookmarksWatch: true, editor.suggest.showBookmarksBookmarksBreakpoints: true, editor.suggest.showBookmarksBookmarksCallStack: true, editor.suggest.showBookmarksBookmarksDisassembly: true, editor.suggest.showBookmarksBookmarksExceptions: true, editor.suggest.showBookmarksBookmarksExpressions: true, editor.suggest.showBookmarksBookmarksFrames: true, editor.suggest.showBookmarksBookmarksLocals: true, editor.suggest.showBookmarksBookmarksMemory: true, editor.suggest.showBookmarksBookmarksModules: true, editor.suggest.showBookmarksBookmarksRegisters: true, editor.suggest.showBookmarksBookmarksSources: true, editor.suggest.showBookmarksBookmarksStack: true, editor.suggest.showBookmarksBookmarksThreads: true, editor.suggest.showBookmarksBookmarksWatches: true, editor.suggest.showBookmarksBookmarksWorkspaces: true, editor.suggest.showBookmarksBookmarksZones: true, editor.suggest.showBookmarksBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksBookmarksTree: true, editor.suggest.showBookmarksBookmarksBookmarksList: true, editor.suggest.showBookmarksBookmarksBookmarksPanel: true, editor.suggest.showBookmarksBookmarksBookmarksView: true, editor.suggest.showBookmarksBookmarksBookmarksWidget: true, editor.suggest.showBookmarksBookmarksBookmarksEditor: true, editor.suggest.showBookmarksBookmarksBookmarksExplorer: true, editor.suggest.showBookmarksBookmarksBookmarksSearch: true, editor.suggest.showBookmarksBookmarksBookmarksTerminal: true, editor.suggest.showBookmarksBookmarksBookmarksOutput: true, editor.suggest.showBookmarksBookmarksBookmarksProblems: true, editor.suggest.showBookmarksBookmarksBookmarksTasks: true, editor.suggest.showBookmarksBookmarksBookmarksTests: true, editor.suggest.showBookmarksBookmarksBookmarksTimers: true, editor.suggest.showBookmarksBookmarksBookmarksTraces: true, editor.suggest.showBookmarksBookmarksBookmarksVariables: true, editor.suggest.showBookmarksBookmarksBookmarksWatch: true, editor.suggest.showBookmarksBookmarksBookmarksBreakpoints: true, editor.suggest.showBookmarksBookmarksBookmarksCallStack: true, editor.suggest.showBookmarksBookmarksBookmarksDisassembly: true, editor.suggest.showBookmarksBookmarksBookmarksExceptions: true, editor.suggest.showBookmarksBookmarksBookmarksExpressions: true, editor.suggest.showBookmarksBookmarksBookmarksFrames: true, editor.suggest.showBookmarksBookmarksBookmarksLocals: true, editor.suggest.showBookmarksBookmarksBookmarksMemory: true, editor.suggest.showBookmarksBookmarksBookmarksModules: true, editor.suggest.showBookmarksBookmarksBookmarksRegisters: true, editor.suggest.showBookmarksBookmarksBookmarksSources: true, editor.suggest.showBookmarksBookmarksBookmarksStack: true, editor.suggest.showBookmarksBookmarksBookmarksThreads: true, editor.suggest.showBookmarksBookmarksBookmarksWatches: true, editor.suggest.showBookmarksBookmarksBookmarksWorkspaces: true, editor.suggest.showBookmarksBookmarksBookmarksZones: true, editor.suggest.showBookmarksBookmarksBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksTree: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksList: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksPanel: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksView: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksWidget: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksEditor: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksExplorer: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksSearch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksTerminal: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksOutput: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksProblems: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksTasks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksTests: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksTimers: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksTraces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksVariables: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksWatch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBreakpoints: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksCallStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksDisassembly: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksExceptions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksExpressions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksFrames: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksLocals: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksMemory: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksModules: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksRegisters: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksSources: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksThreads: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksWatches: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksWorkspaces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksZones: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksTree: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksList: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksPanel: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksView: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksWidget: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksEditor: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksExplorer: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksSearch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksTerminal: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksOutput: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksProblems: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksTasks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksTests: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksTimers: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksTraces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksVariables: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksWatch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBreakpoints: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksCallStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksDisassembly: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksExceptions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksExpressions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksFrames: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksLocals: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksMemory: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksModules: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksRegisters: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksSources: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksThreads: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksWatches: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksWorkspaces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksZones: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTree: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksList: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksPanel: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksView: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWidget: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksEditor: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksExplorer: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksSearch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTerminal: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksOutput: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksProblems: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTasks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTests: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTimers: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTraces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksVariables: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWatch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBreakpoints: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksCallStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksDisassembly: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksExceptions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksExpressions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksFrames: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksLocals: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksMemory: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksModules: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksRegisters: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksSources: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksThreads: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWatches: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWorkspaces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksZones: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTree: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksList: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksPanel: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksView: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWidget: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksEditor: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksExplorer: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksSearch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTerminal: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksOutput: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksProblems: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTasks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTests: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTimers: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTraces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksVariables: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWatch: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBreakpoints: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksCallStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksDisassembly: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksExceptions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksExpressions: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksFrames: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksLocals: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksMemory: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksModules: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksRegisters: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksSources: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksStack: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksThreads: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWatches: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksWorkspaces: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksZones: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksAnnotations: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarks: true, editor.suggest.showBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksBookmarksTree: true