awesome-agent-skills
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAwesome Agent Skills
优秀Agent技能集合
Skill by ara.so — AI Agent Skills collection.
A curated collection of 1000+ agent skills from official development teams and the community. Unlike bulk-generated repositories, this collection focuses on real-world agent skills created and used by actual engineering teams from Anthropic, Google Labs, Vercel, Stripe, Cloudflare, Netlify, and more.
Compatible with Claude Code, Codex, Antigravity, Gemini CLI, Cursor, GitHub Copilot, OpenCode, Windsurf, and other AI coding agents.
由ara.so提供的技能——AI Agent技能集合。
这是一份由官方开发团队和社区贡献的1000+ Agent技能精选集合。与批量生成的仓库不同,本集合聚焦于由Anthropic、Google Labs、Vercel、Stripe、Cloudflare、Netlify等公司的实际工程团队创建并使用的真实Agent技能。
兼容Claude Code、Codex、Antigravity、Gemini CLI、Cursor、GitHub Copilot、OpenCode、Windsurf及其他AI编码Agent。
What are Agent Skills?
什么是Agent技能?
Agent skills are SKILL.md files that extend AI coding agents' capabilities by providing:
- Domain-specific knowledge and best practices
- API reference documentation
- Code patterns and examples
- Tool-specific workflows
- Integration guidelines
When installed, these skills give AI agents expertise in specific frameworks, tools, or domains.
Agent技能是SKILL.md文件,通过以下内容扩展AI编码Agent的能力:
- 领域特定知识与最佳实践
- API参考文档
- 代码模式与示例
- 工具特定工作流
- 集成指南
安装后,这些技能能让AI Agent掌握特定框架、工具或领域的专业能力。
Installation Paths by Agent
各Agent的安装路径
Different AI coding agents look for skills in different locations:
Installing Skills
安装技能
Method 1: Manual Installation
方法1:手动安装
- Create the skills directory for your agent (e.g., )
.claude/skills/ - Download the SKILL.md file from the repository
- Place it in your skills directory
bash
undefined- 为你的Agent创建技能目录(例如:)
.claude/skills/ - 从仓库下载SKILL.md文件
- 将其放入技能目录
bash
undefinedExample for Claude Code
Example for Claude Code
mkdir -p .claude/skills
cd .claude/skills
curl -O https://raw.githubusercontent.com/VoltAgent/awesome-agent-skills/main/skills/stripe/stripe-best-practices.md
undefinedmkdir -p .claude/skills
cd .claude/skills
curl -O https://raw.githubusercontent.com/VoltAgent/awesome-agent-skills/main/skills/stripe/stripe-best-practices.md
undefinedMethod 2: Using the officialskills.sh Website
方法2:使用officialskills.sh官网
Visit officialskills.sh to:
- Browse skills by category
- Search for specific skills
- Copy skill URLs for direct installation
- View skill metadata and compatibility
- 按类别浏览技能
- 搜索特定技能
- 复制技能URL直接安装
- 查看技能元数据与兼容性
Method 3: Clone Specific Skills
方法3:克隆特定技能
bash
undefinedbash
undefinedClone the entire repository
Clone the entire repository
Copy specific skills to your agent's directory
Copy specific skills to your agent's directory
cp awesome-agent-skills/skills/voltagent/create-voltagent.md .claude/skills/
undefinedcp awesome-agent-skills/skills/voltagent/create-voltagent.md .claude/skills/
undefinedSkill Categories
技能分类
Official Anthropic Claude Skills
Anthropic Claude官方技能
Core skills published by Anthropic for Claude:
bash
undefinedAnthropic为Claude发布的核心技能:
bash
undefinedDocument creation and editing
Document creation and editing
.claude/skills/docx.md # Word documents
.claude/skills/pptx.md # PowerPoint presentations
.claude/skills/xlsx.md # Excel spreadsheets
.claude/skills/pdf.md # PDF manipulation
.claude/skills/docx.md # Word documents
.claude/skills/pptx.md # PowerPoint presentations
.claude/skills/xlsx.md # Excel spreadsheets
.claude/skills/pdf.md # PDF manipulation
Design and development
Design and development
.claude/skills/canvas-design.md # Visual design
.claude/skills/frontend-design.md # UI/UX development
.claude/skills/web-artifacts-builder.md # React + Tailwind artifacts
.claude/skills/algorithmic-art.md # p5.js generative art
.claude/skills/canvas-design.md # Visual design
.claude/skills/frontend-design.md # UI/UX development
.claude/skills/web-artifacts-builder.md # React + Tailwind artifacts
.claude/skills/algorithmic-art.md # p5.js generative art
Development tools
Development tools
.claude/skills/mcp-builder.md # MCP server creation
.claude/skills/webapp-testing.md # Playwright testing
.claude/skills/skill-creator.md # Create new skills
undefined.claude/skills/mcp-builder.md # MCP server creation
.claude/skills/webapp-testing.md # Playwright testing
.claude/skills/skill-creator.md # Create new skills
undefinedFramework & Platform Skills
框架与平台技能
VoltAgent (TypeScript Framework)
VoltAgent(TypeScript框架)
typescript
// Skills available:
// - create-voltagent: Project setup
// - voltagent-best-practices: Architecture patterns
// - voltagent-core-reference: API reference
// - voltagent-docs-bundle: Embedded documentation
// Example usage after installing skills
import { VoltAgent } from '@voltagent/core';
const agent = new VoltAgent({
name: 'my-agent',
model: 'claude-3-5-sonnet-20241022',
apiKey: process.env.ANTHROPIC_API_KEY,
});typescript
// Skills available:
// - create-voltagent: Project setup
// - voltagent-best-practices: Architecture patterns
// - voltagent-core-reference: API reference
// - voltagent-docs-bundle: Embedded documentation
// Example usage after installing skills
import { VoltAgent } from '@voltagent/core';
const agent = new VoltAgent({
name: 'my-agent',
model: 'claude-3-5-sonnet-20241022',
apiKey: process.env.ANTHROPIC_API_KEY,
});Angular
Angular
typescript
// Skills: angular-developer, angular-new-app
// Generate component with installed skills
// ng generate component my-component --standalonetypescript
// Skills: angular-developer, angular-new-app
// Generate component with installed skills
// ng generate component my-component --standaloneReact Native (CallStack)
React Native (CallStack)
javascript
// Skills: react-native-best-practices, upgrading-react-native
// Performance optimization patterns from Callstack skill
import { memo, useCallback } from 'react';
const OptimizedComponent = memo(({ data }) => {
const handlePress = useCallback(() => {
// Handle press
}, []);
return <TouchableOpacity onPress={handlePress}>...</TouchableOpacity>;
});javascript
// Skills: react-native-best-practices, upgrading-react-native
// Performance optimization patterns from Callstack skill
import { memo, useCallback } from 'react';
const OptimizedComponent = memo(({ data }) => {
const handlePress = useCallback(() => {
// Handle press
}, []);
return <TouchableOpacity onPress={handlePress}>...</TouchableOpacity>;
});Authentication & Database Skills
认证与数据库技能
Better Auth
Better Auth
typescript
// Skills: best-practices, create-auth, emailAndPassword, twoFactor, organization
import { betterAuth } from 'better-auth';
const auth = betterAuth({
database: {
provider: 'pg',
url: process.env.DATABASE_URL,
},
emailAndPassword: {
enabled: true,
},
twoFactor: {
enabled: true,
},
});typescript
// Skills: best-practices, create-auth, emailAndPassword, twoFactor, organization
import { betterAuth } from 'better-auth';
const auth = betterAuth({
database: {
provider: 'pg',
url: process.env.DATABASE_URL,
},
emailAndPassword: {
enabled: true,
},
twoFactor: {
enabled: true,
},
});Supabase
Supabase
typescript
// Skills: postgres-best-practices
import { createClient } from '@supabase/supabase-js';
const supabase = createClient(
process.env.SUPABASE_URL,
process.env.SUPABASE_ANON_KEY
);
// Use PostgreSQL best practices from skill
const { data, error } = await supabase
.from('users')
.select('*')
.eq('active', true);typescript
// Skills: postgres-best-practices
import { createClient } from '@supabase/supabase-js';
const supabase = createClient(
process.env.SUPABASE_URL,
process.env.SUPABASE_ANON_KEY
);
// Use PostgreSQL best practices from skill
const { data, error } = await supabase
.from('users')
.select('*')
.eq('active', true);API & Integration Skills
API与集成技能
Stripe
Stripe
typescript
// Skills: stripe-best-practices, upgrade-stripe
import Stripe from 'stripe';
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY, {
apiVersion: '2024-11-20.acacia',
});
// Create payment intent following best practices
const paymentIntent = await stripe.paymentIntents.create({
amount: 2000,
currency: 'usd',
automatic_payment_methods: { enabled: true },
});typescript
// Skills: stripe-best-practices, upgrade-stripe
import Stripe from 'stripe';
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY, {
apiVersion: '2024-11-20.acacia',
});
// Create payment intent following best practices
const paymentIntent = await stripe.paymentIntents.create({
amount: 2000,
currency: 'usd',
automatic_payment_methods: { enabled: true },
});Composio
Composio
typescript
// Skills: composio (1000+ app integrations)
import { Composio } from 'composio-core';
const composio = new Composio(process.env.COMPOSIO_API_KEY);
// Connect to external apps with managed auth
const connection = await composio.getConnection('github');typescript
// Skills: composio (1000+ app integrations)
import { Composio } from 'composio-core';
const composio = new Composio(process.env.COMPOSIO_API_KEY);
// Connect to external apps with managed auth
const connection = await composio.getConnection('github');Courier
Courier
typescript
// Skills: courier-skills (multi-channel notifications)
import { CourierClient } from '@trycourier/courier';
const courier = new CourierClient({
authorizationToken: process.env.COURIER_AUTH_TOKEN,
});
await courier.send({
message: {
to: { email: 'user@example.com' },
content: { title: 'Welcome!', body: 'Thanks for signing up' },
routing: { method: 'all', channels: ['email', 'sms'] },
},
});typescript
// Skills: courier-skills (multi-channel notifications)
import { CourierClient } from '@trycourier/courier';
const courier = new CourierClient({
authorizationToken: process.env.COURIER_AUTH_TOKEN,
});
await courier.send({
message: {
to: { email: 'user@example.com' },
content: { title: 'Welcome!', body: 'Thanks for signing up' },
routing: { method: 'all', channels: ['email', 'sms'] },
},
});Data & Analytics Skills
数据与分析技能
Tinybird
Tinybird
sql
-- Skills: tinybird-best-practices, tinybird-cli-guidelines,
-- tinybird-python-sdk-guidelines, tinybird-typescript-sdk-guidelines
-- Create a datasource (from skill patterns)
DESCRIPTION >
User events datasource
SCHEMA >
`timestamp` DateTime,
`user_id` String,
`event_type` String,
`properties` String
ENGINE "MergeTree"
ENGINE_PARTITION_KEY "toYYYYMM(timestamp)"
ENGINE_SORTING_KEY "timestamp, user_id"sql
-- Skills: tinybird-best-practices, tinybird-cli-guidelines,
-- tinybird-python-sdk-guidelines, tinybird-typescript-sdk-guidelines
-- Create a datasource (from skill patterns)
DESCRIPTION >
User events datasource
SCHEMA >
`timestamp` DateTime,
`user_id` String,
`event_type` String,
`properties` String
ENGINE "MergeTree"
ENGINE_PARTITION_KEY "toYYYYMM(timestamp)"
ENGINE_SORTING_KEY "timestamp, user_id"ClickHouse
ClickHouse
sql
-- Skills: clickhouse
-- Optimized table creation from skill
CREATE TABLE events (
timestamp DateTime,
user_id UInt64,
event_type String,
properties String
)
ENGINE = MergeTree()
PARTITION BY toYYYYMM(timestamp)
ORDER BY (timestamp, user_id);sql
-- Skills: clickhouse
-- Optimized table creation from skill
CREATE TABLE events (
timestamp DateTime,
user_id UInt64,
event_type String,
properties String
)
ENGINE = MergeTree()
PARTITION BY toYYYYMM(timestamp)
ORDER BY (timestamp, user_id);Cloud & Infrastructure Skills
云与基础设施技能
Google Gemini
Google Gemini
python
undefinedpython
undefinedSkills: gemini-api-dev, vertex-ai-api-dev, gemini-live-api-dev, gemini-interactions-api
Skills: gemini-api-dev, vertex-ai-api-dev, gemini-live-api-dev, gemini-interactions-api
import google.generativeai as genai
genai.configure(api_key=os.environ["GEMINI_API_KEY"])
model = genai.GenerativeModel('gemini-1.5-pro')
response = model.generate_content('Explain quantum computing')
print(response.text)
undefinedimport google.generativeai as genai
genai.configure(api_key=os.environ["GEMINI_API_KEY"])
model = genai.GenerativeModel('gemini-1.5-pro')
response = model.generate_content('Explain quantum computing')
print(response.text)
undefinedCloudflare
Cloudflare
Skills for Cloudflare Workers, Pages, and services.
针对Cloudflare Workers、Pages及服务的技能。
Netlify
Netlify
Skills for Netlify deployment and edge functions.
针对Netlify部署及边缘函数的技能。
Creating Custom Skills
创建自定义技能
Use the skill to create your own:
anthropics/skill-creator使用技能创建你自己的技能:
anthropics/skill-creatorSKILL.md Template
SKILL.md模板
markdown
---
name: my-custom-skill
description: One-line description of what this skill does
triggers:
- phrase users might say to invoke this skill
- another trigger phrase
- how do I use this tool
- what are best practices for X
---markdown
---
name: my-custom-skill
description: One-line description of what this skill does
triggers:
- phrase users might say to invoke this skill
- another trigger phrase
- how do I use this tool
- what are best practices for X
---My Custom Skill
My Custom Skill
Overview
Overview
What this skill provides and when to use it.
What this skill provides and when to use it.
Installation
Installation
bash
npm install my-packagebash
npm install my-packageBasic Usage
Basic Usage
javascript
// Working code example
import { MyTool } from 'my-package';
const tool = new MyTool({
apiKey: process.env.MY_API_KEY,
});javascript
// Working code example
import { MyTool } from 'my-package';
const tool = new MyTool({
apiKey: process.env.MY_API_KEY,
});Common Patterns
Common Patterns
Pattern 1: Basic Operation
Pattern 1: Basic Operation
javascript
// Real example
const result = await tool.doSomething();javascript
// Real example
const result = await tool.doSomething();Pattern 2: Advanced Usage
Pattern 2: Advanced Usage
javascript
// Real example with error handling
try {
const result = await tool.complexOperation({
param: 'value',
});
} catch (error) {
console.error('Operation failed:', error.message);
}javascript
// Real example with error handling
try {
const result = await tool.complexOperation({
param: 'value',
});
} catch (error) {
console.error('Operation failed:', error.message);
}Best Practices
Best Practices
- Always validate input
- Handle errors gracefully
- Use environment variables for secrets
- Always validate input
- Handle errors gracefully
- Use environment variables for secrets
Troubleshooting
Troubleshooting
Error: Connection failed
- Check your API key
- Verify network connectivity
Error: Invalid parameter
- Ensure required fields are provided
- Check parameter types
undefinedError: Connection failed
- Check your API key
- Verify network connectivity
Error: Invalid parameter
- Ensure required fields are provided
- Check parameter types
undefinedQuality Standards
质量标准
Skills in this collection follow these standards:
- Hand-picked: Created by real engineering teams, not AI-generated
- Tested: Used in production by actual developers
- Documented: Clear examples and best practices
- Maintained: Actively updated by project teams
- Practical: Focus on real-world usage patterns
本集合中的技能遵循以下标准:
- 人工精选:由真实工程团队创建,而非AI生成
- 经过测试:已被实际开发者用于生产环境
- 文档完善:包含清晰示例与最佳实践
- 持续维护:由项目团队积极更新
- 实用性强:聚焦真实场景使用模式
Contributing
贡献指南
To contribute a skill:
- Fork the repository
- Create your skill following the template
- Test it with at least one AI coding agent
- Submit a pull request
- Ensure your skill includes:
- YAML frontmatter with name, description, triggers
- Real code examples (no placeholders)
- Environment variable references for secrets
- Practical usage patterns
如需贡献技能:
- Fork本仓库
- 按照模板创建你的技能
- 至少在一个AI编码Agent中测试该技能
- 提交拉取请求
- 确保你的技能包含:
- 带有名称、描述、触发词的YAML前置元数据
- 真实代码示例(无占位符)
- 引用环境变量存储密钥
- 实用的使用模式
Compatibility
兼容性
Skills are plain Markdown files that work across all major AI coding agents:
- ✅ Claude Code (Anthropic)
- ✅ Codex
- ✅ Gemini CLI (Google)
- ✅ Cursor
- ✅ GitHub Copilot
- ✅ OpenCode
- ✅ Windsurf
- ✅ Antigravity
技能为纯Markdown文件,可在所有主流AI编码Agent中使用:
- ✅ Claude Code (Anthropic)
- ✅ Codex
- ✅ Gemini CLI (Google)
- ✅ Cursor
- ✅ GitHub Copilot
- ✅ OpenCode
- ✅ Windsurf
- ✅ Antigravity
Resources
资源
- Website: officialskills.sh
- Repository: github.com/VoltAgent/awesome-agent-skills
- Discord: Community support and discussions
- Documentation: Agent-specific setup guides
- 官网:officialskills.sh
- 仓库:github.com/VoltAgent/awesome-agent-skills
- Discord:社区支持与讨论
- 文档:各Agent专属设置指南
License
许可证
MIT License - See repository for full license text.
MIT许可证——详见仓库完整许可证文本。