Install
openclaw skills install @leeshunee/kinema-skill-making-pipelineKinemaClaw cross-platform Skill development and publishing specification. Defines the standard process for Codex and Claude plugin development, version management, marketplace indexing, and publishing. All skills built in KinemaClaw must follow this specification. Trigger: Creating new skills, publishing skills, modifying existing skills.
openclaw skills install @leeshunee/kinema-skill-making-pipeline本规范定义了 KinemaClaw ecosystem 中 skill 的开发、版本管理和跨 Codex、Claude Code、GitHub、ClawHub 发布的标准化流程。
首次使用此 skill 前,必须先读取 references/ONBOARDING.md 完成环境配置。
projects/<skill-name>/
├── .claude-plugin/plugin.json # Required: Claude Code manifest
├── .codex-plugin/plugin.json # Required: Codex manifest
├── skills/<skill-name>/SKILL.md # Required: Codex discovery entry
├── SKILL.md # Required: skill definition
├── scripts/ # Optional: automation scripts
├── references/ # Required: references and onboarding
│ └── ONBOARDING.md # Required: onboarding guide
└── other project files
# Good | 好
git commit -m "Add install command to searxng-search CLI"
# Bad | 不好
git commit -m "update"
git commit -m "fix stuff"
发版流程已外置到 references/release-process.md。Agent 发版时必须读取该文档并按 Step 1→9 顺序执行。
发布前先判断类型 | Determine release type first:
| 类型 | 额外动作 |
|---|---|
| 全新 skill 首发(marketplace 索引中尚无该 skill) | 走常规流程 + 更新 marketplace 索引 → 读取 references/marketplace-publishing.md |
| 已有 skill 版本更新 | 仅走常规流程,不动 marketplace 索引 |
判断方法:分别在 marketplace 的
.claude-plugin/marketplace.json与.agents/plugins/marketplace.json中检索本 skill 的name。任一支持平台缺失都需要补登记;均存在则是版本更新。
发版流程概要(详细步骤见 reference):
@commit-id)~/.openclaw 存在时)版本校验工具:
bash scripts/version-check.sh [expected-version]— 校验 SKILL.md、Claude/Codex manifests 与 git tag 四处版本号一致。
Follow Semantic Versioning: | 遵循语义化版本 (Semantic Versioning):
v1.0.0 → First release | 首次发布
v1.1.0 → New features | 新功能
v1.1.1 → Bug fixes | bug 修复
v2.0.0 → Breaking changes | 重大变更
Each skill must include: | 每个 skill 必须包含:
Must include: | 包含:
作者声明规范:
SKILL.md 正文开头(标题之后)必须声明作者信息:
# Skill Name
- **Author**: [AuthorName](https://github.com/authorname)
- **Organization**: [OrgName](https://github.com/orgname)
- **GitHub**: https://github.com/orgname/skill-name
| 字段 | 说明 |
|---|---|
| Author | 作者 GitHub 个人主页链接 |
| Organization | 所属组织 GitHub 主页链接 |
| GitHub | Skill 源码仓库链接 |
displayName 格式规范:
references/ONBOARDING.md 是必选文件。 SKILL.md 不包含安装/配置细节,仅引用 references/ONBOARDING.md。
SKILL.md 文件开头(# 标题之后、Environment Variables 之前)必须包含以下引导块:
## ⚠️ Before First Use | 首次使用必读
**首次使用此 skill 前,必须先读取 [references/ONBOARDING.md](references/ONBOARDING.md) 完成环境配置。**
- **首次配置** → 读取 references/ONBOARDING.md 完成全部步骤
- **环境不可用**(命令不存在、依赖缺失、连接失败)→ 读取 references/ONBOARDING.md Troubleshooting 排查修复
- **配置完成后** → 直接使用下方 Run Commands
Agent 读取 SKILL.md 时会看到此块,根据场景决定是否继续读取 references/ONBOARDING.md。
references/ONBOARDING.md 是给 AI Agent 执行的引导文档,必须按以下结构编写:
# <Skill Name> Onboarding
> 本文档指导 AI Agent 完成首次环境配置。按顺序执行,遇到问题时参考 Troubleshooting。
## Prerequisites | 前置条件
(列出运行此 skill 所需的系统和软件条件)
## Step 1: <步骤名称>
### 检测
(检测命令 + 期望输出,agent 据此判断是否需要执行本步骤)
### 安装
(多种降级方案,按优先级排列,agent 逐条尝试)
### 验证
(验证命令 + 期望输出,确认本步骤完成)
## Step 2: <步骤名称>
...
## Step N: <验证连接或最终检查>
## Troubleshooting | 故障排除
(按错误信息分类的排查表,每行包含:错误 → 原因 → 解决方案)
编写规则:
| 规则 | 说明 |
|---|---|
| 按顺序执行 | Steps 之间有依赖关系,不可跳步 |
| 每步可独立验证 | 每个 Step 必须有验证命令 + 期望输出 |
| 降级策略 | 每步提供多种方案(至少 2 种),适配不同环境 |
| 不硬编码路径 | 用 <skill_dir> 等占位符,agent 运行时替换 |
| 需要用户输入时明确标注 | 如"必须询问用户" "用户提供",不猜测 |
| Troubleshooting 覆盖常见错误 | 列出所有已知失败场景和解决方案 |
对于安装配置较复杂的 skill,可提供 scripts/setup.reference.sh 作为参考范式。
注意:
reference,明确标识为参考文件而非可执行脚本# scripts/setup.reference.sh - SETUP REFERENCE (DO NOT EXECUTE DIRECTLY)
# Agent should read this file and adapt commands to current environment.
# Step 1: Check Python
python3 --version
# Step 2: Install dependencies (try in order)
uv pip install --system requests 2>/dev/null || \
pip3 install requests 2>/dev/null || \
sudo pip3 install --break-system-packages requests
# Step 3: Create symlink
sudo ln -sf <skill_dir>/scripts/tool.py /usr/local/bin/tool
# Step 4: Verify
tool --help
| 场景 | Agent 行为 |
|---|---|
| 首次使用 | 读取 references/ONBOARDING.md,按 Step 1-N 顺序执行 |
| 环境不可用 | 读取 references/ONBOARDING.md Troubleshooting,按错误信息匹配解决方案 |
| 依赖缺失 | 跳转到对应 Step 重新执行安装 |
| 版本升级后 | 重新执行 references/ONBOARDING.md 全流程(新版本可能引入新依赖) |
同时支持 Claude Code 与 Codex 的 skill 必须把以下文件作为源码提交,均不得加入 .gitignore:
| 文件 | 用途 |
|---|---|
.claude-plugin/plugin.json | Claude Code plugin metadata |
.codex-plugin/plugin.json | Codex plugin metadata 与 UI 信息 |
skills/<skill-name>/SKILL.md | Codex skill 发现入口 |
name 必须与根 SKILL.md 一致。SKILL.md 与两份 manifest 的版本必须一致。name 和 description,正文通过相对路径引用根规范与 references,避免复制方法论。apps 或 mcpServers。.claude-plugin/plugin.json 继续使用 Claude Code 支持的 displayName、version、description、author、homepage、repository、license 与 keywords 字段。
.codex-plugin/plugin.json 至少包含 name、严格 SemVer version、description、author.name 和完整 interface。skills 使用以 ./ 开头的相对路径:
{
"name": "my-skill-name",
"version": "1.0.0",
"description": "Short description of the skill functionality.",
"author": {
"name": "AuthorName",
"url": "https://github.com/authorname"
},
"repository": "https://github.com/OrgName/my-skill-name",
"license": "GPL-3.0",
"skills": "./skills/",
"interface": {
"displayName": "My Skill Name",
"shortDescription": "Create and publish a cross-platform skill.",
"longDescription": "Longer user-facing plugin description.",
"developerName": "OrgName",
"category": "Developer Tools",
"capabilities": ["Interactive", "Write"],
"websiteURL": "https://github.com/OrgName/my-skill-name",
"defaultPrompt": ["Use this skill to review my plugin."],
"brandColor": "#6366F1"
}
}
Codex plugin 完成后运行官方 validator;Codex wrapper 完成后运行 skill quick validator。验证命令根据本机 skill 工具实际位置执行,不在仓库规范中硬编码用户目录。
SKILL.md、.claude-plugin/plugin.json 和 .codex-plugin/plugin.json。scripts/version-check.sh 必须检查三份版本声明及最新 git tag。plugin-creator 与 skill-creator 校验规则为准。Skills must NOT contain: | skill 中禁止包含:
.clawhub/、node_modules/、skills/ 等应通过 .gitignore 排除)注意:
.claude-plugin/、.codex-plugin/和受 manifest 引用的skills/<skill-name>/都是项目源码,必须被 Git 跟踪。
.gitignore 必须排除 .clawhub/、skills/ 等 CLI 产物<skill-name>/ # Git repository | Git 仓库
├── .claude-plugin/plugin.json # Required: Claude Code manifest
├── .codex-plugin/plugin.json # Required: Codex manifest
├── .gitignore # Required: must exclude CLI cache files | 必需:排除 CLI 缓存
├── SKILL.md # Required: skill definition | 必需
├── skills/<skill-name>/SKILL.md # Required: Codex discovery wrapper
├── README.md # Recommended: project readme | 推荐
├── LICENSE # Recommended: license | 推荐
├── scripts/ # Optional: scripts | 可选
│ ├── version-check.sh # Optional: version consistency checker | 可选:版本一致性校验
│ └── setup.reference.sh # Optional: setup reference | 可选(见 Onboarding 章节)
└── references/ # Required: references and onboarding | 必需(低频/详细内容外置)
├── ONBOARDING.md # Required: onboarding guide | 必需(见 Onboarding 章节)
└── release-process.md # Recommended: release process guide | 推荐:发版流程文档
#!/bin/bash
# skill-publish.sh - Publish skill to GitHub + ClawHub
# 完整发版流程见 references/release-process.md
SKILL_NAME=$1
VERSION=$2
CHANGELOG=${3:-"Release v$VERSION"}
if [ -z "$SKILL_NAME" ] || [ -z "$VERSION" ]; then
echo "Usage: $0 <skill-name> <version> [changelog]"
exit 1
fi
cd projects/$SKILL_NAME
# Version consistency check | 版本一致性校验
bash scripts/version-check.sh "$VERSION"
if [ $? -ne 0 ]; then
echo "Error: Version mismatch. Fix before releasing."
exit 1
fi
# Check for uncommitted changes | 检查是否有未提交的修改
if ! git diff --quiet; then
echo "Error: Commit all changes first | 先提交所有修改"
exit 1
fi
# Create tag | 打 tag
git tag -a v$VERSION -m "Release v$VERSION"
# Push | 推送
git push origin <default-branch>
git push origin v$VERSION
# Publish to ClawHub (temp folder mode) | 发布到 ClawHub(临时文件夹模式)
# Plugin metadata causes ClawHub to misidentify the package | 插件元数据会导致 ClawHub 误判
TMPDIR=$(mktemp -d /tmp/clawhub-publish-XXXXXX)
rsync -a --exclude='.git' --exclude='.claude-plugin' --exclude='.codex-plugin' --exclude='.claude' --exclude='.clawhub' --exclude='skills' . "$TMPDIR/"
clawhub publish "$TMPDIR" --slug $SKILL_NAME --version $VERSION --changelog "$CHANGELOG"
EXIT_CODE=$?
rm -rf "$TMPDIR"
exit $EXIT_CODE
skill-creator and plugin-creator built-in skills | Codex 内置创建与校验规范clawhub publish 返回 502 时的 API 备用发布脚本