Skill本质就是在一个特定的文件夹里,创建一个格式规范的 Markdown 文件,用来教 AI 如何完成一项特定的任务。整个过程就像是在给 AI 写一份清晰的操作说明书。

下面我为你梳理了两种主流的创建方法,你可以根据自己的习惯来选择。

📝 方法一:手动创建(最基础)

这种方式能让你完全掌控 Skill 的每一个细节。

  1. 创建文件夹:在 OpenCode 能识别到的路径下,为你的新 Skill 创建一个文件夹。文件夹名就是未来的 Skill 名,需遵循命名规范。

    • 项目局部路径(仅当前项目可用):.opencode/skills/<你的-skill-名>/
    • 用户全局路径(所有项目可用):~/.config/opencode/skills/<你的-skill-名>/
  2. 创建核心文件:在上述文件夹中,新建一个名为 SKILL.md 的文件(注意大小写)。

  3. 编写文件内容SKILL.md 由两部分组成,你可以直接复制下面的模板进行修改。

    ---
    # 1. YAML Frontmatter (元数据)
    name: your-skill-name      # 必填,必须与文件夹名一致 
    description: 用一句话清晰描述这个技能是做什么的。 # 必填,Agent靠它来理解和选择 
    # 可选字段,例如:
    # author: your-name
    # version: 1.0.0
    ---
    
    # 2. Markdown 正文 (核心指令)
    
    ## 技能目标
    详细说明这个技能要解决什么问题,在什么场景下使用。
    
    ## 执行步骤
    1.  **第一步**:清晰地写出要做的第一件事。
    2.  **第二步**:说明第二步,如果涉及命令,可以用代码块标出,例如:
        ```bash
        git log --oneline -5
        ```
    3.  **第三步**:说明如何判断任务是否成功,或者如何处理可能出现的错误。
    
    ## 注意事项
    *   列出任何需要特别注意的点,比如权限要求、依赖的环境等。
    

⚡ 方法二:对话生成(最高效)

这是官方推荐的高效方式,你只需要通过对话,让 OpenCode 自己帮你写 Skill。

  • 核心思想实战 -> 总结 -> 测试 -> 迭代
  • 操作步骤
    1. 实战:在 OpenCode 会话中,像平时一样通过对话完成一个具体的任务(例如合并两个 Git 仓库)。
    2. 总结:任务成功后,在同一个会话中输入命令:/skill-creator 请把刚才的任务方法总结为一个标准技能。OpenCode 会自动分析你的操作过程,并生成一个 SKILL.md 文件放在正确的目录下。
    3. 测试与迭代:新建一个会话,测试这个新 Skill 的效果。如果效果不完美,可以再次执行任务,并用 /skill-creator 命令要求它基于这次的经验改进之前的 Skill。经过几轮迭代,你的 Skill 就会非常稳定可靠。

💡 技能的基本结构

无论用哪种方法创建,一个完整的 Skill 不仅仅是一个 SKILL.md 文件,它可以有更丰富的结构来支持复杂的功能:

your-skill-name/          # 技能文件夹,名称即技能ID
├── SKILL.md              # 核心指令文件(必需)
├── scripts/              # (可选)存放可被 Skill 调用的脚本
├── references/           # (可选)存放供 Agent 阅读的参考文档
└── assets/               # (可选)存放模板、图片等静态资源

🔧 进阶:权限与工具

  • 控制访问权限:如果你想限制某些高风险 Skill 的使用(比如只有特定 Agent 能用,或使用时需询问用户),可以在项目根目录的 opencode.json 文件中配置 permission.skill 规则。
  • 区分 Command, Agent 和 Skill
    • Command (/):是你输入的命令快捷方式。
    • Agent:是执行任务的角色(如 plan 智能体)。
    • Skill:是 Agent 可以按需加载的知识操作流程
Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐