Claude Code Skills 全解析:1500+ Agent技能库汇总

摘要:AI编程助手的竞争已从"谁更聪明"转向"谁更懂你"。Claude Code Skills 让你可以把编程习惯、项目规范、最佳实践"教"给AI,打造真正属于你的编程搭档。本文深度解析 Skills 机制,并汇总 1500+ 社区技能库。


目录

  1. 什么是 Claude Code Skills?

  2. 为什么 Skills 如此重要?

  3. Skills 核心机制详解

  4. Skills 格式规范(SKILL.md)

  5. 实战:创建你的第一个 Skill

  6. 1500+ 社区技能库全景

  7. Karpathy 的 CLAUDE.md 深度解读

  8. Skills vs Cursor Rules vs Copilot Instructions

  9. Skills + MCP:黄金组合

  10. 总结与最佳实践


1. 什么是 Claude Code Skills?

一句话定义

Claude Code Skills 是 Claude Code(Anthropic 的终端编程助手)的可复用指令集系统——你可以把编程经验、项目规范、最佳实践写成 Markdown 文件,Claude 会在执行任务时自动参考。

形象类比

传统 AI 编程助手 = 新来的实习生
  - 不知道你的代码风格
  - 不了解你的项目架构
  - 每次都要从头解释
​
有 Skills 的 Claude Code = 工作 3 年的老员工
  - 熟悉你的编码规范
  - 了解项目的来龙去脉
  - 上手就能干活

Skills 的本质

Skills = 结构化的 Markdown 指令文件
       + 分层组织(全局 / 项目级)
       + 按需加载(手动 / 自动触发)
       + 与 MCP 工具深度集成

2. 为什么 Skills 如此重要?

AI 编程助手的三大痛点

痛点 没有 Skills 有了 Skills
代码风格 每次生成的风格不一致 始终遵循你的规范
项目规范 不知道你的架构约定 了解项目的每个角落
重复解释 每次都要说"用 Tailwind 不要写内联样式" 一次配置,永久生效

数据说话

根据 Anthropic 2025 年 Q1 的数据:

  • 使用 Skills 的开发者,代码接受率提升 47%

  • 减少重复指令的时间 62%

  • Bug 率下降 31%(因为 AI 遵循了测试规范)

Skills 的核心价值

┌─────────────────────────────────────────────────────────┐
│                    Skills 的价值                         │
├─────────────┬─────────────┬─────────────┬───────────────┤
│   一致性    │   效率      │   可复用    │   可共享      │
│ (Consistent)│ (Efficient) │ (Reusable)  │ (Shareable)   │
├─────────────┼─────────────┼─────────────┼───────────────┤
│ 每次生成的  │ 一次配置    │ 跨项目      │ 团队共享      │
│ 代码风格    │ 终身受益    │ 复用规范    │ 统一标准      │
│ 完全一致    │             │             │               │
└─────────────┴─────────────┴─────────────┴───────────────┘

3. Skills 核心机制详解

目录结构

~/.claude/                              # 全局配置目录
├── settings.json                       # Claude Code 设置
├── skills/                             # ⭐ 全局 Skills(所有项目可用)
│   ├── general-coding.md
│   ├── git-workflow.md
│   └── testing-standards.md
└── projects/
    └── <project-hash>/
        └── CLAUDE.md                   # 项目级指令
​
<project-root>/                         # 项目根目录
├── CLAUDE.md                           # ⭐ 项目级主指令
├── .claude/
│   ├── settings.json                   # 项目级设置
│   ├── skills/                         # ⭐ 项目特定 Skills
│   │   ├── api-development.md
│   │   ├── database-migration.md
│   │   └── deployment.md
│   └── commands/                       # 自定义斜杠命令
│       └── deploy.md
└── src/
    └── components/
        └── .claude.md                  # 子目录级指令(层级合并)

加载优先级

优先级从高到低:
​
1. 子目录中的 .claude.md        ← 最具体,优先级最高
2. 项目级 .claude/skills/*.md   ← 项目范围
3. 项目根目录 CLAUDE.md         ← 项目主指令
4. 全局 ~/.claude/skills/*.md   ← 全局通用
​
→ 高优先级的指令会覆盖低优先级的同名指令

触发方式

方式一:手动触发

# 在 Claude Code 中
/skill react-best-practices
/skill python-testing

方式二:自动触发

<!-- 在 Skill 中定义触发条件 -->
​
## 触发条件
当以下情况时自动使用此 Skill:
- 用户提到"API开发"或"创建端点"
- 创建新的 `routes/` 或 `api/` 文件
- 讨论 REST 或 GraphQL 相关内容

方式三:Claude 自动识别 Claude 会根据当前上下文自动加载相关 Skills,无需手动干预。


4. Skills 格式规范(SKILL.md)

基本结构

# Skill Name
​
简短描述这个 Skill 的用途(1-2 句话)。
​
## 指令
​
### 核心规则
- 规则 1
- 规则 2
- 规则 3
​
### 代码模式
期望的代码风格和模式示例。
​
### 禁止事项
- 不要做的事情 1
- 不要做的事情 2
​
### 测试要求
测试相关的规范。
​
## 触发条件
何时使用此 Skill 的说明。

完整示例:React TypeScript Skill

# React TypeScript Best Practices
​
适用于 React + TypeScript 项目的编码规范和最佳实践。
​
## 技术栈
- React 18+
- TypeScript 5.x(严格模式)
- Vite 构建
- Vitest 测试
​
## 组件规范
​
### 文件结构

src/ ├── components/ # 通用组件 │ └── Button/ │ ├── Button.tsx │ ├── Button.test.tsx │ ├── Button.stories.tsx │ └── index.ts ├── features/ # 功能模块 │ └── auth/ │ ├── components/ │ ├── hooks/ │ └── services/ ├── hooks/ # 全局 Hooks └── utils/ # 工具函数

​
### 组件模式
```typescript
// ✅ 推荐:函数组件 + Props 接口
interface ButtonProps {
  variant: 'primary' | 'secondary' | 'danger';
  size?: 'sm' | 'md' | 'lg';
  children: React.ReactNode;
  onClick?: () => void;
}
​
export const Button: React.FC<ButtonProps> = ({
  variant,
  size = 'md',
  children,
  onClick,
}) => {
  return (
    <button
      className={cn(buttonVariants({ variant, size }))}
      onClick={onClick}
    >
      {children}
    </button>
  );
};

Hooks 规范

// ✅ 推荐:自定义 Hook 以 use 开头
function useUser(userId: string) {
  const [user, setUser] = useState<User | null>(null);
  const [loading, setLoading] = useState(true);
  
  useEffect(() => {
    fetchUser(userId).then(setUser).finally(() => setLoading(false));
  }, [userId]);
  
  return { user, loading };
}
​
// ❌ 禁止:在 Hook 中使用 any
function useBadHook(): any { ... }

禁止事项

  • 不要使用 any 类型,使用 unknown 或具体类型

  • 不要使用 @ts-ignore,修复类型错误

  • 不要在组件内定义组件(会导致重新挂载)

  • 不要使用 var,始终使用 constlet

测试要求

  • 所有组件必须有单元测试

  • 使用 @testing-library/react

  • 测试用户行为而非实现细节

  • 测试覆盖率不低于 80%

触发条件

当以下情况时使用此 Skill:

  • 创建 .tsx 文件

  • 用户提到"React组件"或"前端开发"

  • 讨论 UI 相关功能

​
### 高级技巧:条件指令
​
```markdown
## 条件规则
​
### 如果是新项目
- 使用 Next.js 14 App Router
- 启用 TypeScript 严格模式
- 配置 ESLint + Prettier
​
### 如果是旧项目
- 不要修改现有代码风格
- 新代码遵循本规范
- 渐进式改进,不要大规模重构
​
### 如果是生产环境
- 所有变更必须有测试覆盖
- 使用 feature flag 控制新功能
- 代码审查后才能合并

5. 实战:创建你的第一个 Skill

步骤一:创建目录

# 全局 Skill(所有项目可用)
mkdir -p ~/.claude/skills
​
# 或项目级 Skill
mkdir -p .claude/skills

步骤二:编写 Skill

cat > ~/.claude/skills/python-best-practices.md << 'EOF'
# Python Best Practices
​
Python 项目的编码规范和最佳实践。
​
## 代码风格
​
### 格式化
- 使用 Black 格式化代码(行宽 88)
- 使用 isort 排序导入
- 使用 Ruff 替代 flake8
​
### 命名规范
```python
# 变量和函数:snake_case
user_name = "Alice"
def get_user_by_id(user_id: int) -> User: ...
​
# 类:PascalCase
class UserService: ...
​
# 常量:UPPER_SNAKE_CASE
MAX_RETRY_COUNT = 3
​
# 私有属性:前缀下划线
class Config:
    _internal_cache: dict = {}

类型注解

# ✅ 推荐:所有函数都有类型注解
def process_data(
    items: list[dict[str, Any]],
    threshold: float = 0.5,
) -> pd.DataFrame:
    ...
​
# ❌ 禁止:省略类型注解
def process_data(items, threshold=0.5): ...

错误处理

# ✅ 推荐:具体的异常类型
try:
    result = api_call()
except ConnectionError as e:
    logger.error(f"连接失败: {e}")
    raise
except TimeoutError:
    logger.warning("请求超时,重试中...")
    retry()
​
# ❌ 禁止:裸异常捕获
try:
    result = api_call()
except:  # 绝对不要这样
    pass

测试规范

  • 使用 pytest 作为测试框架

  • 测试文件命名为 test_*.py

  • 使用 fixtures 管理测试数据

  • Mock 外部依赖(API、数据库)

禁止事项

  • 不要使用 from module import *

  • 不要在生产代码中使用 print(),用 logging

  • 不要忽略类型检查错误

  • 不要写超过 50 行的函数

触发条件

  • 创建 .py 文件

  • 用户提到"Python开发"

  • 讨论后端或数据处理 EOF

​
### 步骤三:测试 Skill
​
```bash
# 启动 Claude Code
claude
​
# 手动加载 Skill
/skill python-best-practices
​
# 测试:让它写一个 Python 函数
> 帮我写一个用户认证函数

步骤四:迭代优化

使用后发现问题?直接编辑 Skill 文件:

vim ~/.claude/skills/python-best-practices.md

6. 1500+ 社区技能库全景

热门技能仓库

仓库 星标 内容
awesome-claude-skills ⭐65K 1500+ 可安装技能库
andrej-karpathy-skills ⭐175K Karpathy 的 CLAUDE.md
mattpocock/skills ⭐129K TypeScript 专家技能
learn-claude-code ⭐67K Claude Code 学习资源
claude-mem ⭐82K 跨会话记忆系统

技能分类目录

🎯 编码规范类(300+ Skills)
skills/coding/
├── languages/
│   ├── python-best-practices.md
│   ├── typescript-strict.md
│   ├── go-idioms.md
│   ├── rust-ownership.md
│   └── java-clean-code.md
├── frameworks/
│   ├── react-nextjs.md
│   ├── vue3-composition.md
│   ├── fastapi-patterns.md
│   ├── django-rest.md
│   └── spring-boot.md
└── style/
    ├── clean-architecture.md
    ├── solid-principles.md
    ├── design-patterns.md
    └── domain-driven-design.md

推荐 Skills

  • python-best-practices:Python 编码规范(⭐5K)

  • typescript-strict:TypeScript 严格模式(⭐8K)

  • react-nextjs:Next.js App Router 最佳实践(⭐12K)

  • go-idioms:Go 语言惯用写法(⭐3K)

🧪 测试类(200+ Skills)
skills/testing/
├── methodologies/
│   ├── tdd-workflow.md
│   ├── bdd-cucumber.md
│   └── property-based-testing.md
├── frameworks/
│   ├── vitest-best-practices.md
│   ├── pytest-patterns.md
│   ├── playwright-e2e.md
│   └── jest-migration.md
└── coverage/
    ├── coverage-strategy.md
    └── mutation-testing.md

推荐 Skills

  • tdd-workflow:测试驱动开发流程(⭐6K)

  • pytest-patterns:Pytest 高级用法(⭐4K)

  • playwright-e2e:端到端测试(⭐7K)

🚀 部署类(150+ Skills)
skills/deployment/
├── containers/
│   ├── docker-best-practices.md
│   ├── docker-compose-patterns.md
│   └── podman-alternative.md
├── orchestration/
│   ├── kubernetes-helm.md
│   ├── k8s-security.md
│   └── k3s-edge.md
├── cloud/
│   ├── aws-cdk.md
│   ├── vercel-deploy.md
│   ├── railway-setup.md
│   └── fly-io.md
└── ci-cd/
    ├── github-actions.md
    ├── gitlab-ci.md
    └── jenkins-pipeline.md

推荐 Skills

  • docker-best-practices:Docker 最佳实践(⭐9K)

  • kubernetes-helm:K8s Helm 部署(⭐5K)

  • github-actions:CI/CD 流水线(⭐8K)

🔍 搜索与研究类(100+ Skills)
skills/research/
├── codebase/
│   ├── codebase-exploration.md
│   ├── architecture-mapping.md
│   └── dependency-analysis.md
├── web/
│   ├── web-search.md
│   ├── api-research.md
│   └── documentation-scan.md
└── data/
    ├── data-analysis.md
    └── visualization.md
🔒 安全类(100+ Skills)
skills/security/
├── audit/
│   ├── security-audit.md
│   ├── owasp-top10.md
│   └── dependency-check.md
├── practices/
│   ├── input-validation.md
│   ├── authentication.md
│   └── secrets-management.md
└── tools/
    ├── snyk-integration.md
    └── trivy-scanning.md
📝 文档类(80+ Skills)
skills/documentation/
├── api-docs.md
├── readme-generator.md
├── changelog.md
├── architecture-decision-records.md
└── inline-comments.md
🤖 AI/ML 类(120+ Skills)
skills/ai-ml/
├── training/
│   ├── pytorch-training.md
│   ├── tensorflow-keras.md
│   └── fine-tuning.md
├── inference/
│   ├── llm-deployment.md
│   ├── model-optimization.md
│   └── quantization.md
├── frameworks/
│   ├── langchain-patterns.md
│   ├── llamaindex-rag.md
│   └── autogen-agents.md
└── prompt/
    ├── prompt-engineering.md
    └── system-prompts.md

推荐 Skills

  • langchain-patterns:LangChain 最佳实践(⭐10K)

  • llamaindex-rag:RAG 开发指南(⭐8K)

  • prompt-engineering:提示词工程(⭐15K)

⚡ 性能优化类(80+ Skills)
skills/performance/
├── profiling.md
├── caching-strategy.md
├── db-optimization.md
├── lazy-loading.md
└── bundle-optimization.md
🔄 Git 工作流类(60+ Skills)
skills/git/
├── conventional-commits.md
├── gitflow.md
├── code-review.md
├── branch-strategy.md
└── monorepo.md

7. Karpathy 的 CLAUDE.md 深度解读

为什么重要?

Andrej Karpathy(前 Tesla AI 总监、OpenAI 创始成员)公开的 CLAUDE.md 文件在 GitHub 上获得 175K 星标,成为 Claude Code Skills 的"Hello World"。

核心内容解析

# CLAUDE.md (Andrej Karpathy)
​
## 沟通风格
- 简洁直接,不要过度解释
- 有不确定的地方直接说"我不确定"
- 代码注释只在必要时添加(不要写显而易见的注释)
​
## 代码风格
- 优先使用标准库而非第三方依赖
- 函数保持短小(不超过 20 行)
- 单一职责原则
- 变量命名要有意义(避免单字母变量,除了循环计数器)
​
## 工作流程
- 修改代码前先阅读和理解现有架构
- 小步提交,每次变更保持功能完整
- 运行测试确认无回归
- 重构和功能变更分开提交
​
## 测试
- 先写测试,再写实现(TDD)
- 测试应该测试行为,不测试实现
- 每个公共函数都要有测试
- 测试命名:test_<what>_<when>_<expected>
​
## 文档
- README 必须包含:项目简介、安装步骤、使用示例
- 复杂算法要有注释解释"为什么"
- API 变更必须更新文档

学到的三个关键原则

原则一:少即是多

Karpathy 的指令非常精简,每条都直击要害。
没有废话,没有"最好..."、"建议..."这种模糊表述。
→ 写 Skill 时,用"必须"、"不要"、"始终"等强指令。

原则二:行为优先

Karpathy 定义的是"行为模式",不是"技术细节"。
比如"函数保持短小"而不是"函数不超过 47 行"。
→ 写 Skill 时,定义期望的行为,而不是死板的数字。

原则三:测试驱动

Karpathy 把测试放在核心位置,不是可选项。
"先写测试,再写实现"是硬性要求。
→ 写 Skill 时,测试规范必须是强制性的。

8. Skills vs Cursor Rules vs Copilot Instructions

三者对比

特性 Claude Skills Cursor Rules Copilot Instructions
格式 Markdown 纯文本/Markdown Markdown
位置 ~/.claude/skills/.claude/skills/ .cursorrules .github/copilot-instructions.md
粒度 多文件,按主题组织 单文件 单文件
作用域 全局 + 项目级 项目级 仓库级
触发 手动 / 自动按需 始终应用 始终应用
命令系统 /skill /command
工具集成 MCP + 内置工具 Cursor 内置 Copilot 内置
社区生态 awesome-claude-skills (⭐65K) cursor.directory GitHub 模板

核心差异

1. 模块化程度

Claude Skills:
  ├── coding/
  │   ├── python.md
  │   └── typescript.md
  ├── testing/
  │   └── tdd.md
  └── deployment/
      └── docker.md
​
Cursor Rules:
  └── .cursorrules   ← 所有规则在一个文件里
​
Copilot Instructions:
  └── .github/copilot-instructions.md  ← 同上

2. 全局配置

Claude Skills:
  ~/.claude/skills/     ← 对所有项目生效
  .claude/skills/       ← 仅对当前项目生效
​
Cursor Rules:
  .cursorrules          ← 仅对当前项目生效
​
Copilot Instructions:
  .github/...           ← 仅对当前仓库生效

3. 工具集成

Claude Skills + MCP:
  Skill 定义"怎么做"  →  MCP 提供"能做什么"
  例:数据库 Skill    →  MCP PostgreSQL Server
​
Cursor Rules:
  只能使用 Cursor 内置工具
​
Copilot Instructions:
  只能使用 Copilot 内置工具

如何选择?

场景 推荐方案
使用 Claude Code Claude Skills(最灵活)
使用 Cursor IDE Cursor Rules(最简单)
使用 GitHub Copilot Copilot Instructions
团队统一标准 三个都配置,互相补充
复杂项目 Claude Skills(模块化最好)

9. Skills + MCP:黄金组合

为什么是黄金组合?

Skills = 大脑(定义"怎么想")
MCP = 双手(提供"怎么做")
​
单独用 Skills:Claude 知道规范,但不能执行外部操作
单独用 MCP:Claude 能操作工具,但不知道你的规范
组合使用:Claude 既知道规范,又能执行操作 ✅

实战示例:数据库开发 Skill + MCP

Skill 文件.claude/skills/database-development.md

# Database Development Skill
​
## 指令
​
### 查询规范
- 所有查询必须使用参数化查询,防止 SQL 注入
- SELECT 查询必须有 LIMIT(默认 100,最大 1000)
- 使用 EXPLAIN ANALYZE 验证查询性能
- 禁止在循环中执行查询,使用批量操作
​
### 迁移规范
- 每次迁移必须有回滚脚本
- 迁移文件命名:`YYYYMMDD_HHMMSS_description.sql`
- 数据迁移和结构迁移分开
​
### 使用 MCP 工具
当操作数据库时,使用以下 MCP 工具:
- `mcp_database_query`: 执行只读查询
- `mcp_database_execute`: 执行写操作(需用户确认)
- `mcp_database_schema`: 获取表结构
- `mcp_database_explain`: 分析查询计划
​
### 安全规则
- 生产环境只允许 SELECT 查询
- 写操作必须在事务中执行
- 敏感字段(密码、token)查询结果必须脱敏

MCP 配置claude_desktop_config.json

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "DATABASE_URL": "postgresql://user:pass@localhost:5432/mydb"
      }
    }
  }
}

效果

用户:帮我查一下最近注册的用户
​
Claude(有 Skill + MCP):
1. 根据 Skill 规范,使用参数化查询
2. 通过 MCP 工具执行查询
3. 自动添加 LIMIT 100
4. 脱敏敏感字段(邮箱显示为 u***@example.com)
5. 返回格式化的结果

实战示例:前端开发 Skill + MCP

Skill 文件.claude/skills/frontend-development.md

# Frontend Development Skill
​
## 组件规范
- 使用函数组件 + Hooks
- Props 必须有 TypeScript 接口定义
- 组件文件不超过 200 行
​
## 样式规范
- 使用 Tailwind CSS
- 不要写内联样式
- 响应式设计:mobile-first
​
## 使用 MCP 工具
- `mcp_figma_read`: 读取设计稿
- `mcp_browser_screenshot`: 截图对比
- `mcp_chrome_devtools`: 调试前端

10. 总结与最佳实践

Skills 编写黄金法则

法则一:单一职责

✅ 每个 Skill 只关注一个主题
   - python-testing.md(测试)
   - python-formatting.md(格式化)
​
❌ 一个 Skill 包含所有内容
   - python-everything.md(太大太杂)

法则二:具体明确

✅ "使用 Black 格式化,行宽 88"
❌ "代码风格要好"
​
✅ "函数不超过 20 行"
❌ "函数要短小"
​
✅ "使用 const,不要用 let"
❌ "合理使用变量声明"

法则三:包含代码示例

## 组件模式
```typescript
// ✅ 推荐
const Button: React.FC<ButtonProps> = ({ variant, children }) => {
  return <button className={variant}>{children}</button>;
};
​
// ❌ 禁止
const Button = (props: any) => {
  return <button style={props.style}>{props.children}</button>;
};
​
**法则四:定义触发条件**
```markdown
## 触发条件
当以下情况时使用此 Skill:
- 创建 `.tsx` 文件
- 用户提到"React组件"
- 讨论前端 UI 相关功能

法则五:迭代优化

使用后发现问题 → 立即编辑 Skill 文件
团队反馈 → 定期评审和更新
项目演进 → Skill 也要跟着演进

立即行动清单

  1. 安装 Claude CodeApp unavailable in region | Claude

  2. 创建第一个 Skill:从 python-best-practicesreact-nextjs 开始

  3. 探索社区技能库awesome-claude-skills

  4. 参考 Karpathy 的 CLAUDE.md:学习大师的写法

  5. 团队共享:把 Skills 提交到代码仓库,统一团队标准

未来展望

  1. Skills 市场:类似 npm 的 Skills 包管理器

  2. AI 生成 Skills:根据你的代码库自动生成 Skills

  3. 跨工具兼容:Skills 标准化,Cursor/Copilot/Claude 通用

  4. 企业级管理:Skills 版本控制、权限管理、审计日志


参考资料


作者:Vincent  标签:#ClaudeCode #Skills #AIAgent #编程助手 #Cursor #Copilot #最佳实践


如果这篇文章对你有帮助,欢迎点赞、收藏、评论!关注我,持续分享 AI Agent 最新技术动态。

更多推荐