【经验分享】OpenAI Codex v0.118.0(Windows)自定义 system prompt 完全生效的完整踩坑记录 + 最终解决方案
- 内容介绍
- 文章标签
- 相关推荐
【经验分享】OpenAI Codex v0.118.0(Windows)自定义 system prompt 完全生效的完整踩坑记录 + 最终解决方案
大家好,我最近在 Windows 上折腾 OpenAI Codex CLI,想用自己写的 system-prompt.md 完整替换官方默认 prompt(pragmatic、无 fluff、无 meta commentary),结果卡了整整一下午。
最终成功了,现在 whoami、date、ls 等简单命令都只返回结果,不带任何解释,/status 也正常,/personality 提示也出现了。把整个过程和最终可复现方案分享出来,希望帮到同样在 Windows 上踩坑的朋友。
1. 问题现象
- 在
config.toml中设置:model_instructions_file = 'C:\Users\Seven\.codex\prompts\system-prompt.md' - 重启 Codex 后,
/status显示Agents.md: <none>,whoami仍然输出官方风格的解释文字(如 “I’m checking the current shell user…”)。 - 尝试过项目级
.codex/config.toml、CLI-c参数、sandboxdanger-full-access等,均无效。 - 即使把 sandbox 改成
danger-full-access+ 真实用户seven,问题依然存在。
2. 排查过程(主要坑点)
- Sandbox 隔离:早期运行在
codexsandboxoffline环境下,全局~/.codex/config.toml完全不生效。 - Windows 路径解析:反斜杠
\在 TOML 中偶尔被 silent ignore,改成正斜杠C:/Users/...稍好但仍不稳定。 - 项目级 config 失效:v0.118.0 在 Windows TUI 下,项目目录下的
.codex/config.toml对model_instructions_file经常 silently ignored(GitHub issue #14515、#15993 等均有反馈)。 - 最致命的坑:HTML 标签
原system-prompt.md里用了<p>、<h1>、<ul>等 Markdown 转 HTML 的写法,被 GPT-5.4 的 instructions validation 直接拒绝,导致 Codex 默默 fallback 到官方内置 prompt。
3. 最终成功方案(已验证可复现)
核心修复只有两步:
Step 1:清理 prompt 为纯 Markdown(去掉所有 HTML 标签)
把原文件复制一份,命名为 clean-system-prompt.md,内容必须是纯文本/Markdown(无 <p>、<h1> 等)。
我最终使用的 clean-system-prompt.md 已上传(见文末附件),核心就是把所有 HTML 标签全部去掉,只保留 #、##、-、列表、代码块等纯 Markdown。
Step 2:全局 config.toml 正确配置 + 完全重启
在 C:\Users\Seven\.codex\config.toml 中确保有以下内容:
model_instructions_file = "C:/Users/Seven/.codex/prompts/clean-system-prompt.md"
[windows]
sandbox = "danger-full-access" # 或 unelevated,根据需求
关键操作:
- 保存后完全关闭 Codex 窗口(任务管理器结束所有 codex 进程)。
- 重新在目标项目目录(如
D:\CODE\11223)打开 Codex。 - 输入
whoami测试。
成功后的特征:
whoami只显示一行用户名,无任何解释。- 界面出现官方提示:
Tip: Use /personality to customize how Codex communicates.
4. 验证命令(建议保留)
# 测试
whoami
date
ls
# 查看当前配置
/status
/personality
5. 额外建议
- 以后修改 prompt 一定要先用纯 Markdown 版本测试。
- 如果还想更激进,可以配合
AGENTS.override.md双保险,但目前纯model_instructions_file + clean prompt已足够稳定。 - 该方案在 v0.118.0 + Windows 11 + GPT-5.4 medium 上验证通过。
附件(可直接使用):
- 我最终成功的
clean-system-prompt.md已在上一个回复中提供(14764 字节,纯 Markdown 版本)。 - 有需要的朋友可以直接复制使用。
折腾了这么久,终于把 Codex 调成自己想要的“极简务实”风格了。希望这篇帖子能帮到大家少走弯路!
欢迎大家讨论其他版本或 macOS/Linux 下的差异~
网友解答:--【壹】--:
感谢大佬
--【贰】--:
大佬,没看懂解决了什么问题呢
--【叁】--:
感谢大佬 。
--【肆】--:
附件在哪?没找到
【经验分享】OpenAI Codex v0.118.0(Windows)自定义 system prompt 完全生效的完整踩坑记录 + 最终解决方案
大家好,我最近在 Windows 上折腾 OpenAI Codex CLI,想用自己写的 system-prompt.md 完整替换官方默认 prompt(pragmatic、无 fluff、无 meta commentary),结果卡了整整一下午。
最终成功了,现在 whoami、date、ls 等简单命令都只返回结果,不带任何解释,/status 也正常,/personality 提示也出现了。把整个过程和最终可复现方案分享出来,希望帮到同样在 Windows 上踩坑的朋友。
1. 问题现象
- 在
config.toml中设置:model_instructions_file = 'C:\Users\Seven\.codex\prompts\system-prompt.md' - 重启 Codex 后,
/status显示Agents.md: <none>,whoami仍然输出官方风格的解释文字(如 “I’m checking the current shell user…”)。 - 尝试过项目级
.codex/config.toml、CLI-c参数、sandboxdanger-full-access等,均无效。 - 即使把 sandbox 改成
danger-full-access+ 真实用户seven,问题依然存在。
2. 排查过程(主要坑点)
- Sandbox 隔离:早期运行在
codexsandboxoffline环境下,全局~/.codex/config.toml完全不生效。 - Windows 路径解析:反斜杠
\在 TOML 中偶尔被 silent ignore,改成正斜杠C:/Users/...稍好但仍不稳定。 - 项目级 config 失效:v0.118.0 在 Windows TUI 下,项目目录下的
.codex/config.toml对model_instructions_file经常 silently ignored(GitHub issue #14515、#15993 等均有反馈)。 - 最致命的坑:HTML 标签
原system-prompt.md里用了<p>、<h1>、<ul>等 Markdown 转 HTML 的写法,被 GPT-5.4 的 instructions validation 直接拒绝,导致 Codex 默默 fallback 到官方内置 prompt。
3. 最终成功方案(已验证可复现)
核心修复只有两步:
Step 1:清理 prompt 为纯 Markdown(去掉所有 HTML 标签)
把原文件复制一份,命名为 clean-system-prompt.md,内容必须是纯文本/Markdown(无 <p>、<h1> 等)。
我最终使用的 clean-system-prompt.md 已上传(见文末附件),核心就是把所有 HTML 标签全部去掉,只保留 #、##、-、列表、代码块等纯 Markdown。
Step 2:全局 config.toml 正确配置 + 完全重启
在 C:\Users\Seven\.codex\config.toml 中确保有以下内容:
model_instructions_file = "C:/Users/Seven/.codex/prompts/clean-system-prompt.md"
[windows]
sandbox = "danger-full-access" # 或 unelevated,根据需求
关键操作:
- 保存后完全关闭 Codex 窗口(任务管理器结束所有 codex 进程)。
- 重新在目标项目目录(如
D:\CODE\11223)打开 Codex。 - 输入
whoami测试。
成功后的特征:
whoami只显示一行用户名,无任何解释。- 界面出现官方提示:
Tip: Use /personality to customize how Codex communicates.
4. 验证命令(建议保留)
# 测试
whoami
date
ls
# 查看当前配置
/status
/personality
5. 额外建议
- 以后修改 prompt 一定要先用纯 Markdown 版本测试。
- 如果还想更激进,可以配合
AGENTS.override.md双保险,但目前纯model_instructions_file + clean prompt已足够稳定。 - 该方案在 v0.118.0 + Windows 11 + GPT-5.4 medium 上验证通过。
附件(可直接使用):
- 我最终成功的
clean-system-prompt.md已在上一个回复中提供(14764 字节,纯 Markdown 版本)。 - 有需要的朋友可以直接复制使用。
折腾了这么久,终于把 Codex 调成自己想要的“极简务实”风格了。希望这篇帖子能帮到大家少走弯路!
欢迎大家讨论其他版本或 macOS/Linux 下的差异~
网友解答:--【壹】--:
感谢大佬
--【贰】--:
大佬,没看懂解决了什么问题呢
--【叁】--:
感谢大佬 。
--【肆】--:
附件在哪?没找到

