Tóm tắt
Sức mạnh của OpenClaw nằm ở khả năng mở rộng thông qua các kỹ năng (skills). Với hơn 700 kỹ năng do cộng đồng xây dựng có sẵn qua ClawHub và khả năng tạo kỹ năng tùy chỉnh bằng các tệp SKILL.md hoặc TypeScript, bạn có thể biến trợ lý OpenClaw của mình thành một công cụ chuyên biệt cho hầu hết mọi tác vụ. Hướng dẫn này bao gồm mọi thứ từ việc cài đặt các kỹ năng hiện có đến việc xây dựng và xuất bản kỹ năng của riêng bạn.
Giới thiệu
OpenClaw đã cung cấp các khả năng mạnh mẽ ngay từ đầu, nhưng tiềm năng thực sự của nó được khai phá thông qua các kỹ năng. Cho dù bạn cần hỗ trợ mã hóa chuyên biệt, tự động hóa DevOps, công cụ nghiên cứu hay chức năng đặc thù của ngành, rất có thể đã có một kỹ năng dành cho điều đó—và nếu không, bạn có thể tự xây dựng.
Với hơn 700 kỹ năng do cộng đồng xây dựng có sẵn qua ClawHub và khả năng tạo kỹ năng tùy chỉnh, OpenClaw trở thành bất kỳ trợ lý AI nào mà bạn cần.
Trong hướng dẫn toàn diện này, chúng ta sẽ đề cập:
- Cách tìm và cài đặt kỹ năng từ ClawHub
- Quản lý và sắp xếp các kỹ năng của bạn
- Xây dựng các kỹ năng tùy chỉnh từ đầu
- Xuất bản kỹ năng của bạn cho cộng đồng
- Các phương pháp bảo mật tốt nhất
Tìm hiểu về Kỹ năng của OpenClaw
Kỹ năng là gì?
Kỹ năng là các phần mở rộng dạng mô-đun giúp bổ sung các khả năng cụ thể cho OpenClaw. Hãy coi chúng như các plugin cung cấp cho trợ lý AI của bạn những khả năng mới—từ việc gửi các loại email cụ thể đến tương tác với các API nhất định.
Các loại Kỹ năng
1. Kỹ năng Ngôn ngữ Tự nhiên (SKILL.md)
Dạng đơn giản nhất—được viết bằng Markdown với phần đầu YAML. Chúng định nghĩa các sổ tay vận hành mà OpenClaw tuân theo khi các điều kiện nhất định được đáp ứng.
2. Kỹ năng TypeScript
Các kỹ năng đầy đủ tính năng được xây dựng bằng TypeScript có thể truy cập API, thực thi logic phức tạp và tích hợp sâu với các dịch vụ bên ngoài.
3. Kỹ năng dựa trên CLI
Các kỹ năng bao bọc các công cụ dòng lệnh, cho phép OpenClaw sử dụng bất kỳ công cụ nào có sẵn trên hệ thống của bạn.
Cách thức hoạt động của Kỹ năng
Các kỹ năng được tải động khi cần (tải đúng lúc), giúp quản lý việc sử dụng bộ nhớ. Khi yêu cầu của người dùng khớp với các trình kích hoạt của kỹ năng, OpenClaw sẽ thực hiện các hành động được định nghĩa của kỹ năng đó.
Danh mục Kỹ năng
ClawHub lưu trữ các kỹ năng thuộc nhiều danh mục:
- Tác nhân Mã hóa & IDE (hơn 133 kỹ năng)
- DevOps & Điện toán đám mây (hơn 212 kỹ năng)
- Tìm kiếm & Nghiên cứu (hơn 253 kỹ năng)
- AI & LLMs (hơn 287 kỹ năng)
- Năng suất (hơn 150 kỹ năng)
- Dữ liệu & Phân tích (hơn 100 kỹ năng)
- Và nhiều hơn nữa...

Cài đặt Kỹ năng từ ClawHub
Tìm kiếm Kỹ năng
Duyệt qua thị trường ClawHub tại clawhub.ai hoặc tìm kiếm trực tiếp qua OpenClaw:
# Search for skills
openclaw skills search "github"
# List popular skills
openclaw skills popular
# Browse a category
openclaw skills browse devops
Cài đặt một Kỹ năng
Khi bạn đã tìm thấy một kỹ năng mình muốn, việc cài đặt rất đơn giản:
# Install a specific skill
openclaw skills install github-actions
# Install with a specific version
openclaw skills install github-actions@1.2.0
# Install from a specific publisher
openclaw skills install @username/skill-name
Cài đặt Tất cả Kỹ năng được Đề xuất
# Install popular starter skills
openclaw skills install-recommended
Xác minh Cài đặt
# List all installed skills
openclaw skills list
# Check skill details
openclaw skills info github-actions
Quản lý các Kỹ năng đã cài đặt của bạn
Bật và Tắt Kỹ năng
# Tắt một kỹ năng (giữ nguyên cài đặt nhưng không sử dụng)
openclaw skills disable github-actions
# Bật một kỹ năng đã tắt
openclaw skills enable github-actions
Cập nhật Kỹ năng
# Cập nhật một kỹ năng cụ thể
openclaw skills update github-actions
# Cập nhật tất cả các kỹ năng
openclaw skills update-all
Gỡ bỏ Kỹ năng
# Gỡ cài đặt một kỹ năng
openclaw skills uninstall github-actions
Cấu hình Kỹ năng
Nhiều kỹ năng hỗ trợ cấu hình tùy chỉnh:
# Cấu hình một kỹ năng
openclaw skills config github-actions --set token=your-github-token
Hoặc chỉnh sửa trực tiếp tệp cấu hình của kỹ năng:
# ~/.openclaw/skills/github-actions/config.yaml
token: your-github-token
default-branch: main
auto-merge: false
Xây dựng Kỹ năng Tùy chỉnh
Khi nào nên Xây dựng Kỹ năng Tùy chỉnh
Hãy xây dựng một kỹ năng tùy chỉnh khi bạn cần:
- Các tích hợp API cụ thể không được các kỹ năng hiện có hỗ trợ
- Các quy trình làm việc tự động hóa tùy chỉnh
- Chức năng đặc thù của ngành
- Các công cụ nội bộ độc quyền
Cấu trúc Kỹ năng
Một kỹ năng cơ bản bao gồm:
my-custom-skill/
├── SKILL.md # Định nghĩa kỹ năng (cho kỹ năng ngôn ngữ tự nhiên)
├── config.yaml # Schema cấu hình
└── icon.svg # Biểu tượng kỹ năng (tùy chọn)
Đối với kỹ năng TypeScript:
my-typescript-skill/
├── src/
│ └── index.ts # Mã kỹ năng chính
├── package.json
├── tsconfig.json
├── config.schema.json
└── skill.yaml # Tệp kê khai kỹ năng
Tạo Kỹ năng SKILL.md
Cấu trúc SKILL.md cơ bản
Đây là một tệp SKILL.md tối thiểu:
---
name: weather-alert
description: Get weather alerts for your location
triggers:
- "weather"
- "weather alert"
- "forecast"
requires:
- location
actions:
- name: get_weather
api: https://api.weather.com/v3
params:
location: "{location}"
---
# Weather Alert Skill
This skill provides weather alerts and forecasts for your location.
## Configuration
Set your location in the skill config:
- city: Your city name
- units: metric or imperial
Ví dụ đầy đủ: Kỹ năng Tóm tắt Email
---
name: daily-email-summary
description: Receive a daily summary of your important emails
triggers:
- "email summary"
- "daily emails"
- "summarize my emails"
requires:
- email_access
- api_key
actions:
- name: fetch_emails
method: gmail.users.messages.list
params:
q: "is:unread"
maxResults: 10
- name: summarize
model: gpt-4
prompt: "Summarize these emails in bullet points"
---
# Daily Email Summary Skill
Stay on top of your inbox with automated daily summaries.
## Features
- Fetches unread emails from Gmail
- Uses AI to summarize key points
- Sends summary to your preferred channel
## Setup
1. Configure Gmail API access in your OpenClaw settings
2. Set your preferred summary time
3. Choose your delivery channel (Telegram, Discord, etc.)
## Example Usage
Bạn: Gửi cho tôi bản tóm tắt email của tôi
OpenClaw: Đây là bản tóm tắt 8 email chưa đọc của bạn:
- Yêu cầu họp từ John về kế hoạch Q3
- Xác nhận đơn hàng từ Amazon
- Bản tin từ TechCrunch...
### Advanced Triggers
Use more sophisticated triggers:
```markdown
---
name: smart-reminder
triggers:
# Exact phrases
- "remind me to {action}"
# Patterns
- "remind me in {duration}"
# Contextual
context:
- channel: work
patterns: ["meeting", "deadline", "project"]
---
# Smart Reminder Skill
Handles all reminder requests with intelligent parsing.
Xây dựng Kỹ năng TypeScript
Đối với các tích hợp phức tạp hơn, kỹ năng TypeScript cung cấp toàn quyền kiểm soát.
Thiết lập Môi trường Phát triển của bạn
# Tạo một dự án kỹ năng mới
openclaw skills create my-awesome-skill
# Điều hướng đến thư mục kỹ năng
cd my-awesome-skill
# Cài đặt các phụ thuộc
npm install
# Khởi động máy chủ phát triển
npm run dev
Cấu trúc Kỹ năng TypeScript
// src/index.ts
import { Skill, SkillContext, SkillResult } from '@openclaw/skill-sdk';
export default class MyAwesomeSkill implements Skill {
name = 'my-awesome-skill';
description = 'A skill that does something awesome';
// Được gọi khi kỹ năng được tải
async onLoad(context: SkillContext): Promise<void> {
console.log('Skill loaded!');
}
// Được gọi khi kỹ năng khớp với trình kích hoạt
async execute(context: SkillContext): Promise<SkillResult> {
const { userMessage, config } = context;
// Logic kỹ năng của bạn ở đây
const result = await this.doSomethingAwesome(userMessage.content);
return {
message: result,
actions: []
};
}
private async doSomethingAwesome(input: string): Promise<string> {
// Triển khai logic kỹ năng của bạn
return `You said: ${input}`;
}
}
Tệp kê khai Kỹ năng (skill.yaml)
name: my-awesome-skill
version: 1.0.0
description: A skill that does something awesome
author:
name: Your Name
email: you@example.com
triggers:
- pattern: "do something awesome"
type: exact
config:
apiKey:
type: string
required: true
description: API key for the service
permissions:
- network
- filesystem
runtime: nodejs18
Schema Cấu hình (config.schema.json)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"apiKey": {
"type": "string",
"description": "API key for the service"
},
"enabled": {
"type": "boolean",
"default": true
}
},
"required": ["apiKey"]
}
Xây dựng và Kiểm thử
# Xây dựng kỹ năng
npm run build
# Chạy kiểm thử
npm test
# Đóng gói để phân phối
npm run package
Ví dụ: Kỹ năng Tích hợp GitHub
Đây là một ví dụ đầy đủ hơn cho thấy tích hợp API:
import { Skill, SkillContext, SkillResult } from '@openclaw/skill-sdk';
import axios from 'axios';
export default class GitHubSkill implements Skill {
name = 'github';
description = 'Interact with GitHub repositories';
async execute(context: SkillContext): Promise<SkillResult> {
const { userMessage, config } = context;
const message = userMessage.content.toLowerCase();
if (message.includes('list repos')) {
return this.listRepositories(config);
} else if (message.includes('create issue')) {
return this.createIssue(context);
}
return {
message: 'I can help with listing repos, creating issues, and more.',
actions: []
};
}
private async listRepositories(config: any): Promise<SkillResult> {
const response = await axios.get('https://api.github.com/user/repos', {
headers: {
Authorization: `token ${config.githubToken}`
}
});
const repos = response.data.slice(0, 5).map((r: any) => r.name).join('\n');
return {
message: `Your recent repositories:\n${repos}`,
actions: []
};
}
private async createIssue(context: SkillContext): Promise<SkillResult> {
// Extract issue details from user message
return {
message: 'I need more details to create an issue. Please specify the repository, title, and description.',
actions: [
{
type: 'request_input',
fields: ['repo', 'title', 'description']
}
]
};
}
}
Xuất bản Kỹ năng lên ClawHub
Chuẩn bị Kỹ năng của bạn để Xuất bản
- Kiểm thử kỹ lưỡng: Đảm bảo kỹ năng của bạn hoạt động trong nhiều kịch bản khác nhau
- Thêm tài liệu: Tệp SKILL.md rõ ràng với các ví dụ
- Đặt quyền phù hợp: Chỉ yêu cầu quyền truy cập cần thiết
- Thêm biểu tượng: Tạo một biểu tượng SVG đơn giản
- Quản lý phiên bản: Sử dụng quản lý phiên bản ngữ nghĩa (1.0.0, 1.1.0, v.v.)
Quy trình Xuất bản
# Đăng nhập vào ClawHub
openclaw skills login
# Kiểm tra kỹ năng của bạn đã sẵn sàng
openclaw skills validate
# Xuất bản kỹ năng của bạn
openclaw skills publish
Yêu cầu Xuất bản
- Tệp kê khai kỹ năng hợp lệ (skill.yaml)
- Bắt buộc: tên, phiên bản, mô tả, tác giả
- Ít nhất một trình kích hoạt được định nghĩa
- Quét virusTotal (thực hiện tự động)
- Xác minh danh tính
Quản lý Phiên bản
# Tăng phiên bản
openclaw skills version patch # 1.0.0 -> 1.0.1
openclaw skills version minor # 1.0.0 -> 1.1.0
openclaw skills version major # 1.0.0 -> 2.0.0
# Xuất bản phiên bản mới
openclaw skills publish
Các Thực hành Bảo mật Tốt nhất
Cài đặt Kỹ năng của Bên thứ ba
Lưu ý Bảo mật Quan trọng: Sự cố ClawHavoc vào đầu năm 2026 đã tiết lộ các kỹ năng độc hại trên ClawHub. Luôn tuân thủ các biện pháp phòng ngừa sau:
- Xác minh nhà xuất bản: Chỉ cài đặt kỹ năng từ các nhà xuất bản đáng tin cậy, đã được xác minh
- Kiểm tra quyền: Kiểm tra các quyền mà kỹ năng yêu cầu
- Kiểm tra mã: Đối với kỹ năng TypeScript, hãy xem xét mã nguồn
- Bắt đầu biệt lập: Thử nghiệm kỹ năng trong môi trường riêng biệt trước
# Kiểm tra quyền của kỹ năng trước khi cài đặt
openclaw skills inspect github-actions
Xây dựng Kỹ năng An toàn
Khi xây dựng kỹ năng của riêng bạn:
# Luôn chỉ định quyền tối thiểu cần thiết
permissions:
- network # Chỉ khi cần
- filesystem # Chỉ khi cần
# Không bao giờ mã hóa cứng các khóa bí mật
# KHÔNG NÊN:
const apiKey = "sk-1234567890";
# NÊN:
const apiKey = process.env.API_KEY;
Cấu hình Bảo mật được Đề xuất
# ~/.openclaw/security.yaml
skill_security:
require_virustotal: true
require_verified_publisher: false # Đặt là true cho môi trường sản xuất
audit_permissions: true
sandbox_mode: true
Phát triển Kỹ năng Nâng cao
Phụ thuộc Kỹ năng
Các kỹ năng có thể phụ thuộc vào các kỹ năng khác:
# skill.yaml
dependencies:
- name: github
version: ">=1.0.0"
- name: slack
version: ">=2.0.0"
Kỹ năng hướng sự kiện
Phản ứng với các sự kiện của OpenClaw:
export default class EventSkill implements Skill {
async onMessage(context: SkillContext): Promise<SkillResult> {
// Được gọi trên mỗi tin nhắn
}
async onTimer(context: SkillContext): Promise<SkillResult> {
// Được gọi dựa trên lịch trình
}
async onStartup(context: SkillContext): Promise<void> {
// Được gọi khi OpenClaw khởi động
}
async onShutdown(context: SkillContext): Promise<void> {
// Được gọi khi OpenClaw dừng
}
}
Sử dụng MCP với Kỹ năng
Kết hợp các kỹ năng với máy chủ MCP:
# skill.yaml
mcpServers:
- name: filesystem
command: npx @modelcontextprotocol/server-filesystem ./data
- name: github
command: npx @modelcontextprotocol/server-github
Khắc phục sự cố
Kỹ năng không tải được
# Kiểm tra trạng thái kỹ năng
openclaw skills status my-skill
# Xem nhật ký kỹ năng
openclaw logs --skill my-skill
Các nguyên nhân phổ biến:
- Thiếu các phụ thuộc
- Cấu hình không hợp lệ
- Các vấn đề về quyền
Trình kích hoạt không khớp
# Kiểm tra khớp trình kích hoạt
openclaw skills test-trigger "your trigger phrase"
Vấn đề về Hiệu suất
# Kiểm tra mức sử dụng tài nguyên của kỹ năng
openclaw skills monitor
# Tạm thời tắt các kỹ năng tiêu tốn nhiều tài nguyên
openclaw skills disable heavy-skill
Kết luận
Hệ thống kỹ năng của OpenClaw biến nó từ một trợ lý AI đơn giản thành một nền tảng mạnh mẽ, có khả năng mở rộng. Cho dù bạn đang cài đặt các kỹ năng do cộng đồng xây dựng từ ClawHub hay tự xây dựng các giải pháp tùy chỉnh, khả năng là gần như vô hạn.
Hệ sinh thái OpenClaw ngày càng mạnh mẽ hơn với mỗi kỹ năng mới. Hãy bắt đầu xây dựng ngay hôm nay!

