- Diagnostic patterns failure → confirmed cause → winning fix chains
- Efficacy scores how often each pattern’s reuse actually holds up
- Freshness external facts decay if nobody reprobes them, surfacing revalidation candidates
When to use it
- Long-lived Agents where quality should compound
- High-volume Agents where the improvement flow accumulates patterns quickly
- Teams that want visibility into how the diagnostic memory grows
Creating one
Memory → New space → Evolution (self-evolving) creates one immediately. You don’t fill it directly; the improvement flow does, one entry per confirmed-and-shipped improvement.The detail page
Evolution has two sub-tabs inside its primary lens:- Metrics dashboard showing total entries, reuse/recurrence counts, efficacy and freshness distributions, growth curves over time
- Graph the diagnostic patterns this space has accumulated, rendered as a 3D graph. Click and drag nodes to explore
- Log events in chronological order
- Settings covered below
What you configure in Settings
Evolution is auto-managed, so there’s not much to tune. Basics rename the space. Flow binding bind to a specific Flow to scope patterns to that Flow’s Agents. Leave unbound and attach per-Agent. Scope workspace / tenant partitioning (see Scoping). Access (optional) partition key + required-permissions gate. No policy prompt or retrieval-tuning fields here. Filling, decaying, and revalidating are handled by the improvement flow and the canary system.Attaching to an Agent
Flow builder → Agent → Memory tab → Add memory. Once attached, the Agent recalls relevant patterns automatically during diagnosis.Pruning nodes
In the Graph tab, click a node and hitDelete to soft-remove that diagnostic entry. Use this to strip out patterns you don’t think are actually valid.
Right after removal, an Undo toast appears in the bottom-right. Click to reverse. It’s a soft remove, so admin tools can recover it later too.
Evolution’s entries are produced by the improvement flow, so pruning by hand is a judgement that a pattern isn’t actually valid. Recommend inspecting the trace first to understand why the pattern was learned.