Memories
Memories are the part of the Engineering Context Graph that Autoheal writes for you. When an agent run finishes, what worked and what failed is distilled into a memory, and that memory is recalled automatically the next time a relevant incident recurs, so a problem your team has seen before can be resolved from recall rather than re-investigated from scratch, with fewer exploratory tool calls spent rediscovering your environment.
Memories are captured from each finished run, and the Healer can also propose one when the Evaluator finds a run that missed knowledge the next run should have. Both kinds land in the same review queue on the Memories page and follow the same lifecycle and auto-accept rules below. Skills, by contrast, are the context you author or approve.
What memories are learned from
Memories are learned automatically; you don't write them. Autoheal derives them from real signals in your runs:
- Accepted root causes. A confirmed diagnosis becomes reusable knowledge for similar incidents.
- Your guidance during investigations. Direction you give mid-investigation is carried forward.
- Hard-won discoveries. A non-obvious cause that took significant effort to find is worth keeping so the next occurrence is quick.
A learned memory lands in a review queue by default, and Autoheal auto-accepts the ones it has strong grounds to trust, so in practice you review the judgment calls rather than every memory. To write reusable procedures yourself, author skills.
Memory lifecycle
Each memory holds one of five statuses.
| Status | Meaning |
|---|---|
| Pending | The memory has been learned and is waiting for review. It is not recalled during investigations yet. |
| Applied | The memory is live, and it is recalled automatically in relevant future investigations allowed by its ownership scope. A memory reaches this state either because you approved it or because it was auto-accepted. |
| Dismissed | You declined the memory, optionally with a reason, and it won't be used. |
| Consolidated into skill | You folded an applied memory into a skill. It stays retrievable alongside applied memories, so nothing is lost by consolidating. |
| Superseded | A newer memory replaced this one during deduplication, and the earlier version is archived automatically. |
The Memories page shows a count of pending memories in the sidebar, and that queue is the only part that needs your attention.
When a memory skips review
Autoheal auto-applies a pending memory when it has a concrete reason to trust it, which keeps the queue to the genuine judgment calls. A memory is auto-accepted when any of these holds:
| Reason | Condition |
|---|---|
| Supported by multiple investigations | The same finding recurred across enough near-duplicate investigations to clear your configured support threshold. This is empirical evidence, so it outranks every other signal. |
| Human user guidance | The memory came from direction a person gave during an investigation. |
| Source hypothesis user accepted | The memory came from a hypothesis someone explicitly accepted. |
| Debugging heuristic | The memory is a general debugging technique rather than a fact about one incident. |
| Integration related | The memory concerns a connected integration. |
Each reason is separately configurable, so you can tighten or disable any of them, and the support threshold is a number you set.
Two behaviors are worth knowing. A memory the model judges obvious, incident-specific, or textbook is held for review rather than auto-applied under the weaker reasons above, though multi-investigation support still overrides that hold because it is empirical. Separately, an explicit "remember this" request from a person is exempt from those quality gates, so a memory you ask for is never dropped or held back on an obviousness judgment.
Memory ownership
Each memory is owned either by one agent profile or by the whole tenant:
- Profile-owned memories are available only to investigations using that exact profile.
- Tenant-wide memories are available to every profile in the tenant.
When profile-scoped memory reads are enabled, the Memories page shows the owner on each memory. You can filter by an exact profile or by Tenant-wide, and move an active memory between those scopes. Moving a memory changes where it is available; it does not change its content or lifecycle state.
From memories to skills
A memory comes from a single run. When the same diagnostic work repeats across several runs, it's better written down once as a skill that agents follow directly. You can fold an applied memory into a skill yourself, which sets its status to Consolidated into skill, and the Healer can propose a new or updated skill from repeated work.
Unlike memories, skills have no auto-accept: a skill is a procedure your agents will follow directly, so a proposed skill always waits for an engineer to review and accept it before any agent uses it.
Agent profiles
An agent profile scopes what an agent loads: which integrations, code repositories and skills it can use, and its sandbox settings. Every organization has a default profile, which can't be deleted. Profile-owned memories are recalled only by runs under that profile, and tenant-wide memories by every run. Profiles are configured under Settings → Platform → Agent Profiles; they are separate from Catalog teams.
Related
- Skills: the context you author or approve
- Healer: how weak runs become new memories and skill updates
- Self-Improvement overview: how memories fit in the factory loop