Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add d-o-hub/rust-self-learning-memory --skill "storage-sync"
Install specific skill from multi-skill repository
# Description
Synchronize memories between Turso (durable) and redb (cache) storage layers. Use when cache appears stale, after failures, or during periodic maintenance.
# 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
- On startup - After system initialization
- Periodic - Scheduled background sync
- Cache staleness - When redb appears outdated
- Recovery - After storage failures
- Manual trigger - When explicitly requested
Sync Process
-
Check connection health:
rust turso_client.ping().await?; redb_env.check_integrity()?; -
Fetch latest from Turso:
rust let episodes = turso_client .query("SELECT * FROM episodes ORDER BY timestamp DESC LIMIT ?") .bind(max_episodes_cache) .await?; -
Update redb cache:
rust 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()?; }); -
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
| Error | Handling |
|---|---|
| Turso unavailable | Skip sync, log warning, retry later |
| redb corruption | Attempt repair, rebuild from Turso |
| Partial sync | Track 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
| Issue | Solution |
|---|---|
| Slow syncs | Reduce cache size, increase batch |
| redb lock errors | Use dedicated write task |
| Memory pressure | Stream large results, smaller batches |
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.