40 lines
2.2 KiB
Bash
Executable File
40 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# ==============================================================================
|
|
# sync-agy-session.sh
|
|
# 用途:将本机 (MacBook Air) 当前的 AGY 会话上下文与 GEMINI.md 永久记忆同步至
|
|
# Mac mini 云端工作台 (https://agy.961504.xyz),实现网页端无缝接力
|
|
# ==============================================================================
|
|
set -euo pipefail
|
|
|
|
SESSION_ID="${1:-6293ebb4-df60-4db6-bf5d-df33433ba106}"
|
|
MINI_HOST="${MINI_HOST:-mini}"
|
|
AGY_DIR="$HOME/.gemini/antigravity-cli"
|
|
|
|
echo "==> [1/4] 同步全局永久记忆文件 GEMINI.md 至本机与 Mac mini..."
|
|
cp /Users/ixvii0iv/homelab/GEMINI.md "$HOME/GEMINI.md"
|
|
ssh "$MINI_HOST" "mkdir -p ~/homelab ~/workspace ~/.gemini/antigravity-cli/conversations ~/.gemini/antigravity-cli/brain"
|
|
rsync -az /Users/ixvii0iv/homelab/GEMINI.md "$MINI_HOST:~/GEMINI.md"
|
|
rsync -az /Users/ixvii0iv/homelab/GEMINI.md "$MINI_HOST:~/homelab/GEMINI.md"
|
|
rsync -az /Users/ixvii0iv/homelab/GEMINI.md "$MINI_HOST:~/workspace/GEMINI.md"
|
|
|
|
echo "==> [2/4] 同步会话索引库与历史记录 (conversation_summaries.db / history.jsonl)..."
|
|
for f in conversation_summaries.db conversation_summaries.db-wal conversation_summaries.db-shm jetbox_summaries_proto.pb history.jsonl; do
|
|
if [ -f "$AGY_DIR/$f" ]; then
|
|
rsync -az "$AGY_DIR/$f" "$MINI_HOST:~/.gemini/antigravity-cli/$f"
|
|
fi
|
|
done
|
|
|
|
echo "==> [3/4] 同步当前会话数据库与 Brain 上下文 ($SESSION_ID)..."
|
|
rsync -az "$AGY_DIR/conversations/${SESSION_ID}".db* "$MINI_HOST:~/.gemini/antigravity-cli/conversations/"
|
|
if [ -d "$AGY_DIR/brain/${SESSION_ID}" ]; then
|
|
rsync -az "$AGY_DIR/brain/${SESSION_ID}/" "$MINI_HOST:~/.gemini/antigravity-cli/brain/${SESSION_ID}/"
|
|
fi
|
|
|
|
echo "==> [4/4] 在 Mac mini 的 tmux (agy) 会话中配置一键恢复别名..."
|
|
ssh "$MINI_HOST" "grep -q 'alias agy-resume=' ~/.zshrc 2>/dev/null || echo \"alias agy-resume='agy --conversation ${SESSION_ID}'\" >> ~/.zshrc"
|
|
|
|
echo "✅ 同步完成!"
|
|
echo " • 网页端工作台地址: https://agy.961504.xyz (或在中控台右上角点击 [>_ AGY 终端])"
|
|
echo " • 恢复当前完整会话: agy --conversation ${SESSION_ID} (或直接输入: agy-resume / agy -c)"
|
|
echo " • 开启新会话(自带完整架构记忆): agy"
|