AI 程式設計教程中文版
從原理到實戰

06 · App、IDE、CLI、Cloud 怎麼選

按任務場景選擇 Codex 入口:本地終端、編輯器、桌面任務中心或雲端非同步環境。

Codex 有多個入口,但它們不是“誰更高階”的關係,而是適合不同工作場景:CLI 適合終端和自動化,IDE 適合編輯器內開發,App 適合桌面任務管理,Cloud 適合非同步遠端任務。

新手不需要一開始全部安裝。先選與你當前工作方式最貼近的 1-2 個入口,用熟之後再擴充套件。

判斷口訣:終端任務用 CLI,編輯器任務用 IDE,多執行緒管理用 App,非同步長任務用 Cloud。

四個入口的共同點

無論從哪個入口開始,Codex 做的核心事情相同:

  • 讀取專案上下文。
  • 根據任務制定計劃。
  • 在許可權邊界內改檔案或呼叫工具。
  • 執行驗證。
  • 把結果交給你審查。

差異在於執行位置、上下文來源、互動方式和驗收方式。

flowchart TB
    Codex["Codex coding agent"]
    CLI["CLI<br/>終端和指令碼"]
    IDE["IDE<br/>編輯器上下文"]
    App["App<br/>桌面任務管理"]
    Cloud["Cloud / Web<br/>遠端環境和非同步任務"]

    Codex --> CLI
    Codex --> IDE
    Codex --> App
    Codex --> Cloud

選擇入口時,先看你要在哪裡審查結果,而不是看哪個入口功能最多。

CLI:終端和自動化入口

CLI 適合你已經在終端裡工作的場景。

常見用途:

  • 本地 repo 中互動式修改。
  • 透過 codex exec 跑一次明確任務。
  • SSH 到遠端機器後排查問題。
  • 批次文件檢查、程式碼審查、遷移指令碼。
  • 接入 CI 或內部自動化。

典型命令:

codex
codex "解释这个项目的结构"
codex exec "检查 docs 中是否存在格式问题"

CLI 的優勢是可指令碼化、可組合、接近真實工程命令。它的缺點是對非終端使用者不夠直觀,UI 審查和多工管理也不如 App 或 IDE 自然。

IDE:編輯器內開發入口

IDE extension 適合你正在寫程式碼、讀程式碼、區域性除錯的場景。

常見用途:

  • 選中程式碼讓 Codex 解釋。
  • 把當前檔案、相關檔案加入上下文。
  • 在編輯器裡審查 diff。
  • 修一個區域性 bug。
  • 從 IDE 委託任務到 Cloud,再回來應用結果。

IDE 的優勢是上下文貼近程式碼編輯現場。你不用離開編輯器,就能圍繞當前檔案和專案繼續工作。

如果你的主要身份是日常工程開發者,IDE 往往是最自然的入口。

App:桌面任務管理入口

Codex App 更適合把 Codex 當成任務工作臺使用。

常見用途:

  • 同時管理多個 thread。
  • 用 worktree 隔離多個任務。
  • 審查多個 diff。
  • 配置本地任務和自動化。
  • 在桌面端集中管理專案和會話。

App 的優勢是任務視角更強,適合把 Codex 當作持續協作環境,而不是一次命令或一個編輯器側欄。

如果你經常同時推進多篇文件、多處 bug、多條改造線,App 比單一 IDE 對話更容易管理。

Cloud / Web:非同步遠端入口

Cloud / Web 適合不想依賴本機環境、希望任務在遠端環境裡非同步處理的場景。

常見用途:

  • 從 Web 發起任務。
  • 連線 GitHub repository 後讓 Codex 生成 PR。
  • 在 cloud environment 中跑 setup 和驗證。
  • 透過 GitHub、Slack、Linear 等整合觸發任務。
  • 把較長任務放到後臺處理。

Cloud 的優勢是隔離和非同步。它的風險是環境配置、許可權、secret、網路訪問都需要更清楚地治理。

如果任務需要訪問私有儲存庫或遠端依賴,先確認 environment、secrets 和 internet access 的邊界。

選擇方式

可以按這個流程選入口:

flowchart TD
    Start["我要讓 Codex 做什麼"]
    Editing{"正在編輯器裡寫程式碼?"}
    Terminal{"主要在終端或 SSH 中工作?"}
    Async{"希望非同步遠端跑?"}
    Multi{"需要管理多個任務?"}

    Start --> Editing
    Editing -->|是| IDE["IDE"]
    Editing -->|否| Terminal
    Terminal -->|是| CLI["CLI"]
    Terminal -->|否| Async
    Async -->|是| Cloud["Cloud / Web"]
    Async -->|否| Multi
    Multi -->|是| App["App"]
    Multi -->|否| IDE

邊界判斷:

  • 任務短、需要邊看邊改:IDE 或 CLI。
  • 任務長、可以後臺跑:Cloud。
  • 需要同時推進多個 agent 任務:App。
  • 需要指令碼化、CI、批次處理:CLI。
  • 非工程使用者或輕量嘗試:Web / Cloud。

不建議的選擇方式

不要按這些方式選:

  • 哪個入口最新就用哪個。
  • 哪個看起來功能最多就用哪個。
  • 把所有入口都裝上但每個都只會一點。
  • 不區分本地環境和雲端環境的許可權邊界。
  • 不知道怎麼審查結果,就先把任務扔給 Cloud。

入口越多,治理成本越高。先把一個主入口用熟,再決定是否擴充套件。

推薦組合

日常工程開發:

  • 主入口:IDE。
  • 輔助入口:CLI 或 Cloud。

終端重度使用者:

  • 主入口:CLI。
  • 輔助入口:App 或 Cloud。

多工排程:

  • 主入口:App。
  • 輔助入口:CLI。

輕量或遠端任務:

  • 主入口:Cloud / Web。
  • 輔助入口:IDE 或 GitHub integration。

真正重要的不是入口數量,而是每個任務都有清楚的上下文、許可權邊界和驗證方式。

本頁目錄