ruflo

🧠 ReasoningBank

/docs/ecosystem--integrations/reasoningbank

ReasoningBank stores successful patterns for future retrieval:

typescript
import { ReasoningBank } from 'agentic-flow/reasoningbank';

const bank = new ReasoningBank();

// Record successful outcome
await bank.recordOutcome({
  task: 'implement authentication',
  outcome: 'JWT with refresh tokens',
  success: true,
  context: { framework: 'express' }
});

// Retrieve similar patterns for new task
const patterns = await bank.retrieveSimilar('add user login', { k: 5 });
// Returns past successful auth implementations

// Judge and distill learnings
await bank.judge(trajectoryId, 'success');
await bank.distill();  // Extract key patterns
await bank.consolidate();  // Prevent forgetting (EWC++)

4-Step Pipeline:

  1. RETRIEVE — Fetch relevant patterns via HNSW (150x faster)
  2. JUDGE — Evaluate outcomes with verdicts
  3. DISTILL — Extract key learnings via LoRA
  4. CONSOLIDATE — Prevent catastrophic forgetting (EWC++)