如何在Trea/Winsurf中使用 Agent Skills

1,866 阅读4分钟

OpenSkills 详细操作指南

概述

Agent Skill是一个用于告诉模型如何执行某项操作的Markdown文件,同时允许附带额外的文档和预先编写的脚本,通过运行这些脚本,使模型在执行特定任务时更专业、更高效,是AI“可加载的能力包”

不过目前只有少数官方支持。

OpenSkills是一个开源的Agent Skill。可以让用户在Trea、Cursor、Windsurf 中使用。 项目地址:github.com/numman-ali/…

主要特性

  • 🔌 兼容Claude Code Agent Skills
  • 🌐 支持多种AI编码代理
  • 📦 灵活的技能管理
  • 🔍 支持渐进式披露
  • 🔧 支持项目级和全局技能安装

工作原理

OpenSkills通过将技能内容输出到代理的上下文中,模拟Claude Code的技能系统。代理在需要时调用Bash("openskills read <skill-name>")来加载技能内容,从而获得执行特定任务的指导。

安装与配置

环境要求

  • Node.js >= 20.6.0
  • npm 或 yarn

安装步骤

  1. 全局安装OpenSkills
npm install -g openskills
  1. 验证安装
openskills --version
  1. 查看帮助信息
openskills --help

目录结构

OpenSkills安装技能到两个主要目录:

  • 项目级技能目录: .claude/skills/(默认)
  • 全局技能目录: ~/.claude/skills/
  • 通用技能目录: .agent/skills/(使用--universal标志时)

基本命令

查看可用技能

列出所有已安装的技能:

openskills list

输出示例:

Available Skills:

  algorithmic-art                (project)
    Creating algorithmic art using p5.js with seeded randomness...

  frontend-design                (project)
    Create distinctive, production-grade frontend interfaces...

  template                       (project)
    Replace with description of the skill and when Claude should use it.

Summary: 3 project, 0 global (3 total)

安装技能

从官方市场安装

安装Anthropic官方技能集(交互式选择):

openskills install anthropics/skills

安装特定技能:

openskills install anthropics/skills#pdf
从GitHub安装
openskills install owner/repo

安装特定子目录:

openskills install owner/repo/skill-name
从Git URL安装
openskills install https://github.com/owner/repo.git

使用SSH:

openskills install git@github.com:owner/repo.git
本地安装

从本地目录安装:

openskills install /path/to/skill

从相对路径安装:

openskills install ./my-skills
全局安装
openskills install owner/repo --global
通用安装
openskills install owner/repo --universal

通用安装会将技能安装到.agent/skills/目录,可同时被多个AI编码代理使用。

读取技能内容

加载并显示技能内容:

openskills read <skill-name>

示例:

openskills read pdf

这会将技能的完整内容输出到终端,包括YAML元数据和技能指令。

移除技能

移除指定技能:

openskills remove <skill-name>

同步技能到AGENTS.md

将已安装的技能同步到AGENTS.md文件:

openskills sync

此命令会在AGENTS.md中创建或更新技能列表部分,生成与Claude Code兼容的XML格式。

技能管理

项目级与全局技能

OpenSkills支持两种技能安装模式:

  1. 项目级技能(默认)

    • 安装到.claude/skills/目录
    • 每个项目可拥有独立的技能集
    • 使用--global标志切换到全局模式
  2. 全局技能

    • 安装到~/.claude/skills/目录
    • 所有项目共享
    • 使用--global标志启用

渐进式披露

OpenSkills实现了与Claude Code相同的渐进式披露机制:

  1. 技能不会预先加载到上下文中
  2. 代理在需要时显式调用技能
  3. 减少上下文大小,提高性能
  4. 允许在运行时选择相关技能

技能结构

技能应遵循以下目录结构:

skill-name/
├── SKILL.md          # 主要技能文件(必需)
├── references/       # 参考文档(可选)
├── scripts/          # 脚本文件(可选)
├── assets/           # 资源文件(可选)
└── README.md         # 技能说明(可选)

原因: Windows平台路径分隔符问题

解决方案:

// 在src/commands/install.ts中使用path.sep而不是硬编码的'/'
if (!resolvedTargetPath.startsWith(resolvedTargetDir + sep)) {
  throw new Error(`Security error: Installation path outside target directory`);
}
  1. "Command not found: openskills"

    原因: OpenSkills未正确安装或PATH环境变量未配置

    解决方案:

    # 确认安装
    npm list -g openskills
    
    # 添加到PATH(如果需要)
    export PATH="$PATH:$(npm config get prefix)/bin"
    
  2. 技能安装失败

    原因: 网络问题、权限问题或技能仓库不可用

    解决方案:

    # 检查网络连接
    ping github.com
    
    # 检查权限
    ls -la ~/.claude/skills/
    
    # 尝试其他安装方法
    openskills install https://github.com/owner/repo.git
    
  3. 技能读取失败

    原因: 技能文件损坏或格式不正确

    解决方案:

    # 检查技能文件
    cat ~/.claude/skills/skill-name/SKILL.md
    
    # 重新安装技能
    openskills remove skill-name
    openskills install owner/repo#skill-name
    
  4. 同步到AGENTS.md失败

    原因: AGENTS.md文件不存在或格式不正确

    解决方案:

    # 检查AGENTS.md文件
    cat AGENTS.md
    
    # 创建基本AGENTS.md(如果需要)
    echo "# AGENTS" > AGENTS.md
    openskills sync
    

最终结果

调用frontend-design的Skill, 页面都是GLM4.6,直接让Trea 生成一个app 首页的官网landing页。

直接生成 image.png 使用skill

image.png