What's new
- Memory injection now works correctly. Switched from an internal
message:preprocessed hook (fire-and-forget, context mutation never reached the agent) to a Plugin SDK before_prompt_build hook, which is awaited and returns prependContext directly into the prompt builder.
- New install path:
~/.openclaw/semcom/ (was ~/.local/share/semcom/). Lives alongside other openClaw state, survives container restarts without root access.
- API key persistence:
~/.openclaw/semcom/.env is sourced by start.sh and the semcom-start hook on every boot.
- Plugin replaces the
semcom-memory internal hook. The semcom-start hook remains for auto-start on gateway boot.
Upgrade from v0.2.x
# Stop old server
~/.local/share/semcom/stop.sh 2>/dev/null || true
# Install new version
mkdir -p /tmp/semcom-v3 && cd /tmp/semcom-v3
curl -fsSL https://github.com/Ars-Ludus/semcom-install/releases/latest/download/semcom-release.tar.gz | tar xz
bash install.sh
# Migrate databases (if you want to keep history)
cp ~/.local/share/semcom/memory.db ~/.openclaw/semcom/memory.db
cp ~/.local/share/semcom/personal.db ~/.openclaw/semcom/personal.db
# Add API key
echo 'GOOGLE_API_KEY=your_key_here' >> ~/.openclaw/semcom/.env
# Activate plugin
openclaw restart