config-codex-cli 精选
Step-by-step agent workflow to configure the OpenAI Codex CLI on any machine (Linux, macOS, Windows) to use OmniRoute as an OpenAI-compatible backend. Detects OS and shell, writes config.toml and 7 named profiles, sets environment variables, and verifies the setup.
安装方式
cp -r skills/config-codex-cli ~/.claude/skills/config-codex-cli把该 skill 目录放进客户端 skills 目录。不同客户端的目录可能不同,Claude Code 默认是 ~/.claude/skills/
https://raw.githubusercontent.com/diegosouzapw/OmniRoute/7f3cbb046b3706bf0bbc047b7eaa0cbada8d9e50/skills/config-codex-cli/SKILL.md下载后另存为 ~/.claude/skills/config-codex-cli/SKILL.md。链接锁定采集时的 commit,内容与本站展示一致。
整仓一次性获取:git clone --depth 1 https://github.com/diegosouzapw/OmniRoute.git
依赖与权限
- 无需 API Key
- 无需联网
- 依赖外部命令:
npmnpx - 以上为按正文与 frontmatter 自动推断的信号,仅供参考;安装前建议先阅读原文。
SKILL.md 正文
<!-- generated by src/lib/agentSkills/generator.ts; manual edits will be overwritten -->
Overview
Step-by-step agent workflow to configure the OpenAI Codex CLI on any machine (Linux, macOS, Windows) to use OmniRoute as an OpenAI-compatible backend. Detects OS and shell, writes config.toml and 7 named profiles, sets environment variables, and verifies the setup.
Quick install
npm install -g omniroute # or: npx omniroute
omniroute --version
Subcommands
_No CLI subcommands mapped for this family yet._
<!-- skill:custom-start -->
Long-running Codex tasks (#7287)
Two OmniRoute defaults silently break multi-hour Codex sessions. Document them whenever configuring Codex for overnight / multi-hour work. Full guide: docs/guides/CODEX-CLI-CONFIGURATION.md → Long-running tasks.
Session affinity (default off)
- Setting:
sessionAffinityTtlMs(ms; UI shows Affinity TTL (seconds) under Dashboard → Settings → Routing → Session affinity). Legacy alias:codexSessionAffinityTtlMs. - Default
0= disabled. Each turn can land on a different account and break prompt-cache / session continuity. - Codex session keys (
x-codex-session-id,x-session-id,x-omniroute-session, bodyprompt_cache_key/session_id) are only used for pinning when TTL > 0. - Max:
86400seconds /86400000ms (24h). Set TTL above the expected task length (e.g.43200s for ~12h).
Stream idle timeout (default 10 minutes)
- Env:
STREAM_IDLE_TIMEOUT_MS(default600000). Also considerFETCH_BODY_TIMEOUT_MS(same baseline;0disables). - Synthetic SSE heartbeats do not reset the idle clock — only real upstream chunks do.
- A quiet reasoning turn past the idle window is force-closed (
stream_idle_timeout/StreamIdleTimeoutError). Grep logs forIdle timeout: no data from.
Recommended multi-hour recipe
- Dashboard → Settings → Routing → Session affinity → Affinity TTL =
43200(12h) or86400(24h max). - OmniRoute environment:
STREAM_IDLE_TIMEOUT_MS=0
FETCH_BODY_TIMEOUT_MS=0
- Restart OmniRoute. Leave Codex
config.tomlas usual (wire_api = "responses", correctbase_url).
Defaults decision
Do not flip ship defaults in code for this skill: sessionAffinityTtlMs stays 0 and STREAM_IDLE_TIMEOUT_MS stays 600000. Long-running operators must opt in. See Discussion #5718 and issue #7287.
<!-- skill:custom-end -->
质量与来源
- 所属仓库
- diegosouzapw/OmniRoute
- 仓库星标
- 7.6 万
- 最近更新
- 昨天
- 采集时间
- 今天
- commit
- 7f3cbb046b37
- 内容指纹
- sha256:2a85801bb36355c
- 文件路径
- skills/config-codex-cli/SKILL.md