Distill Memory

nowledge-co/community/nowledge-mem-step-code/skills/distill-memory

by nowledge-co1f4d7eb61466dbfc93ce8d7a0a806c4d4a196dd0No licenseListed Oct 9, 2026Updated Oct 9, 2026

Save decisions, insights, preferences, and procedures as durable memories. Fires when the conversation produces knowledge worth keeping across sessions.

AI-generated overview

Saves durable decisions, preferences, procedures and lessons from a conversation into a persistent memory store.

What it does
This skill instructs an agent to proactively capture durable knowledge produced during a conversation, such as decisions with rationale, repeatable procedures, debugging lessons, preferences, and plans. It defines which unit types and importance levels to use, and shows command-line examples for adding or updating entries in a memory store. It also gives guidance on memory quality, avoiding duplicates, and when to skip distillation.
When to use it
Use it when a session produces knowledge worth keeping across sessions, such as an architecture decision, a reusable workflow, or a lasting preference. It is not meant for routine fixes, work in progress, or simple question-and-answer exchanges.
Requirements
Requires the nmem command-line tool to be available for adding and updating memories. The skill itself ships no scripts and is instructions only.

Distill Memory

Save proactively when the conversation produces a durable fact, preference, decision, plan, procedure, learning, event, or important context. Do not wait to be asked.

When to Distill

Decision with rationale: Compared options, chose with reasoning, trade-off resolved.

Repeatable procedure: Step-by-step workflow the user will need again.

Lesson from debugging: Root cause found, unexpected behavior explained, prevention identified.

Durable preference: Coding style, tooling choice, naming convention, architectural stance.

Plan for future sessions: Agreed next steps, phased approach, deferred work items.

Skip: Routine fixes, work in progress, simple Q&A, generic information.

Usage

bash
nmem --json m add "content" -t "Title" --unit-type <type> -i <importance>

Valid Unit Types

fact, preference, decision, plan, procedure, learning, context, event

Importance Scale (Descending)

RangeMeaningExamples
0.8-1.0MajorArchitecture decisions, production incident fixes, core preferences
0.5-0.7UsefulDebugging insights, workflow improvements, project conventions
0.3-0.4MinorSmall tips, one-off observations, context notes

Examples

bash
# High-value decisionnmem --json m add "Chose PostgreSQL over MongoDB: need ACID for transaction integrity and complex joins across order/inventory tables" \  -t "Database: PostgreSQL for ACID" \  --unit-type decision -i 0.9
# Procedurenmem --json m add "Deploy sequence: run migrations first, then canary at 5%, watch error rate for 10 min, promote to full rollout" \  -t "Production Deploy Procedure" \  --unit-type procedure -i 0.7
# Preferencenmem --json m add "Prefer named exports over default exports in TypeScript. Makes refactoring and IDE navigation faster." \  -t "TS: Named Exports Preferred" \  --unit-type preference -i 0.6

Add vs Update

Search first to avoid duplicates. If a memory already captures the same concept and the new information refines it, update instead of creating a new entry:

bash
nmem --json m update <memory_id> -c "updated content"

One strong memory is better than three weak ones.

At the end of a substantial task, explicitly review whether one durable memory should be added or updated.

Memory Quality

Good (atomic, actionable):

  • "React hooks cleanup must return a function. Caused memory leaks in event listeners."
  • "PostgreSQL over MongoDB: ACID needed for transaction integrity."

Poor: Vague "fixed some bugs", conversation transcript dumps, overly broad summaries.

When to Skip

Do not distill routine work. If the user wouldn't miss it when it's gone, it shouldn't exist. Quality over quantity: 1-3 distilled memories per session is typical.

Links

Source and attribution

Source:nowledge-co/communityinnowledge-mem-step-code/skills/distill-memoryat commit1f4d7eb

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal