开发与工程 ✓ Microsoft · 官方 error-telemetrystack-trace-analysisdata-validationipcunit-testingbuild-validation

VS Code 错误遥测修复指南

从错误遥测追溯无效数据源头,修复未处理错误而不是掩盖崩溃。

FollowSkills 评估 · FSRS-2.0
不推荐
52/ 100 五分制 2.6 / 5
信任安全16 / 25 · 3.2/5

技能明确要求追踪数据流、避免静默吞错,并要求截断用户控制值,降低隐蔽外泄风险;但未规定用户确认、回滚方案、最小权限、敏感数据脱敏或遥测数据流边界,因此扣分。

可靠稳定9 / 20 · 2.3/5

步骤逻辑一致,区分生产者未知与可识别场景,并要求测试和编译检查;但没有针对该技能的可执行测试、异常输入覆盖或可复现失败证据。按静态校准不超过10分。

适用触发10 / 15 · 3.3/5

触发条件、适用问题类型和不应在崩溃点修复的边界较清楚,覆盖IPC、存储、扩展API等来源;但未明确非适用范围、输入输出契约、中文使用支持或中国大陆网络环境适配,因此扣分。

规范维护8 / 15 · 2.7/5

文档有名称、描述、分层步骤、正反例和限制性提示,仓库提供MIT许可证及Microsoft归属;但技能自身没有版本、变更记录、维护责任、更新路径、安装说明或FAQ,扣分。

有效结果6 / 15 · 2.0/5

针对遥测未处理错误提供了可直接采用的调查和修复策略,示例具有实用性;但未提供该技能产出的标准格式、代表性结果或静态可验证的实际修复结果,按静态校准不超过7分。

证据核验3 / 10 · 1.5/5

规则、代码示例和仓库测试/CI材料可供审计,但所给CI主要不是该技能关键路径的测试,且没有针对技能指南的独立复现或第三方执行证据,因此仅给有限分数。

证据充分度: 评估于 2026年7月20日 审查版本 5b3e1be7be9e
使用前请注意
  • 将截断后的错误值写入遥测仍可能暴露个人数据、令牌或工作区内容;应在截断前进行敏感信息脱敏,并明确允许记录的字段。
  • 技能要求运行测试和构建检查,但未指定与错误类型对应的测试选择、失败处理或回滚步骤;执行者仍需自行补齐验证计划。
  • 遥测仪表板、仓库和开发服务可能依赖境外网络;文档未说明离线或中国大陆网络受限时的替代流程。
查看完整评分方法 →

它能做什么 & 适用场景

此技能用于调查 Visual Studio Code 错误遥测面板中的未处理错误。它指导你结合错误消息、堆栈跟踪、命中数和受影响用户数,沿调用栈追踪无效数据的产生位置。技能强调先阅读错误构造代码,再决定是修复生产者、丰富遥测上下文,还是判断错误是否属于按设计触发的阈值警告。它还要求避免静默吞错,并在完成修改后运行相关测试和构建检查。

读取错误遥测问题中的错误消息、堆栈跟踪、命中数和用户数;从堆栈底部向顶部分析每一帧的数据来源、预期类型及可能的损坏位置;在代码库中搜索错误类名或错误消息片段,阅读错误构造代码及其参数含义;当生产者未知时,指导在消费端和底层校验函数中加入截断后的类型和值等诊断信息,同时继续抛出错误;当生产者明确时,指导在发送、存储或 API 调用前校验或清理数据;最后要求运行相关单元测试并通过构建任务检查编译错误。

  1. 维护 VS Code 错误遥测的工程师需要根据堆栈跟踪定位跨进程传递的无效数据。
  2. 调试 IPC、扩展 API、存储或用户输入导致的数据类型损坏问题的开发者。
  3. 无法仅凭消费端堆栈识别生产者,需要通过下一轮遥测补充发送方线索的调查者。
  4. 处理 URI 等可序列化对象类型错误,必须确认序列化和反序列化不会把对象变成字符串的开发者。
  5. 调查监听器泄漏等带有分类和阈值的错误,并需要先理解错误构造逻辑的维护者。

优缺点一览

优点
  • 明确要求追踪无效数据生产者,而不是在崩溃点添加防御性判断来掩盖问题。
  • 要求先阅读错误构造代码,有助于区分不同错误类别、阈值和可行动性。
  • 提供生产者未知时的遥测增强策略,并要求保留抛错行为。
  • 覆盖数据校验、序列化、测试和编译检查等修复后的验证环节。
局限
  • 这是调查和修复指南,不是提供自动修复脚本或独立命令行工具。
  • 源资料没有说明独立安装流程、特定客户端触发命令或完整测试命令。
  • 它主要针对 VS Code 错误遥测和相关代码路径,不适合作为通用应用错误处理框架。
  • 需要能够读取和修改代码库,并运行相关测试和构建任务;源资料未列出具体运行环境或平台覆盖范围。

如何安装

该仓库包含 61 个技能,但本资料只涉及 .github/skills/fix-errors/SKILL.md。源资料没有提供此技能的独立安装命令;将仓库中的该技能目录保留在兼容 Agent Skills 的客户端可读取的位置即可。仓库整体采用 MIT 许可证。

如何使用

在已能访问 VS Code 源码、错误问题和遥测信息的 Agent Skills 客户端中调用此技能。例如:请调查这个错误遥测问题:错误消息为……,堆栈跟踪为……,命中数为……,受影响用户数为……。请先查找错误构造代码,再沿调用栈定位无效数据生产者。 按指南检查数据来源,必要时添加截断的诊断上下文,修复生产者,并运行相关单元测试和构建检查。源资料没有规定特定客户端命令或触发语法。

常见问题

这个技能会在崩溃点自动加 try/catch 吗?
不会。它明确反对通过 try/catch 静默吞掉错误、返回兜底值或仅在共享工具函数中增加类型保护来掩盖根因。
如果从堆栈跟踪看不出生产者怎么办?
应在消费端和必要的底层校验函数中加入类型、截断后的值以及操作或命令等诊断上下文,同时继续抛出错误,让信息进入下一轮错误遥测。
这个技能是否需要网络或 MCP?
源资料没有显示它需要网络调用或 MCP。它要求访问代码库,并要求运行相关测试和构建检查。
使用它是否收费?
源资料将 Code - OSS 说明为 MIT 许可证,但没有提供此技能独立安装或收费信息。

同仓库的其他 Skills

均来自 microsoft/vscode

开发与工程 ✓ Microsoft · 官方

工具重命名兼容性检查

防止内置工具重命名破坏现有提示词与工具配置。

开发与工程 ✓ Microsoft · 官方

Copilot Chat OpenTelemetry 埋点指南

为 Copilot Chat 统一设计和维护 OpenTelemetry 埋点。

开发与工程 ✓ Microsoft · 官方

VS Code 配置策略维护助手

规范 VS Code 企业配置策略的注册、导出与验证。

设计与前端 ✓ Microsoft · 官方

VS Code 设计哲学

用价值、原则和设计动作,把“看起来不对”转化为可执行的界面改进。

开发与工程 ✓ Microsoft · 官方

Agent 主机端到端测试助手

用严格的回放夹具维护 VS Code Agent 主机端到端测试。

开发与工程 ✓ Microsoft · 官方

VS Code 集成浏览器架构指南

帮助开发者安全理解和修改 VS Code 集成浏览器的跨进程架构。

开发与工程 ✓ Microsoft · 官方

VS Code Agents 窗口会话架构

帮助代理安全实现和修复 VS Code Agents 窗口功能。

开发与工程 ✓ Microsoft · 官方

智能提交助手

根据仓库惯例生成提交信息并安全提交代码变更。

开发与工程 ✓ Microsoft · 官方

Agent Host 日志分析

定位 Agent Host 导出日志中的会话、传输与主机问题。

开发与工程 ✓ Microsoft · 官方

VS Code 单元测试助手

在 VS Code 源码仓库中按文件、测试名称或匹配模式运行单元测试。

开发与工程 ✓ Microsoft · 官方

VS Code Agent 定制助手

帮助创建、修复和排查 VS Code Agent 定制文件及其加载问题。

开发与工程 ✓ Microsoft · 官方

Code OSS 启动与调试

为 VS Code 源码构建提供隔离启动、Playwright 自动化和多进程调试端口。

开发与工程 ✓ Microsoft · 官方

VS Code 无障碍开发助手

为 VS Code 交互式功能提供可执行的无障碍实现规范。

设计与前端 ✓ Microsoft · 官方

VS Code CSS 布局规范

用 VS Code 规范构建稳健的 CSS 布局与文本截断体验

开发与工程 ✓ Microsoft · 官方

VS Code Chat 性能实验室

基准测试聊天渲染性能,并检测会话中的内存泄漏。

开发与工程 ✓ Microsoft · 官方

组件夹具与截图测试

帮助你为 VS Code 组件创建稳定、可主题化的截图测试夹具。

开发与工程 ✓ Microsoft · 官方

VS Code 冒烟测试助手

运行、筛选并调试 VS Code 端到端冒烟测试。

开发与工程 ✓ Microsoft · 官方

VS Code 崩溃转储符号化

将原生 VS Code 崩溃转储转换为带方法名的可读回溯。

开发与工程 ✓ Microsoft · 官方

VS Code 本地 Web 工作台

在本地 vscode.dev 中验证 VS Code 工作台和 Agents 窗口改动。

开发与工程 ✓ Microsoft · 官方

反馈执行器

读取当前会话反馈并落实对应代码修改。

相关 Skills