Codex AI助手三层配置与AGENTS.md实战:从安全管控到项目规范

📅 2026/7/5 21:53:12
Codex AI助手三层配置与AGENTS.md实战:从安全管控到项目规范
30款热门AI模型一站整合DeepSeek/GLM/Qwen 随心用限时 5 折。 点击领海量免费额度1. 先搞清楚 Codex 配置到底在管什么如果你刚接触 Codex可能会觉得“配置”这个词有点宽泛。它不像装个 MySQL 或者配个环境变量那么简单。Codex 的配置核心是定义这个 AI 助手在你电脑上能做什么、不能做什么以及它如何理解你的项目。简单说配置决定了 Codex 是只会写代码的“实习生”还是能理解你团队规范、自动执行审查、安全运行命令的“资深搭档”。对于法律、金融、咨询等非纯技术背景但又需要处理大量文本、代码或流程的专业人士来说配置尤其重要。一个没配好的 Codex可能会随意执行危险命令或者生成不符合行业规范的文档。所以配置篇的核心价值不是“能用”而是“安全、可控、符合业务场景地用好”。配置主要分三块基础行为用什么模型、怎么推理、项目规范AGENTS.md 文件、以及安全与扩展Rules, Skills, Hooks。很多人一上来就折腾模型切换其实更应该先关注后两者因为它们直接关系到生产环境下的安全性和输出质量。2. 从全局到项目三层配置的优先级与实战设置Codex 的配置不是一份文件管所有它采用了三层结构优先级从高到低是托管配置 项目配置 用户配置。理解这个顺序能避免很多“为什么改了配置没生效”的坑。2.1 用户级配置你的个人工作台默认设置用户级配置文件在~/.codex/config.tomlLinux/macOS或C:\Users\你的用户名\.codex\config.tomlWindows。这是你的个人默认设置所有没有特殊配置的项目都会继承这里面的值。第一次使用你可能需要手动创建这个文件和目录。一个最精简但实用的起步配置可以这样写# ~/.codex/config.toml # 1. 模型与推理配置 model gpt-4o # 或 claude-3-5-sonnet根据你的订阅 model_reasoning_effort medium # 推理强度minimal, low, medium, high, xhigh model_reasoning_summary auto # 推理过程摘要auto, concise, detailed, none # 2. 服务与审批策略 service_tier flex # 服务层级flex弹性或 fast快速 approval_policy suggest # 审批策略suggest建议, auto-edit自动编辑, full-auto全自动 # 3. 代理并行设置 [agents] max_threads 3 # 最大并行子任务数根据你电脑CPU核心数调整初期建议2-3 max_depth 1 # 任务最大嵌套深度防止无限递归保持1最安全关键参数解读model_reasoning_effort: 这个参数控制 AI “思考”的深度。对于法律文书分析、合同条款审查这类需要严谨推理的任务可以设为high或xhigh但任务耗时和Token消耗会显著增加。日常代码生成或文本整理medium足够。approval_policy:这是安全红线。强烈建议新手和所有涉及敏感操作的环境设置为suggest。这意味着 Codex 提出的每一个命令执行、每一个代码修改建议都需要你手动点击批准。auto-edit和full-auto模式虽然方便但意味着 Codex 可能在你不知情的情况下修改或删除文件。max_threads: 不要盲目调高。并行任务多会抢占系统资源CPU、内存可能导致单个任务变慢甚至卡死。先从2开始观察系统资源管理器再逐步调整。2.2 项目级配置为特定工作定制规则项目级配置文件放在你的项目根目录.codex/config.toml。这里的配置会覆盖用户级的同名设置。什么时候需要项目级配置模型切换某个老项目必须用 GPT-4 Turbo 保持兼容而你的默认是 Claude。资源限制某个数据清洗项目任务重需要降低max_threads防止机器卡死。特殊审批对于你完全信任的、自动化部署的项目目录可以在此设置为auto-edit而其他项目保持suggest。例如你有一个法律案例分析的 Python 项目需要深度推理且不允许自动运行任何命令# /path/to/your/law-case-project/.codex/config.toml model gpt-4o model_reasoning_effort high approval_policy suggest # 法律文档必须手动审批每一个动作 [agents] max_threads 1 # 案例分析串行进行更稳妥避免思维交叉 job_max_runtime_seconds 3600 # 单个任务最长1小时防止卡住2.3 实战如何验证配置生效改完配置最常见的困惑是“生效了吗”不要猜用命令检查。在 Codex App 或 CLI 中打开你的项目目录。输入命令/status查看输出。你会看到当前会话加载的所有配置信息包括生效的模型、审批策略、以及配置文件的加载路径。如果项目级配置没生效检查文件路径和文件名是否正确是.codex目录下的config.toml。注意修改config.toml后需要重启 Codex App或重新启动 CLI 会话才能生效。单纯刷新页面或输入新命令可能不会加载新的配置。3. AGENTS.md教会 Codex 理解你的项目“法律”如果说config.toml是 Codex 的“行为准则”那么AGENTS.md就是项目的“宪法”和“业务手册”。它用自然语言告诉 Codex 这个项目的技术栈、代码规范、安全红线、甚至写作风格。对于法律、金融项目这部分比模型选择更重要。3.1 AGENTS.md 应该写什么一个法律科技项目的例子这个文件没有固定格式但结构清晰很重要。它应该放在项目根目录。# 法律文书智能生成与审查项目指南 ## 项目概述 本项目用于生成和审查标准法律合同文本如NDA、租赁合同。所有输出必须严格符合中华人民共和国现行法律法规并采用严谨、无歧义的法律文书用语。 ## 技术栈与依赖 - 主语言Python 3.9 - 关键库python-docx (处理.docx), pdfplumber (解析PDF), jieba (中文分词) - 数据所有训练和示例数据位于 ./data/ 目录严禁使用外部不确定来源的数据进行推理。 ## 代码与文档规范 1. **代码风格**使用 Black 格式化代码遵循 PEP 8。所有函数、类必须有详细的 Google 风格文档字符串。 2. **命名规范**变量和函数使用小写字母加下划线 (legal_document_parser)类名使用驼峰 (ContractGenerator)。 3. **文书风格** - 避免使用网络用语、口语化表达。 - 条款编号使用中文“一、二、三”或“第一条、第二条”。 - 金额必须同时写明大写汉字和小写数字如人民币壹万元整¥10,000.00。 4. **安全与隐私** - **绝对禁止**在日志、注释或生成的文书中出现任何真实个人身份信息PII如姓名、身份证号、手机号、住址。使用 [甲方]、[身份证号] 等占位符。 - 所有涉及数据处理的函数必须在文档字符串中说明数据流向。 ## 任务执行流程给Codex的指令 当接到“生成一份XX合同”任务时请按以下顺序工作 1. 首先在 ./templates/ 目录中寻找最接近的合同模板。 2. 其次参考 ./data/clauses/ 中的标准条款库进行填充和修改。 3. 生成草案后必须模拟“审查员”角色对照 ./checklist/legal_compliance.md 逐项检查。 4. 最终输出应包含清洁的合同正文、一份修改要点说明、一份潜在风险提示。 ## Git 操作规范 - 提交信息格式feat: 添加NDA模板生成功能 或 fix: 修正租金计算条款歧义。 - **禁止**使用 git push --force 除非在特定清理分支上。 - 所有生成的法律文书草稿在提交前必须经过 ./scripts/sanitize_check.py 脚本进行隐私信息过滤检查。3.2 AGENTS.md 的覆盖规则与子目录定制Codex 读取AGENTS.md的顺序是先读全局的~/.codex/AGENTS.md如果有。从项目根目录开始向下搜索每个目录。离当前工作目录更近的AGENTS.md规则会覆盖更远目录的规则。这个特性非常有用。比如你的项目根目录定义了通用规范但在src/analysis/子目录里你进行的是法律判例的数据分析需要不同的规则。你可以在src/analysis/下创建一个AGENTS.override.md文件# 判例数据分析模块特定规则 ## 数据安全 - 本目录下的脚本仅用于分析公开的、已脱敏的裁判文书。 - 所有输出图表和统计摘要不得包含任何可追溯到具体自然人或法人的信息。 - 临时数据文件必须存放在 ./tmp/ 下并在分析完成后由清理脚本自动删除。 ## 分析重点 - 聚焦于“案由”、“法律依据”、“判决结果”字段的统计和关联性分析。 - 生成报告时优先使用 matplotlib 绘制图表确保图表清晰、标注完整。这样当 Codex 在src/analysis/目录下工作时它会同时遵循根目录的通用规范和本目录的特定规范后者优先级更高。踩坑提醒AGENTS.md文件有32 KiB的大小限制。如果你的项目规范非常详细超过了这个限制文件会被截断。解决方法是拆分规则将详细的检查清单、模板内容移到单独的README.md或docs/目录下在AGENTS.md中只做引用和索引。4. 高级管控Rules、Skills 与 Hooks 实战当你的 Codex 开始接触真实项目尤其是涉及系统命令、文件操作时仅靠approval_policy “suggest”可能还不够细。这时就需要 Rules规则和 Skills技能来构建更精细的安全网和工作流。4.1 Rules给你的命令加上“白名单”和“黑名单”Rules 文件使用 Starlark 语言类似 Python定义了哪些命令 Codex 可以自动执行 (allow)哪些需要询问你 (prompt)哪些坚决禁止 (forbidden)。规则文件通常放在~/.codex/rules/目录下。一个给法律从业者可能不熟悉命令行的保守型规则示例# ~/.codex/rules/conservative.rules # 1. 绝对禁止的危险命令黑名单 prefix_rule( pattern [rm, -rf, /], # 禁止删除根目录 decision forbidden, justification 严禁执行可能摧毁系统的命令。 ) prefix_rule( pattern [dd, if/dev/, of/dev/], # 禁止磁盘底层操作 decision forbidden, justification 禁止原始磁盘操作防止数据丢失。 ) prefix_rule( pattern [chmod, -R, 777, /], # 禁止全局权限开放 decision forbidden, justification 禁止修改系统级目录权限。 ) # 2. 需要明确询问的命令灰名单 prefix_rule( pattern [git, push, --force], # 强制推送 decision prompt, justification 强制推送可能覆盖历史需确认。 ) prefix_rule( pattern [pip, install], # 安装Python包 decision prompt, justification 安装依赖可能影响环境请确认包名和版本。 ) prefix_rule( pattern [npm, run, build], # 执行构建脚本 decision prompt, justification 构建操作可能耗时并产生文件需确认。 ) # 3. 允许的安全命令白名单 prefix_rule( pattern [ls, -la], # 列出文件 decision allow, justification 查看目录信息是安全的。 ) prefix_rule( pattern [git, status], # Git状态 decision allow, justification 查看Git状态是安全的。 ) prefix_rule( pattern [python, --version], # 查看版本 decision allow, justification 查看解释器版本是安全的。 ) prefix_rule( pattern [find, ., -name, *.md], # 查找文件 decision allow, justification 在当前目录查找文件是安全的。 )如何启用规则在~/.codex/config.toml中指定[rules] path ~/.codex/rules/conservative.rules然后重启 Codex。4.2 Skills封装常用工作流一键调用Skills技能是把一系列复杂操作打包成一个简单命令。对于法律工作你可以把“生成合同草案”、“格式化法律引用”、“提取关键条款”等流程封装成技能。技能存放在三个位置优先级从高到低项目目录/.agents/skills/仅本项目可用~/.agents/skills/当前用户所有项目可用/etc/codex/skills/系统全局需管理员权限一个简单的“法律文书格式化”技能创建步骤创建技能目录和定义文件mkdir -p ~/.agents/skills/legal-doc-format cd ~/.agents/skills/legal-doc-format创建SKILL.md文件--- name: legal-doc-format description: 格式化法律文书确保术语统一、编号规范、无口语化表达。 --- # 法律文书格式化技能 ## 功能 1. 检查并统一法律术语如“甲方/乙方” vs “A方/B方”。 2. 规范条款编号体系采用“第一条、第二款、(一)、(1)”结构。 3. 去除文书中的口语化词汇、网络用语和模糊表述。 4. 检查金额、日期格式是否正确如“2023年12月31日”。 ## 使用方法 在 Codex 中输入$legal-doc-format [文件名或文件路径] 或者描述任务时包含“格式化法律文书”我会自动调用此技能。 ## 输出 返回格式化后的文本并附上一份修改摘要。可选创建执行脚本。你可以在scripts/目录下放一个 Python 脚本format.py在SKILL.md中描述 Codex 应如何调用它。在 Codex 中重载技能。创建或修改技能后在 Codex 中输入命令/reload-skills或使用菜单中的“Force Reload Skills”。之后你就可以在 Codex 中直接使用$legal-doc-format draft_contract.txt来调用这个格式化流程了。4.3 Hooks在关键节点插入自定义动作Hooks钩子允许你在 Codex 生命周期的特定事件如会话开始、工具调用前后触发自定义脚本。这适合做审计日志、环境检查或后处理。首先在config.toml中启用 Hooks[features] codex_hooks true然后在~/.codex/目录下创建hooks.json{ hooks: [ { event: SessionStart, hooks: [ { type: command, command: echo [INFO] Codex 会话启动于 $(date) ~/.codex/session.log, timeout: 5 } ] }, { event: PostToolUse, matcher: { toolName: Bash }, hooks: [ { type: command, command: echo [AUDIT] 执行的命令: $CODEX_TOOL_INPUT ~/.codex/audit.log, timeout: 5 } ] } ] }这个配置做了两件事1) 每次 Codex 启动都记录一条日志2) 每次执行完 Bash 命令都把命令内容记录到审计日志。$CODEX_TOOL_INPUT是钩子上下文提供的环境变量代表执行的命令。经验之谈Hooks 功能强大但脚本必须轻量且快速因为超时会导致主任务阻塞。对于法律、审计等合规要求严格的场景用 Hooks 记录“谁在什么时候让 AI 执行了什么命令”是非常有价值的。5. 配置排查清单当事情不按预期工作时即使按照指南配置也可能遇到问题。下面是一个从简到繁的排查顺序帮你快速定位。问题Codex 完全不按我的 AGENTS.md 规则行事。检查文件位置和名称确认AGENTS.md在项目根目录且文件名大小写正确。检查文件大小用ls -lh AGENTS.md查看文件是否超过 32KB。如果超过内容会被静默截断。检查当前目录在 Codex 中执行pwd确认当前工作目录确实是你放AGENTS.md的那个项目目录。查看生效规则在 Codex 中输入/status查看输出中关于AGENTS.md的加载路径提示。问题修改了 config.toml但设置没变。重启应用修改用户级或项目级config.toml后必须完全关闭并重启 Codex App。检查文件语法toml文件对格式要求严格。确保没有缺少闭合括号]字符串用双引号节[agents]名称正确。检查优先级项目级配置.codex/config.toml会覆盖用户级~/.codex/config.toml。确认你修改的是正确层级的文件。使用 /status 命令这是最可靠的验证方式。直接看 Codex 自己读取到的最终配置是什么。问题Rules 规则好像没起作用Codex 还是问了不该问的命令。确认规则文件路径在config.toml中[rules]节指定的路径必须绝对正确。检查规则语法Starlark 语法错误会导致整个规则文件被忽略。仔细检查括号、逗号和字符串。规则匹配模式prefix_rule是前缀匹配。如果你的规则是pattern [“git”]那么git status和git push --force都会匹配。你可能需要更具体的模式比如pattern [“git”, “push”, “--force”]。决策冲突如果有多个规则匹配同一个命令forbidden优先级最高然后是prompt最后是allow。问题自定义 Skill 无法调用或找不到。技能目录结构确保技能目录下有必需的SKILL.md文件。重载技能创建或修改技能后必须执行/reload-skills。调用方式使用$skill-name格式调用或者在你的任务描述中明确包含技能description里的关键词。查看技能列表输入/skills可以列出所有已加载的技能检查你的技能是否在其中。配置 Codex 不是一个一劳永逸的动作而是一个随着项目复杂度提升而持续迭代的过程。对于法律、金融等领域的从业者我建议的配置路径是先通过严格的approval_policy和基础Rules筑牢安全底线然后花时间写好项目的AGENTS.md这是提升输出质量性价比最高的投入最后再将重复性高的审查、格式化、生成任务抽象成Skills实现效率的质变。在这个过程中养成每次大改配置后用/status命令验证的习惯能帮你避开大多数隐形的坑。 30款热门AI模型一站整合DeepSeek/GLM/Qwen 随心用限时 5 折。 点击领海量免费额度