chore: move cron scripts to ~/.openclaw/cron/scripts
- Move scripts from ~/work/backup/ to ~/.openclaw/cron/scripts/ - Update cron jobs.json to use new script paths - Scripts: backup_openclaw.sh, evolver-run.sh, zq-sync.sh, git-auto-sync.sh, ai-conversation-logger.sh
This commit is contained in:
Executable
+75
@@ -0,0 +1,75 @@
|
||||
#!/bin/bash
|
||||
# Capability Evolver 定期运行脚本
|
||||
# 策略:使用 repair-only 模式,仅修复问题不做大改动
|
||||
|
||||
EVOLVER_DIR="$HOME/.openclaw/skills/capability-evolver"
|
||||
OUTPUT_FILE="$HOME/work/backup/evolver-output.txt"
|
||||
OPENCLAW_DIR="$HOME/.openclaw"
|
||||
|
||||
echo "=== Capability Evolver 运行开始 ===" > "$OUTPUT_FILE"
|
||||
echo "时间: $(date)" >> "$OUTPUT_FILE"
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
|
||||
# 切换到 openclaw 目录
|
||||
cd "$OPENCLAW_DIR"
|
||||
|
||||
# 推送到远端(如果有远端)
|
||||
if git remote get-url origin &>/dev/null; then
|
||||
echo "=== 推送到远端 ===" >> "$OUTPUT_FILE"
|
||||
git push origin main >> "$OUTPUT_FILE" 2>&1
|
||||
echo "推送完成" >> "$OUTPUT_FILE"
|
||||
else
|
||||
echo "无远端配置,跳过推送" >> "$OUTPUT_FILE"
|
||||
fi
|
||||
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
|
||||
# 检查是否有未提交的更改
|
||||
if [[ -n $(git status --porcelain) ]]; then
|
||||
echo "发现有未提交的更改,先提交..." >> "$OUTPUT_FILE"
|
||||
git add -A
|
||||
git commit -m "Auto backup before evolver run - $(date)" 2>/dev/null
|
||||
fi
|
||||
|
||||
# 创建备份分支
|
||||
BACKUP_BRANCH="backup/evolver-$(date +%Y%m%d-%H%M%S)"
|
||||
echo "创建备份分支: $BACKUP_BRANCH" >> "$OUTPUT_FILE"
|
||||
git branch -D "$BACKUP_BRANCH" 2>/dev/null || true
|
||||
git branch "$BACKUP_BRANCH" 2>/dev/null
|
||||
|
||||
# 推送备份分支
|
||||
if git remote get-url origin &>/dev/null; then
|
||||
git push origin "$BACKUP_BRANCH" >> "$OUTPUT_FILE" 2>&1 || echo "备份分支推送失败" >> "$OUTPUT_FILE"
|
||||
fi
|
||||
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
echo "=== Git 备份完成 ===" >> "$OUTPUT_FILE"
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
|
||||
# 运行 evolver - 使用 repair-only 策略确保安全
|
||||
cd "$EVOLVER_DIR"
|
||||
export EVOLVE_STRATEGY="repair-only"
|
||||
echo "=== 运行 Capability Evolver (repair-only 模式) ===" >> "$OUTPUT_FILE"
|
||||
node index.js run >> "$OUTPUT_FILE" 2>&1
|
||||
EXIT_CODE=$?
|
||||
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
echo "=== Evolver 运行完成 (exit code: $EXIT_CODE) ===" >> "$OUTPUT_FILE"
|
||||
|
||||
# 检查变更
|
||||
cd "$OPENCLAW_DIR"
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
echo "=== 本次变更 ===" >> "$OUTPUT_FILE"
|
||||
git status --short >> "$OUTPUT_FILE"
|
||||
|
||||
# 如果有变更,推送
|
||||
if [[ -n $(git status --porcelain) ]]; then
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
echo "=== 推送变更到远端 ===" >> "$OUTPUT_FILE"
|
||||
git add -A
|
||||
git commit -m "Evolver auto evolution - $(date)" 2>/dev/null || true
|
||||
git push origin main >> "$OUTPUT_FILE" 2>&1 || echo "推送失败" >> "$OUTPUT_FILE"
|
||||
fi
|
||||
|
||||
echo "" >> "$OUTPUT_FILE"
|
||||
echo "=== 输出完成 ===" >> "$OUTPUT_FILE"
|
||||
Reference in New Issue
Block a user