37 lines
2.2 KiB
Markdown
37 lines
2.2 KiB
Markdown
# vala_git_workspace_backup Skill
|
||
## 功能说明
|
||
自动将OpenClaw workspace内容定期备份到Git仓库,自动过滤敏感信息,无硬编码凭证。
|
||
## 特性
|
||
- ✅ 全流程自动化,无需手动提前创建Git仓库
|
||
- ✅ 支持多数字员工共用同一个Git账号,按数字员工名称区分仓库
|
||
- ✅ 自动排除密钥、密码等敏感文件(secrets.md、.env、*.key等)
|
||
- ✅ 内置公司Git服务(git.valavala.com)支持,无需额外配置地址
|
||
- ✅ 支持自定义定时备份时间
|
||
- ✅ 敏感信息通过参数传入,不存储在skill代码中
|
||
- ✅ 自动生成备份日志,便于排查问题
|
||
## 完整执行流程
|
||
1. 检查传入的Git Token是否有效
|
||
2. 自动检查对应Git仓库是否存在,不存在则调用API自动创建
|
||
3. 初始化本地Git仓库(如果未初始化)
|
||
4. 配置.gitignore敏感文件过滤规则
|
||
5. 配置Git用户信息和远程仓库地址
|
||
6. 首次提交并推送所有非敏感文件
|
||
7. 创建备份执行脚本和日志目录
|
||
8. 添加定时任务到系统crontab,按指定时间自动执行备份
|
||
## 配置参数
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| agent_name | string | 是 | 数字员工唯一名称(如xiaoyan/xiaoxi/xiaokui等),用于生成唯一仓库名 |
|
||
| git_token | string | 是 | Git仓库访问Token(所有数字员工共用同一个Git账号的Token) |
|
||
| git_username | string | 是 | Git用户名(所有数字员工共用同一个Git账号) |
|
||
| git_email | string | 是 | Git提交邮箱 |
|
||
| git_repo_url | string | 否 | Git仓库HTTPS地址(格式:https://域名/所有者/仓库名.git),默认使用公司git.valavala.com服务,自动生成仓库地址:https://git.valavala.com/{git_username}/ai_member_{agent_name}.git |
|
||
| cron_schedule | string | 否 | 定时任务cron表达式,默认值:`30 8 * * *`(每天早上8:30) |
|
||
## 使用方法
|
||
### 1. 初始化配置
|
||
传入上述参数执行skill的setup操作,自动完成Git初始化、远程仓库配置和定时任务设置。
|
||
### 2. 手动触发备份
|
||
执行`./scripts/backup.sh`可立即触发一次手动备份。
|
||
## 日志路径
|
||
备份日志存放于:`./logs/git_backup.log`
|