Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
hkuds avatar

Memory

  • 59 installs
  • 46.5k repo stars
  • Updated August 3, 2026
  • hkuds/nanobot

Read a two-layer, Dream-managed memory system (SOUL, USER, MEMORY, history.jsonl) and search past events with grep without editing the managed files.

About

Describes a read-only, Dream-managed memory of persona, user profile, long-term facts, and an append-only history log. A developer uses it when an agent needs to recall or search past context.

  • SOUL.md/USER.md/MEMORY.md are Dream-managed, do not edit
  • Search history.jsonl with grep using count/content/fixed-strings modes

Memory by the numbers

  • 59 all-time installs (skills.sh)
  • +2 installs in the week ending Aug 2, 2026 (Skillselion tracking)
  • Ranked #6,379 of 16,556 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/hkuds/nanobot --skill memory

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs59
repo stars46.5k
Last updatedAugust 3, 2026
Repositoryhkuds/nanobot

What it does

Read a two-layer, Dream-managed memory system (SOUL, USER, MEMORY, history.jsonl) and search past events with grep without editing the managed files.

Files

SKILL.mdMarkdownGitHub ↗

Memory

Structure

  • SOUL.md — Bot personality and communication style. Managed by Dream. Do NOT edit.
  • USER.md — User profile and preferences. Managed by Dream. Do NOT edit.
  • memory/MEMORY.md — Long-term facts (project context, important events). Managed by Dream. Do NOT edit.
  • memory/history.jsonl — append-only JSONL, not loaded into context. Prefer the built-in grep tool to search it.

Search Past Events

memory/history.jsonl is JSONL format — each line is a JSON object with cursor, timestamp, content.

  • For broad searches, start with grep(..., path="memory", glob="*.jsonl", output_mode="count") or the default files_with_matches mode before expanding to full content
  • Use output_mode="content" plus context_before / context_after when you need the exact matching lines
  • Use fixed_strings=true for literal timestamps or JSON fragments
  • Use head_limit / offset to page through long histories
  • Use exec only as a last-resort fallback when the built-in search cannot express what you need

Examples (replace keyword):

  • grep(pattern="keyword", path="memory/history.jsonl", case_insensitive=true)
  • grep(pattern="2026-04-02 10:00", path="memory/history.jsonl", fixed_strings=true)
  • grep(pattern="keyword", path="memory", glob="*.jsonl", output_mode="count", case_insensitive=true)
  • grep(pattern="oauth|token", path="memory", glob="*.jsonl", output_mode="content", case_insensitive=true)

Important

  • Do NOT edit SOUL.md, USER.md, or MEMORY.md. They are automatically managed by Dream.
  • If you notice outdated information, it will be corrected when Dream runs next.
  • Users can view Dream's activity with the /dream-log command.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.