60 lines
1.6 KiB
Bash
60 lines
1.6 KiB
Bash
#!/bin/bash
|
|
# Setup shared memory: clawd/memory becomes single source of truth
|
|
# echo-core/memory becomes a symlink to clawd/memory
|
|
|
|
set -euo pipefail
|
|
|
|
ECHO_MEMORY="/home/moltbot/echo-core/memory"
|
|
CLAWD_MEMORY="/home/moltbot/clawd/memory"
|
|
BACKUP="/home/moltbot/echo-core/memory.bak"
|
|
|
|
echo "=== Shared Memory Setup ==="
|
|
echo ""
|
|
|
|
# 1. Safety checks
|
|
if [ -L "$ECHO_MEMORY" ]; then
|
|
echo "ERROR: echo-core/memory is already a symlink!"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -d "$CLAWD_MEMORY" ]; then
|
|
echo "ERROR: clawd/memory does not exist!"
|
|
exit 1
|
|
fi
|
|
|
|
# 2. Move echo.sqlite to clawd (only file missing there)
|
|
if [ -f "$ECHO_MEMORY/echo.sqlite" ] && [ ! -f "$CLAWD_MEMORY/echo.sqlite" ]; then
|
|
echo "Moving echo.sqlite to clawd/memory..."
|
|
mv "$ECHO_MEMORY/echo.sqlite" "$CLAWD_MEMORY/echo.sqlite"
|
|
echo " Done."
|
|
else
|
|
echo "echo.sqlite already in clawd or not in echo — skipping."
|
|
fi
|
|
|
|
# 3. Backup echo-core/memory
|
|
echo "Creating backup at $BACKUP..."
|
|
if [ -d "$BACKUP" ]; then
|
|
echo " Backup already exists, removing old one..."
|
|
rm -rf "$BACKUP"
|
|
fi
|
|
mv "$ECHO_MEMORY" "$BACKUP"
|
|
echo " Done."
|
|
|
|
# 4. Create symlink
|
|
echo "Creating symlink: $ECHO_MEMORY -> $CLAWD_MEMORY"
|
|
ln -s "$CLAWD_MEMORY" "$ECHO_MEMORY"
|
|
echo " Done."
|
|
|
|
# 5. Verify
|
|
echo ""
|
|
echo "=== Verification ==="
|
|
ls -la "$ECHO_MEMORY"
|
|
echo ""
|
|
echo "Test file access:"
|
|
ls "$ECHO_MEMORY/kb/index.json" 2>/dev/null && echo " kb/index.json: OK" || echo " kb/index.json: FAIL"
|
|
ls "$ECHO_MEMORY/echo.sqlite" 2>/dev/null && echo " echo.sqlite: OK" || echo " echo.sqlite: FAIL"
|
|
|
|
echo ""
|
|
echo "SUCCESS! echo-core/memory now points to clawd/memory."
|
|
echo "Backup saved at: $BACKUP"
|