Back to list
d-o-hub

storage-sync

by d-o-hub

A modular Rust-based self-learning episodic memory system for AI agents, featuring hybrid storage with Turso (SQL) and redb (KV), async execution tracking, reward scoring, reflection, and pattern-based skill evolution. Designed for real-world applicability, maintainability, and scalable agent workflows.

3🍴 0📅 Jan 23, 2026

SKILL.md


name: storage-sync description: Synchronize memories between Turso (durable) and redb (cache) storage layers. Use when cache appears stale, after failures, or during periodic maintenance.

Storage Sync

Synchronize memories between Turso (durable) and redb (cache) storage layers.

When to Sync

  1. On startup - After system initialization
  2. Periodic - Scheduled background sync
  3. Cache staleness - When redb appears outdated
  4. Recovery - After storage failures
  5. Manual trigger - When explicitly requested

Sync Process

  1. Check connection health:

    turso_client.ping().await?;
    redb_env.check_integrity()?;
    
  2. Fetch latest from Turso:

    let episodes = turso_client
        .query("SELECT * FROM episodes ORDER BY timestamp DESC LIMIT ?")
        .bind(max_episodes_cache)
        .await?;
    
  3. Update redb cache:

    tokio::task::spawn_blocking(move || {
        let write_txn = redb.begin_write()?;
        let mut table = write_txn.open_table(EPISODES_TABLE)?;
        for episode in episodes {
            table.insert(episode.id.as_bytes(), episode.to_bytes())?;
        }
        write_txn.commit()?;
    });
    
  4. Sync patterns and embeddings if enabled

Configuration

pub struct SyncConfig {
    pub max_episodes_cache: usize,  // Default: 1000
    pub batch_size: usize,          // Default: 100
    pub sync_patterns: bool,        // Default: true
    pub sync_embeddings: bool,      // Default: true
}

Error Handling

ErrorHandling
Turso unavailableSkip sync, log warning, retry later
redb corruptionAttempt repair, rebuild from Turso
Partial syncTrack progress, resume from last point

Performance Tips

  • Batch small operations
  • Incremental sync (only changes)
  • Parallel fetch with Tokio
  • Write-ahead preparation

Validation

After sync, verify:

  • Episode count matches
  • Latest episodes present
  • Pattern counts consistent
  • No orphaned embeddings

Troubleshooting

IssueSolution
Slow syncsReduce cache size, increase batch
redb lock errorsUse dedicated write task
Memory pressureStream large results, smaller batches

Score

Total Score

75/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon