Apidog

Nền tảng phát triển API hợp tác tất cả trong một

Thiết kế API

Tài liệu API

Gỡ lỗi API

Giả lập API

Kiểm thử API tự động

OpenAI Codex CLI: một Đại lý Lập trình Mã nguồn Mở trong Terminal

Minh Triết

Minh Triết

Updated on tháng 4 16, 2025

Giao diện dòng lệnh (CLI) vẫn là miền không thể bàn cãi của nhiều nhà phát triển – một nơi của hiệu suất, sức mạnh và sự tích hợp sâu sắc vào quy trình phát triển. Bây giờ, hãy tưởng tượng việc mở rộng môi trường đó với một tác nhân thông minh có khả năng hiểu mã của bạn, chỉnh sửa các tệp, chạy các lệnh và lặp lại các giải pháp, tất cả mà không rời khỏi sự thoải mái của terminal của bạn. Đây là lời hứa của OpenAI Codex CLI, một tác nhân lập trình nhẹ có sẵn qua npm (@openai/codex), được thiết kế đặc biệt cho các nhà phát triển sống trong terminal.

Đây không chỉ là một chatbot khác. Codex CLI nhằm mục đích cung cấp khả năng lý luận ở mức độ như ChatGPT kết hợp với khả năng thực tiễn để thực hiện các nhiệm vụ trực tiếp trong kho lưu trữ cục bộ của bạn. Nó tương tác với các tệp của bạn, chạy các lệnh shell (một cách an toàn!), và tích hợp mượt mà với kiểm soát phiên bản, biến nó thành một đối tác thực sự trong phát triển dựa trên trò chuyện mà hiểu ngữ cảnh của repo của bạn.

💡
Bạn muốn một công cụ kiểm tra API tuyệt vời tạo ra tài liệu API đẹp?

Bạn muốn một nền tảng tích hợp, Tất cả trong Một để nhóm phát triển của bạn làm việc cùng nhau với năng suất tối đa?

Apidog đáp ứng tất cả yêu cầu của bạn, và thế chỗ Postman với giá cả phải chăng hơn rất nhiều!
button

Bắt đầu với OpenAI Codex CLI:

Bắt đầu với Codex CLI được thiết kế để đơn giản, phản ánh triết lý "không thiết lập" của nó (ngoài việc cung cấp mã API của bạn).

Để chạy Codex CLI, hệ thống của bạn cần đáp ứng các yêu cầu sau:

  • Hệ điều hành: macOS 12+, Ubuntu 20.04+/Debian 10+, hoặc Windows 11 qua WSL2.
  • Node.js: Phiên bản 22 hoặc mới hơn (khuyến nghị LTS).
  • Git (Tùy chọn, Khuyến nghị): Phiên bản 2.23+ để có đầy đủ chức năng, đặc biệt là tích hợp kiểm soát phiên bản và các tính năng trợ giúp PR tiềm năng.
  • RAM: Tối thiểu 4 GB, khuyến nghị 8 GB.
GitHub - openai/codex: Lightweight coding agent that runs in your terminal
Lightweight coding agent that runs in your terminal - openai/codex

Cài đặt: Là một công cụ Node.js, cài đặt được thực hiện qua npm (hoặc yarn). Cài đặt nó toàn cục để làm cho lệnh codex có sẵn ở bất kỳ đâu trong terminal của bạn:

npm install -g @openai/codex

(Hãy nhớ lời khuyên tiêu chuẩn: tránh sudo npm install -g; cấu hình quyền npm đúng cách nếu cần).

Cài đặt Mã API: Codex CLI yêu cầu mã API OpenAI của bạn để hoạt động. Bạn cần đặt điều này dưới dạng biến môi trường:

export OPENAI_API_KEY="your-api-key-here"

Cần chú ý rằng lệnh export thường chỉ thiết lập biến cho phiên làm việc terminal hiện tại. Để làm cho nó vĩnh viễn, bạn nên thêm dòng này vào tệp cấu hình shell của bạn, chẳng hạn như ~/.zshrc, ~/.bashrc, hoặc ~/.bash_profile, tùy thuộc vào shell của bạn.

Chạy Codex: Bạn có thể tương tác với Codex theo một số cách:

Chế độ Tương tác: Đơn giản chỉ cần gõ codex để bắt đầu một phiên tương tác (REPL - Read-Eval-Print Loop) nơi bạn có thể phát lệnh và chỉ dẫn.

Nhắc nhở Trực tiếp: Cung cấp một nhắc nhở ban đầu trực tiếp từ dòng lệnh:

codex "giải thích mã nguồn này cho tôi"

Thực hiện Tự động: Kết hợp một nhắc nhở với chế độ phê duyệt (còn nhiều nữa về điều này sau) cho các nhiệm vụ tự động hơn:

codex --approval-mode full-auto "tạo ra ứng dụng danh sách việc cần làm đẹp nhất"

Khi được kích hoạt, Codex bắt tay vào công việc. Nó có thể tạo các tệp, chạy mã trong một môi trường an toàn, cài đặt bất kỳ phụ thuộc cần thiết nào mà nó xác định, và trình bày kết quả. Bạn sau đó xem lại các thay đổi được đề xuất (sự khác biệt của các tệp, đầu ra lệnh) và phê duyệt chúng để được cam kết vào thư mục làm việc của bạn.

Tại sao chọn OpenAI Codex CLI?

Codex CLI carve ra một niche cụ thể cho các nhà phát triển đang tìm kiếm sự trợ giúp từ AI được tích hợp sâu trong quy trình làm việc hiện có của họ. Những điểm bán hàng chính của nó, được rút ra trực tiếp từ triết lý thiết kế của nó, bao gồm:

  • Nơi bản địa Terminal: Được xây dựng cho các nhà phát triển thích CLI. Nó tránh việc chuyển đổi ngữ cảnh sang các giao diện web hoặc ứng dụng riêng biệt.
  • Lý luận + Thực hiện: Đi xa hơn chỉ ra mã hoặc giải thích các khái niệm. Nó tận dụng lý luận AI mạnh mẽ (như ChatGPT) nhưng quan trọng là thêm khả năng chạy mã, thao tác tệp, và lặp lại các giải pháp trong dự án của bạn.
  • Nhận thức Repo: Nó hiểu rằng nó đang hoạt động trong một mã nguồn cụ thể và có thể tận dụng bối cảnh đó.
  • Không thiết lập (Hầu như): Mang theo mã API OpenAI của bạn, cài đặt gói, và nó sẵn sàng chạy.
  • Tự động An toàn: Cung cấp các mức độ tự động hóa có thể cấu hình, bao gồm chế độ "Tự động hoàn toàn", nhưng thực hiện bảo mật thông qua việc vô hiệu hóa mạng và cách ly thư mục.
  • Đầu vào đa mô hình: Đặc biệt đề cập đến khả năng chấp nhận ảnh chụp màn hình hoặc sơ đồ như đầu vào để triển khai các tính năng, tận dụng sức mạnh của các mô hình đa phương thức cơ bản. ✨
  • Mã nguồn mở: Toàn bộ dự án là mã nguồn mở, thúc đẩy tính minh bạch, đóng góp của cộng đồng và sự tin tưởng.

Ba chế độ của OpenAI Codex CLI, Được giải thích:

Trao quyền cho một công cụ AI khả năng chỉnh sửa các tệp và thực hiện các lệnh shell đòi hỏi một mô hình bảo mật mạnh mẽ. Codex CLI giải quyết điều này với tính minh bạch và kiểm soát của người dùng thông qua cờ --approval-mode (có thể được thiết lập qua dòng lệnh hoặc nhắc nhở tương tác trong quá trình onboarding):

Chế độ Gợi ý (Mặc định):

  • Cho phép mà không cần hỏi: Đọc bất kỳ tệp nào trong kho lưu trữ.
  • Cần Phê duyệt: TẤT CẢ các lệnh ghi/tệp và TẤT CẢ các lệnh shell/Bash.
  • Trường hợp Sử dụng: Chế độ an toàn nhất, lý tưởng cho các hoạt động nhạy cảm, học công cụ, hoặc khi cần kiểm soát tối đa.

Chế độ Chỉnh sửa Tự động:

  • Cho phép mà không cần hỏi: Đọc các tệp VÀ áp dụng các thay đổi ghi tệp.
  • Cần Phê duyệt: TẤT CẢ các lệnh shell/Bash.
  • Trường hợp Sử dụng: Cân bằng tự động hóa cho các thay đổi mã trong khi vẫn giữ được kiểm soát thủ công đối với các lệnh có thể thay đổi hệ thống. Tăng tốc quá trình tái cấu trúc và tạo mã.

Chế độ Tự động Hoàn toàn:

  • Cho phép mà không cần hỏi: Đọc/ghi tệp VÀ thực hiện các lệnh shell.
  • Cần Phê duyệt: Không có (trong môi trường cách ly).
  • Trường hợp Sử dụng: Tối đa hóa tự động hóa cho các nhiệm vụ đáng tin cậy.

Biện pháp Bảo vệ Tích hợp:

  • Cách ly: Trong chế độ Full Auto, các lệnh được thực hiện với những hạn chế đáng kể để bảo vệ sâu:
  • Mạng Vô hiệu hóa: Ngăn chặn giao tiếp bên ngoài bất ngờ (ví dụ: các lệnh curl sẽ thất bại theo mặc định).
  • Hạn chế Thư mục: Các hoạt động bị giới hạn trong thư mục làm việc hiện tại ($PWD) và các khu vực tạm/thư mục cache được chỉ định ($TMPDIR, ~/.codex, v.v.).
  • Nhận thức Git: Codex CLI kiểm tra xem thư mục mục tiêu có được Git theo dõi hay không. Nếu bạn cố gắng bắt đầu ở chế độ auto-edit hoặc full-auto trong một thư mục không được theo dõi, nó sẽ hiển thị một cảnh báo/nhắc nhở xác nhận, đảm bảo bạn luôn có lưới an toàn của kiểm soát phiên bản để xem xét và hoàn tác các thay đổi.
  • Các cải tiến trong tương lai: Tài liệu ghi nhận kế hoạch cho phép danh sách trắng các lệnh cụ thể để tự động thực hiện với mạng được kích hoạt khi các biện pháp bảo vệ bổ sung được thực hiện một cách tin cậy.

Cách ly theo Nền tảng:

Cơ chế tăng cường cơ bản được điều chỉnh theo hệ điều hành chủ, nhằm đảm bảo tính minh bạch trong việc sử dụng:

  • macOS (12+): Sử dụng công nghệ Bảo vệ Seatbelt gốc của Apple (sandbox-exec). Quy trình được đặt trong một nhà tù chỉ đọc với các hạ tầng viết cụ thể ($PWD, $TMPDIR, ~/.codex). Truy cập mạng ra ngoài bị chặn.
  • Linux: Khuyến nghị sử dụng Docker cho việc cách ly. Codex có thể khởi chạy bản thân bên trong một hình ảnh container tối thiểu, gắn kho lưu trữ với quyền đọc/ghi. Một kịch bản tường lửa iptables/ipset tùy chỉnh từ chối tất cả lưu lượng mạng ngoại trừ giao tiếp cần thiết với API OpenAI. Điều này cung cấp các chạy có thể định hướng và tái tạo mà không yêu cầu quyền root trên máy chủ chủ (chi tiết trong run_in_container.sh).
  • Windows: Hỗ trợ qua Windows Subsystem for Linux 2 (WSL2), có khả năng khai thác cách tiếp cận cách ly Linux trong môi trường WSL.

Cấu hình OpenAI Codex CLI

Hơn cả tương tác cơ bản, Codex CLI cung cấp cách để tùy chỉnh hành vi của nó và tích hợp vào các quy trình làm việc phức tạp hơn.

Tài liệu Tham chiếu CLI:

  • codex: Chế độ tương tác.
  • codex "...": Chế độ tương tác với một nhắc nhở ban đầu.
  • codex -q "..." hoặc codex --quiet "...": Chế độ "im lặng" không tương tác, phù hợp cho kịch bản hóa. Xuất JSON nếu cờ -json được thêm vào.
  • Các cờ chính:
  • -model / m: Chỉ định mô hình OpenAI để sử dụng (ví dụ: gpt-4, o4-mini).
  • -approval-mode / a: Thiết lập mức độ tự động hóa (suggest, auto-edit, full-auto).
  • -quiet / q: Bật chế độ không tương tác.

Bộ nhớ & Bối cảnh Dự án:

Codex CLI có thể kết hợp các hướng dẫn và bối cảnh giúp việc từ các tệp Markdown, xếp chồng chúng theo thứ tự ưu tiên cụ thể:

  1. ~/.codex/instructions.md: Hướng dẫn cá nhân, toàn cầu áp dụng cho tất cả các dự án.
  2. codex.md (tại gốc kho lưu trữ): Ghi chú dự án chia sẻ, quy ước, hoặc ngữ cảnh cấp cao cho toàn bộ repo.
  3. codex.md (trong thư mục làm việc hiện tại): Hướng dẫn cụ thể cho các gói phụ hoặc thư mục.

Điều này cho phép các nhóm nhúng tiêu chuẩn dự án hoặc cung cấp gợi ý trực tiếp trong mã nguồn để Codex sử dụng. Tính năng này có thể được vô hiệu hóa bằng cách sử dụng cờ --no-project-doc hoặc bằng cách thiết lập biến môi trường CODEX_DISABLE_PROJECT_DOC=1.

Chế độ Không tương tác / CI:

Được thiết kế cho tự động hóa, Codex CLI có thể chạy không có giao diện trong các quy trình Tích hợp Liên tục (CI). Bằng cách sử dụng cờ --quiet (hoặc -q) hoặc thiết lập biến môi trường CODEX_QUIET_MODE=1, các yếu tố giao diện tương tác bị подавлят.

Ví dụ về bước Action GitHub:

- name: Cập nhật changelog qua Codex
  run: |
    npm install -g @openai/codex
    export OPENAI_API_KEY="${{ secrets.OPENAI_KEY }}"
    codex -a auto-edit --quiet "cập nhật CHANGELOG cho bản phát hành tiếp theo dựa trên các cam kết gần đây"

Các tệp Cấu hình:

Codex tìm kiếm cấu hình trong thư mục ~/.codex/:

~/.codex/config.yaml: Định nghĩa mặc định như mô hình ưa thích hoặc hành vi khi có lỗi trong chế độ full-auto.

model: o4-mini # Mô hình mặc định cho các lần gọi
fullAutoErrorMode: ask-user # Hành vi khi có lỗi: ask-user hoặc ignore-and-continue

~/.codex/instructions.md: Như đã đề cập ở trên, cho các hướng dẫn tùy chỉnh toàn cầu (ví dụ, "Luôn trả lời bằng biểu tượng cảm xúc", "Chỉ sử dụng các lệnh git nếu tôi đề cập cụ thể rằng bạn nên").

Các Ứng dụng Thực tế: Cách Thành công

Tệp README cung cấp một số ví dụ cụ thể ("công thức") thể hiện các loại nhiệm vụ mà Codex CLI phù hợp:

  1. Tái cấu trúc Mã: codex "Tái cấu trúc thành phần Dashboard sang React Hooks" - Codex phân tích thành phần lớp, cố gắng viết lại, có thể chạy các bài kiểm tra (npm test), và hiển thị sự khác biệt để phê duyệt.
  2. Tạo Di chuyển: codex "Tạo di chuyển SQL để thêm bảng người dùng" - Nó có thể suy luận ORM đang được sử dụng (ví dụ: Prisma, Sequelize), tạo các tệp di chuyển cần thiết, và có thể chạy chúng trong một môi trường cơ sở dữ liệu được cách ly.
  3. Viết Kiểm tra Đơn vị: codex "Viết kiểm tra đơn vị cho utils/date.ts" - Codex tạo các trường hợp kiểm tra, thực hiện chúng (có thể qua các lệnh shell như npm test hoặc jest), và có thể lặp lại, sửa mã hoặc các bài kiểm tra cho đến khi chúng vượt qua.
  4. Hoạt động Tệp Lô: codex "Đổi tên hàng loạt *.jpeg → *.jpg bằng git mv" - Nó lập công thức và thực hiện các lệnh git mv cần thiết, có thể cập nhật các tham chiếu/nhập khẩu trong mã như vậy.
  5. Giải thích Mã/Regex: codex "Giải thích điều gì xảy ra với regex này: ^(?=.*[A-Z]).{8,}$" - Tận dụng sức mạnh giải thích của LLM để cung cấp tóm tắt dễ hiểu.
  6. Phân tích Repo Cấp cao: codex "Xem xét kỹ lưỡng repo này, và đề xuất 3 PR có tác động cao với phạm vi tốt" - Chứng tỏ tiềm năng trong việc xem xét mã chiến lược và tạo ra các gợi ý.
  7. Kiểm tra An ninh: codex "Tìm kiếm các lỗ hổng và tạo báo cáo kiểm tra an ninh" - Sử dụng cơ sở kiến thức của AI để xác định các lỗi bảo mật tiềm năng và giải thích chúng.

Kết luận

Bằng cách là mã nguồn mở và được xây dựng cho nhà phát triển tập trung vào CLI, Codex CLI nhằm trở thành một tác nhân lập trình không thể thiếu và đáng tin cậy – nâng cao năng suất và cho phép các nhà phát triển tập trung vào các thách thức phức tạp hơn, ngay từ dòng lệnh của họ. Khi nó tiếp tục phát triển tích cực, nó có tiềm năng để thay đổi cách các nhà phát triển tương tác với AI trong công việc hàng ngày của họ.

💡
Bạn muốn một công cụ kiểm tra API tuyệt vời tạo ra tài liệu API đẹp?

Bạn muốn một nền tảng tích hợp, Tất cả trong Một để nhóm phát triển của bạn làm việc cùng nhau với năng suất tối đa?

Apidog đáp ứng tất cả yêu cầu của bạn, và thế chỗ Postman với giá cả phải chăng hơn rất nhiều!
button