Codex可识别package.json中未被代码引用的冗余依赖:运行codex deps --unused扫描,结合--deep模式检测动态引入;验证后手动删除package.json条目并测试运行,最后在CI中校验。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在使用Codex分析项目依赖时,需要识别出那些已写入package.json但实际代码中从未被引用的包,避免冗余安装和潜在安全风险。
用Codex扫描未使用的依赖
打开终端,进入项目根目录,确保已安装codex CLI工具。若未安装,先运行 npm install -g @codex-team/codex。
执行命令:codex deps --unused。该命令会遍历所有源码文件(默认包括.js、.ts、.jsx、.tsx),对比import语句与package.json中的dependencies/devDependencies列表。
输出结果中,每行显示一个疑似未使用依赖的包名及其来源类型(如“仅出现在devDependencies中”或“未在任何import中出现”)。
验证可疑依赖是否真可删
方法一:临时注释导入语句后运行测试
在项目中全局搜索该包名(如lodash),确认所有import或require调用均已被注释或删除;然后运行npm test或vitest,若测试全部通过且无运行时报错,则基本可判定为闲置依赖。
将来自 Marvis 或微信的可信远程软件开发请求中继至用户本地的 Codex CLI,等待编码任务完成,并返回经验证的结果。当用户通过 Codex 要求 Marvis 检查、实现、修复、测试、review 或继续在明确指定的本地项目目录中开展工作时,使用此功能。
方法二:启用Codex深度分析模式
执行codex deps --unused --deep,该模式会解析动态import()、require()字符串拼接、以及webpack别名路径,能发现普通扫描遗漏的隐式引用。注意:此模式耗时更长,且【要求项目已配置tsconfig.json或jsconfig.json】,否则可能误报。
安全移除依赖
第一步:从package.json中手动删去目标依赖项(不要只用npm uninstall,防止它自动添加进devDependencies)。
第二步:运行npm install同步node_modules,此时缺失模块不会被重新安装。
第三步:启动开发服务器(如npm run dev),观察控制台是否报“Cannot find module”错误。若有,说明该依赖仍被间接使用,需回退并检查调用链。
第四步:提交前,在CI流程中加入codex deps --unused --fail-on-unused作为校验步骤,防止同类问题再次引入。

















