Codex可在Mac上协同ESLint实现团队代码规范强制校验:需正确安装认证CLI,配置绝对路径eslint_path至config.toml,启用VS Code的formatOnSave与codeActionsOnSave,并确保项目含有效.eslintrc配置文件。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Mac上让Codex与ESLint协同工作,实现团队代码规范的强制校验,避免成员提交风格混乱、语法松散的JavaScript/TypeScript代码。你不需要手动检查每一行,而是让Codex在读取项目时自动触发ESLint规则扫描,并把违规项直接标出、建议修复——这要求Codex能识别本地ESLint配置、调用其校验能力,且VS Code编辑器同步响应。
确认Codex CLI已正确安装并认证
打开终端(Terminal),执行codex --version,输出版本号(如v26.3.1)且无报错,说明CLI基础可用。
运行codex命令,若提示未登录,则按指引跳转浏览器完成ChatGPT账号授权;若提示401 Unauthorized,请立刻检查~/.codex/auth.json内容是否仅有一行、无空格、无BOM、无注释:【{"OPENAI_API_KEY":"sk-xxx"}】。
认证成功后,终端应显示“Welcome, your Codex session is ready.”。
为Codex启用ESLint校验能力
Mac系统默认不将ESLint暴露给Codex进程,必须显式声明路径。
第一步:在项目根目录下运行npx eslint --version,确认输出类似v8.56.0,证明ESLint已作为devDependency安装。
第二步:进入Codex配置目录:cd ~/.codex,编辑config.toml文件,在[model_providers.letaicode]区块下方新增一行:eslint_path = "/Users/你的用户名/项目路径/node_modules/.bin/eslint"。
⚠️ 注意:这个路径必须是绝对路径,且指向你当前主力项目的node_modules/.bin/eslint——不能写成./node_modules/.bin/eslint或使用~缩写,否则Codex启动时会静默忽略该配置。
第三步:保存文件,完全退出并重启终端(不是新建Tab,是关闭再重开),确保环境变量与配置重载生效。
配置VS Code与ESLint插件联动
方法一:VS Code用户设置全局生效(推荐团队统一)
按下Cmd + Shift + P → 输入Preferences: Open Settings (JSON) → 回车 → 在右侧JSON中添加以下三行:
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
通过 codex-reset-radar.pages.dev 监控 Codex 使用重置窗口。轮询 current.json,检测窗口开启/关闭、预测等级变化以及概率跳变。
"editor.codeActionsOnSave": { "source.fixAll.eslint": true }
方法二:项目级覆盖(用于多规范混存场景)
在项目根目录创建.vscode/settings.json,内容为:
{ "editor.formatOnSave": true, "editor.codeActionsOnSave": { "source.fixAll.eslint": true } }
✅ 这一步不做,Codex即使发现ESLint问题,也无法在编辑器里实时高亮或一键修复。
验证Codex能否驱动ESLint规则
进入任意JS/TS项目根目录,执行:codex "检查当前项目所有.js和.ts文件,列出所有ESLint错误和警告"。
等待约3–8秒(取决于项目规模),Codex应返回结构化结果,例如:
✖ 3 errors found in src/utils/date.js
• Line 12: Missing semicolon. (semi)
• Line 15: Unexpected console.log. (no-console)
若返回No ESLint configuration found,说明.eslintrc.js或.eslintrc.json不在项目根目录,或文件名拼写错误(必须是.eslintrc开头,不可写作eslint.config.js)。
若返回空白或ESLint not reachable,请回到第二步,重新核对eslint_path路径是否真实存在、权限是否可执行(ls -l /path/to/eslint应显示-rwxr-xr-x)。










