Tạo custom skill cho OpenClaw là viết một thư mục có file SKILL.md mô tả khi nào agent nên dùng skill và các bước cần làm, rồi đặt thư mục đó vào skills/ của workspace. Bạn có thể nhờ chính agent viết hộ ngay trong khung chat, tự viết bằng tay trên VPS, hoặc để Skill Workshop tự lưu quy trình agent vừa làm.
Bài thuộc cụm OpenClaw Skills; khái niệm nền xem ở OpenClaw là gì. Ví dụ xuyên suốt là skill content-repurpose, biến một bài Markdown dài thành caption mạng xã hội, đoạn email và dàn ý, đã được Tino chạy thử trên VPS.
Khi nào nên tự tạo skill thay vì cài từ ClawHub?
Nên tự tạo skill khi quy trình của bạn quá riêng để có sẵn trên ClawHub, hoặc khi skill phải chạm vào dữ liệu nội bộ mà bạn không muốn giao cho mã của người lạ. Skill tự viết cũng dễ kiểm soát hơn vì bạn biết từng dòng hướng dẫn.
- Quy trình đặc thù: định dạng báo cáo, giọng văn, các bước duyệt nội bộ mà skill cộng đồng không có.
- Dữ liệu nhạy cảm: CRM, tài liệu nội bộ, cơ sở dữ liệu riêng; tự viết giúp bạn biết dữ liệu đi đâu.
- Công cụ nội bộ: hệ thống ticket, API tự xây, CLI riêng của doanh nghiệp.
- Quản lý phiên bản: đưa thư mục skill vào Git, review và triển khai như mã nguồn, không phụ thuộc lịch cập nhật của tác giả ngoài.
- Học cách OpenClaw hoạt động: viết một skill từ đầu giúp đọc và gỡ lỗi skill của người khác dễ hơn.
Một custom skill gồm những phần nào?
Một custom skill chỉ bắt buộc file SKILL.md với hai trường frontmatter name và description. Tên dùng chữ thường, số và dấu gạch ngang, nên trùng tên thư mục; mô tả viết một dòng, dưới 160 ký tự, vì agent dựa vào nó để chọn skill (OpenClaw docs: Creating skills).

- metadata.openclaw.requires: khai báo binary (
bins), biến môi trường (env) hay hệ điều hành (os) cần có. Thiếu điều kiện, OpenClaw không đưa skill vào danh sách sẵn sàng. - user-invocable (mặc định bật): cho phép gọi skill như lệnh
/content-repurposetrong chat. - {baseDir}: trỏ tới chính thư mục skill, dùng khi thân bài gọi script hay file mẫu đi kèm.
Nơi đặt quyết định ai thấy skill. Thư mục ~/.openclaw/workspace/skills/ chỉ dành cho agent dùng workspace đó; ~/.openclaw/skills/ dùng chung cho mọi agent trên cùng máy.
Cách tạo custom skill bằng chính OpenClaw, không cần code
OpenClaw có sẵn skill skill-creator trong bộ đi kèm, chuyên hướng dẫn agent tạo, sửa và rà soát skill (mã nguồn skill-creator). Vì vậy bạn chỉ cần mô tả yêu cầu trong khung chat, agent sẽ tự tạo thư mục và viết SKILL.md.
Ảnh chụp trên giao diện chat của OpenClaw bản tháng 4/2026; giao diện bản hiện tại đã đổi nhưng các bước vẫn giữ nguyên.
Bước 1: Kiểm tra skill-creator đã có chưa
Nhắn agent liệt kê skill hiện có, ví dụ “openclaw skills list”. Đây là câu yêu cầu gửi cho agent; nếu thao tác trên máy chủ, lệnh CLI tương đương là openclaw skills list. Trong danh sách trả về phải có skill-creator.

Nếu không thấy, chạy openclaw skills info skill-creator trên máy chủ để xem skill có bị tắt trong skills.entries hay bị allowlist của agent chặn không.
Bước 2: Mô tả skill cần tạo
Yêu cầu càng rõ, SKILL.md càng tốt. Nêu đủ năm ý: câu kích hoạt, dữ liệu đầu vào, các bước, nơi lưu kết quả và việc không được làm. Ví dụ Tino đã dùng:
“Tạo cho mình một custom skill tên content-repurpose. Skill được kích hoạt khi mình nói ‘tái sử dụng nội dung’ hoặc ‘repurpose file này’. Khi đó agent sẽ: đọc file Markdown mình chỉ định (ví dụ content/draft.md); tạo 3 caption cho Facebook, LinkedIn, X đúng giọng và độ dài từng nền tảng; viết một đoạn email newsletter khoảng 100 từ dẫn link bài gốc; tạo dàn ý 5 điểm chính; lưu toàn bộ vào content/repurposed/[tên-file-gốc]-output.md; báo đường dẫn file sau khi xong.”

Bước 3: Xác nhận skill đã được tạo
Agent báo đã tạo skills/content-repurpose/SKILL.md trong workspace. Ở lần chạy thử, agent còn đóng gói một file .skill và commit vào Git của workspace; đây là việc skill-creator tự làm, không bắt buộc.

Gõ /new để mở phiên mới cho chắc, rồi nhờ agent liệt kê lại skill. content-repurpose phải xuất hiện trong danh sách.

Nên đọc lại SKILL.md agent vừa viết. Nhắn “cho mình xem nội dung SKILL.md của content-repurpose” và kiểm tra phần mô tả, các bước, nơi lưu file.

Bước 4: Tạo file mẫu và chạy thử
Nhờ agent tạo luôn file thử: “Tạo file content/draft.md với nội dung mẫu là một bài blog khoảng 1.500 từ về xu hướng content marketing 2026”. Sau đó gửi câu kích hoạt: “Tái sử dụng nội dung file content/draft.md”.


Để xem kết quả ngay trong chat, nhắn “Đọc file content/repurposed/draft-output.md”. Với bài ở dạng văn bản thô, gửi “Lưu nội dung sau vào content/ten-bai.md rồi tái sử dụng nội dung file đó” kèm phần văn bản; agent lưu và chạy skill trong cùng một lượt.

Cách tự viết custom skill bằng tay trên VPS
Tự viết hợp khi bạn muốn kiểm soát từng dòng hoặc lưu skill vào Git. Các lệnh dưới chạy qua SSH trên máy có OpenClaw, workspace mặc định là ~/.openclaw/workspace.
mkdir -p ~/.openclaw/workspace/skills/content-repurpose
nano ~/.openclaw/workspace/skills/content-repurpose/SKILL.md
Nội dung tối thiểu của SKILL.md:
---
name: content-repurpose
description: Biến một bài Markdown thành 3 caption mạng xã hội, 1 email ngắn và dàn ý 5 ý.
---
# Content Repurpose
Dùng khi người dùng nói "tái sử dụng nội dung" hoặc "repurpose file này".
1. Đọc file Markdown người dùng chỉ định.
2. Viết caption cho Facebook, LinkedIn, X theo độ dài từng nền tảng.
3. Viết email khoảng 100 từ dẫn link bài gốc.
4. Lập dàn ý 5 ý chính.
5. Lưu vào content/repurposed/<tên-file>-output.md và báo đường dẫn.
Không xoá hay sửa file gốc. Không gửi nội dung ra dịch vụ bên ngoài.
Kiểm tra skill đã được nạp và sẵn sàng, rồi gọi thử bằng tên:
openclaw skills list
openclaw skills check
openclaw agent --message "tái sử dụng nội dung file content/draft.md"
Trong chat có thể gọi trực tiếp bằng /content-repurpose hoặc gõ $ trong ô soạn tin của Control UI để chọn skill.
Để agent tự học skill với Skill Workshop
Skill Workshop là nơi agent tự lưu quy trình thành “learned skill” sau một việc nhiều bước mà bạn có thể lặp lại. Gõ /learn kèm yêu cầu để agent lưu ngay từ cuộc trò chuyện hiện tại (OpenClaw docs: Skill Workshop).
- Mỗi thay đổi lưu bản trước đó, nói “undo” trong cuộc trò chuyện để quay lại.
- Learned skill không ai dùng trong 30 ngày sẽ được lưu trữ.
- Learned skill chỉ thuộc một agent và luôn hiện với agent đó, kể cả khi agent có allowlist skill; muốn ẩn thì archive.
- Quản lý bằng
openclaw skills workshop list,changes,archive,restore.
Workshop hợp với quy trình bạn chưa muốn viết thành văn bản chuẩn. Quy trình dùng lâu dài cho cả nhóm nên chuyển thành skill trong workspace để review được.
Vì sao custom skill không chạy?
Phần lớn lỗi nằm ở ba chỗ: file đặt sai thư mục, frontmatter không hợp lệ, hoặc mô tả quá chung nên agent không chọn skill. Lệnh openclaw skills check chỉ ra skill có được tìm thấy, có sẵn sàng và agent có thấy hay không.
Triệu chứng Nguyên nhân hay gặp Cách xử lý Không có trong skills listSKILL.md không nằm trong thư mục skills của workspace; frontmatter thiếu description Đặt lại đường dẫn, sửa frontmatter, xem log nạp skill Có trong list nhưng báo thiếu điều kiện Thiếu binary hay biến môi trường khai báo trong requires Cài binary, đặt biến trong skills.entries hoặc môi trường Agent không tự dùng skill Mô tả mơ hồ, trùng ý với skill khác Viết lại description nêu rõ câu kích hoạt, gọi thẳng /ten-skill Phiên cũ vẫn chạy bản cũ Phiên giữ snapshot skill; watcher bị tắt Gõ /new hoặc bật lại skills.load.watch Chạy được trên host, lỗi trong sandbox Binary chỉ có trên host, biến môi trường không vào sandbox Cài binary trong image sandbox, truyền secret theo cách sandbox hỗ trợ
Lưu ý bảo mật khi viết và chia sẻ custom skill
Không đặt API key, mật khẩu hay token trực tiếp trong SKILL.md. Tài liệu OpenClaw nhắc skill là đầu vào của phiên làm việc, không phải nơi giữ bí mật (OpenClaw docs: Skills). Hãy khai báo tên biến trong requires.env và đưa giá trị vào skills.entries.<tên>.apiKey hoặc biến môi trường.
- Giới hạn rõ trong thân bài những việc skill không được làm: xoá file, gửi dữ liệu ra ngoài, chạy lệnh với quyền root.
- Skill có chạy lệnh hoặc xử lý dữ liệu từ bên ngoài nên chạy trong sandbox; xem cách làm ở bài cách ly sandbox cho AI Agent trên VPS.
- Khi chia sẻ lên ClawHub, khai báo đủ biến môi trường và công cụ cần dùng để bước quét của ClawHub không gắn cờ “metadata không khớp”. Lệnh xuất bản nằm trong hướng dẫn ClawHub CLI.
- Sao lưu thư mục
~/.openclawđịnh kỳ; cách tự động xem ở tự động backup OpenClaw lên Google Drive.
Nên bắt đầu custom skill như thế nào?
Chọn một việc bạn làm lặp lại mỗi tuần, nhờ agent viết skill bằng skill-creator, đọc lại SKILL.md rồi chạy thử với file mẫu. Khi skill chạy ổn vài lần, chuyển nó vào Git hoặc thư mục dùng chung để các agent khác cùng dùng.
Muốn chạy OpenClaw 24/7 mà không tự cài? VPS OpenClaw của Tino cài sẵn OpenClaw trên VPS NVMe đặt tại Việt Nam; bạn vẫn có quyền root để cấu hình. Xem cấu hình và giá trên trang sản phẩm.
Bài viết liên quan trong cụm OpenClaw:
- OpenClaw Skills là gì
- Phân biệt Skills và Plugin trong OpenClaw
- Cài đặt OpenClaw Skills từ ClawHub
- ClawHub là gì
- Cài đặt và sử dụng ClawHub CLI
- Tự động hoá công việc với OpenClaw trên Telegram
Câu hỏi thường gặp khi tạo custom skill cho OpenClaw
Không biết lập trình có tự tạo custom skill được không?
Được. SKILL.md chủ yếu là hướng dẫn bằng ngôn ngữ tự nhiên, frontmatter chỉ có vài trường. Bạn có thể nhờ agent viết hộ bằng skill-creator rồi chỉ việc đọc lại và sửa câu chữ.
Custom skill có dùng được với mọi model không?
Skill là văn bản nên không gắn với một nhà cung cấp model. Kết quả vẫn phụ thuộc khả năng gọi công cụ của model; model nhỏ chạy local dễ làm sai bước hơn, nên thử lại skill mỗi khi đổi model.
Cập nhật OpenClaw có làm mất custom skill không?
Skill trong ~/.openclaw/workspace/skills hoặc ~/.openclaw/skills nằm ngoài gói cài OpenClaw nên lệnh openclaw update không ghi đè. Nếu skill trùng tên với skill bundled, bản trong workspace vẫn được ưu tiên. Vẫn nên sao lưu thư mục ~/.openclaw trước khi nâng cấp.
Một custom skill dùng cho nhiều agent được không?
Được. Đặt skill vào ~/.openclaw/skills để mọi agent trên máy cùng thấy, hoặc cài bằng –global. Muốn giới hạn, đặt skill trong workspace của agent cụ thể hoặc dùng allowlist agents.entries.
