clawng-term-memory
Make your OpenClaw agent portable and persistent. Every change to your agent's soul, memory, and operating rules is committed to git and pushed to a private GitHub repo — so you can restore your exact agent setup on any machine, just by cloning the repo.
Watch your assistant evolve over time through its git history: see when it learned something new, what decisions changed, and who it was a week ago. It's version control for a mind.
Setup
- Initialize a git repo in your workspace (if not already done):
cd ~/.openclaw/workspace
git init
git config user.name "YourAgent"
git config user.email "agent@example.com"
- Create a private GitHub repo, then add it as a remote using SSH (recommended) or HTTPS:
SSH (recommended — no token exposure):
git remote add origin git@github.com:<user>/<repo>.git
HTTPS with credential store (no token in URL):
git remote add origin https://github.com/<user>/<repo>.git
git config credential.helper store
# Git will prompt for credentials on first push and store them securely
- Push initial commit:
git branch -M main && git push -u origin main
- Set workspace path if non-standard (optional):
export CLAWNG_WORKSPACE=/your/custom/workspace/path
The script defaults to $HOME/.openclaw/workspace if not set.
Multi-agent / multi-machine support
Each machine has its own branch (agent/<hostname>) with its own MEMORY.md. A daily AI synthesis job reads all agents' memories and writes one authoritative SHARED_MEMORY.md to main — fully automatic, no human required.
agent/vps-1 → MEMORY.md ──┐
agent/vps-2 → MEMORY.md ──┤ Claude synthesizes → SHARED_MEMORY.md → main
agent/vps-3 → MEMORY.md ──┘
commit.sh— pushes toagent/<hostname>automatically (branch created on first commit)merge.sh— collects all agents' MEMORY.md files for the synthesis agent- AI synthesis agent — deduplicates and merges into
SHARED_MEMORY.mdonmainnightly - All agents read
SHARED_MEMORY.mdfrommainto stay in sync
Scales to 10+ machines with no conflicts.
Tracked files
SOUL.md,MEMORY.md,USER.md,TOOLS.md,IDENTITY.md,AGENTS.md,HEARTBEAT.mdmemory/*.md(daily notes)skills/(installed skills)
Commit + push changes
Run after modifying any core file:
bash /path/to/workspace/skills/clawng-term-memory/scripts/commit.sh "short description of what changed"
Examples:
"MEMORY.md: added new client context""SOUL.md: updated operating rules""memory/2026-02-21.md: daily notes""HEARTBEAT.md: adjusted check frequency"
Daily AI synthesis (run once per day)
merge.sh collects all agent MEMORY.md files. An AI agent then synthesizes them into SHARED_MEMORY.md on main — deduplicating, resolving conflicts intelligently, and keeping all unique information.
Set up as an OpenClaw cron job (runs at 02:00 local time by default).
View history
cd /path/to/workspace && git log --oneline --graph memory/ MEMORY.md SOUL.md
Diff a file
cd /path/to/workspace && git diff HEAD~1 MEMORY.md
Revert a file to previous version
cd /path/to/workspace && git checkout HEAD~1 -- MEMORY.md
bash skills/clawng-term-memory/scripts/commit.sh "revert MEMORY.md to previous version"
Auto-commit rule
Always run the commit script after modifying a core knowledge file. Write → commit → push. Every time, no exceptions.