Files
skills_repo/README.md
jeremygan2021 3eda3a947b t
2026-03-04 19:31:16 +08:00

6.9 KiB
Raw Blame History

OpenCode Skills 技能文件夹

本文件夹包含 OpenCode 的各种技能Skills每个技能都是一个独立的功能模块可以为 AI 助手提供特定领域的能力。

目录结构

.opencode/
└── skills/
    ├── get-started/           # 入门引导技能
    ├── workspace-guide/        # 工作区指南技能
    ├── plugin-creator/         # 插件创建技能
    ├── skill-creator/          # 技能创建技能
    ├── command-creator/        # 命令创建技能
    ├── agent-creator/          # 代理创建技能
    └── event-publisher/        # 活动发布技能

技能详解

1. get-started入门引导

路径: skills/get-started/SKILL.md

功能: 引导新用户完成 OpenWork 的入门设置和 Chrome DevTools 演示。

触发条件: 用户说 "get started" 或类似表达

主要用途:

  • 欢迎新用户并介绍 OpenWork
  • 引导用户访问 Google.com 演示 Chrome DevTools 功能
  • 返回 "I'm on " 确认导航完成

2. workspace-guide工作区指南

路径: skills/workspace-guide/SKILL.md

功能: 向新用户介绍 OpenWork 并帮助其入门。

主要用途:

  • 区分技术用户和非技术用户,提供不同的说明
  • 解释 Skills技能和 Plugins插件的概念
  • 提供快速入门的操作建议

针对非技术用户:

  • 解释 OpenWork 像聊天应用一样简单
  • 指导如何总结、创建和组织文件

针对技术用户:

  • 介绍 OpenCode 的完整功能
  • 指向官方文档学习更多

3. plugin-creator插件创建

路径: skills/plugin-creator/SKILL.md

功能: 帮助创建 OpenCode 插件,提供插件开发指南和模板。

插件存放位置:

  • 项目插件: .opencode/plugins/*.js.ts
  • 全局插件: ~/.config/opencode/plugins/*.js.ts

从 npm 加载插件: 在 opencode.json 中配置:

{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["opencode-helicone-session", "opencode-wakatime"]
}

最小插件模板:

export const MyPlugin = async ({ project, client, $, directory, worktree }) => {
  return {
    // Hook implementations go here
  }
}

4. skill-creator技能创建

路径: skills/skill-creator/SKILL.md

功能: 帮助创建新的 OpenCode 技能,包含标准化的脚手架模板。

最佳使用方式:

  1. 用户先执行一个流程
  2. 然后说 "create a skill for this"
  3. 使用本技能创建可复用的技能

创建步骤:

  1. 如果需要配置,创建 .env.example(不含凭据)
  2. 询问用户是否需要存储凭据
  3. 创建 .gitignore 忽略 .env
  4. 添加可复用脚本到 scripts/ 目录

触发短语示例:

---
name: my-skill
description: |
  [技能一句话描述]

  触发条件:
  - "[具体短语1]"
  - "[具体短语2]"
  - "[具体短语3]"
---

文件夹结构:

skill-name/
├── SKILL.md              # 技能定义文件(必需)
├── scripts/              # 可复用脚本目录
├── .env                  # 环境变量和凭据
├── .env.example          # 环境变量模板
└── .gitignore            # 忽略 .env

5. command-creator命令创建

路径: skills/command-creator/SKILL.md

功能: 创建 OpenCode 自定义命令,用于重复性任务。

命令存放位置:

  • 项目命令: .opencode/commands/
  • 全局命令: ~/.config/opencode/commands/

命令文件示例:

---
description: Run tests with coverage
agent: build
model: gpt-5.2-codex
---

Run the full test suite with coverage report and show any failures.
Focus on the failing tests and suggest fixes.

使用方式: 在 TUI 中输入 /命令名 执行

高级功能:

  • $ARGUMENTS - 传递参数
  • $1, $2, $3 - 位置参数
  • !`command` - 注入 Shell 输出
  • @path/to/file - 包含文件内容

6. agent-creator代理创建

路径: skills/agent-creator/SKILL.md

功能: 创建新的 OpenCode 代理,默认使用 gpt-5.2-codex 模型。

创建命令:

opencode agent create

代理存放位置:

  • 项目代理: .opencode/agents/<name>.md
  • 全局代理: ~/.config/opencode/agents/<name>.md

代理模板:

---
description: One-line description of what the agent does
mode: subagent
model: gpt-5.2-codex
tools:
  write: false
  edit: false
  bash: false
---
You are a specialized agent. Describe your task, boundaries, and expected output.

配置选项:

  • mode: primary, subagent, 或 all
  • model: 指定使用的模型
  • tools: 控制代理的工具访问权限

7. event-publisher活动发布助手

路径: skills/event-publisher/SKILL.md

功能: 完整的一站式活动创建和发布流程:选题 → 文案生成 → 海报生成含Logo→ 活动发布。

触发条件:

  • "发布活动"、"创建活动"
  • "活动海报"、"活动文案"
  • "生成海报"、"上传活动"
  • "过年游园"、"春节活动"

工作流程:

用户提供信息
       ↓
生成文案 (generate_content.sh) → 得到 .md 文件
       ↓
生成海报 (generate_image.sh)
   → AI生成提示词
   → 生成图片
   → 自动叠加Logo
   → 保存提示词
       ↓
用户选择图片
       ↓
发布活动 (upload_event.sh)
   → 上传图片到OSS
   → 读取 .md 文件作为 description
   → 发布 API
       ↓
返回活动ID ✅

包含的脚本:

脚本 功能
generate_content.sh 生成标准化的 Markdown 活动文案
generate_prompt.sh 生成图片提示词
generate_image.sh 生成图片(含 Logo 处理)
add_logo.py 自动添加 quant-speed Logo
upload_event.sh 上传图片并发布活动

API 配置:

服务 API 状态
豆包图片生成 doubao-seedream-5-0-260128
豆包文本生成 doubao-seed-2-0-pro-260215
Nanobanana gemini-3-pro-image-preview
图片上传OSS data.tangledup-ai.com/upload
活动发布 market.quant-speed.com

通用约定

Frontmatter 格式

每个 SKILL.md 文件顶部都包含 YAML 格式的元数据:

---
name: skill-name        # 技能名称(小写,与文件夹名一致)
description: |          # 技能描述(触发条件和使用说明)
  技能功能描述
  触发条件:
  - "具体短语1"
  - "具体短语2"
---

快速使用标记

  • Quick Usage (Already Configured): 表示该技能已预配置,可直接使用
  • First-Time Setup (If Not Configured): 表示首次使用时的设置步骤

官方文档

更多详细信息请参考 OpenCode 官方文档: