如何本地安裝和使用OpenAI的Codex CLI?

如何本地安裝和使用OpenAI的Codex CLI?

OpenAI 最新推理模型的強大功能透過 OpenAI Codex CLI(一款開源命令列工具)直接傳輸到您的終端。它是一款行動式程式設計助手,可以在您的計算機上本地讀取、編輯和執行程式碼,從而加快功能開發速度、修復問題並幫助您理解複雜程式碼。OpenAI 表示,由於 CLI 在本地執行,除非您選擇共享,否則您的原始碼永遠不會離開您的環境。在本文中,我將向您展示如何在本地安裝和使用 OpenAI 的 Codex CLI。

為什麼選擇Codex CLI?

Codex CLI 專為那些熟悉終端操作,並希望實現 ChatGPT 級別的推理能力,同時又能執行程式碼、管理檔案和進行迭代,並保持版本控制的開發者而設計。簡而言之,它是一種聊天驅動的開發方式,能夠理解並執行您的程式碼。它的主要功能包括:

  • 零設定:無需配置,只需攜帶您的 OpenAI API 金鑰即可開始使用!
  • 最低要求:您需要 Node.js (v22+) 和 npm (v10+),但總體而言,設定過程快速且輕量。
  • 全自動模式:在停用網路的目錄沙盒中執行,確保您的資料保持私密和安全。
  • 多模式支援:傳送螢幕截圖或圖表,Codex CLI 可以解釋並複製您圖片中顯示的需求。
  • 開源:該工具完全開源,因此您可以探索程式碼庫,甚至為其開發做出貢獻。

請注意,Codex CLI 是一個正在進行的實驗專案。由於尚不穩定,它可能存在問題、功能缺失或發生顛覆性變化。

推薦閱讀:如何訪問和使用 OpenAI Codex

審批模式

審批模式控制授予 AI 系統(Codex CLI)的訪問許可權級別。共有三種審批模式,具體說明如下:

模式 代理可以做什麼 何時使用
Suggest(預設) 讀取檔案。建議編輯和 shell 命令,但在更改或執行命令之前需要您的批准。 安全探索、程式碼審查、學習程式碼庫。
Auto Edit 自動讀取和寫入檔案。仍會在執行 shell 命令之前詢問。 重構或重複編輯時,希望監控副作用的情況。
Full Auto 在沙盒(停用網路)環境中,自動讀取、寫入並執行命令,範圍限於當前目錄。 較長任務,如在您去喝咖啡時修復損壞的構建或進行功能原型開發。

沙盒詳情

macOS 12+

Codex CLI 使用 Apple Seatbelt (sandbox-exec) 對命令進行沙盒處理。

  • 大多數檔案系統都被置於只讀監獄中,只有少數例外,例如 $PWD$TMPDIR~/.codex,這些檔案仍然可寫。
  • 預設情況下,出站網路訪問被完全阻止——即使子程序嘗試使用 curl,也會失敗。

Linux

沙盒預設未啟用。OpenAI 建議使用 Docker 進行沙盒處理。Codex CLI 在一個輕量級容器映象中執行,您的程式碼庫也掛載在同一位置以實現讀寫訪問。自定義的 iptables/ipset 防火牆指令碼會阻止除訪問 OpenAI API 之外的所有出口流量。這確保了可重複、可預測的執行,而無需在主機上擁有 root 許可權。要啟用此功能,請使用 run_in_container.sh 指令碼配置沙盒環境。

全新codex-mini-latest

codex-mini-latest 是 o4-mini 的微調版本,專為 Codex CLI 使用。它擁有 20 萬個上下文視窗,最多可輸出 10 萬個 token。codex-mini-latest 的定價介於 GPT-4.1 和 o4-mini 之間,下圖顯示了每百萬 token 的輸入、快取輸入和輸出價格。

全新codex-mini-latest

Source: OpenAI

如何訪問Codex CLI?

請按照以下簡單步驟訪問 Codex CLI:

1. 轉到您正在進行的專案。

如果您想嘗試使用虛擬程式碼庫,建議您克隆此程式碼庫,以便我們開始測試 Codex CLI。Github 程式碼庫連結:https://github.com/Badribn0612/warren_buffet_persona

使用命令“git clone https://github.com/Badribn0612/warren_buffet_persona”克隆此程式碼庫。您也可以使用更小的程式碼庫。

2. 轉到程式碼庫所在的目錄。

使用命令“cd <working directory>”轉到該目錄。

3. 安裝 Codex CLI。

現在我們已準備好開始訪問 Codex CLI。讓我們安裝它。使用以下命令: npm install -g @openai/codex – 此命令將在您的系統中全域性安裝 Codex CLI。

安裝 Codex CLI

4. 獲取 API。

OpenAI 為 Plus 使用者提供價值 5 美元的 codex-mini-latest API,為 Pro 使用者提供價值 50 美元的積分。要兌換,請使用以下命令。

codex — login

這會要求您登入或使用 API 金鑰。

codex-mini-latest API

5. 現在,您可以使用 ChatGPT 登入 Codex CLI。

使用 ChatGPT 登入 Codex CLI

6. 兌換成功訊息。

成功登入 Codex CLI 後,您應該能夠在終端和 OpenAI 儀表板中看到兌換成功的訊息。

兌換成功訊息

7. 檢查您是否可以在終端中訪問 Codex CLI。

開始訪問 Codex CLI:

在終端中訪問 Codex CLI

8. 掃描您的程式碼庫。

經過整整 3 分鐘的瀏覽和掃描,我得到了關於程式碼庫的全面反饋。

掃描您的程式碼庫

9. 在程式碼庫中進行更改。

現在,讓我們使用 Codex CLI 進行一些更改。

提示詞:Enhance the chainlit application app.py, this has the persona of warren buffet:1. Add search tools2. Improve the code quality, 3. Enhance the chainlit application

在程式碼庫中進行更改

輸出:

執行 codex cli 大約 15 分鐘後,在經歷了代理所做的更改並批准後,執行停止了。

執行 codex cli 大約 15 分鐘 執行 codex cli 大約 15 分鐘 執行 codex cli 大約 15 分鐘

以上是 Codex CLI 代理執行過程中的一些截圖。

使用Codex CLI的推論

根據我使用 Codex CLI 代理的經驗,我發現它在進行更改時採取了謹慎而深思熟慮的方法。它會驗證每個步驟,僅在必要時應用修改,並始終致力於找到最佳解決方案。然而,與使用 CursorWindsurf 等工具手動進行類似更改相比,此過程可能明顯較慢。

當然,這只是我的個人經驗,您的結果可能會因您所使用的領域或技術棧而異。在本例中,程式碼庫涉及最近更新的庫,而 Codex 很難處理這些庫。(注意:Codex 的知識截止日期為 2024 年 6 月 1 日)

您也可以考慮嘗試使用 Claude Code,看看它如何處理您的用例,並確定哪種工具最適合您的工作流程。

小結

Codex CLI 是一款強大的命令列工具,可將 OpenAI 的高階推理功能直接引入您的本地開發環境。它允許開發者使用自然語言與程式碼互動,執行除錯、重構和功能開發等任務,同時確保敏感資料在本地安全可靠。

Codex CLI 內建沙盒功能、支援多模式執行,並只需極簡設定,非常適合喜歡在終端中工作並希望完全掌控程式碼庫的開發者。雖然它仍處於實驗階段,並且在某些情況下可能比其他工具慢,但它對程式碼更改的謹慎處理以及對隱私的高度重視,使其成為將智慧程式碼輔助整合到工作流程中的有力選擇。

評論留言