新人没装 ESLint?这个脚本让他一眼看出问题,还能一键安装插件

在团队开发中,你是否也遇到过这样的情况:

  • 新人 PR 提交了格式混乱的代码,CI 挂了;
  • 本地运行 ESLint 报错,但他自己却完全不知道;
  • 你提醒他装插件,他说"我没看到推荐提示"......

我们打造了一个自动检测 VSCode 插件状态的脚本,不仅能判断是否缺失 ESLint、Prettier 等关键插件,还能生成一键安装命令,甚至考虑了多种编辑器和终端环境。****


🧩 背景痛点

虽然 VSCode 支持在 .vscode/extensions.json 中配置推荐插件,但这个功能只会提示,无法强制安装。新人经常忽略,导致格式化、校验规则执行不一致。

我们希望:

  • 项目一 clone 下来,能立刻检测 VSCode 插件状态;
  • 缺失插件就输出错误并给出安装命令;
  • 能识别当前是否运行在 VSCode 或 Cursor 编辑器内置终端中;
  • 兼容多编辑器、多平台,简单易用。

⚙️ 实现原理(流程图)

为了更好理解,我们专门绘制了流程图:

核心逻辑概览:

  • 检查是否在编辑器内置终端中运行(如 VSCode、Cursor);
  • 获取活跃的编辑器进程,支持 VSCode、Cursor、WindSurf;
  • 使用 --list-extensions 获取当前安装的插件列表;
  • 判断是否包含必需插件,如 dbaeumer.vscode-eslint;
  • 如果缺失,输出安装命令;否则提示成功。

🚀 使用方法

1. 安装依赖

sql 复制代码
npm install check-vscode-extensions --save-dev

2. 添加脚本命令

json 复制代码
{
  "scripts": {
    "check:env": "check-vscode-extensions"
  }
}

3. 集成到

postinstall

json 复制代码
{
  "scripts": {
    "postinstall": "npm run check:env"
  }
}

clone 项目后自动触发检测,杜绝插件缺失隐患。


🔍 示例输出

插件缺失时会输出如下提示:

markdown 复制代码
❌ 缺少以下插件:
- dbaeumer.vscode-eslint
- esbenp.prettier-vscode

💡 安装命令(复制即用):
code --install-extension dbaeumer.vscode-eslint \
     --install-extension esbenp.prettier-vscode

已安装时则输出:

复制代码
✅ 所有必需插件已安装

📊 和推荐插件功能对比

功能 VSCode 推荐插件 check-vscode-extensions
自动检测插件状态 ❌ ✅
缺失插件终端提示 ❌ ✅
一键安装命令 ❌ ✅
支持 Cursor/WindSurf 等 ❌ ✅
支持终端环境判断 ❌ ✅

🧠 高亮特性

  • ✅ 智能环境识别:VSCode / Cursor / WindSurf 等编辑器内检测
  • ✅ 多编辑器支持:不局限 VSCode,广泛适配现代开发工具
  • ✅ 路径冲突解决:自动判断 code 命令真实指向
  • ✅ 一键修复能力:直接提供插件安装命令,开发者零心智负担

📦 项目地址

👉 GitHub: leeguooooo/check-vscode-extensions

欢迎 star ✨、提 PR、提 issue,一起让插件配置不再成为团队协作的障碍!

强制安装vscode插件 #强制安装cursor插件

相关推荐
code_Bo1 小时前
从策划到上线:我和 AI 一起做了个微信记账小程序
前端·ai编程·cursor
一缕82年的清风9 小时前
Windsurf 凭什么敢叫板 Cursor?深度实测一周,聊聊底层机制与真实心路
claude·cursor
一缕82年的清风1 天前
上下文工程(Context Engineering):为什么说它是 AI 编程时代最重要的核心内功?
claude·cursor
网络毒刘2 天前
国庆后开工第一周:用一张 Cursor 能力地图安排学习路径(Rules→MCP→工作流)
cursor·工作流·rules·mcp·学习路径
全栈Agent 小李3 天前
【无标题】
前端·后端·agent·ai编程·全栈·cursor·mcp
网络毒刘3 天前
开源模型推理网关 + Cursor:通过兼容 API 切换后端,控制成本与延迟
开源·cursor·成本·工具实践·推理网关
一缕82年的清风4 天前
从Cursor杀向命令行:当AI接管终端,为什么资深架构师反而很少开IDE了?
claude·cursor·gemini
网络毒刘5 天前
把个人 Prompt 库迁到 AtomGit:版本化、评审与在 Cursor 中通过 @ 引用
prompt·cursor·atomgit·版本化·工具实践
网络毒刘5 天前
Rules 冲突排查:多条规则互相打架时如何用优先级、范围与示例消歧
agent·ai编程·cursor·rules
网络毒刘5 天前
端到端:用 Cursor Agent 完成「小功能 + 单测 + PR 描述」并附人工验收清单
单元测试·agent·ai编程·cursor·工具实践