【无标题】

一、升级 Node.js(必须先做)

OpenCode 要求 Node.js 18+,你当前的 v10.24.0 跑不起来 。

  1. 安装 nvm(国内镜像,绕过 GitHub)

创建 nvm 目录并手动下载核心文件(绕过 git clone)

mkdir -p ~/.nvm && cd ~/.nvm

wget https://gitee.com/mirrors/nvm/raw/v0.39.7/nvm.sh -O nvm.sh

wget https://gitee.com/mirrors/nvm/raw/v0.39.7/nvm-exec -O nvm-exec

wget https://gitee.com/mirrors/nvm/raw/v0.39.7/bash_completion -O bash_completion

chmod +x nvm-exec

配置 shell

cat >> ~/.bashrc << 'EOF'

export NVM_DIR=" H O M E / . n v m " − s " HOME/.nvm" \[ -s " HOME/.nvm"\[−s"NVM_DIR/nvm.sh" && . " N V M D I R / n v m . s h " − s " NVM_DIR/nvm.sh" \[ -s " NVMDIR/nvm.sh"\[−s"NVM_DIR/bash_completion" && . "$NVM_DIR/bash_completion"

EOF

source ~/.bashrc

  1. 安装 Node.js 18(国内镜像)

关键:指向国内镜像,否则 nvm install 会卡死

export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node

echo 'export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node' >> ~/.bashrc

source ~/.bashrc

安装 Node 18

nvm install 18

nvm alias default 18

验证

node -v # v18.x.x

npm -v # 9.x.x 或 10.x.x

💡 如果 nvm install 18 还是卡,用离线方案:从 https://npmmirror.com/mirrors/node/v18.20.4/node-v18.20.4-linux-x64.tar.xz 手动下载,解压到 ~/.nvm/versions/node/v18.20.4/。

二、安装 OpenCode

方式一:npm 全局安装(推荐)

设置 npm 国内镜像

npm config set registry https://registry.npmmirror.com

全局安装

npm install -g opencode-ai

验证

opencode --version

方式二:一键脚本(需要能访问 opencode.ai)

curl -fsSL https://opencode.ai/install | bash

启动 OpenCode

在项目目录启动终端 TUI

opencode

或启动 Web 界面(远程/容器环境有用)

opencode web --hostname 0.0.0.0 --port 4242

三、添加自定义 Skill(核心)

OpenCode 的 Skill 是放在特定目录下的 SKILL.md 文件,OpenCode 会自动发现并加载 。

  1. Skill 的存放位置
    OpenCode 会搜索以下目录 :
    作用域

路径

项目级(仅当前项目)

<项目根>/.opencode/skills/<skill名>/SKILL.md

全局(所有项目)

~/.config/opencode/skills/<skill名>/SKILL.md

Claude 兼容(项目级)

<项目根>/.claude/skills/<skill名>/SKILL.md

Claude 兼容(全局)

~/.claude/skills/<skill名>/SKILL.md

💡 建议:个人常用 skill 放全局 ~/.config/opencode/skills/;项目专属 skill 放项目内的 .opencode/skills/

  1. SKILL.md 的格式规范
    每个 Skill 是一个目录,里面至少有一个 SKILL.md 文件 :
    skill-name/
    ├── SKILL.md # 必需:核心定义文件
    ├── scripts/ # 可选:可执行脚本(Python/Bash)
    ├── references/ # 可选:参考文档
    └── assets/ # 可选:模板、图片等资源

SKILL.md 的开头必须是 YAML frontmatter,目前 OpenCode 仅识别这些字段 :

name: skill-name # 必填,1-64 字符,小写字母数字+连字符,必须和目录名一致

description: 描述文本 # 必填,1-1024 字符,要写清楚"做什么、什么时候用、举几个例子"
license: MIT # 可选
compatibility: opencode # 可选
metadata: # 可选
key: value

name 的命名规则(正则 [1](#1)+(-a-z0-9+)*$):

只能小写字母、数字、连字符

不能以 - 开头或结尾

不能有连续的 --

必须与包含 SKILL.md 的目录名一致


  1. a-z0-9 ↩︎
相关推荐
还卿一钵无情泪5 小时前
Docker 部署Unsloth 绕开环境配置难题
运维·人工智能·docker·ai·容器·nlp·干货
码士集团小青5 小时前
同样的RAG系统,分块策略不同,命中率能差20%
ai
Hello_Pyhx7 小时前
VoiceStudio v0.5.6:从桌面生成到本地语音 API
ai·语音识别·克隆·声音
最强小杰7 小时前
Claude Opus 4.8 调用一直报 529 怎么办?同样请求换旧模型却正常——附 429/529 双桶退避代码
ai·github
goehou8 小时前
LLM 结构化输出全解:从 Prompt 约束到 Schema 硬保证,三层实现怎么选
ai·llm·json·agent·教程·结构化输出
?? Daisy10 小时前
ZCode 添加自定义模型:自定义供应商的字段与易错点(2026-09)
人工智能·ai·ai编程
奇牙coding11 小时前
GPT-5.5 API 报 401 但 GPT-5.4 正常怎么办?不是 Key 失效,是 Organization 头的强制校验变了
java·网络·gpt·ai
sbjdhjd11 小时前
智能体开始“动手”之后:OpenAI越权事件、Anthropic算力资本化与开放权重模型竞逐 | AI与SI行业日报整理(9月29日—10月6日)
大数据·人工智能·经验分享·笔记·ai·chatgpt·开源
belldeep12 小时前
AI-3D 真人剧如何制作
人工智能·3d·ai
大飞记Python13 小时前
MiMo-V2.6-Distill-Qwen-9B 本地部署实测:8GB内存可跑,但推理能力让人失望
人工智能·ai·ai编程