VS Code / Cursor 中 Codex 任务完成通知配置指南
整理时间2026-07-01环境Windows 10/11 · VS Code / Cursor · Codex 插件openai.chatgpt1. 背景与目标在使用 Cursor 时Agent 完成长任务后会弹出系统级通知切到其他窗口也能看到。而在 VS Code / Cursor 中安装Codex 插件后默认没有同等体验。本文记录为何没有内置通知、尝试过哪些方案、最终如何在 Windows 上实现可用配置以及踩过的坑。2. 为什么 VS Code 插件里没有「通知」设置2.1 界面上的现象打开 Codex 侧边栏 →Settings → 常规通常只能看到语言、速度、代码审查编辑器发送快捷键、跟进行为没有「通知」相关选项。2.2 技术原因Codex 扩展与 Codex 桌面应用共用部分 UI 代码但通知设置被限制在 Electron 桌面应用中显示代码里用electron{true}包裹。因此在 VS Code / Cursor 的 Webview 里该区块会被隐藏。运行环境设置 → 常规 → 通知系统级完成通知Codex 桌面应用有有较完善VS Code / Cursor 插件无无内置2.3 VS Code 扩展 API 的限制OpenAI 官方在 GitHub #3962、#7083 等 issue 中说明VS Code 扩展难以像 Cursor 一样直接发 OS 级通知扩展内 Toast 在窗口失焦时几乎看不到该能力仍在社区请求中尚未作为插件一等公民功能提供结论不是配置漏了而是插件本身就不提供与 Cursor 对等的通知 UI。3. 可选方案概览方案是否适用于 VS Code 插件说明插件内 Settings → 通知否仅桌面应用可见[tui].notifications否仅 CodexCLI 终端有效notify钩子 外部脚本是设计上官方称扩展也会调用VibeNotificationpip install理论是Windows 实测失败Python 3.14 缺termiosCodex 桌面应用是通知最完整可与插件同步会话自建notify.py是本次采用Windows 兼容、可维护4. 推荐路径notify钩子4.1 原理Codex 在~/.codex/config.tomlWindows%USERPROFILE%\.codex\config.toml中支持notify [命令, 参数1, ...]当 Codex 发出agent-turn-complete事件一轮 Agent 任务结束时会调用该命令并传入JSON 字符串作为最后一个参数。常见字段type通常为agent-turn-completethread-id、turn-idcwd工作目录last-assistant-message最后一条助手消息外部脚本据此播放声音、弹出 Windows 通知即可。4.2 与tui.notifications的区别[tui] notifications [agent-turn-complete] # 仅 CLI/TUI扩展无效切勿在插件场景下只配[tui]不会有任何效果。4.3 可靠性说明OpenAI 在 GitHub #13020 称notify对 VS Code 扩展有效部分用户反馈扩展模式下偶发不触发可通过日志验证见下文notify目前主要覆盖「一轮完成」不包含审批/需要你输入时的提醒5. 实际操作过程5.1 尝试 VibeNotification未采用pip install vibe-notification python-m vibe_notification--test结果在 Windows Python 3.14 上报错ModuleNotFoundError: No module named termiostermios为 Unix 专用模块VibeNotification 在 import 阶段即失败无法在 Windows 上作为python -m vibe_notification使用。5.2 采用自建 Windows 通知脚本创建文件C:\Users\24385\.codex\notify.py功能读取 Codex 传入的 JSON 参数仅当type agent-turn-complete时处理通过 PowerShell 播放系统提示音SystemSounds.Asterisk通过NotifyIcon显示气泡通知写入日志C:\Users\24385\.codex\notify.log5.3 修改 config.toml在%USERPROFILE%\.codex\config.toml中设置notify [python, C:\\Users\\24385\\.codex\\notify.py]注意路径使用双反斜杠\\符合 TOML 字符串转义规则。5.4 本地模拟测试不依赖 Codexpython-cimport subprocess, json; payloadjson.dumps({type:agent-turn-complete,thread-id:test,turn-id:test,cwd:rC:\\Users\\24385\\Desktop,last-assistant-message:Test: Codex task completed}); subprocess.run([python, rC:\\Users\\24385\\.codex\\notify.py, payload])预期听到提示音右下角出现气泡通知notify.log中出现event typeagent-turn-complete sent notification### 5.5 在 VS Code 中生效 1. **完全重启** VS Code / Cursor使 Codex 重新加载 config.toml 2. 在 Codex 插件中发起一个稍长的任务 3. 切换到其他窗口等待完成 4. 查看 C:\Users\24385\.codex\notify.log 是否有新记录 | 日志内容 | 含义 | |----------|------| | 无新行 | 扩展可能未调用 notify需考虑桌面应用或其它方案 | | event typeagent-turn-complete sent notification | 钩子已触发通知已发送 | | skip: invalid json | 参数格式异常检查 Codex 版本或脚本 | --- ## 6. 踩坑config.toml UTF-8 编码错误 ### 6.1 现象 Codex 报错无法加载配置Failed to read config file C:\Users\24385.codex\config.tomlinvalid utf-8 sequence of 1 bytes from index 146### 6.2 原因 在 config.toml 中加入**中文注释**时若编辑器或工具以错误编码保存如 GBK 字节被当作 UTF-8会产生非法 UTF-8 序列。Codex 使用 Rust 严格解析 UTF-8会直接拒绝加载。 问题字节示例index 146 附近\xd4\xad\xc4\xda\xd6\xc3 notify…### 6.3 修复 1. **删除**含乱码的中文注释行 2. 仅保留 ASCII 配置例如 toml notify [python, C:\\Users\\24385\\.codex\\notify.py]验证文件合法性python-copen(rC:\Users\24385\.codex\config.toml,rb).read().decode(utf-8); print(UTF-8 OK)python-cimport tomllib; tomllib.load(open(rC:\Users\24385\.codex\config.toml,rb)); print(TOML OK)重新打开 Codex 对话串6.4 建议config.toml中优先使用英文注释或确保以UTF-8无 BOM保存修改后先用上述命令验证再交给 Codex 加载7. Windows 系统权限配合使用即使脚本正常也需在系统中允许通知设置 → 系统 → 通知找到Visual Studio Code或Cursor开启通知允许横幅/通知中心确认专注助手未屏蔽 IDE8. 若仍不满意Codex 桌面应用若 VS Code 插件环境下notify不稳定可改用Codex Desktop AppSettings → Notifications可配置从不 / 仅后台 / 始终任务完成或需要审批时通知更可靠与 VS Code 插件会话可同步同一项目参考Codex app features - Notifications9. 当前最终配置摘要项目值配置文件C:\Users\24385\.codex\config.tomlnotify 命令python C:\Users\24385\.codex\notify.py通知脚本C:\Users\24385\.codex\notify.py调试日志C:\Users\24385\.codex\notify.log触发事件agent-turn-complete一轮任务结束config.toml 关键片段notify [python, C:\\Users\\24385\\.codex\\notify.py]10. 流程图决策是是否/备选是否需要 Codex 完成通知使用 VS Code 插件?插件内无通知设置配置 notify 钩子Windows?VibeNotification 可能不可用使用自建 notify.py确保 config.toml 为 UTF-8重启 IDE 并测试 notify.logCodex 桌面应用 Notifications日志有 agent-turn-complete?通知链路正常11. 参考链接Codex Advanced Config - NotificationsCodex app - Notifications 设置GitHub: VS Code extension notifications #7083GitHub: notify hook vs extension #13020VibeNotificationmacOS/Linux 更成熟12. 一句话总结VS Code Codex 插件没有 Cursor 式内置通知在 Windows 上可通过config.toml的notify钩子 自建notify.py实现任务完成时的声音与气泡提醒并务必保证config.toml为合法 UTF-8通过notify.log验证扩展是否真正调用了钩子。

相关新闻

PlayWright UI自动化:贝塞尔曲线模拟人类轨迹破解滑块验证

PlayWright UI自动化:贝塞尔曲线模拟人类轨迹破解滑块验证

1. 项目概述:当UI自动化遇上“聪明”的滑块验证做UI自动化的朋友,尤其是搞数据采集或者自动化测试的,最头疼的莫过于各种验证码。其中,滑块验证以其直观的交互和相对复杂的逻辑,一直是自动化脚本的“拦路虎”。传统的滑…

2026/7/2 11:40:13阅读更多 →
抖音批量下载技术方案:从零构建高效内容管理工具

抖音批量下载技术方案:从零构建高效内容管理工具

抖音批量下载技术方案:从零构建高效内容管理工具 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖…

2026/7/2 11:35:12阅读更多 →
3步掌握AMD Ryzen处理器深度调试:从新手到硬件专家的完整指南

3步掌握AMD Ryzen处理器深度调试:从新手到硬件专家的完整指南

3步掌握AMD Ryzen处理器深度调试:从新手到硬件专家的完整指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: htt…

2026/7/2 11:35:12阅读更多 →
TranslucentTB终极指南:彻底释放Windows任务栏的美学潜能

TranslucentTB终极指南:彻底释放Windows任务栏的美学潜能

TranslucentTB终极指南:彻底释放Windows任务栏的美学潜能 【免费下载链接】TranslucentTB A lightweight utility that makes the Windows taskbar translucent/transparent. 项目地址: https://gitcode.com/gh_mirrors/tr/TranslucentTB 你是否曾对Windows任…

2026/7/2 12:50:25阅读更多 →
PCF8591与PIC18F27K42的信号转换系统设计与优化

PCF8591与PIC18F27K42的信号转换系统设计与优化

1. 项目概述:PCF8591与PIC18F27K42的协同信号转换系统 在嵌入式系统开发中,模拟信号与数字信号的相互转换是核心需求之一。PCF8591作为一款经典的8位ADC/DAC转换芯片,与PIC18F27K42高性能微控制器的组合,能够构建一个经济高效的多…

2026/7/2 12:50:25阅读更多 →
NoteWidget:如何在OneNote中实现专业Markdown笔记的终极解决方案

NoteWidget:如何在OneNote中实现专业Markdown笔记的终极解决方案

NoteWidget:如何在OneNote中实现专业Markdown笔记的终极解决方案 【免费下载链接】NoteWidget Markdown add-in for Microsoft Office OneNote 项目地址: https://gitcode.com/gh_mirrors/no/NoteWidget NoteWidget是一款专为Microsoft OneNote设计的完整Mar…

2026/7/2 12:50:25阅读更多 →
基于KMX63与STM32的智能运动交互系统设计

基于KMX63与STM32的智能运动交互系统设计

1. 项目背景与核心组件解析在工业自动化和消费电子领域,人机界面(HMI)的设计正经历着从机械按键到智能交互的变革。这个项目基于KMX63运动传感器和STM32F030RC微控制器的组合,探索如何构建更符合人类自然行为模式的交互系统。KMX6…

2026/7/2 12:50:25阅读更多 →
颠覆性重构:logitech-pubg参数化射击辅助系统技术解析

颠覆性重构:logitech-pubg参数化射击辅助系统技术解析

颠覆性重构:logitech-pubg参数化射击辅助系统技术解析 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 在竞技射击游戏领域&#xff0…

2026/7/2 12:50:25阅读更多 →
13DOF传感器与PIC18F26K20微控制器在嵌入式导航中的应用

13DOF传感器与PIC18F26K20微控制器在嵌入式导航中的应用

1. 13DOF传感器与PIC18F26K20微控制器的组合优势在嵌入式定位导航系统中,13DOF(13自由度)传感器与PIC18F26K20微控制器的组合堪称黄金搭档。13DOF传感器通常包含三轴加速度计、三轴陀螺仪、三轴磁力计以及气压计,能够全方位感知设…

2026/7/2 12:45:25阅读更多 →
AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

6个月前的2025年12月,Boris Cherny 公开宣布自己卸载了 IDE。一时间,Vibe Coding 成了全行业最热的话题。6个月后,当我们回过头来拉一份真实账本,发现事情远没有"一句话生成一个App"那么浪漫。本文从产品经理和研发两个…

2026/7/2 12:10:34阅读更多 →
审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

引言:审计结束三个月了,审计员的权限还没关某城商行每年按照监管要求开展至少一次数据安全审计。审计期间,内审部门需要抽样检查各类业务数据——交易流水、客户信息、员工操作日志、权限配置记录。这些数据分布在不同系统中,审计…

2026/7/2 12:10:34阅读更多 →
塞尔达传说旷野之息存档修改器:3分钟掌握海拉鲁世界自由定制技巧

塞尔达传说旷野之息存档修改器:3分钟掌握海拉鲁世界自由定制技巧

塞尔达传说旷野之息存档修改器:3分钟掌握海拉鲁世界自由定制技巧 【免费下载链接】BOTW-Save-Editor-GUI A Work in Progress Save Editor for BOTW 项目地址: https://gitcode.com/gh_mirrors/bo/BOTW-Save-Editor-GUI 想在《塞尔达传说:旷野之息…

2026/7/2 0:03:01阅读更多 →
告别 AccessKey:多云平台 CLI OAuth 免密认证完全指南

告别 AccessKey:多云平台 CLI OAuth 免密认证完全指南

在本地开发环境使用云厂商 CLI 时,传统的 AccessKey(AK)方式需要手动创建、下载和保管密钥,不仅繁琐,还存在泄漏风险。其实,主流云平台都已提供基于 OAuth 2.0 的免密认证方案,让开发者可以通过浏览器登录一次性完成授权,CLI 自动管理临时凭证的刷新,兼顾了便利与安全…

2026/7/2 0:03:01阅读更多 →
基于13DOF传感器与PIC32MZ的高精度嵌入式导航系统设计

基于13DOF传感器与PIC32MZ的高精度嵌入式导航系统设计

1. 项目背景与核心价值在嵌入式系统开发领域,高精度定位与导航一直是极具挑战性的技术方向。传统方案往往面临成本、精度和实时性难以兼顾的困境。这个项目通过13DOF(13自由度)传感器组合与PIC32MZ2048EFH100高性能MCU的协同工作,…

2026/7/2 0:03:01阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/2 0:33:58阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/2 1:32:11阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/2 1:50:13阅读更多 →