用途
Skill Repo Publish 用于将本地 SKILL.md 的变更推送并发布到 Starchild-ai-agent/official-skills 官方 GitHub 仓库。当需要更新某个技能文档、递增版本号并推送时使用。
主要能力
- 将本地 SKILL.md 变更同步到官方仓库
- 提供标准化的克隆、编辑、提交、推送工作流
- 规定版本号递增规则
- 提供 SKILL.md 写作原则,避免硬编码动态数据
- 推送后支持同步本地工作区技能版本
使用方式
令牌
始终使用 GITHUB_TOKEN(不要使用 GITHUB_TOKEN_NEW,它没有组织写入权限)。将令牌嵌入克隆 URL:
https://${GITHUB_TOKEN}@github.com/Starchild-ai-agent/official-skills.git
标准工作流
# 1. 克隆(始终使用全新的 /tmp 目录)
git clone https://${GITHUB_TOKEN}@github.com/Starchild-ai-agent/official-skills.git /tmp/official-skills
cd /tmp/official-skills
git config user.name "nicholasDxy"
git config user.email "nicholasDxy@users.noreply.github.com"
# 2. 使用 Python 替换进行编辑(比 sed 更安全)
with open("/tmp/official-skills/<skill>/SKILL.md", "r") as f:
content = f.read()
content = content.replace("old text", "new text")
with open("/tmp/official-skills/<skill>/SKILL.md", "w") as f:
f.write(content)
# 3. 提交前验证 diff
git diff <skill>/SKILL.md
# 4. 提交 + 推送
git add <skill>/SKILL.md
git commit -m "feat(<skill>): <summary>
<details>
Co-authored-by: Starchild <noreply@iamstarchild.com>"
git push origin main
版本递增规则
| 变更类型 | 递增 | 示例 |
|---|---|---|
| 新增能力或工具 | minor | 3.2.0 → 3.3.0 |
| 文档修复 / 措辞 | patch | 3.3.0 → 3.3.1 |
| 破坏性接口变更 | major | 3.x.x → 4.0.0 |
SKILL.md 写作原则
- 描述能力,不要枚举动态数据。
- 反例:❌ Supported chains: ethereum, base, ...(列出 16 条链)
- 正例:✅ Supports all EVM chains via DeBank dynamic lookup (300+ chains)
- DeBank 链列表、代币列表及其他 API 驱动数据会随时间变化,切勿硬编码。如果代码中有回退映射,应描述其用途(如“常见链的离线映射,并非完整列表”),不要将其复制到技能中。
推送之后
始终同步本地工作区技能:
skill_manage(action="patch", name="<skill>", old_string="version: x.x.x", new_string="version: y.y.y")
以保证本地技能与仓库版本保持一致。
适用场景
- 需要更新官方 skills 仓库中的 SKILL.md 文档
- 需要为技能递增版本号并推送
- 需要遵循统一的提交信息与版本管理规范
限制
- 必须使用 GITHUB_TOKEN 并具备组织写入权限,GITHUB_TOKEN_NEW 不可用
- 工作流要求使用全新的 /tmp 目录进行克隆
- 编辑建议使用 Python 替换而非 sed
- 本资料未提供价格、平台支持范围、安装命令等更多信息