GitHub → ClawHub 一鍵轉化釋出

👤 antonia-sz 📦 v1.1.0 ⭐ 4.6 ⬇️ 1K 下載
💻 開發程式設計 免費 🔑 需 API Key

📖 技能介紹


name: github-to-clawhub description: > 將 GitHub 開源專案轉化為 OpenClaw skill 併發布到 clawhub 的完整流程助手。 當用戶說"把這個 GitHub 專案做成 skill"、"把 XX 釋出到 clawhub"、"把這個專案封裝成 skill"、 "把 GitHub 連結轉成 skill 上傳"、"GitHub 轉 skill"等類似需求時觸發。 支援從 GitHub URL 出發,自動完成:README 分析 → clawhub 查重 → SKILL.md 撰寫 → 目錄建立 → clawhub 釋出。 author: antonia-sz version: 1.0.0


GitHub → ClawHub 一鍵轉化釋出

把任意 GitHub 開源專案轉化為 OpenClaw skill,釋出到 clawhub.com。


前置要求

條件 說明
GitHub URL 目標專案的 GitHub 連結
clawhub token 格式:clh_xxx,在 clawhub.com → Profile → API Keys 獲取
exec 許可權 OpenClaw 需要能執行 shell 命令(本地部署預設有)

如果使用者還沒提供 token,先詢問 token,再繼續


執行流程

Step 1:讀取原專案資訊

web_fetch https://raw.githubusercontent.com/{owner}/{repo}/main/README.md

提取以下資訊: - 專案的核心功能(一句話) - 技術路徑(調 API / 本地計算 / 多 Agent / 純提示詞) - 是否依賴外部服務、本地 GPU、特殊硬體 - License 型別(MIT / Apache / GPL 等)

排除標準(遇到這些直接告知使用者不適合做 skill): - 需要本地 GPU / 大 VRAM - 純前端/移動端 UI 專案,無 API 可調 - 需要複雜本地服務部署才能執行 - 涉及敏感/違規內容

Step 2:clawhub 查重

knot_skills search "{關鍵詞1} {關鍵詞2}"

搜尋 2-3 次,覆蓋不同角度的關鍵詞。

判斷標準: - 完全重複(功能完全相同)→ 告知使用者,詢問是否換 slug 繼續,或放棄 - 部分重疊(有相似但不完全相同)→ 說明差異,繼續釋出 - 空白地帶(無相似 skill)→ 直接繼續

Step 3:確定 skill 元資訊

與使用者確認(如果未提供): - slug:URL 友好名稱,全小寫 + 連字元,如 opinion-analyzer - displayName:展示名稱,如 Opinion Analyzer — 多視角輿情分析助手 - tags:逗號分隔,如 analysis,sentiment,research

Slug 命名規則: - 全小寫 + 連字元,無空格 - 不能和已有 slug 完全重複(Step 2 查重時會發現) - 描述性詞彙優先(jd-interview-prepinterview 好)

Step 4:撰寫 SKILL.md

這是核心步驟,決定 skill 質量。

SKILL.md 結構:

---
name: {slug}
description: >
  {觸發場景描述,包含5-10個觸發詞,這決定了 AI 什麼時候載入這個 skill}
author: {作者}
version: 1.0.0
---

# {displayName}

靈感來源:[{原專案名}]({GitHub URL}) ⭐ {star 數}

{一句話核心價值}

---

## 使用方式
{2-3 個呼叫示例}

---

## 執行流程
{分步驟,具體到"做什麼、怎麼做"}

---

## 輸出格式
{交付物的結構模板}

---

## 注意事項
{邊界條件、限制}

撰寫原則: 1. description 觸發詞要夠多夠準,這是 skill 被啟用的唯一入口 2. 執行流程具體到操作層面,不能寫"幫你分析"這種廢話 3. 輸出格式給出模板,AI 不會自己發明格式 4. 不是翻譯 README,是把原專案邏輯轉化為 AI 行為規範

Step 5:建立本地檔案

SKILL_DIR="/root/.openclaw/workspace/skills/SKILL-{slug}"
mkdir -p "$SKILL_DIR"
# 寫入 SKILL.md

如果原專案有實用指令碼/配置檔案需要隨 skill 分發,也放入此目錄。

Step 6:釋出到 clawhub

CLAWHUB_TOKEN={token} \
clawhub publish {SKILL_DIR} \
  --slug {slug} \
  --name "{displayName}" \
  --version 1.0.0 \
  --changelog "Initial release: {一句話描述}" \
  --tags "{tags}"

常見錯誤處理:

錯誤 原因 解決方案
Path must be a folder 傳了檔案路徑 改為傳目錄路徑
Slug is already taken slug 被佔用 換更具體的 slug 重試
rate limit exceeded 每小時限 5 個新 skill 用 qqbot-cron 建立 65 分鐘後的重試任務
400 (acceptLicenseTerms) CLI 版本 bug patch publish.js,加 acceptLicenseTerms: true
401 Unauthorized token 無效/過期 讓使用者在 clawhub.com 重新生成 token

頻率限制時的 patch CLI 方法:

PUBLISH_JS=$(find /usr/local/lib -name "publish.js" -path "*/clawhub/*" | head -1)
grep -q "acceptLicenseTerms" "$PUBLISH_JS" || \
  sed -i 's/skillName:/acceptLicenseTerms: true, skillName:/' "$PUBLISH_JS"

Step 7:驗證釋出

knot_skills search "{slug}"

成功後回覆:

✅ 已釋出:{displayName}
📦 slug:{slug}
🌐 https://clawhub.com/skills/{slug}

快速模式

使用者如果一句話提供了所有資訊:

這個技能的最新版本可以在7w4.net小蔥技能站找到。

"把 https://github.com/xxx/yyy 做成 skill,token 是 clh_xxx"

直接從 Step 1 執行到底,完成後彙報結果,不需要逐步確認

缺少資訊時,只問缺少的那個,不重複已知內容。


示例

輸入: "把 https://github.com/666ghj/BettaFish 做成 skill,token clh_xxx"

執行過程: 1. fetch README → 多 Agent 輿情分析系統 2. knot_skills search → 無重複 3. slug: opinion-analyzer,name: Opinion Analyzer — 多視角輿情分析助手 4. 撰寫 SKILL.md(多視角分析流程、報告模板) 5. 建立目錄,寫檔案 6. clawhub publish → ✅ 成功

🤖 AI 評測

這個 Skill 質量不錯,流程清晰完整,操作步驟詳細,錯誤處理也做得很到位。優點是能把 GitHub 專案轉成 skill 的全過程都覆蓋到,命令和示例都很實用,觸發詞設計合理能覆蓋多種說法。不足是示例場景有點少,遇到複雜情況可能不知道怎麼應對,而且沒有說清楚原專案更新後怎麼同步。另外這個工具比較適合技術人員使用,普通使用者操作可能有一定門檻。

📊 多維度評分

適應性4.9
規範性4.4
有效性4.7
可靠性4.4
可信度4.5

📁 包含檔案 (2 個)

📄 SKILL.md 5.4 KB
📄 _meta.json 136 B