来源:互联网 更新时间:2026-07-22 07:20
先说几个核心判断。
最近身边不少开发者开始从Claude Code、Cursor、Copilot等工具转向或尝试OpenAI Codex。相比单纯在网页端提问,Codex更适合直接进入项目工程——读代码、分析结构、改文件、生成文档、排查报错,一步到位。

这篇文章主要围绕VSCode展开,咱们不玩纯命令行那套,而是直接上手
Codex官方支持通过IDE扩展在VSCode、Cursor、Windsurf等编辑器中使用,并可以读取编辑器中的文件、选区以及项目上下文。官方也提供了VSCode命令面板、Slash commands、AGENTS.md、Skills、Subagents、自定义Agents等能力。
你可能想知道这玩意儿到底适合谁,简单说,以下人群最合适:
AGENTS.md、Skills、Subagents到底怎么用的用户本文以Windows + VSCode为主要使用环境,示例项目目录使用D:aitest,你可以根据自己的项目路径替换。
如果你主要用VSCode,那么Codex的最佳使用方式绝不是一直在终端里敲命令,而是这样:
VSCode Codex扩展:日常对话、读取文件、修改代码 VSCode命令面板:添加选中代码、添加当前文件、实现TODO VSCode终端:安装、检查版本、执行一次性命令 AGENTS.md:项目长期规则 .agents/skills:专项能力包 .codex/agents:自定义Agent .codex/config.toml:Codex配置
理想的使用习惯应该长这样:
打开VSCode项目 → 打开Codex侧边栏 → 让Codex读取AGENTS.md → 选中文件或代码加入上下文 → 使用Skill或Agent完成专项任务 → 查看diff → 测试项目
Codex IDE扩展支持在编辑器中使用打开的文件、选中的代码片段和@file引用来提供上下文,也可以在IDE内切换模型、调整审批模式、委派云端任务、使用Slash commands。
打开VSCode,进入扩展市场:
Extensions → 搜索Codex → 安装OpenAI Codex扩展
也可以通过命令面板打开扩展安装页面:
Ctrl + Shift + P → 输入Extensions: Install Extensions → 搜索Codex
安装完成后,Codex会出现在VSCode左侧边栏。如果没有看到,可以在命令面板中搜索Codex相关命令。官方Quickstart说明,安装IDE扩展后Codex会显示在编辑器侧边栏,需要登录后开始使用。
在VSCode里按下Ctrl + Shift + P,然后搜索Codex,你会看到一堆命令。挑几个最常用的说:
| 命令 | 作用 | 使用场景 |
|---|---|---|
| Open Codex Sidebar | 打开Codex侧边栏 | 日常使用入口 |
| New Codex Panel | 新建Codex面板 | 多任务处理 |
| New Chat | 新建对话 | 开始新任务 |
| Add selected text to thread | 把选中的代码加入当前对话 | 分析某段代码 |
| Add file to thread | 把整个当前文件加入对话 | 分析完整文件 |
| Implement TODO | 实现选中的TODO注释 | 根据TODO自动补代码 |
Codex官方IDE命令文档列出了这些命令,例如chatgpt.addToThread用于添加选中代码,chatgpt.addFileToThread用于添加整个文件,chatgpt.implementTodo用于实现TODO,chatgpt.openSidebar用于打开侧边栏。
第一次打开项目,别急着让Codex动手改代码。先让它只读分析项目结构,摸清底细再说。
不要只打开单个文件,应该打开整个项目文件夹:
File → Open Folder → 选择项目根目录
例如:D:aitest
这样Codex才能读取到完整的项目结构。
在Codex侧边栏输入:
请只读分析当前项目,不要修改任何文件。 请说明: 1. 后端入口在哪里 2. 前端入口在哪里 3. 数据库相关代码在哪里 4. 启动命令是什么 5. 当前项目可能有哪些风险点
请根据当前项目结构,告诉我如果要修改"任务恢复"和"分页显示",会涉及哪些文件。 暂时不要修改。
可以按方案修改。 要求: 1. 只修改必要文件 2. 不要动无关代码 3. 不要删除数据 4. 涉及数据库只给SQL,不要直接执行 5. 修改完成后给出测试步骤
修改完成后,在VSCode左侧的Source Control中可以查看变更,也可以让Codex总结:
请总结本次修改: 1. 修改了哪些文件 2. 每个文件改了什么 3. 是否涉及数据库SQL 4. 是否涉及删除逻辑 5. 后端如何启动 6. 前端如何启动 7. 如何验证功能 8. 如何回滚
虽然主要讲VSCode使用方式,但终端仍然是绕不开的一环。
如果你希望在VSCode终端里使用Codex CLI,可以执行:
npm install -g @openai/codex
检查版本:
codex --version
Codex CLI是OpenAI的本地编码Agent,可以在终端中读取、修改和运行当前目录中的代码。官方文档说明,Codex CLI可以通过npm或Homebrew安装。
cd D:aitest
codex --sandbox read-only --ask-for-approval on-request
适合第一次分析项目、检查代码、看报错。
codex --sandbox workspace-write --ask-for-approval on-request
适合确认方案之后,让Codex修改当前项目内的代码。
codex exec "分析当前项目结构,输出后端、前端、数据库、任务队列、目录监听相关模块"
codex exec --sandbox read-only "检查当前项目中是否存在DELETE、TRUNCATE、DROP、shutil.rmtree、os.remove、rmdir /s /q 等危险操作"
Codex CLI官方参考文档列出了--sandbox、--ask-for-approval、--cd、--model、--image、exec等命令和参数,并说明命令行参数可以覆盖config.toml中的默认配置。
在Codex聊天输入框中输入/,可以打开Slash commands。
常用命令包括:
| 命令 | 作用 |
|---|---|
/status | 查看当前状态 |
/model | 切换模型 |
/permissions | 调整权限 |
/diff | 查看修改差异 |
/compact | 压缩长上下文 |
/clear | 清空当前对话上下文 |
Codex IDE扩展支持在聊天输入框中使用Slash commands,用于查看状态、切换模式、发送反馈等;Codex CLI中的Slash commands还支持切换模型、调整权限、总结长对话等能力。
AGENTS.md可以理解为“写给Codex看的项目说明书”。README.md通常是写给人看的,而AGENTS.md是写给AI Agent看的。它可以告诉Codex:
项目是什么 技术栈是什么 启动命令是什么 哪些文件不能随便改 数据库修改要注意什么 删除操作有哪些限制 代码风格是什么 任务完成后要输出什么
官方文档说明,Codex会在开始工作前读取AGENTS.md,可以通过全局规则和项目级规则叠加,让不同仓库拥有一致的工作要求。
项目级文件建议放在项目根目录:D:aitestAGENTS.md。如果是全局规则,可以放在:C:Users你的用户名.codexAGENTS.md。项目级规则适合记录当前项目特有的要求,全局规则适合记录你个人长期使用习惯。
# AGENTS.md ## 项目背景 这是一个本地部署的xxxxx管理系统,用于xxxxxxx。 ## 技术栈 - 后端:FastAPI + Uvicorn - 前端:前后端分离 - 数据库:MySQL - 目录监听:watchdog ## 工作规则 - 修改代码前,必须先阅读项目结构。 - 修改前必须说明会影响哪些文件。 - 修改后必须给出启动命令和测试步骤。 - 不允许把所有功能堆在一个页面或一个文件里。 - 不允许把HTML写死在Python字符串中。 - 不允许默认使用SQLite,数据库优先使用MySQL。 - 涉及数据库结构修改时,必须给出完整SQL。 - 涉及删除文件、删除结果、清空数据库时,必须有二次确认、操作日志和回滚说明。 ## 输出规范 - 原图文件名不能被破坏。 - xxxxx - xxxxx - xxxxx - JSON输出需要稳定,可供其他系统对接。 ## 完成标准 每次任务完成后必须说明: 1. 修改了哪些文件。 2. 每个文件修改了什么。 3. 如何启动后端。 4. 如何启动前端。 5. 如何验证功能。 6. 是否涉及数据库SQL。 7. 是否存在风险和回滚方式。
Skills可以理解为Codex的“专项工作手册”。比如你经常让Codex检查YOLO项目代码、生成MySQL迁移SQL、检查危险删除逻辑、整理MQTT设备API文档、重构前端页面、生成测试步骤——这些重复性的要求,就可以封装成一个Skill。
官方说明中,Skill是一个目录,里面必须包含SKILL.md,也可以包含脚本、参考文档、资源文件等。Codex可以通过Skills获得特定任务的流程和专业知识。
项目级Skills建议放在D:aitest.agentsskills。目录示例:
D:aitest
├─ AGENTS.md
├─ .agents
│ └─ skills
│ ├─ code-review
│ │ └─ SKILL.md
│ ├─ mysql-safe-migration
│ │ └─ SKILL.md
│ └─ dangerous-delete-guard
│ └─ SKILL.md
在Codex聊天框中直接输入:
请使用 $code-review 检查当前项目的任务队列和断点续扫逻辑。
或者:
请使用 $mysql-safe-migration 生成本次数据库修改SQL、备份SQL、回滚SQL。
或者:
请使用 $dangerous-delete-guard 检查当前项目是否存在高风险删除逻辑。
文件路径:D:aihelmet.agentsskillsyolo-code-reviewSKILL.md
内容:
--- name: code-review description: 当任务涉及xxxxx管理系统、FastAPI后端、MySQL、watchdog监听、任务队列、断点续扫、分页、识别结果JSON输出时使用。 --- #代码审查 Skill ## 使用场景 当用户要求检查或修改以下内容时使用: - xxxxx管理系统 - FastAPI后端 - MySQL数据库 - watchdog目录监听 - 任务队列 - 断点续扫 - 分页 - 输出结果 - 识别结果JSON ## 工作流程 1. 先阅读项目结构,不要直接修改。 2. 找到后端入口、数据库模型、任务服务、监听服务、前端页面。 3. 修改前说明会影响哪些文件。 4. 涉及数据库变更时给出完整SQL。 5. 涉及删除功能时必须要求二次确认、操作日志和回滚方式。 6. 修改完成后给出启动命令、测试步骤和风险点。 ## 禁止事项 - 不允许默认清空数据库。 - 不允许删除模型权重文件。 - 不允许把HTML写死在Python字符串里。 - 不允许只改前端不改后端接口。 - 不允许破坏原始图片文件名。
文件路径:D:aitest.agentsskillsmysql-safe-migrationSKILL.md
内容:
--- name: mysql-safe-migration description: 当任务涉及MySQL表结构修改、数据迁移、清库、删除识别结果、DELETE、TRUNCATE、DROP、备份和回滚时使用。 --- # MySQL安全迁移 Skill ## 触发场景 - 修改MySQL表结构 - 新增字段 - 删除字段 - 清理识别结果 - 删除任务数据 - 批量删除JSON或图片 - 使用DELETE / TRUNCATE / DROP - 生成数据库升级SQL ## 工作步骤 1. 先识别涉及哪些表。 2. 判断是否会影响历史数据。 3. 给出备份SQL。 4. 给出迁移SQL。 5. 给出回滚SQL。 6. 给出验证SQL。 7. 对DELETE / TRUNCATE / DROP做高风险提示。 ## 输出格式 必须输出: - 涉及表 - 风险等级 - 执行前备份SQL - 正式执行SQL - 回滚SQL - 验证SQL - 注意事项 ## 禁止事项 - 不允许直接清空数据库。 - 不允许没有WHERE的DELETE。 - 不允许没有备份方案的DROP / TRUNCATE。 - 不允许忽略外键、索引、历史数据兼容问题。
文件路径:D:aitest.agentsskillsdangerous-delete-guardSKILL.md
内容:
--- name: dangerous-delete-guard description: 当任务涉及删除文件、删除目录、删除数据库记录、清空识别结果、shutil.rmtree、os.remove、rm、rmdir、DELETE、TRUNCATE、DROP时使用。 --- # 危险删除保护 Skill ## 检查范围 需要重点检查: - Python: os.remove - Python: os.unlink - Python: shutil.rmtree - Shell: rm -rf - Windows: rmdir /s /q - SQL: DELETE - SQL: TRUNCATE - SQL: DROP - 前端批量删除按钮 - 后端批量删除接口 ## 强制要求 任何删除功能必须包含: 1. 二次确认。 2. 删除范围预览。 3. 操作日志。 4. 操作人或来源记录。 5. 删除数量统计。 6. 异常回滚或失败记录。 7. 不允许删除模型权重文件。 8. 不允许误删raw原始图片。 ## 输出格式 请输出: - 高风险代码位置 - 风险说明 - 可能后果 - 推荐修复方式 - 是否必须立即修改
很多人容易把Agent和Skill混在一起,可以这样理解:
| 类型 | 作用 |
|---|---|
| AGENTS.md | 项目总规则 |
| Skill | 某类任务的操作手册 |
| Custom Agent | 一个专门负责某类任务的角色 |
| Subagents | 多个Agent并行分析或执行任务 |
例如:project_explorer负责只读分析项目结构,reviewer专门做代码审查,mysql_guardian专门检查数据库风险。
官方Subagents文档说明,Codex可以派生多个子Agent并行工作,等待它们完成后汇总结果;自定义Agent可以放在~/.codex/agents/或项目级.codex/agents/中。
项目级Agent建议放在D:aitest.codexagents。目录结构:
D:aitest
├─ .codex
│ ├─ config.toml
│ └─ agents
│ ├─ project-explorer.toml
│ ├─ reviewer.toml
│ └─ mysql-guardian.toml
文件路径:D:aitest.codexagentsproject-explorer.toml
内容:
name = "project_explorer" description = "只读项目结构分析Agent,用于在修改代码前梳理目录、模块、调用链和风险点。" model_reasoning_effort = "medium" sandbox_mode = "read-only" developer_instructions = """ 你是只读项目探索Agent。 你的任务: 1. 阅读项目结构。 2. 定位后端入口。 3. 定位前端入口。 4. 定位数据库模型。 5. 定位任务队列和目录监听逻辑。 6. 输出风险点和下一步建议。 禁止修改任何文件。 """
文件路径:D:aitest.codexagentsreviewer.toml
内容:
name = "reviewer" description = "代码审查Agent,重点检查正确性、安全风险、测试缺失和可维护性。" model_reasoning_effort = "high" sandbox_mode = "read-only" developer_instructions = """ 你是严格的代码审查Agent。 重点检查: 1. 逻辑错误 2. 安全问题 3. 数据库风险 4. 删除操作风险 5. 并发问题 6. 测试缺失 7. 可维护性问题 不要修改代码,只输出审查结果。 每个问题必须包含: - 问题位置 - 风险说明 - 修改建议 - 是否必须修复 """
文件路径:D:aitest.codexagentsmysql-guardian.toml
内容:
name = "mysql_guardian" description = "MySQL数据库安全Agent,用于检查表结构修改、DELETE、TRUNCATE、DROP、清库、迁移和回滚风险。" model_reasoning_effort = "high" sandbox_mode = "read-only" developer_instructions = """ 你是MySQL数据库安全Agent。 重点检查: 1. 是否存在DROP / TRUNCATE / DELETE无条件执行 2. 是否缺少事务 3. 是否缺少备份方案 4. 是否缺少回滚SQL 5. 是否影响历史识别结果 6. 是否存在连接池耗尽风险 7. 是否存在字段兼容问题 不要直接执行数据库命令。 输出必须包含: - 风险等级 - 涉及表 - 涉及SQL - 修复建议 - 备份方案 - 回滚方案 """
在Codex聊天框中输入:
请启动3个subagents并行分析当前项目: 1. project_explorer:分析项目结构、入口文件和调用链。 2. reviewer:检查代码质量、安全风险和测试缺失。 3. mysql_guardian:检查MySQL表结构、删除逻辑和迁移风险。 要求: - 不要修改文件。 - 每个Agent单独输出发现。 - 最后由主Agent汇总成一份修改优先级清单。
这种方式适合大项目整体审查、前后端同时修改前的风险分析、数据库迁移前检查、删除功能上线前检查、任务队列和并发问题排查。不过要注意,Subagents会消耗更多上下文和token,不适合简单问题。官方也说明Codex只会在用户明确要求时创建新的Agent。
用户级配置:C:Users你的用户名.codexconfig.toml。项目级配置:D:aitest.codexconfig.toml。Codex配置文档说明,config.toml用于配置模型、审批策略、沙箱、MCP等内容;Codex CLI会继承~/.codex/config.toml中的大多数默认设置。
approval_policy = "on-request" sandbox_mode = "workspace-write" [agents] max_threads = 4 max_depth = 1
如果你主要使用VSCode,不建议过度依赖profile。官方高级配置文档说明,profiles目前主要用于CLI,暂不支持Codex IDE extension。
如果使用CLI,可以再增加:
[profiles.readonly] approval_policy = "on-request" sandbox_mode = "read-only" [profiles.dev] approval_policy = "on-request" sandbox_mode = "workspace-write" [profiles.strict] approval_policy = "untrusted" sandbox_mode = "read-only"
然后在终端中使用:codex --profile readonly或codex --profile dev。
如果你想长期稳定使用Codex,建议项目结构整理成这样:
D:aitest
├─ AGENTS.md
├─ .codex
│ ├─ config.toml
│ └─ agents
│ ├─ project-explorer.toml
│ ├─ reviewer.toml
│ └─ mysql-guardian.toml
├─ .agents
│ └─ skills
│ ├─ code-review
│ │ └─ SKILL.md
│ ├─ mysql-safe-migration
│ │ └─ SKILL.md
│ ├─ dangerous-delete-guard
│ │ └─ SKILL.md
│ ├─ mqtt-api-doc-writer
│ │ └─ SKILL.md
│ └─ frontend-page-refactor
│ └─ SKILL.md
├─ backend
├─ frontend
├─ README.md
└─ requirements.txt
请读取AGENTS.md,并只读分析当前项目结构。 不要修改任何文件。 请告诉我: 1. 项目整体结构 2. 后端入口 3. 前端入口 4. 数据库相关文件 5. 任务队列相关文件 6. 目录监听相关文件 7. 当前项目主要风险点
请给出修改方案。 要求说明: 1. 要修改哪些文件 2. 每个文件为什么要修改 3. 是否涉及数据库 4. 是否涉及删除操作 5. 风险点是什么 6. 如何验证 暂时不要修改。
请使用 $code-review 检查当前项目的任务队列、watchdog监听、断点续扫和分页逻辑。 先给出问题清单和修改方案,不要直接修改。
请使用 $dangerous-delete-guard 检查当前项目中所有删除相关逻辑。 重点搜索: - os.remove - os.unlink - shutil.rmtree - rm -rf - rmdir /s /q - DELETE - TRUNCATE - DROP - 批量删除接口 - 前端删除按钮 不要修改文件,只输出风险清单和修复建议。
请使用 $mysql-safe-migration 分析这次数据库修改需求。 要求输出: 1. 涉及表 2. 备份SQL 3. 修改SQL 4. 回滚SQL 5. 验证SQL 6. 风险说明 不要直接执行SQL。
请启动3个subagents并行审查当前项目: 1. project_explorer:只读分析项目结构和调用链。 2. reviewer:检查代码正确性、安全性和测试缺失。 3. mysql_guardian:检查数据库结构、删除逻辑和迁移风险。 要求: - 不要直接修改代码。 - 每个Agent单独输出发现。 - 最后由主Agent汇总成一份修改优先级清单。
请总结本次修改: 1. 修改了哪些文件 2. 每个文件修改了什么 3. 是否涉及数据库 4. 是否涉及删除操作 5. 如何启动后端 6. 如何启动前端 7. 如何验证功能 8. 如何回滚
错误示例:帮我把整个项目优化一下。 更好的写法:请先只读分析当前项目结构,不要修改文件。然后告诉我如果要优化任务恢复逻辑,需要改哪些文件。
建议这样说:涉及数据库的部分只给SQL,不要直接执行。请同时给出备份SQL、修改SQL、回滚SQL和验证SQL。
建议这样说:涉及删除文件、删除结果、清空数据库的功能,必须有二次确认、删除范围预览、操作日志和回滚说明。
使用Codex时,建议打开完整项目目录,否则Codex很难理解项目结构,也容易改错地方。
如果在一个任务中连续修改很多轮,可以使用/compact,或者新建一个Codex对话,让上下文更清晰。
最后说一句:如果你主要在VSCode中使用Codex,建议优先掌握这6件事——打开完整项目目录、打开Codex侧边栏、使用Add selected text to thread、使用Add file to thread、编写AGENTS.md、使用$skill-name调用Skills。
然后再逐步掌握.codex/config.toml、.codex/agents、.agents/skills、Subagents、Slash commands、Codex CLI。
对真实项目来说,最推荐的组合是:
一句话总结:在VSCode中使用Codex,最好的方式不是直接让它乱改代码,而是先用AGENTS.md定规则,再用Skills固化流程,再用Agent分工审查,最后让Codex在明确边界内修改和验证。
七麦数据官网网页地址 七麦数据官方入口在线首页
问卷星官方网站入口地址 问卷星网页版在线使用
币安Binance官方中文网站 币安App最新版下载及新手注册指南
闲鱼的严选验货在哪里看?闲鱼严选和验货宝哪个可靠
PokePay加密卡2026完整指南:申请开卡全攻略+多场景应用技巧
淘宝直播如何看回放在哪里看?怎么查看淘宝直播回放
摩托车活塞环性能如何
为何比特币BTC价格跌破7.3万美元?一文拆解影响近期比特币行情的五大原因
豆包AI专业版使用教程【新手必看】
索尼限时赠送PS Plus Premium七日会员,需手
ThinkBook系列最新价格全解析:2026年选购避坑与实时询价指南
迷你网名古风男生霸气(精选100个)
文雅简易网名男生可爱(精选100个)
GPT5.6惨遭切脑,Fable 5回归要变弱鸡版?
《梦幻西游》特殊鬼怪怎么抓-隐藏变异鬼应对要点
币圈十大实用工具:从实时行情监控到数据分析、资产管理
王者荣耀「西行封妖记」【孙权-仙扇使者】6月25日上线!
闲鱼严选和验货宝哪个可靠?闲鱼的验货宝怎么样,,
币安杀入美股市场,重头戏bStocks还没来
陈姓和杨姓网名大全男生(精选100个)
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc