# 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` 了解完整操作流程和命令。
