SuperAPI AI 工具集

config-codex-cli

编程与开发

查看项目

更新于 10-15 03:48

技能介绍

用途

config-codex-cli 是一个分步的智能体工作流,目标是在任意机器上配置 OpenAI Codex CLI,使其以 OmniRoute 作为兼容 OpenAI 的后端。适用于需要在 Linux、macOS、Windows 上统一配置 Codex CLI 的场景。

主要能力

  • 检测操作系统与 shell。
  • 写入 config.toml 以及 7 个命名 profile。
  • 设置环境变量。
  • 验证配置结果。

安装方式

npm install -g omniroute # 或: npx omniroute omniroute --version

资料未提供该技能家族对应的 CLI 子命令映射。

长时间运行的 Codex 任务

资料指出,两个 OmniRoute 默认设置会静默破坏多小时的 Codex 会话,在为过夜或数小时工作配置 Codex 时需要说明。完整指南见 docs/guides/CODEX-CLI-CONFIGURATION.md → Long-running tasks。

会话亲和(默认关闭)

设置项:sessionAffinityTtlMs(毫秒;界面位置为 Dashboard → Settings → Routing → Session affinity 下的 Affinity TTL (seconds))。旧别名:codexSessionAffinityTtlMs。

默认值为 0,即禁用。此时每一轮都可能落到不同账户,从而破坏提示缓存与会话连续性。

Codex 会话键(x-codex-session-id、x-session-id、x-omniroute-session、请求体中的 prompt_cache_key / session_id)仅在 TTL > 0 时用于固定会话。

最大值为 86400 秒 / 86400000 毫秒(24 小时)。应将 TTL 设为高于预期任务时长(例如约 12 小时的任务设为 43200 秒)。

流空闲超时(默认 10 分钟)

环境变量:STREAM_IDLE_TIMEOUT_MS(默认 600000)。也可考虑 FETCH_BODY_TIMEOUT_MS(相同基线;设为 0 表示禁用)。

合成的 SSE 心跳不会重置空闲计时,只有真实的上游数据块才会。

超过空闲窗口的静默推理轮次会被强制关闭(stream_idle_timeout / StreamIdleTimeoutError)。可在日志中检索 Idle timeout: no data from。

推荐的多小时配方

  1. Dashboard → Settings → Routing → Session affinity → Affinity TTL 设为 43200(12 小时)或 86400(24 小时上限)。
  2. OmniRoute 环境变量:

STREAM_IDLE_TIMEOUT_MS=0 FETCH_BODY_TIMEOUT_MS=0

  1. 重启 OmniRoute。Codex 的 config.toml 保持常规配置(wire_api = "responses",正确的 base_url)。

默认值决策

资料明确说明:不要为此技能在代码中翻转出厂默认值——sessionAffinityTtlMs 保持 0,STREAM_IDLE_TIMEOUT_MS 保持 600000。长时间运行的运营者必须自行选择启用。相关讨论见 Discussion #5718 和 issue #7287。