✓ Verified 📁 File Management ✓ Enhanced Data

Agent Wal

Write-Ahead Log protocol for agent state persistence.

Rating
4.9 (31 reviews)
Downloads
737 downloads
Version
1.0.0

Overview

Write-Ahead Log protocol for agent state persistence.

Complete Documentation

View Source →

Agent WAL (Write-Ahead Log)

Write important state to disk before responding. Prevents the #1 agent failure mode: losing corrections and context during compaction.

Core Rule

Write before you respond. If something is worth remembering, WAL it first.

When to WAL

TriggerAction TypeExample
User corrects youcorrection"No, use Podman not Docker"
You make a key decisiondecision"Using CogVideoX-2B for text-to-video"
Important analysis/conclusionanalysis"WAL/VFM patterns should be core infra not skills"
State changestate_change"GPU server SSH key auth configured"
User says "remember this"correctionWhatever they said

Commands

All commands via scripts/wal.py (relative to this skill directory):

bash
# Write before responding
python3 scripts/wal.py append agent1 correction "Use Podman not Docker for all EvoClaw tooling"
python3 scripts/wal.py append agent1 decision "CogVideoX-5B with multi-GPU via accelerate"
python3 scripts/wal.py append agent1 analysis "Signed constraints prevent genome tampering"

# Working buffer (batch writes during conversation, flush before compaction)
python3 scripts/wal.py buffer-add agent1 decision "Some decision"
python3 scripts/wal.py flush-buffer agent1

# Session start: replay lost context
python3 scripts/wal.py replay agent1

# After applying a replayed entry
python3 scripts/wal.py mark-applied agent1 <entry_id>

# Maintenance
python3 scripts/wal.py status agent1
python3 scripts/wal.py prune agent1 --keep 50

Integration Points

On Session Start

  • Run replay to get unapplied entries
  • Read the summary into your context
  • Mark entries as applied after incorporating them

On User Correction

  • Run append with action_type correction BEFORE responding
  • Then respond with the corrected behavior

On Pre-Compaction Flush

  • Run flush-buffer to persist any buffered entries
  • Then write to daily memory files as usual

During Conversation

For less critical items, use buffer-add to batch writes. Buffer is flushed to WAL on flush-buffer (called during pre-compaction) or manually.

Storage

WAL files: ~/clawd/memory/wal/.wal.jsonl Buffer files: ~/clawd/memory/wal/.buffer.jsonl

Entries are append-only JSONL. Each entry:

json
{"id": "abc123", "timestamp": "ISO8601", "agent_id": "agent1", "action_type": "correction", "payload": "Use Podman not Docker", "applied": false}

Installation

Terminal bash

openclaw install agent-wal
    
Copied!

💻Code Examples

python3 scripts/wal.py prune agent1 --keep 50

python3-scriptswalpy-prune-agent1---keep-50.txt
## Integration Points

### On Session Start
1. Run `replay` to get unapplied entries
2. Read the summary into your context
3. Mark entries as applied after incorporating them

### On User Correction
1. Run `append` with action_type `correction` BEFORE responding
2. Then respond with the corrected behavior

### On Pre-Compaction Flush
1. Run `flush-buffer` to persist any buffered entries
2. Then write to daily memory files as usual

### During Conversation
For less critical items, use `buffer-add` to batch writes. Buffer is flushed to WAL on `flush-buffer` (called during pre-compaction) or manually.

## Storage

WAL files: `~/clawd/memory/wal/<agent_id>.wal.jsonl`
Buffer files: `~/clawd/memory/wal/<agent_id>.buffer.jsonl`

Entries are append-only JSONL. Each entry:
example.sh
# Write before responding
python3 scripts/wal.py append agent1 correction "Use Podman not Docker for all EvoClaw tooling"
python3 scripts/wal.py append agent1 decision "CogVideoX-5B with multi-GPU via accelerate"
python3 scripts/wal.py append agent1 analysis "Signed constraints prevent genome tampering"

# Working buffer (batch writes during conversation, flush before compaction)
python3 scripts/wal.py buffer-add agent1 decision "Some decision"
python3 scripts/wal.py flush-buffer agent1

# Session start: replay lost context
python3 scripts/wal.py replay agent1

# After applying a replayed entry
python3 scripts/wal.py mark-applied agent1 <entry_id>

# Maintenance
python3 scripts/wal.py status agent1
python3 scripts/wal.py prune agent1 --keep 50

Tags

#notes_and-pkm

Quick Info

Category File Management
Model Claude 3.5
Complexity Multi-Agent
Author bowen31337
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install agent-wal