每当Codex CLI完成当前任务时,如何收到通知?

人工智能 2026-07-09

我让Codex CLI做一件需要较长时间的事,然后我去另一个终端做点别的事情。

但当Codex完成时,我想收到一个清晰的GUI通知,例如 notify-send,这样我就可以去查看它的工作。

如何获得这样的清晰通知?

一种做法是如果在Codex结束时通过钩子执行任意命令,钩子文档在:https://developers.openai.com/codex/hooks

在codex-cli 0.93.0左右的某个版本,它在停止后增加了一个终端铃声。更妙的是,我用tmux,所以被通知的标签会被高亮。

但通知仍然不够清晰:

  • 铃声并不响亮,且我可能不在电脑前
  • 如果我打开了好几个tmux标签,我不会立刻看到被高亮的标签

解决方案

我设法让钩子在codex-cli 0.130.0、Ubuntu 25.10上工作,具体如下:

~/.codex/config.toml

[features]
hooks = true

[[hooks.Stop]]
[[hooks.Stop.hooks]]
type = "command"
command = 'notify-send "done"'

截至v0.125.0测试时,情形是:

[features]
codex_hooks = true

我的最喜欢的“完成”命令是这样,带一个易于清除的zenity窗口(只需按一次回车)+一个“完成声音”:

[command = """bash -c '(spd-say "done"; zenity --info --text "$(</dev/stdin)" --width=400) &>/dev/null'"""](https://stackoverflow.com)

保持stdout为空是个好主意,因为Codex期望输出JSON;如果返回的JSON无效,可能会给出警告。

关于声音选择,请参考: https://askubuntu.com/questions/277215/how-to-make-a-sound-once-a-process-is-complete

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章