关于 opencode-primitives
opencode-primitives 是一份参考技能,用于依据 OpenCode 功能实现 OpenWork 行为。它帮助开发者一致地应用有关技能、插件、MCP 服务和配置的文档规则。
主要功能
- 01参考 OpenCode 官方文档
- 02说明技能发现与元数据规则
- 03介绍插件位置和加载顺序
- 04记录 MCP 服务配置方式
- 05概述配置格式与优先级
适用场景
- 01基于 OpenCode 功能实现 OpenWork 工作流
- 02设计技能和插件安装指引
- 03构建 MCP 与权限设置界面
MCP 相关
它说明如何在 opencode.json 中配置 MCP 服务,包括本地和远程服务条目、启用状态、工具选择及 OAuth 处理。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ different-ai/ openwork --skill opencode-primitives安装后在 Claude Code 中输入/opencode-primitives确认已加载。
详细介绍
用途
每当 OpenWork 的行为直接基于 OpenCode 原语(技能、插件、MCP 服务、opencode.json 配置、工具/权限)实现时,都使用此技能。它以 OpenCode 官方文档为依据,并确保 UI 中的术语保持一致。
文档来源(相关时务必引用)
- 技能:https://opencode.ai/docs/skills
- 插件:https://opencode.ai/docs/plugins/
- MCP 服务:https://opencode.ai/docs/mcp-servers/
- 配置(opencode.json、位置、优先级):https://opencode.ai/docs/config/
需要应用的关键信息
技能
- 技能文件位于
.opencode/skills/<name>/SKILL.md或全局路径~/.config/opencode/skills/<name>/SKILL.md。 - 技能通过向上遍历至 git 工作树来发现,并加载
.opencode/或.claude/skills/中所有匹配的skills/*/SKILL.md。 SKILL.md必须包含 YAML frontmatter:name+description。- 名称规则:使用小写字母和数字,以单个连字符分隔(
^[a-z0-9]+(-[a-z0-9]+)*$),长度为 1-64,且必须与目录名称一致。 - 描述长度:1-1024 个字符。
- 访问权限由
opencode.json权限(permission.skill中的 allow/deny/ask)控制。
插件
- 本地插件位于
.opencode/plugins/(项目级)或~/.config/opencode/plugins/(全局)。 - npm 插件列在
opencode.json的plugin下,并在启动时通过 Bun 安装。 - 加载顺序:全局配置、项目配置、全局插件目录、项目插件目录。
MCP 服务
- MCP 服务在
opencode.json的mcp下定义,并使用唯一名称。 - 本地服务使用
type: "local"+command数组;远程服务使用type: "remote"+url。 - 可以通过
enabled启用或停用服务。 - MCP 工具通过配置中的
tools管理,其中包括 glob 模式。 - 远程服务的 OAuth 会自动处理;可以预先注册或禁用。
配置(opencode.json)
- 支持 JSON 和 JSONC。
- 优先级顺序:远程
.well-known/opencode-> 全局~/.config/opencode/opencode.json-> 自定义路径 -> 项目opencode.json->.opencode/目录 -> 内联环境变量覆盖。 .opencode子目录默认使用复数名称(agents/、commands/、plugins/、skills/、tools/、themes/),也支持单数名称以兼容旧版。
何时调用
- 添加或调整引用技能、插件、MCP 服务或 OpenCode 配置的 OpenWork 工作流。
- 设计涉及技能/插件安装、配置位置或权限提示的引导说明。
- 实现展示 OpenCode 原语的 UI(技能标签页、插件管理器、MCP 开关)。
用法
在实现或记录任何映射到 OpenCode 原语的 OpenWork 行为之前,调用 skill({ name: "opencode-primitives" })。
评论
支持 Markdown