Skip to main content

Dialectic Profiling (Cognitive Deriver)

Myrm replaces brittle regex-based preference extraction with an async Cognitive Deriver: after a conversation ends, a background LLM pass performs dialectic reasoning over the exchange and writes structured profile entries into memory.

What gets inferred

DimensionExamples stored as profile memory
Communication styleConcise vs verbose, formal vs casual, language mix
Decision logicRisk tolerance, prefers options vs direct recommendation
Implicit goalsOngoing projects, unstated priorities surfaced from context
Evidence-backed only: if the model cannot cite clear signals, fields stay empty (anti-hallucination).

How it works (runtime)

  1. ExtractionMemoryExtractor prompts include a dialectic section; conclusions land as memory_type="profile" with high confidence when supported.
  2. Deriver cyclecognitive/deriver.py runs async dialectic reasoning on recent messages and updates vector + graph evidence.
    • Token-Aware Sliding Window: Automatically limits input messages to ~16,000 characters before sending to the LLM to prevent OOM errors and save budget.
    • Dual-Write Degradation: Securely dual-writes to GraphStore and SemanticMemory; if the graph backend fails or is disabled, gracefully degrades to SemanticMemory without losing data.
  3. Taste Summarycompile_taste_summary consolidates active semantic/profile rows into a fast-read summary for the system prompt.
  4. InjectionMemoryContextMiddleware injects taste summary before each turn (no extra tool round-trip vs Honcho-style honcho_context calls).
  5. SSE Noise Reduction — UI only notifies you when a disruptive change (contradict/supersede) occurs; standard preferences are extracted entirely silently in the background.
  6. GUITasteSummaryCard shows badges; users can edit or remove inferred traits in the Memory Command Center.

vs Honcho / Mem0-style SaaS

AspectTypical memory SaaSMyrm
Preference extractionObservation → representation pipelinesCognitive Deriver after chat, LLM dialectic
Context assemblyAgent calls a memory tool per turnAutomatic middleware injection
ManagementOften CLI-onlyGUI browse, approve, audit, rollback
“Dream” long-horizon goalsSeparate expensive pipelineZero extra pipeline — goals folded into taste summary maintenance
For competitive positioning detail, see internal materials MEMORY_ADVANTAGE.md (§ vs Honcho / Mem0).