dev-proPRO
OverviewLộ Trình HọcPhỏng VấnAI System
dev-pro— Thực chiến Frontend React, Next.js & Luyện phỏng vấn
contact@dev-pro.online•Code thật. Phỏng vấn thật.
AI Engineeringunderstand · build · evaluate

Lộ trình (3 tracks)

A01AI System Foundations
AI System Foundations0/2 hoàn thành
A02Agent Runtime & Orchestration
Agent Runtime & Orchestration0/3 hoàn thành
A03Agent Skills Engineering
Agent Skills Engineering0/7 hoàn thành
  • Bài học (7)
  • Agent Skills Deep Dive70 phút · Nâng cao
  • Skill không phải Prompt, Tool hay Agent34 phút · Nâng cao
  • Anatomy & Progressive Disclosure38 phút · Nâng cao
  • Authoring: Trigger, Contract & Composition46 phút · Nâng cao
  • Vì sao agents/ chỉ có openai.yaml?36 phút · Nâng cao
  • Scripts, References, Assets & Hooks42 phút · Nâng cao
  • Testing, Evals & Skill Supply Chain52 phút · Nâng cao
Tiến độ0/12 bài
Agent Skills Engineering
Nâng cao
36 phút
#openai.yaml
#Portability
#Host Adapter

Vì sao agents/ chỉ có openai.yaml?

Tách portable skill khỏi host adapter, hiểu chính xác OpenAI đọc file nào, host khác xử lý ra sao và phần nào tuyệt đối không nên đặt trong YAML này.

Core Mental Model

SKILL.md là protocol chung; agents/openai.yaml là adapter tùy chọn cho trải nghiệm OpenAI, giống một lớp integration chứ không phải implementation của skill.

Những điều cần nắm chắc

Chỉ có openai.yaml vì bundle hiện chỉ chọn hỗ trợ extension của OpenAI.

Không được suy ra mọi vendor đều dùng quy ước agents/<vendor>.yaml.

Host không hiểu extension vẫn có thể chạy portable core từ SKILL.md.

Workflow quan trọng không được giấu trong metadata dành riêng cho một host.

Nội dung bài viết

Câu trả lời ngắn: đây là một adapter, không phải danh sách agent

Tên thư mục agents dễ gây hiểu nhầm rằng mỗi file là một sub-agent. Trong cấu trúc skill của OpenAI, agents/openai.yaml là optional host metadata: OpenAI dùng nó để cấu hình appearance, invocation policy và tool dependencies. Nó không tạo ra một agent tên OpenAI và cũng không chứa reasoning loop.

Package chỉ có openai.yaml vì tác giả mới khai báo integration mà OpenAI đã document. Không có yêu cầu phải tạo đủ claude.yaml, antigravity.yaml hay autogen.yaml. Quan trọng hơn, không nên tự chế các filename đó chỉ để cây thư mục trông đối xứng; mỗi host có format và vị trí config riêng.

Portable core và host-specific extension sống song song

Portable core gồm SKILL.md với name, description và instruction, kèm scripts, references hoặc assets nếu cần. Đây là phần chứa workflow mà một host hỗ trợ Agent Skills có thể khám phá và thực hiện.

Host adapter chỉ cải thiện trải nghiệm trên một runtime cụ thể. Với OpenAI, interface định nghĩa display_name, short_description, icon, brand color và default prompt; policy điều khiển implicit invocation; dependencies khai báo tool mà host nên chuẩn bị. Nếu xóa openai.yaml, skill có thể mất icon hoặc integration tiện lợi nhưng logic trong SKILL.md không nên biến mất.

  • SKILL.md trả lời: phải làm gì, theo thứ tự nào, khi nào hoàn thành?
  • openai.yaml trả lời: OpenAI nên hiển thị, kích hoạt và chuẩn bị dependency thế nào?
  • Harness policy trả lời: tool call này có thực sự được phép chạy hay không?

Host khác gặp openai.yaml thì điều gì xảy ra?

Một host không triển khai extension của OpenAI không có lý do để diễn giải file này. Nó có thể bỏ qua file và chỉ dùng SKILL.md. Khả năng portable vì vậy phụ thuộc vào việc workflow cốt lõi không tham chiếu ngược vào behavior chỉ OpenAI mới hiểu.

Nếu muốn tối ưu cho host thứ hai, trước hết phải đọc tài liệu chính thức của host đó: nó có dùng cùng Agent Skills spec không, có manifest riêng không, file nằm ở đâu và field nào được hỗ trợ. Portability là common denominator có chủ ý, không phải đổi chữ openai thành tên vendor.

Ba field group của OpenAI ảnh hưởng ở đâu?

interface là presentation layer. Nó giúp người dùng nhận ra skill và khởi động bằng prompt phù hợp, nhưng một icon đẹp không cải thiện execution correctness. policy.allow_implicit_invocation là routing control: false ngăn Codex tự chọn skill theo prompt, trong khi explicit invocation vẫn hoạt động.

dependencies.tools là dependency declaration, không phải quyền truy cập. Nó mô tả tool integration cần cho trải nghiệm trơn tru; quyền thực tế vẫn do runtime, workspace, authentication và approval quyết định. Khai báo MCP URL không tự đăng nhập và không tự vượt sandbox.

Quy tắc thiết kế để không bị vendor lock-in ngoài ý muốn

Hãy thử nghiệm bằng cách tạm bỏ agents/openai.yaml. Nếu skill không còn biết workflow, input, output hoặc done-condition, boundary đã sai. Nếu chỉ mất display name, icon, implicit routing preference hoặc dependency hint, boundary đang hợp lý.

  • Không lặp toàn bộ instruction từ SKILL.md vào default_prompt.
  • Không lưu secret, token hoặc credential trong YAML.
  • Không xem dependency declaration là authorization.
  • Không tạo filename cho vendor khác khi chưa có spec chính thức.

Code & cấu trúc tham khảo

OpenAI adapter tối thiểu và đúng boundary

yaml
1interface:
2 display_name: "Frontend Production Review"
3 short_description: "Audit an existing frontend change"
4 icon_small: "./assets/review.svg"
5 default_prompt: "Review this existing UI diff and cite evidence."
6
7policy:
8 allow_implicit_invocation: false
9
10dependencies:
11 tools:
12 - type: "mcp"
13 value: "browser"
14 description: "Inspect rendered UI"

Takeaway: File mô tả integration của OpenAI; step-by-step review và definition of done vẫn thuộc SKILL.md.

Compatibility matrix để review boundary

text
1Concern SKILL.md agents/openai.yaml
2Workflow steps yes no
3Done condition yes no
4Reference/script pointers yes no
5Display name and icon no yes
6Implicit invocation policy no yes
7OpenAI tool dependencies no yes
8Actual tool authorization no no (belongs to harness/runtime)

Takeaway: Hai file giải quyết hai tầng khác nhau; authorization không thuộc tầng nào trong số đó.

Tài liệu đọc thêm

Repo, đặc tả và bài viết gốc để đi sâu sau bài học.

4 nguồn chọn lọc
Docs
learn.chatgpt.com

OpenAI — Build skills

Nguồn chính thức cho cấu trúc skill, optional openai.yaml, invocation policy và dependencies.

Spec
agentskills.io

Agent Skills specification

Portable core và progressive disclosure độc lập với host adapter.

Repository
github.com

OpenAI Skills repository

Ví dụ thực tế về agents/openai.yaml, assets và skill distribution.

Docs
learn.chatgpt.com

OpenAI — Plugins in Codex

Phân phối skills cùng app, MCP dependency và presentation metadata.