Skills
Tạo Skills
Skills hướng dẫn agent cách thức và thời điểm sử dụng các công cụ. Mỗi skill là một thư mục
chứa tệp SKILL.md với phần đầu YAML và các hướng dẫn bằng Markdown.
OpenClaw tải các skill từ nhiều thư mục gốc theo một thứ tự ưu tiên xác định.
Tạo skill đầu tiên của bạn
Tạo thư mục skill
Skills nằm trong thư mục skills/ của không gian làm việc:
mkdir -p ~/.openclaw/workspace/skills/hello-worldBạn có thể nhóm các skill vào thư mục con để dễ tổ chức — tên của skill vẫn
được xác định bởi phần đầu của SKILL.md, không phải đường dẫn thư mục:
mkdir -p ~/.openclaw/workspace/skills/personal/hello-world# tên skill vẫn là "hello-world", được gọi bằng /hello-worldViết SKILL.md
Phần đầu định nghĩa siêu dữ liệu; phần nội dung cung cấp hướng dẫn cho agent.
---name: hello-worlddescription: Một skill đơn giản in ra lời chào.--- # Xin chào thế giới Khi người dùng yêu cầu lời chào, hãy dùng công cụ `exec` để chạy: ```bashecho "Xin chào từ skill tùy chỉnh của bạn!" Quy tắc đặt tên:- Dùng chữ cái viết thường, chữ số và dấu gạch nối cho `name`.- Giữ tên thư mục và `name` trong phần đầu nhất quán.- `description` được hiển thị cho agent và trong kết quả khám phá lệnh gạch chéo — hãy viết trên một dòng và dưới 160 ký tự. OPENCLAW_DOCS_MARKER:stepClose: OPENCLAW_DOCS_MARKER:stepOpen:IHRpdGxlPSJYw6FjIG1pbmggc2tpbGwgxJHDoyDEkcaw4bujYyB04bqjaSI ```bashopenclaw skills listTheo mặc định, OpenClaw theo dõi các tệp SKILL.md trong những thư mục gốc của skill. Nếu
trình theo dõi bị tắt hoặc bạn đang tiếp tục một phiên hiện có, hãy bắt đầu một
phiên mới để agent nhận được danh sách đã làm mới:
# Từ cuộc trò chuyện — lưu trữ phiên hiện tại và bắt đầu phiên mới/new # Hoặc khởi động lại Gatewayopenclaw gateway restartKiểm thử
openclaw agent --message "hãy gửi cho tôi một lời chào"Hoặc mở một cuộc trò chuyện và hỏi trực tiếp agent. Dùng /skill hello-world để
gọi skill một cách tường minh theo tên.
Tham chiếu SKILL.md
Các trường bắt buộc
| Trường | Mô tả |
|---|---|
name |
Định danh duy nhất sử dụng chữ cái viết thường, chữ số và dấu gạch nối |
description |
Mô tả một dòng được hiển thị cho agent và trong kết quả khám phá |
Các khóa phần đầu tùy chọn
| Trường | Mặc định | Mô tả |
|---|---|---|
user-invocable |
true |
Cung cấp skill dưới dạng lệnh gạch chéo cho người dùng |
disable-model-invocation |
false |
Loại skill khỏi lời nhắc hệ thống của agent (vẫn chạy qua /skill) |
command-dispatch |
— | Đặt thành tool để định tuyến trực tiếp lệnh gạch chéo đến công cụ, bỏ qua mô hình |
command-tool |
— | Tên công cụ cần gọi khi command-dispatch: tool được đặt |
command-arg-mode |
raw |
Khi điều phối đến công cụ, chuyển tiếp chuỗi đối số thô đến công cụ |
homepage |
— | URL được hiển thị dưới dạng "Website" trong giao diện Skills trên macOS |
Đối với các trường kiểm soát điều kiện (requires.bins, requires.env, v.v.), xem
Skills — Kiểm soát điều kiện.
Sử dụng {baseDir}
Tham chiếu các tệp bên trong thư mục skill mà không mã hóa cứng đường dẫn — agent
phân giải {baseDir} theo chính thư mục của skill:
Chạy tập lệnh hỗ trợ tại `{baseDir}/scripts/run.sh`.Thêm kích hoạt có điều kiện
Đặt điều kiện cho skill để skill chỉ được tải khi các phần phụ thuộc khả dụng:
---name: gemini-searchdescription: Tìm kiếm bằng Gemini CLI.metadata: { "openclaw": { "requires": { "bins": ["gemini"] }, "primaryEnv": "GEMINI_API_KEY" } }---Các tùy chọn kiểm soát điều kiện
| Khóa | Mô tả |
|---|---|
requires.bins |
Tất cả tệp nhị phân phải tồn tại trên PATH |
requires.anyBins |
Ít nhất một tệp nhị phân phải tồn tại trên PATH |
requires.env |
Mỗi biến môi trường phải tồn tại trong tiến trình hoặc cấu hình |
requires.config |
Mỗi đường dẫn openclaw.json phải có giá trị đúng |
os |
Bộ lọc nền tảng: ["darwin"], ["linux"], ["win32"] |
always |
Đặt thành true để bỏ qua mọi điều kiện và luôn bao gồm skill |
Tài liệu tham chiếu đầy đủ: Skills — Kiểm soát điều kiện.
Môi trường và khóa API
Liên kết khóa API với một mục skill trong openclaw.json:
{ skills: { entries: { "gemini-search": { enabled: true, apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, }, }, },}Khóa chỉ được chèn vào tiến trình máy chủ trong lượt hoạt động đó của agent. Khóa không được chuyển vào sandbox — xem các biến môi trường trong sandbox.
Đề xuất qua Skill Workshop
Đối với các skill do agent soạn thảo hoặc khi bạn muốn người vận hành xem xét trước khi một skill được
đưa vào sử dụng, hãy dùng đề xuất của Skill Workshop thay vì viết
trực tiếp SKILL.md.
# Đề xuất một skill hoàn toàn mớiopenclaw skills workshop propose-create \ --name "hello-world" \ --description "Một skill đơn giản in ra lời chào." \ --proposal ./PROPOSAL.md # Đề xuất cập nhật cho một skill hiện cóopenclaw skills workshop propose-update hello-world \ --proposal ./PROPOSAL.md \ --description "Skill lời chào đã cập nhật"Dùng --proposal-dir khi đề xuất bao gồm các tệp hỗ trợ:
openclaw skills workshop propose-create \ --name "hello-world" \ --description "Một skill đơn giản in ra lời chào." \ --proposal-dir ./hello-world-proposal/Thư mục phải chứa PROPOSAL.md tại thư mục gốc. Các tệp hỗ trợ được đặt trong
assets/, examples/, references/, scripts/ hoặc templates/.
Sau khi xem xét:
openclaw skills workshop inspect <proposal-id>openclaw skills workshop apply <proposal-id>Xem Skill Workshop để biết toàn bộ vòng đời đề xuất.
Xuất bản lên ClawHub
Đảm bảo SKILL.md của bạn đã hoàn chỉnh
Đảm bảo name, description và mọi trường kiểm soát điều kiện metadata.openclaw
đều được đặt. Thêm URL homepage nếu bạn có trang dự án.
Cài đặt CLI ClawHub độc lập và đăng nhập
npm i -g clawhubclawhub loginXuất bản
clawhub skill publish ./path/to/hello-worldThêm --version <version> hoặc --owner <owner> để ghi đè phiên bản được suy ra
hoặc xuất bản dưới một chủ sở hữu cụ thể. Xem
ClawHub — Xuất bản và
CLI ClawHub để biết toàn bộ quy trình, phạm vi chủ sở hữu và các
lệnh bảo trì khác (clawhub sync, clawhub skill rename, ...).
Các phương pháp hay nhất
Nội dung liên quan
Thứ tự tải, kiểm soát điều kiện, danh sách cho phép và định dạng SKILL.md.
Hàng đợi đề xuất dành cho các skill do agent soạn thảo.
Lược đồ cấu hình skills.* đầy đủ.
Duyệt và xuất bản các skill trên sổ đăng ký công khai.
Các plugin có thể cung cấp skill cùng với những công cụ mà chúng mô tả.