让 VS Code “读懂我的想法”:构建智能上下文感知

发布: (2026年1月10日 GMT+8 19:00)
3 min read
原文: Dev.to

Source: Dev.to

问题

我们都有这种经历。打开一个项目时,瞬间卡住了:“等等,这该用 npm run devyarn start 还是 docker-compose up?”

上下文切换是生产力的杀手。作为开发者,我们花太多时间记住如何启动项目,而不是实际去运行它。

智能上下文感知 🛠️

我一直在开发一个 VS Code 插件叫 DotCommand,今天终于破解了它最大的功能:智能上下文感知

目标很简单:别让我去搜索命令。根据我当前的文件,直接给我需要的命令。

  • 检测到 package.json → 显示 NPM 命令(install、run script)。
  • 检测到 Dockerfile → 显示 Docker 命令(build、run)。
  • 检测到 .git → 显示 Git 工作流。

实现细节 🐛

听起来很简单,但实现起来却挺棘手。

我最初写了一个 ContextDetector 类来扫描工作区。它能工作,但速度慢,于是我加了一个缓存层(30 秒)。

Bug – 创建 package.json 后 UI 不会立即更新,必须等缓存失效,体验显得卡顿且“迟钝”。

Fix – 重新接线 FileSystemWatcher 事件,强制在关键文件(如 package.json)被创建或删除的瞬间失效缓存并刷新 UI。

现在几乎是瞬时响应。 ⚡

实际效果 🎥

DotCommand UI – NPM detection

DotCommand UI – Docker detection

DotCommand UI – Git workflow

加分项:动态 Git 分支

我不仅止步于文件检测。手动输入分支名也很烦人,于是我加入了 动态输入 系统。运行 git checkout 等命令时,会弹出原生 VS Code 下拉框,列出你本地实际存在的分支供选择。

试一试

我正在公开开发这个插件,期待你的反馈。这能解决你的真实痛点吗?

DotCommand on the VS Code Marketplace

祝编码愉快! 🚀

Back to Blog

相关文章

阅读更多 »