🔥 GitHub 81K星 · 今日+2,971

AI编码Skills模式:工程师必备的Agent技能设计

凌晨4点23分,我打开mattpocock的skills仓库,81,585颗星静静闪烁。这个项目宣称"Skills for Real Engineers",直白得像个工科生的简历。它没有华丽的AI叙事,只有一行行从.claude目录里挖出来的实战代码——这些代码被数千开发者复制、粘贴、魔改,成为Agent时代最真实的技术遗产。

这不是教程,而是工程师的生存手册:如何在AI Agent的世界里,让机器按照你的节奏编码。

mattpocock/skills核心解析

这个仓库的核心价值在于将人类编码习惯封装为Agent Skills。每个Skill都是一段可复用的AI行为模式:

项目结构

skills/
├── bash-commands/      # Shell命令封装
├── code-review/        # 代码审查模式
├── debugging/          # 调试策略
├── git-workflow/       # Git操作封装
├── project-context/    # 项目上下文理解
├── test-generation/    # 测试生成策略
└── utils/              # 工具函数

核心Skills类型

六大编码Skills设计模式

模式1:命令封装模式 (Command Wrapper)

将常用命令序列封装为单一Skill,减少AI的猜测空间。

# skill: quick-commit
name: "Quick Commit"
trigger: "quick commit"
steps:
  - git add -A
  - git status (show what's being committed)
  - git commit -m "${message}"
  - git push origin ${branch}
parameters:
  - message: "commit message"
  - branch: "current branch"
模式2:审查链模式 (Review Chain)

串联多个审查步骤,形成完整的质量检查流程。

# skill: full-review
name: "Full Code Review"
trigger: "review this code"
chain:
  - lint: run eslint/prettier
  - types: run tsc --noEmit
  - tests: run vitest --coverage
  - security: run npm audit
  - report: summarize findings
output: structured review report
模式3:诊断树模式 (Diagnosis Tree)

根据错误类型选择不同的诊断路径。

# skill: smart-debug
name: "Smart Debugging"
trigger: "debug ${error}"
branches:
  - type_error:
      - check TypeScript config
      - verify type definitions
      - suggest type fixes
  - runtime_error:
      - reproduce with minimal case
      - trace stack to root cause
      - propose fix with test
  - build_error:
      - check dependencies
      - verify build config
      - rebuild step by step
模式4:上下文注入模式 (Context Injection)

在Skill执行前注入项目上下文,提升AI理解准确度。

# skill: context-aware-refactor
name: "Context-Aware Refactoring"
before:
  - read project structure
  - identify related files
  - understand current patterns
action:
  - refactor target file
  - update related imports
  - run tests to verify
after:
  - show diff summary
  - suggest similar refactors
模式5:生成模板模式 (Generation Template)

使用模板生成标准化输出,保持一致性。

# skill: component-gen
name: "React Component Generator"
trigger: "create component ${name}"
template: |
  import { FC } from 'react';
  
  interface ${name}Props {
    // props
  }
  
  export const ${name}: FC<${name}Props> = (props) => {
    return (
      <div className="${name}">
        {/* content */}
      </div>
    );
  };
  
  export default ${name};
generates:
  - src/components/${name}/${name}.tsx
  - src/components/${name}/index.ts
  - src/components/${name}/${name}.test.tsx
模式6:增量迭代模式 (Incremental Iteration)

分步完成复杂任务,每步可验证可回退。

# skill: safe-refactor
name: "Safe Incremental Refactor"
trigger: "refactor ${target} carefully"
phases:
  - phase1_analyze:
      - identify all usages
      - map dependencies
      - create rollback point
  - phase2_pilot:
      - refactor one file
      - run tests
      - verify no breakage
  - phase3_expand:
      - apply to remaining files
      - continuous testing
  - phase4_cleanup:
      - remove deprecated code
      - update documentation

OpenClaw Skills实现指南

将mattpocock的方法论迁移到OpenClaw:

1. 创建Skills目录结构

# OpenClaw项目Skills结构
~/.openclaw/skills/
├── coding/
│   ├── review-chain.md
│   ├── debug-tree.md
│   ├── quick-commit.md
│   ├── safe-refactor.md
│   └── component-gen.md
├── project/
│   ├── context-loader.md
│   ├── dependency-map.md
└── utils/
    ├── error-parser.md
    ├── diff-summarizer.md

2. Skill文件格式

# ~/.openclaw/skills/coding/review-chain.md
---
name: Full Code Review
description: 串联多个审查步骤,形成完整质量检查
trigger: review this code
---

## 执行步骤

1. 运行 lint 检查 (eslint/prettier)
2. 运行类型检查 (tsc --noEmit)
3. 运行测试覆盖率 (vitest --coverage)
4. 运行安全审计 (npm audit)
5. 生成审查报告摘要

## 输出格式

| 检查项 | 状态 | 问题数 | 严重度 |
|--------|------|--------|--------|
| Lint   | ✅/❌ | N      | 高/中/低 |
| Types  | ✅/❌ | N      | 高/中/低 |
| Tests  | ✅/❌ | N      | 高/中/低 |
| Security | ✅/❌ | N    | 高/中/低 |

## 相关Skills

- [quick-commit](quick-commit.md) - 快速提交
- [safe-refactor](safe-refactor.md) - 安全重构

3. 使用Skill示例

# 在OpenClaw中调用Skill
> review this code

[OpenClaw执行 review-chain Skill]
✓ Lint检查完成: 0 errors
✓ 类型检查完成: 2 errors
  - src/api.ts:78 - 缺少返回类型
  - src/utils.ts:15 - 隐式any类型
✓ 测试覆盖率: 78%
✓ 安全审计: 1 warning (lodash@4.17.15)

建议修复类型错误后再提交。

最佳实践

✅ Skill设计原则

  • 单一职责:每个Skill只做一件事
  • 明确触发:trigger短语要独特易记
  • 可组合:Skill之间可串联调用
  • 可回退:关键操作要有rollback机制
  • 输出标准化:格式一致便于解析

❌ 踩坑实录

"凌晨3点,我写了一个'智能重构'Skill,结果它把整个项目重构成了另一个项目。原因是Skill里写'优化所有代码结构',AI理解成'重新设计架构'。"

教训:Skill的行为边界要明确,避免模糊指令。