Tiếng Việt

Tùy chỉnh

Cách tùy chỉnh Codex bằng hướng dẫn dự án, kỹ năng, MCP và tác nhân phụ

Tùy chỉnh là cách bạn giúp Codex làm việc theo cách nhóm của bạn vận hành.

Trong Codex, khả năng tùy chỉnh đến từ một số lớp phối hợp với nhau:

  • Hướng dẫn dự án (AGENTS.md) dành cho các chỉ dẫn lâu dài
  • Ký ức dành cho ngữ cảnh hữu ích học được từ công việc trước đó
  • Kỹ năng dành cho quy trình có thể tái sử dụng và chuyên môn theo lĩnh vực
  • MCP để truy cập các công cụ bên ngoài và hệ thống dùng chung
  • Tác nhân phụ để giao việc cho các tác nhân phụ chuyên biệt

Các lớp này bổ trợ cho nhau chứ không cạnh tranh. AGENTS.md định hình hành vi, ký ức chuyển tiếp ngữ cảnh cục bộ, kỹ năng đóng gói các quy trình có thể lặp lại và MCP kết nối Codex với các hệ thống bên ngoài không gian làm việc cục bộ.

Hướng dẫn AGENTS

AGENTS.md cung cấp cho Codex hướng dẫn dự án lâu dài, đi cùng kho lưu trữ và được áp dụng trước khi agent bắt đầu làm việc. Hãy giữ nội dung ngắn gọn.

Sử dụng tệp này cho các quy tắc mà bạn muốn Codex luôn tuân theo trong kho lưu trữ, chẳng hạn như:

  • Lệnh build và kiểm thử
  • Yêu cầu đánh giá
  • Quy ước riêng của kho lưu trữ
  • Hướng dẫn dành riêng cho từng thư mục

Khi agent đưa ra giả định không chính xác về cơ sở mã, hãy sửa trong AGENTS.md và yêu cầu agent cập nhật AGENTS.md để bản sửa được duy trì. Hãy coi đây là một vòng phản hồi.

Khi nào cần cập nhật AGENTS.md

  • Lỗi lặp lại: Nếu agent liên tục mắc cùng một lỗi, hãy thêm một quy tắc.
  • Đọc quá nhiều: Nếu agent tìm đúng tệp nhưng đọc quá nhiều tài liệu, hãy thêm hướng dẫn định tuyến (nên ưu tiên thư mục/tệp nào).
  • Phản hồi PR lặp lại: Nếu bạn để lại cùng một phản hồi nhiều lần, hãy hệ thống hóa phản hồi đó.
  • Trong GitHub: Trong nhận xét của pull request, hãy gắn thẻ @codex kèm một yêu cầu (ví dụ: @codex add this to AGENTS.md) để giao việc cập nhật cho cuộc trò chuyện trên đám mây.
  • Tự động hóa kiểm tra sai lệch: Sử dụng tác vụ theo lịch để chạy các lần kiểm tra định kỳ (ví dụ: hằng ngày) nhằm tìm khoảng trống trong hướng dẫn và đề xuất nội dung cần thêm vào AGENTS.md.

Kết hợp AGENTS.md với hạ tầng thực thi các quy tắc đó: hook trước commit, linter và trình kiểm tra kiểu sẽ phát hiện sự cố trước khi bạn nhìn thấy, nhờ đó hệ thống ngày càng hiệu quả hơn trong việc ngăn ngừa lỗi lặp lại.

Codex có thể tải hướng dẫn từ nhiều vị trí: một tệp toàn cục trong thư mục chính Codex của bạn (dành cho cá nhân bạn với tư cách nhà phát triển) và các tệp riêng của kho lưu trữ mà nhóm có thể commit. Các tệp gần thư mục làm việc hơn sẽ được ưu tiên. Sử dụng tệp toàn cục để định hình cách Codex giao tiếp với bạn (ví dụ: phong cách đánh giá, mức độ chi tiết và giá trị mặc định), đồng thời giữ cho các tệp trong kho lưu trữ tập trung vào quy tắc của nhóm và cơ sở mã.

<FileTree class="mt-4" tree={[ { name: "~/.codex/", open: true, children: [ { name: "AGENTS.md", comment: "Toàn cục (dành cho bạn với tư cách nhà phát triển)" }, ], }, { name: "repo-root/", open: true, children: [ { name: "AGENTS.md", comment: "riêng cho kho lưu trữ (dành cho nhóm của bạn)" }, ], }, ]} />

Hướng dẫn tùy chỉnh bằng AGENTS.md

Kỹ năng

Kỹ năng cung cấp cho Codex các khả năng có thể tái sử dụng trong những quy trình lặp lại. Kỹ năng thường là lựa chọn phù hợp nhất cho quy trình có thể tái sử dụng vì hỗ trợ hướng dẫn, tập lệnh và tài liệu tham khảo phong phú hơn trong khi vẫn có thể dùng lại giữa các tác vụ. Kỹ năng được tải và hiển thị cho agent (ít nhất là siêu dữ liệu), vì vậy Codex có thể tự động phát hiện và chọn chúng. Cách này giúp các quy trình phong phú luôn sẵn dùng mà không làm ngữ cảnh ban đầu trở nên cồng kềnh.

Sử dụng thư mục kỹ năng để xây dựng và cải tiến quy trình ngay trên máy cục bộ. Nếu đã có plugin cho quy trình đó, hãy cài đặt trước để tái sử dụng một thiết lập đã được kiểm chứng. Khi muốn phân phối quy trình của riêng bạn giữa các nhóm hoặc đóng gói cùng connector, hãy đóng gói quy trình dưới dạng plugin. Kỹ năng vẫn là định dạng biên soạn; plugin là đơn vị phân phối có thể cài đặt.

Một kỹ năng thường gồm một tệp SKILL.md cùng các tập lệnh, tài liệu tham khảo và tài nguyên tùy chọn.

<FileTree class="mt-4" tree={[ { name: "my-skill/", open: true, children: [ { name: "SKILL.md", comment: "Bắt buộc: hướng dẫn + siêu dữ liệu" }, { name: "scripts/", comment: "Tùy chọn: mã có thể thực thi" }, { name: "references/", comment: "Tùy chọn: tài liệu" }, { name: "assets/", comment: "Tùy chọn: mẫu, tài nguyên" }, ], }, ]} />

Thư mục kỹ năng có thể bao gồm thư mục scripts/ chứa các tập lệnh CLI mà Codex gọi trong quy trình (ví dụ: tạo dữ liệu ban đầu hoặc chạy xác thực). Khi quy trình cần các hệ thống bên ngoài (trình theo dõi sự cố, công cụ thiết kế, máy chủ tài liệu), hãy kết hợp kỹ năng với MCP.

Ví dụ về SKILL.md:

---
name: commit
description: Stage and commit changes in semantic groups. Use when the user wants to commit, organize commits, or clean up a branch before pushing.
---

1. Do not run `git add .`. Stage files in logical groups by purpose.
2. Group into separate commits: feat → test → docs → refactor → chore.
3. Write concise commit messages that match the change scope.
4. Keep each commit focused and reviewable.

Sử dụng kỹ năng cho:

  • Quy trình có thể lặp lại (các bước phát hành, quy trình đánh giá, cập nhật tài liệu)
  • Chuyên môn riêng của nhóm
  • Quy trình cần ví dụ, tài liệu tham khảo hoặc tập lệnh hỗ trợ

Kỹ năng có thể ở cấp toàn cục (trong thư mục người dùng, dành cho bạn với tư cách nhà phát triển) hoặc riêng cho kho lưu trữ (được commit vào .agents/skills, dành cho nhóm của bạn). Đặt kỹ năng của kho lưu trữ trong .agents/skills khi quy trình áp dụng cho dự án đó; sử dụng thư mục người dùng cho các kỹ năng bạn muốn dùng trong mọi kho lưu trữ.

Lớp Toàn cục Kho lưu trữ
AGENTS ~/.codex/AGENTS.md AGENTS.md tại thư mục gốc hoặc các thư mục lồng nhau của kho lưu trữ
Kỹ năng ~/.agents/skills .agents/skills trong kho lưu trữ

Codex sử dụng cơ chế công bố dần dần cho kỹ năng:

  • Bắt đầu bằng siêu dữ liệu (name, description) để khám phá
  • Chỉ tải SKILL.md khi một kỹ năng được chọn
  • Chỉ đọc tài liệu tham khảo hoặc chạy tập lệnh khi cần

Kỹ năng có thể được gọi tường minh và Codex cũng có thể tự động chọn khi tác vụ phù hợp với mô tả kỹ năng. Mô tả kỹ năng rõ ràng giúp việc kích hoạt đáng tin cậy hơn.

Xây dựng kỹ năng

MCP

MCP (Model Context Protocol) là phương thức tiêu chuẩn để kết nối Codex với các công cụ bên ngoài và nhà cung cấp ngữ cảnh. MCP đặc biệt hữu ích cho các hệ thống được lưu trữ từ xa như Figma, Linear, GitHub hoặc các dịch vụ kiến thức nội bộ mà nhóm của bạn phụ thuộc vào.

Sử dụng MCP khi Codex cần những khả năng nằm ngoài kho lưu trữ cục bộ, chẳng hạn như trình theo dõi sự cố, công cụ thiết kế, trình duyệt hoặc hệ thống tài liệu dùng chung.

Có thể hình dung như sau:

  • Máy chủ: Codex
  • Máy khách: kết nối MCP bên trong Codex
  • Máy chủ cung cấp dịch vụ: công cụ bên ngoài hoặc nhà cung cấp ngữ cảnh

Máy chủ MCP có thể cung cấp:

  • Công cụ (thao tác)
  • Tài nguyên (dữ liệu có thể đọc)
  • Lời nhắc (mẫu lời nhắc có thể tái sử dụng)

Sự phân tách này giúp bạn xem xét ranh giới về độ tin cậy và khả năng. Một số máy chủ chủ yếu cung cấp ngữ cảnh, trong khi các máy chủ khác cung cấp những thao tác có tác động lớn.

Trong thực tế, MCP thường hữu ích nhất khi được kết hợp với kỹ năng:

  • Kỹ năng xác định quy trình và nêu tên các công cụ MCP cần sử dụng

Model Context Protocol

Tác nhân phụ

Bạn có thể tạo các agent với vai trò khác nhau và hướng dẫn chúng sử dụng công cụ theo những cách khác nhau. Ví dụ: một agent có thể chạy các lệnh và cấu hình kiểm thử cụ thể, trong khi agent khác có các máy chủ MCP để lấy nhật ký môi trường production phục vụ gỡ lỗi. Mỗi tác nhân phụ duy trì sự tập trung và sử dụng đúng công cụ cho công việc của mình.

Tác nhân phụ

Kết hợp kỹ năng + MCP

Kỹ năng kết hợp với MCP là nơi mọi thành phần hội tụ: kỹ năng xác định quy trình có thể lặp lại, còn MCP kết nối chúng với các công cụ và hệ thống bên ngoài. Nếu một kỹ năng phụ thuộc vào MCP, hãy khai báo phần phụ thuộc đó trong agents/openai.yaml để Codex có thể tự động cài đặt và kết nối (xem Xây dựng kỹ năng).

Bước tiếp theo

Xây dựng theo thứ tự sau:

  1. Hướng dẫn tùy chỉnh bằng AGENTS.md để Codex tuân theo các quy ước của kho lưu trữ. Thêm hook trước commit và linter để thực thi các quy tắc đó.
  2. Cài đặt plugin khi đã có quy trình có thể tái sử dụng. Nếu chưa có, hãy tạo kỹ năng và đóng gói thành plugin khi bạn muốn chia sẻ.
  3. Sử dụng MCP khi quy trình cần các hệ thống bên ngoài (Linear, GitHub, máy chủ tài liệu, công cụ thiết kế).
  4. Sử dụng Tác nhân phụ khi bạn sẵn sàng giao các tác vụ nhiều nhiễu hoặc chuyên biệt cho tác nhân phụ.