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

Minh Triết

Minh Triết

16 tháng 4 2025

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

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:

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:

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):

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

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

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

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:

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:

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

Thực hành thiết kế API trong Apidog

Khám phá cách dễ dàng hơn để xây dựng và sử dụng API