51 lines
2.0 KiB
Markdown
51 lines
2.0 KiB
Markdown
# use_vala_skillhub
|
||
|
||
Vala SkillHub 技能管理 —— 让数字员工推送、安装和自动同步技能。
|
||
|
||
## 功能
|
||
|
||
- **推送技能**:将本地 `./skills` 下的技能上传到 SkillHub(Gitea 仓库)
|
||
- **安装 / 更新技能**:从 SkillHub 下载技能到本地 `./skills` 目录(已存在则清空后重新下载)
|
||
- **查看技能**:列出 SkillHub 上的所有技能
|
||
- **自动同步**:基于内容哈希检测变更,仅推送有变化的 skill,避免重复推送
|
||
|
||
## 设计要点
|
||
|
||
推送和安装均不在 `./skills` 目录内产生 `.git`,确保不影响 workspace 级别的 git 备份:
|
||
- **推送 / 自动同步**:复制到 `./tmp/skill_push/` 临时目录,完成 git 推送后清理
|
||
- **安装**:通过 Gitea API 下载归档解压,不使用 git clone
|
||
- **变更检测**:通过 `./.vala_skill_hashes` 记录每个 skill 的内容哈希,对比检测变更
|
||
|
||
## 自动同步机制
|
||
|
||
数字员工在新增或修改 skill 后,**必须自动执行 check_and_push**:
|
||
1. 计算 skill 目录的综合哈希(含文件路径 + 内容)
|
||
2. 与 `./.vala_skill_hashes` 中的历史哈希对比
|
||
3. 仅推送有变更的 skill,推送成功后更新哈希记录
|
||
|
||
可选配合 `cron_job` 技能设置定时全量同步作为安全网。
|
||
|
||
## 命名规则
|
||
|
||
仓库名 = `技能名` + `.` + `来源名`
|
||
|
||
| 示例 | 含义 |
|
||
|------|------|
|
||
| `cron_job.xiaoxi` | xiaoxi 的定时任务技能 |
|
||
| `web_scraper.vala` | 公司官方的爬虫技能 |
|
||
|
||
来源为 `vala` 的属于公司级别官方技能。
|
||
|
||
## 配置
|
||
|
||
首次使用需提供配置,保存在 `./.vala_skillhub_config`(当前 workspace 根目录下,各数字员工独立):
|
||
|
||
- `GITEA_URL` — Gitea 服务地址(默认 `https://git.valavala.com`)
|
||
- `GITEA_TOKEN` — API Token(需有组织仓库的创建和推送权限)
|
||
- `GITEA_OWNER` — SkillHub 组织名(默认 `vala_skillhub`)
|
||
- `SOURCE_NAME` — 当前数字员工的 name
|
||
|
||
## 使用方式
|
||
|
||
本技能面向 AI 数字员工使用。请参阅 `SKILL.md` 了解完整操作流程和命令。
|