Community程式設計與開發github.com

Codex CLI 技能指南

當使用者要求執行 Codex CLI(codex exec、codex resume)或提及 OpenAI Codex 進行程式碼分析、重構或自動化編輯時使用。

Codex CLI 技能指南 是什麼?

此技能指南專為 AI 代理(如 Claude Code、Cursor、Codex 等)設計,提供與 OpenAI Codex CLI 互動的標準化操作流程。它涵蓋如何啟動新的 Codex 工作階段(包括選擇模型與推理強度)、設定沙箱模式(唯讀、工作區寫入或完整權限)、以及透過 `codex exec` 和 `codex resume` 命令執行與恢復任務。該指南強調正確的 stdin 處理(例如使用 `</dev/null` 避免無限掛起)以及抑制 stderr 以隱藏思考權杖。此外,它詳細說明了基於推理強度的建議執行逾時(從 150 秒到 1800 秒),並要求對 Codex 輸出進行嚴格評估,將其視為同事而非權威,並提供了當 Codex 錯誤時如何以專業方式提出異議並透過恢復機制進行討論的具體步驟。支援的平台包括任何能夠執行 Codex CLI 的終端環境。

相容平台✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/skills-directory/skill-codex/tree/main/plugins/skill-codex/skills/codex

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Codex 技能指南

執行任務

  1. 對於新的工作階段(恢復時會繼承先前的模型/強度——請參閱步驟 5),透過 AskUserQuestion 向使用者詢問要使用哪個模型以及哪個推理強度,並在單一提示中提出兩個問題。當使用者沒有表達偏好時,預設為 gpt-6-astra 搭配 high。
    • 模型——預設 gpt-6-astra:
      • GPT-6: gpt-6-astra(前沿/功能最強大——預設)
      • GPT-5.6: gpt-5.6-sol(可靠的代理工作馬)、gpt-5.6-terra(平衡日常使用)、gpt-5.6-luna(快速且經濟實惠)
      • 舊版(為相容性保留): gpt-5.5、gpt-5.4、gpt-5.4-mini、gpt-5.3-codex-spark、gpt-5.3-codex
    • 推理強度——預設 high:low、medium、high、xhigh、max、ultra。
      • max/ultra 需要 GPT-6 或 GPT-5.6 模型;ultra 僅限於 astra/sol/terra(luna 上限為 max);舊模型上限為 xhigh。
      • ultra = 最大推理並具備自動任務委派(最慢且最昂貴——保留給最困難的工作)。
      • 如果所選強度超過所選模型的最大值,則回退到該模型支援的最高強度並告知使用者。
  2. 選擇任務所需的沙箱模式;除非需要編輯或網路存取,否則預設為 --sandbox read-only。
  3. 使用適當的選項組合命令:
    • -m, --model <MODEL>
    • --config model_reasoning_effort="<low|medium|high|xhigh|max|ultra>"(max/ultra 僅限 GPT-6 / GPT-5.6 模型;ultra 僅限 astra/sol/terra——請參閱步驟 1)
    • --sandbox <read-only|workspace-write|danger-full-access>
    • --full-auto
    • -C, --cd <DIR>
    • --skip-git-repo-check
    • "您的提示"(作為最終的位置參數)
  4. 始終使用 --skip-git-repo-check。
  5. 當恢復先前的工作階段時,透過標準輸入使用 codex exec --skip-git-repo-check resume --last。恢復時,除非使用者明確要求(例如指定模型或推理強度),否則不要使用任何配置旗標。恢復語法:echo "您的提示" | codex exec --skip-git-repo-check resume --last 2>/dev/null。所有旗標都必須插入在 exec 和 resume 之間。
  6. 重要事項:預設情況下,在所有 codex exec 命令後附加 2>/dev/null 以抑制思考權杖(stderr)。僅在使用者明確要求檢視思考權杖或需要除錯時才顯示 stderr。
  7. 重要事項(標準輸入):codex exec 總是讀取標準輸入並將其與位置提示串接——即使提示已完全作為位置參數提供。如果標準輸入未關閉,codex 會永遠阻塞。當從管理器(背景任務、鉤子、腳本,其中標準輸入不是 TTY 但也未關閉)呼叫時,請明確重定向標準輸入:在命令後附加 </dev/null,例如 codex exec ... "prompt" </dev/null 2>/dev/null。錯誤的症狀:標準輸出零位元組、累積的 CPU 為零、程序顯示無限期掛起。
  8. 執行命令,擷取標準輸出/標準錯誤(根據需要過濾),並向使用者總結結果。
  9. Codex 完成後,告知使用者:「您可以隨時說「codex resume」或請我繼續進行額外的分析或修改,來恢復這個 Codex 工作階段。」

快速參考

使用案例沙箱模式主要旗標
唯讀審查或分析read-only--sandbox read-only 2>/dev/null
套用本地編輯workspace-write--sandbox workspace-write --full-auto 2>/dev/null
允許網路或廣泛存取danger-full-access--sandbox danger-full-access --full-auto 2>/dev/null
恢復最近的工作階段繼承自原始echo "prompt" | codex exec --skip-git-repo-check resume --last 2>/dev/null(不允許使用旗標)
從其他目錄執行符合任務需求-C <DIR> 加上其他旗標 2>/dev/null

執行逾時

Codex 不會產生中間輸出——它只在完成時寫入結果。如果程序在完成前被終止,輸出檔案會靜默為空(無錯誤)。

建議方法: 同步執行——完全消除逾時風險,且對話無論如何都會等待結果。

如果是在背景執行,請根據推理強度設定執行逾時:

推理強度逾時
low150 秒
medium300 秒
high600 秒
xhigh1200 秒
max1800 秒
ultra1800 秒

後續追蹤

  • 在每次 codex 命令之後,立即使用 AskUserQuestion 確認後續步驟、收集說明,或決定是否使用 codex exec resume --last 恢復。
  • 恢復時,透過標準輸入管線傳遞新提示:echo "new prompt" | codex exec resume --last 2>/dev/null。恢復的工作階段會自動使用與原始工作階段相同的模型、推理強度和沙箱模式。
  • 在提出後續動作時,重新陳述所選的模型、推理強度和沙箱模式。

對 Codex 輸出的嚴格評估

Codex 由 OpenAI 模型驅動,這些模型有其自身的知識截止日期和限制。請將 Codex 視為同事,而非權威。

準則

  • 信任自己的知識。如果 Codex 斷言您知道是錯誤的,請直接提出異議。
  • 研究分歧點,在接受 Codex 的主張之前,使用 WebSearch 或文件進行研究。如有必要,透過恢復與 Codex 分享發現。
  • 記住知識截止日期——Codex 可能不知道其訓練資料之後的版本、API 或變更。
  • 不要盲目遵循——Codex 可能出錯。嚴格評估其建議,特別是關於:
    • 模型名稱和能力
    • 最近的函式庫版本或 API 變更
    • 可能已演進的最佳實務

當 Codex 錯誤時

  1. 向使用者清楚地陳述您的異議
  2. 提供證據(您自己的知識、網路搜尋、文件)
  3. 選擇性地恢復 Codex 工作階段來討論分歧。將自己識別為 Claude,以便 Codex 知道這是一場同儕 AI 討論。使用您實際的模型名稱(例如您目前運行的模型),而不是硬編碼的名稱:
    echo "This is Claude (<您當前的模型名稱>) following up. I disagree with [X] because [evidence]. What's your take on this?" | codex exec --skip-git-repo-check resume --last 2>/dev/null
    
  4. 將分歧視為討論而非修正——任一 AI 都可能出錯
  5. 如果存在真正的歧義,讓使用者決定如何進行

錯誤處理

  • 每當 codex --version 或 codex exec 命令以非零退出碼結束時,停止並報告失敗;在重試前請求指示。
  • 在使用高影響力旗標(--full-auto、--sandbox danger-full-access、--skip-git-repo-check)之前,使用 AskUserQuestion 詢問使用者許可,除非已獲得許可。
  • 當輸出包含警告或部分結果時,總結它們並使用 AskUserQuestion 詢問如何調整。

相關技能