Skills

Memory Reflect

Sleep-time reflection: review recent Basic Memory activity and fold lasting decisions...

Install

npx skills add basicmachines-co/basic-memory --skill memory-reflect -g -a claude-code -y
Category
Writing
Updated
3d ago
License
AGPL-3.0
Context cost
Mediumabout 1,581 tokens
Runs scripts
No, instructions only

What it does

Sleep-time reflection: review recent Basic Memory activity and fold lasting decisions, lessons, and facts into the notes they belong in. Run 1-2x daily, on a heartbeat, or when asked.

Memory Reflect

Review what changed recently and fold what matters into the notes that hold durable knowledge. Raw notes (meeting notes, daily logs, captures, transcripts) record what happened; reflection decides what of it should still be known next month, and puts it where someone will look for it.

Inspired by sleep-time compute: memory forms best between working sessions, not during them.

Project scope

If the project is unknown, discover it with bm_project(command="list"). Pass a nonempty project on every note, folder, context and schema call, even with one project or a qualified memory:// URL. Use the chosen project's name, workspace/project, or external ID; <project> below is a placeholder for it. Recent activity also requires project. Search accepts project for one project, projects for selected projects, or all_projects=True explicitly. Discovery and bundled manuals need no project. Keep the same scope when following returned paths, paginating, or recovering from a refusal.

When to Run

  • Scheduled: once or twice a day, or on a heartbeat
  • On demand: asked to reflect, consolidate, or review recent work
  • After a burst of work: many new notes since the last reflection

Process

1. Gather recent material

# The last reflection is the checkpoint. Titles carry date and time, so the
# newest sorts first.
bm_list(path="reflections", sort="title_desc", page_size=1, project="<project>")

# Everything changed since that date (json gives one row per note). With no
# reflection yet, use since="7d".
bm_project(command="recent", since="2026-10-13", items=["note"], output_format="json", page_size=50, project="<project>")
# Ask for page=2, 3, ... until has_more is false.

# Read each changed note in full before judging it
bm_read(identifier="meetings/2026-10-14-launch-sync", project="<project>")
Read the whole SKILL.md on GitHub

More in Writing