docs/skills.mdXem bản gốc Bản dịch đầy đủ theo đúng cấu trúc tài liệu; code, liên kết và định danh kỹ thuật được giữ nguyên.
Kỹ năng
Sử dụng Kỹ năng agent để cung cấp cho một agent hướng dẫn chuyên biệt mà không đưa mọi hướng dẫn vào ban đầu nhắc nhở.
điểm Skills tại một hoặc nhiều thư viện kỹ năng. model lần đầu tiên nhìn thấy từng
tên và mô tả của kỹ năng. Khi một kỹ năng hữu ích, mô hình có thể gọi
AI của Pydantic load_capability công cụ để nhận hướng dẫn của kỹ năng đó.
Mặc dù Pydantic AI Harness có trên các bản phát hành 0.x nhưng API có thể thay đổi giữa các bản phát hành nhỏ; khi đó, cảnh báo ngừng sử dụng và hướng dẫn di chuyển ghi chú phát hành sẽ cho bạn (hoặc người đại diện của bạn) biết chính xác cách nâng cấp. Xem chính sách phiên bản.
Cài đặt
Cài đặt skills bổ sung cho hỗ trợ tiền tuyến YAML:
uv add "pydantic-ai-harness[skills]"
Bắt đầu nhanh
Tạo thư viện kỹ năng:
.agents/skills/
code-review/
SKILL.md
Thêm mô tả và hướng dẫn của kỹ năng:
---
name: code-review
description: Review a change for correctness and repository conventions.
---
Inspect the change and report findings by severity.
Sau đó thêm thư viện vào agent của bạn:
from pydantic_ai import Agent
from pydantic_ai_harness import Skills
agent = Agent(
'anthropic:claude-sonnet-4-6',
capabilities=[Skills('.agents/skills')],
)
Skills không tìm kiếm .agents, .claude, hoặc thư mục chính của bạn
tự động. Vượt qua từng thư viện bạn muốn nó tải.
!!! ghi chú
Skills tải hướng dẫn từ SKILL.md. Nó không tải gói
tài nguyên hoặc chạy các tập lệnh.
Nó hoạt động như thế nào
Khi nào Skills(...) được xây dựng, nó:
- Quét các thư mục con trực tiếp của từng thư viện được cấu hình.
- Xác thực lựa chọn
SKILL.mdtập tin. - Tạo một khả năng AI Pydantic trì hoãn cho mỗi kỹ năng đã chọn.
Mô hình ban đầu chỉ nhìn thấy tên và mô tả kỹ năng. Đang tải một kỹ năng
thêm hướng dẫn vào đầu # Skill: <name>, theo sau là phần thân Markdown của nó, để
việc chạy qua giống nhau load_capability chảy như những thứ khác
khả năng theo yêu cầu.
Khám phá xảy ra một lần khi xây dựng. Các hướng dẫn danh mục và phân tích cú pháp là
một ảnh chụp nhanh. Xây dựng một cái mới Skills dụ để quét lại các thư viện.
Chọn kỹ năng nào để bộc lộ
Theo mặc định, tất cả các kỹ năng được phát hiện đều được bao gồm. sử dụng include hoặc exclude để
thay đổi danh mục cho một agent cụ thể:
from pydantic_ai_harness import Skills
review_skills = Skills(
'.agents/skills',
include=['code-review'],
)
release_skills = Skills(
'.agents/skills',
exclude=['code-review'],
)
| Cấu hình | Kỹ năng trong danh mục |
|---|---|
| Không có lựa chọn nào | Tất cả các kỹ năng được khám phá |
include=['a', 'b'] | Chỉ a và b |
include=[] | Không có kỹ năng |
exclude=['a', 'b'] | Tất cả ngoại trừ a và b |
exclude=[] | Tất cả các kỹ năng được khám phá |
include và exclude không thể sử dụng cùng nhau. Quá tải hàm khởi tạo
điều này trong mã đã nhập và xác thực runtime bao gồm các thông số kỹ thuật của agent và các thông số chưa được nhập
người gọi. Những cái tên không xác định cũng thất bại trong quá trình xây dựng.
Việc lựa chọn xảy ra trước khi frontmatter được phân tích cú pháp. Một kỹ năng không được chọn sẽ không thêm
hướng dẫn hoặc lỗi xác thực frontmatter cho điều đó Skills ví dụ.
Các tùy chọn này kiểm soát việc hiển thị danh mục. Chúng không phải là quyền của hệ thống tập tin hoặc ranh giới kiểm soát truy cập.
Skills đọc các đường dẫn được cấu hình thông qua hệ thống tập tin tiến trình. Đường dẫn tương đối
giải quyết từ thư mục làm việc của quy trình. Đường dẫn thư mục chọn nơi
bắt đầu khám phá; chúng không tạo ra ranh giới ngăn chặn và bình thường
áp dụng độ phân giải liên kết tượng trưng của hệ thống tập tin. Điều hành agent một cách thích hợp
môi trường bị hạn chế nếu cần phải ngăn chặn hệ thống tập tin.
Một lựa chọn SKILL.md phần thân trở thành hướng dẫn mẫu. Chỉ tải thư viện từ
các nguồn bạn tin cậy và xem xét các kỹ năng do repository cung cấp trước khi tiết lộ chúng.
dạng kỹ năng
Mỗi thư mục con trực tiếp chứa SKILL.md là một kỹ năng:
.agents/skills/
code-review/
SKILL.md
release-notes/
SKILL.md
Trình tải sử dụng những phần này của SKILL.md:
| Phần | Yêu cầu |
|---|---|
name | Không bắt buộc. Mặc định là tên thư mục mẹ. Nếu được cung cấp, nó phải khớp với thư mục sau khi chuẩn hóa Unicode. |
description | Bắt buộc và không trống. Giới hạn Kỹ năng của agent là 1.024 ký tự; tải mô tả dài hơn kèm theo cảnh báo. Điều này xuất hiện trong danh mục ban đầu. |
| Cơ thể đánh dấu | Không bắt buộc. Cái này được tải dưới một cái được tạo # Skill: <name> tiêu đề. |
Tên kỹ năng và include hoặc exclude các giá trị được chuẩn hóa bằng Unicode NFKC
trước khi khớp. Một tên chuẩn hóa có thể chứa tối đa 64 chữ thường Unicode
chữ cái hoặc số cách nhau bằng dấu gạch ngang. Nó không thể bắt đầu hoặc kết thúc bằng một
gạch nối.
Chỉ những đứa trẻ ngay lập tức được phát hiện. Ví dụ,
code-review/references/SKILL.md không tạo ra một kỹ năng khác. Tập tin thông thường
và thư mục con không có SKILL.md bị bỏ qua.
Bạn có thể vượt qua một số thư viện:
from pydantic_ai_harness import Skills
skills = Skills([
'.agents/skills',
'company/skills',
])
Tên kỹ năng được chọn phải là duy nhất trên các thư viện đó. Tài liệu tham khảo lặp đi lặp lại vào cùng một thư viện đã được giải quyết sẽ được quét một lần.
Các tập tin được gói không được tải
Các gói Kỹ năng agent có thể chứa các thư mục như references/, assets/,
và scripts/. Skills không liệt kê, đọc hoặc thực thi các tệp đó.
Đường dẫn tương đối và phần giữ chỗ như ${CLAUDE_SKILL_DIR} vẫn không thay đổi
trong các hướng dẫn được tải. Skills không cung cấp đường dẫn hiển thị cho mô hình
giải quyết chúng.
Skills cũng không suy ra quyền truy cập từ mô hình FileSystem hoặc Shell
khả năng. Việc thêm một trong hai khả năng không thay đổi tệp nào Skills
đọc.
Khả năng tương thích với các thư viện kỹ năng hiện có
di động name, descriptionvà hướng dẫn Markdown được hỗ trợ.
name có thể được bỏ qua và lấy từ thư mục.
Các trường hành vi sau đây được chấp nhận về tính tương thích, nhưng chúng hành vi không được thực hiện:
agent, allowed-tools, argument-hint, arguments, context, dependencies,
disable-model-invocation, disallowed-tools, effort, hooks, model, paths, shell,
tools, user-invocable, when_to_use
Nếu một kỹ năng đã chọn sử dụng bất kỳ trường nào trong số này, việc xây dựng sẽ phát ra một trường tổng hợp
UserWarning. Các lĩnh vực như license, compatibilityvà metadata là
được chấp nhận mà không thay đổi hành vi runtime. Các trường không xác định, không có hành vi khác
cũng được chấp nhận.
Sử dụng thông số agent
Skills hoạt động với thông số agent YAML và JSON của Pydantic AI:
model: anthropic:claude-sonnet-4-6
capabilities:
- Skills:
directories: .agents/skills
include:
- code-review
- release-notes
Đăng ký Skills khi tải thông số kỹ thuật:
from pydantic_ai import Agent
from pydantic_ai_harness import Skills
agent = Agent.from_file('agent.yaml', custom_capability_types=[Skills])
các skills cài đặt thêm PyYAML. Nó phân tích cú pháp SKILL.md vấn đề phía trước và YAML
thông số agent.
Xác định khả năng trong Python
Sử dụng lõi của Pydantic AI Capability khi hướng dẫn hoặc công cụ của bạn được xác định
bằng Python thay vì SKILL.md gói:
from pydantic_ai.capabilities import Capability
refunds = Capability(
id='refunds',
description='Use for refund policy questions.',
instructions='Check the refund policy before answering.',
defer_loading=True,
)
Skills tải các gói Kỹ năng agent di động. Nó không thay thế API cốt lõi
cho các khả năng được xác định bằng mã.
Cấu hình
Skills(
directories: str | Path | Sequence[str | Path],
*,
include: Collection[str] | None = None,
exclude: Collection[str] | None = None,
)
directorieschấp nhận một đường dẫn thư viện hoặc một chuỗi đường dẫn.includechỉ bộc lộ các kỹ năng được đặt tên.excludebỏ qua các kỹ năng được đặt tên từ danh mục.
Vượt qua ít nhất một thư mục thư viện, không phải đường dẫn của một kỹ năng riêng lẻ gói. Giao diện người dùng không đúng định dạng, tên không hợp lệ hoặc không khớp, đã chọn trùng lặp tên, lựa chọn không xác định, thư viện bị thiếu và đường dẫn thư viện không có thư mục thất bại trong quá trình thi công.
Mọi kỹ năng được chọn đều bị trì hoãn. Đây là một phần của Skills hành vi và là
không thể cấu hình được.
Đọc thêm
- Đặc tả kỹ năng agent
- Thêm hỗ trợ kỹ năng cho agent
- Khả năng theo yêu cầu của Pydantic AI
- Tổng quan về khả năng của Pydantic AI
Tham chiếu API
::: pydantic_ai_harness.skills.Skills