目录
[二、OpenCode 介绍与环境搭建](#二、OpenCode 介绍与环境搭建)
[2.1 OpenCode 介绍](#2.1 OpenCode 介绍)
[2.1.1 OpenCode 是什么](#2.1.1 OpenCode 是什么)
[2.1.2 OpenCode 主要特点](#2.1.2 OpenCode 主要特点)
[2.1.3 OpenCode 使用场景](#2.1.3 OpenCode 使用场景)
[2.2 OpenCode 本地环境搭建](#2.2 OpenCode 本地环境搭建)
[2.2.1 安装ndoejs](#2.2.1 安装ndoejs)
[2.2.2 使用npm安装OpenCode](#2.2.2 使用npm安装OpenCode)
[2.2.3 效果测试](#2.2.3 效果测试)
[2.2.4 opencode 基本使用技巧](#2.2.4 opencode 基本使用技巧)
[三、OpenCode 配置大模型](#三、OpenCode 配置大模型)
[3.1 OpenCode 配置大模型过程](#3.1 OpenCode 配置大模型过程)
[3.1.1 前置准备](#3.1.1 前置准备)
[3.1.2 进入模型配置窗口](#3.1.2 进入模型配置窗口)
[四、OpenCode 配置和使用Skills](#四、OpenCode 配置和使用Skills)
[4.1 skills介绍](#4.1 skills介绍)
[4.1.1 skills是什么](#4.1.1 skills是什么)
[4.1.2 为什么需要 Skills?它解决了什么问题?](#4.1.2 为什么需要 Skills?它解决了什么问题?)
[4.1.3 Skills 工作原理](#4.1.3 Skills 工作原理)
[4.1.4 Skills 与其他能力的协作关系](#4.1.4 Skills 与其他能力的协作关系)
[4.1.5 Skills 核心组成](#4.1.5 Skills 核心组成)
[4.2 使用模板Skills](#4.2 使用模板Skills)
[4.2.1 前置问题](#4.2.1 前置问题)
[4.2.2 获取skills包](#4.2.2 获取skills包)
[4.2.3 模板skills效果验证](#4.2.3 模板skills效果验证)
[4.3 开发自己的Skills](#4.3 开发自己的Skills)
[4.3.1 编写生成自媒体文案Skills](#4.3.1 编写生成自媒体文案Skills)
[4.3.2 效果验证](#4.3.2 效果验证)
[4.3.3 常用的Skill 推荐](#4.3.3 常用的Skill 推荐)
一、前言
Agent Skills 最近非常火,它是既 MCP 后 Anthropic 推出的又一个 Agent 领域的行业标准。它的成长路线和 MCP 也非常像,25 年 10 月份发布时只有 Anthropic 自家产品支持,后来 Cursor、Codex、Opencode、Gemini CLI 等产品看到了 Skills 的优势于是纷纷开始支持。再后来社区开始涌现大量的开源 Skills 以及 Skills 开放市场,当下大家已经默认 Skills 成为了又一个扩展 Agent 能力的标准实践。
简单来说,Skills 的作用就是将那些重复性的、专业的流程进行打包封装。当你需要使用某种能力时,不再需要像过去那样每次都去查阅手册或重新输入冗长的提示词,而是像调用工具一样直接使用。
二、OpenCode 介绍与环境搭建
2.1 OpenCode 介绍
2.1.1 OpenCode 是什么
OpenCode 是一款基于终端(Terminal)的高级 AI 编程助手,其核心竞争力在于独创的 Plan(架构设计)与 Build(代码实现)双模式工作流 ,以及对 75+ 种大语言模型(包括 GLM-4.7, DeepSeek-V3 等)的无缝支持。

OpenCode 是一个完全开源的AI编程助手/代理(AI Coding Agent)。它的核心理念是开放、模型无关和尊重隐私,旨在成为开发者终端里的一个强大而灵活的AI搭档。
2.1.2 OpenCode 主要特点
OpenCode 具备如下核心特点:
-
模型无关性:
- 它不与任何一家AI模型供应商捆绑。你可以连接并切换使用 OpenAI 的 GPT、Anthropic 的 Claude、Google 的 Gemini 等75种以上的云端模型,也可以连接本地部署的模型。
-
终端优先:
- 其主要交互界面是一个精心设计的终端用户界面,你可以在项目目录中直接运行它,让AI助手基于整个项目的上下文来工作。
-
开源与隐私:
- 代码完全开源,这意味着你可以审查、信任甚至修改它。它不强制要求将你的代码上传到云端,你可以选择在本地运行,更好地保护代码隐私。
-
项目级理解:
- 它不仅能处理单个文件,还能通过读取和分析你的整个项目代码库来理解上下文,从而提供更准确的建议和修改。
-
双代理模式:
-
提供两种工作模式以确保安全:
-
plan模式:只读分析,为你提供解释、建议或修改计划,但不会实际改动代码。 -
build模式:在获得你的确认后,可以执行具体的代码修改、重构等操作。
-
-
2.1.3 OpenCode 使用场景
OpenCode是一个深度集成在终端里的AI编程助手,它尤其适合需要将AI能力融入日常工作流又不想被特定编辑器或模型绑定的开发者。它的使用场景非常广泛,下面列出了几个典型场景和对应优势:
|------------|--------------------------------|------------------------------------------------------------|
| 场景分类 | 具体任务示例 | OpenCode的优势 |
| 代码理解与探索 | 快速理解新项目结构、解释复杂函数逻辑、梳理代码库依赖关系。 | 通过/init分析整个项目,能基于完整项目上下文和LSP智能提示给出精准解释,比片段式问答更高效。 |
| 开发与调试 | 编写新功能、修复Bug、重构代码(如重命名函数、拆分模块)。 | 双代理模式保证安全:先用plan模式(只读)分析,确认后再用build模式执行修改。支持一键撤销,回退不满意的更改。 |
| 项目维护与自动化 | 生成测试用例、编写文档、创建Dockerfile或部署脚本。 | 能与项目技术栈深度结合,生成符合现有规范的代码。可编写脚本或集成到CI/CD,实现自动化。 |
| 团队协作与审查 | 分享代码会话、辅助代码审查、帮助新成员熟悉项目。 | 可生成可分享的会话链接,他人能在浏览器中查看完整的分析、修改过程和对话,便于协作和知识传递。 |
| 追求隐私与控制的开发 | 处理敏感或私有代码库、在合规要求严格的环境中使用。 | 隐私优先:默认代码数据不传云端;支持连接本地模型(如Ollama),实现完全离线。 |
2.2 OpenCode 本地环境搭建
接下来基于windows 环境快速搭建OpenCode 的使用环境。
2.2.1 安装ndoejs
Node.js 要求:≥ 18(强烈推荐 20 LTS) ,这个安装比较简单,就不再赘述了,安装完成后,可以使用下面的命令查看

2.2.2 使用npm安装OpenCode
打开 Windows 的 CMD (命令提示符),输入以下命令并回车
bash
# 安装opencode
npm i -g opencode-ai
# 验证安装
opencode --version
效果如下:

安装完成后,可以在本地用户的目录下看到opencode的目录

2.2.3 效果测试
新建一个空文件夹,然后切换进入后,输入opencode,看到下面的效果,说明基于nodejs环境配置opencode就成功了

可以在对话框打个招呼,opencode安装完成后,内部会有内置的大模型,所以可以对用户的输入进行响应
- 默认的内置大模型效果不是很理想,实际使用的时候,还需要根据需求配置外部的大模型,后面会说明

2.2.4 opencode 基本使用技巧
为了方便后续更好的操作opencode ,下面列举一些opencode 窗口的使用说明
- opencode 的一些操作是基于命令方式交换的

如何查看内置的大模型呢,直接在对话框输入 /model ,跳转到下面的窗口,可以看到内置的几个免费的大模型

下面给出了常用的操作命令
|-----------|-----------|-------------------------------------|
| 命令类别 | 命令 | 功能说明 |
| 连接与设置 | /connect | 新增LLM提供商(如Anthropic、OpenAI) |
| | /models | 列出并切换可用的AI模型 |
| | /themes | 切换终端界面的主题 |
| | /help | 显示帮助对话框 |
| 对话管理 | /new | 开始一个新的对话 |
| | /sessions | 列出所有历史对话并切换 |
| | /compact | 压缩当前对话内容,以节省上下文窗口 |
| | /export | 将会话记录导出到文件 |
| | /share | 生成当前对话的分享链接 |
| 编辑与撤销 | /undo | 撤销上一条 AI 消息及其带来的所有文件更改 |
| | /redo | 重做已撤销的更改 |
| | /editor | 打开外部编辑器 |
| 项目与代理 | /init | 初始化项目,扫描并生成 AGENTS.md 文件,帮助AI理解项目结构 |
| | /agents | 切换或管理AI代理(如 Plan/Build 模式) |
| | /review | 审查未提交的代码更改 |
| | /mcp | 管理模型上下文协议(Model Context Protocol) |
| 其他 | /exit | 退出 OpenCode 应用程序 |
三、OpenCode 配置大模型
3.1 OpenCode 配置大模型过程
内置的大模型很多情况下不能很好的满足使用,下面参考下面的步骤配置自己的大模型。
3.1.1 前置准备
为了下面在OpenCode 中顺利配置大模型,这里以deepseek,和智普AI为例,因此需要先分别登录到deepseek和智普AI开发平台,获取apikey,因为后续配置大模型的时候,最核心的就是这个apikey,智普AI开发平台地址:https://open.bigmodel.cn/usercenter/proj-mgmt/apikeys ,在下面获取自己的apikey

3.1.2 进入模型配置窗口
直接在对话框输入 /connect ,跳出下面的窗口

选择/connect这一项,跳出下面的一个搜索框

比如在这里我们输入deepseek

然后将你的apikey输入进去即可

再次回到主页,输入 /models,就能看到deepseek的推理模型被我们配置进去了

上面是以deepseek的配置为例,智普大模型的配置也可以参考同样的操作配置即可
最后,可以测试下,可以看到,当模型切换后,就使用了上述配置的智普GLM大模型进行了问题回答

四、OpenCode 配置和使用Skills
4.1 skills介绍
4.1.1 skills是什么
Skills 是将人类在某个领域的"专业方法论 + 执行流程 + 工具资源"打包成一个可复用、可调用、可共享的标准化能力模块,供 AI 智能体(Agent)自动执行。
你可以把它理解为:
-
给 AI 的 "岗位培训手册"
-
或者 "数字员工入职包"
-
甚至是 "AI 能力胶囊"
举个生活的例子:我会打网球,当球飞过来,我拿起球拍跑位,在合适的时机、用合适的力度击球,让球准确落在对方场地不出界,这一整套操作逻辑,就叫打网球"技能"。
4.1.2 为什么需要 Skills?它解决了什么问题?
|----------------------------|---------------------------------------------|
| 传统方式的问题 | Skills 如何解决 |
| 提示词不稳定:每次都要重写,效果波动大 | ✅ 将最佳实践固化为 SKILL.md,确保一致性 |
| Token 浪费严重:每次对话都塞入长 prompt | ✅ 渐进式披露(Progressive Disclosure):只在触发时加载完整指令 |
| 无法执行复杂操作:如读写文件、调 API、跑脚本 | ✅ 支持绑定 Python/Bash 脚本、工具调用 |
| 重复劳动无法自动化 | ✅ 一次创建,无限次调用,支持共享/变现 |
| 幻觉率高:纯文本推理易出错 | ✅ 关键逻辑由脚本在沙盒中执行,结果更可靠 |
4.1.3 Skills 工作原理
Skills 最大的设计亮点,是采用了渐进式披露机制。它不会一次性加载所有内容,而是分层、按需调用:
1)Level 1:元数据层(启动时加载)
• 只读取 name 和 description
• 每个 Skill 大约 100 tokens
• 让系统知道「具备哪些可用能力」
2)Level 2:核心指令层(任务触发时加载)
• 当任务匹配时,读取 SKILL.md 正文
• 通常不超过 5000 tokens
• 描述主要流程、操作要点和约束条件
3)Level 3:资源层(按需加载)
• 脚本、模板、参考文档等
• 仅在执行阶段读取,不进入上下文
• 理论上没有 token 限制
可以理解为:系统只在需要时打开相应的「技能模块」,让上下文始终保持最轻量、最高效。 对比传统 Prompt 而言,Skills 则是模块化 Prompt + 上下文调度系统。
通过这种机制,Skills 解决了众多实际问题:
• 上下文窗口的成本问题:在复杂任务中可降低 40%-60% 的上下文占用
• 知识的可复用性:Skills 文件可一次创建、共享、复用、更新
• 执行的确定性:提供 SOP 工作流模板,减少理解偏差
下面这张图,形象描述了Skills 在执行时的核心流程

4.1.4 Skills 与其他能力的协作关系
-
Skills 和 Agent 的关系
- Agent 从架构层面可以归为基于模型和资源层之上的应用层。在 Agent 之上可以定义 System Prompt、引用外部知识库、MCP 等外部工具。但如何引用、能够进行标准化的给到 Agent,实际过程我们更好关注的是问题解决。因此将其组合,利用 Skills 的方式进行包装为一个技能。Agent 协助做拆解、规划、执行与反思,而 Skills 能更好的帮我们在拆解和执行上做更细粒度的标准化拆解,可定义为提供能力与服务中间层。
-
Skills 和 MCP 的关系
- 实际技能模板纳入了解决特定场景问题需要的工具和外部能力,这些能力可以是通过 MCP 的方式接入。我们可以理解为通过 Skills 定义对 MCP 能力进行组装和编排。
-
Skills 和 Rules 的关系
- 在 Skills 中通过引用 Rules,给 AI 行为提供约束和指导,确保 AI 能够按照既定的风格规则进行规范化输出。
-
Skills 和 RAG 的关系
- 在 Skills 定义中会更加清楚地说明具体知识库的应用规则,给出更加准确的知识库检索流程与应用规范。让 AI 是有目的的查询。
4.1.5 Skills 核心组成
在 AI 界,Skills 就是让大模型按照特定的方法论去行动的机制,你可以理解为"超级进化版的提示词",通常由三部分组成:
-
元数据 (Metadata): 包含对这个技能的简短描述。它保存在全局上下文中,因为体积小,所以非常节省 Tokens(省钱又省心)。
-
行动指南 (Action Guide): 这部分才是真正的提示词,规定了 AI 每一步该怎么做。
-
资源文件 (Resources): 这是最厉害的地方!它可能包含 Python 代码 或其他执行程序,保证程序在调用 Skill 时能完成复杂的动作。
下面是一个标准的 Skill 目录结构:
bash
my-skill/
├── SKILL.md ← 唯一必需文件(全大写)
├── scripts/
│ └── generate_ui.py ← 可执行脚本(Python/Bash等)
├── refs/
│ ├── template.md ← 参考模板
│ └── examples/ ← 示例输出
└── README.md ← 人类可读说明(非必需)
下面给出一个参考示例
- 注意:
description字段最关键!AI 靠它判断是否调用该 Skill
bash
---
name: "xiaohongshu-copywriter"
description: >-
自动生成小红书爆款文案。
触发关键词:小红书、种草、笔记、爆款文案、KOL风格
trigger_keywords:
- 小红书
- 种草
- 爆款文案
- 笔记
version: "1.2"
author: "花叔"
---
你现在是「小红书百万粉博主」,请按以下规则生成内容:
## 核心原则
- 开头用感叹句或疑问句抓眼球
- 中间穿插 emoji(每2-3句一个)
- 结尾带话题标签 #xxx
- 语气亲切,像跟闺蜜聊天
## 输出格式
1. 标题(带🔥或💯)
2. 正文(200字以内)
3. 3个相关话题标签
## 示例
- 用户输入:"推荐一款平价遮瑕"
- 你输出:
🔥黄皮救星!50块遮瑕居然能打哭专柜?
姐妹们我真的要吹爆这个国货遮瑕!!👏
黄黑皮暗沉痘印一抹隐形,持妆8小时不氧化~
关键才49块!学生党闭眼冲!💸
#平价彩妆 #遮瑕推荐 #黄皮必备
4.2 使用模板Skills
4.2.1 前置问题
上面配置完成后,接下来就可以基于上面的OpenCode 环境来配置并使用skills了,在使用之前,我们先来问下面一个问题,通过回答的结果,可以发现目前OpenCode 检测到当前的环境中没有可用的skills

接下来,我们从一些skills网站上下载压缩包,或者从github把skills下载下来,按照规范,将得到的skills包文件放在下面这个skill包文件中

4.2.2 获取skills包
GitHub地址:https://github.com/anthropics/skills

进入到这个git地址链接后,里面有个skill目录,点击去可以看到里面有一些可以直接拿来使用的skills文件

我们将其下载下来,放到上面创建的那个skill目录下

放进去之后,使用上面相同的问题提问,再次验证一下,可以看到,此时就检测到有我们刚刚获取的一些skills技能了

4.2.3 模板skills效果验证
上一步最后,可以看到,opencode能够检测到当前的系统环境中存在了多个skills技能,接下来我们直接使用一下这些skills,在对话框中,输入下面的问题,我们的目的是写一篇文章,最后输出到指定的本地目录下
bash
写一篇2026年新能源发展趋势的文章,1000字以内,最后放到这个目录,D:\工作空间\open-project


全部执行完成后,可以在本地指定的目录下看到,这个文章的文档文件已经生成了

4.3 开发自己的Skills
通过上面的内容我们了解了一个完整的Skills应该是什么结构,下面通过一个简单的示例演示下如何开发属于自己的Skills
4.3.1 编写生成自媒体文案Skills
如下,在skill目录下创建一个属于你自己的skill目录,在下面的网站中找到一个模板Skill
比如,我这里选择了下面这个模板

将下载的包放在skill目录下,然后对这个模板根据自己的需要做简单的微调

4.3.2 效果验证
再次打开opencode,提问:我有哪些skills?可以看到,此时上面这个skill就加载进去了

最后,我们输入一个问题,让这个skill生效 ,通过效果可以看到,最终调用了上面这个skill完成了一篇公众号文章的输出

4.3.3 常用的Skill 推荐
为了方便后续的学习和研究,下面推荐几个获取skill技能包的网站
Anthropic官方Skills市场
https://github.com/anthropics/skills
一句话总结:由Anthropic官方维护,提供超50,000+标准化技能包,覆盖PDF处理、代码生成等高频场景,支持一键安装与跨平台兼容。
GitHub社区生态市场
https://learn.github.com/skills
一句话总结: 开发者主导的开源Skills集合地,集成GitHub Actions实现交互式学习,主打灵活自定义与技术创新(如持续集成、CLI开发等)。
ObraSuperpowers社区市场
一句话总结: 极客向第三方技能库,专注轻量化、高精度工作流(如Linear问题解析),以"自我反思指令集"降低上下文开销。
awesome-claude-skills 社区市场
https://github.com/ComposioHQ/awesome-claude-skills
一句话总结 :开发者社区主导的 开源 Skills 资源库,汇集 500+ 高质量技能包,覆盖文档处理、数据分析、商业自动化等 9 大高频场景,支持模块化调用与分层加载机制,显著提升 Claude 的垂直领域执行力
五、写在文末
本文详细介绍了基于OpenCode环境下Skills的部署,配置和使用,最后通过一个实际案例详细介绍了如何使用Skills,有兴趣的同学还可以基于此继续深入研究,本篇到此结束,感谢观看。