Memory Architect

v1.0.0

Restructure flat MEMORY.md files into a tiered memory system with an entity graph. Use when: (1) MEMORY.md is growing unwieldy or exceeds 150 lines, (2) user...

0· 278·4 current·4 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (restructuring MEMORY.md into tiered files + an ontology) matches the SKILL.md instructions: analyze MEMORY.md, create memory/protocols.md, memory/active.md, memory/archive.md, and memory/ontology/graph.jsonl. There are no unexplained external credentials, binaries, or install steps requested.
Instruction Scope
The instructions explicitly read the full MEMORY.md and create/overwrite files under a memory/ directory and memory/ontology/graph.jsonl. This is expected for the stated purpose, but the skill will collect and persist potentially sensitive personal/contact information (emails, chat IDs) into JSONL. The SKILL.md also shows example shell commands (grep, jq) but the skill metadata declares no required binaries — that mismatch is operational (jq/grep may not be present) rather than inherently malicious.
Install Mechanism
Instruction-only skill with no install spec and no code files. Nothing is downloaded or written outside the described memory files, minimizing install risk.
Credentials
The skill requests no environment variables or credentials, which is proportionate. However, it instructs collecting/storing contact identifiers and emails into graph.jsonl and archive files; that is appropriate for a memory organizer but increases the risk of exposing sensitive data if those files are shared or backed up to external systems.
Persistence & Privilege
always is false and there are no indications the skill tries to modify other skills or system-wide settings. Its persistence is limited to creating/updating files in a memory/ hierarchy under the repository/workspace.
Scan Findings in Context
[none] expected: The regex-based scanner found nothing to analyze; this is expected because the skill is instruction-only (only SKILL.md present). The security surface is the instructions themselves.
Assessment
This skill will read and rewrite your MEMORY.md and create a memory/ folder including an append-only JSONL ontology that can contain names, emails, chat IDs, and other contact data. Before running: (1) back up your existing MEMORY.md, (2) ensure you are okay with storing contact/ID data in plain files (avoid putting secrets or API keys in MEMORY.md), (3) confirm the agent environment has the utilities you may need (jq/grep) or adapt commands, and (4) review created files for sensitive information before committing or sharing them. If you want tighter privacy, redact or remove secrets from MEMORY.md first.

Like a lobster shell, security has layers — review code before you run it.

latestvk97bp1war3wmxv0kpxmhc1f6gd822kv6

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Memory Architect

Split a monolithic MEMORY.md into three tiers plus a structured entity graph.

Architecture

MEMORY.md              → Router (30 lines max). Points to tiers.
memory/protocols.md    → HOT: Stable workflows, shortcuts, procedures. Read on session start.
memory/active.md       → WARM: Current projects, waiting-on, live context. Check before acting.
memory/archive.md      → COLD: Completed work, historical reference. Search when needed.
memory/ontology/graph.jsonl → Structured entities + relations (JSONL append-only)

Process

1. Analyze the existing MEMORY.md

Read the full file. Classify each section:

Content typeTierExamples
Stable workflow / procedureprotocolsEmoji shortcuts, deploy steps, tool usage rules
Active project / waiting-onactiveCurrent builds, pending replies, live URLs
Completed work / reference dataarchiveDone tasks, contact lists, account tables, old decisions
Named entity with propertiesontologyPeople, orgs, projects, properties, locations

2. Create the tier files

Write each tier file with a header comment explaining its purpose and update frequency.

protocols.md rules:

  • Only procedures that rarely change
  • Include the exact commands (copy-pasteable)
  • No project-specific state

active.md rules:

  • Only things with a next action or pending status
  • Include "Waiting On" section at bottom
  • Prune completed items to archive on each update

archive.md rules:

  • Completed work grouped by date or category
  • Reference data (contacts, accounts, chat IDs)
  • Keep searchable — use headers and tables

3. Extract entities to ontology

For each named person, organization, project, property, or location, create a JSONL entry:

{"op":"create","entity":{"id":"p_alice","type":"Person","properties":{"name":"Alice","email":"alice@example.com","role":"Engineer"}},"timestamp":"2026-01-01T00:00:00Z"}
{"op":"relate","from":"p_alice","rel":"member_of","to":"org_acme","timestamp":"2026-01-01T00:00:00Z"}

ID conventions:

  • People: p_shortname
  • Organizations: grp_name or org_name
  • Projects: proj_name
  • Properties/locations: prop_name or loc_name

Relation types: member_of, owns, collaborates_on, interested_in, guides, uses, listed_by, located_at

4. Rewrite MEMORY.md as router

Replace MEMORY.md with a ~25-line index that:

  • Lists the three tiers with one-line descriptions
  • Notes the ontology location
  • Preserves any system directives (NO_REPLY rules, heartbeat instructions)
  • Contains zero project-specific content

5. Verify

wc -l MEMORY.md memory/protocols.md memory/active.md memory/archive.md memory/ontology/graph.jsonl

Targets: MEMORY.md under 30, protocols under 100, active under 80, graph = 1 line per entity/relation.

Maintenance

On each session

  • Read memory/protocols.md (always)
  • Scan memory/active.md (always)
  • memory/archive.md — only on memory_search or explicit request

When adding new information

  • New procedure → protocols.md
  • New project/active item → active.md
  • Completed item → move active → archive
  • New person/org/project → append to graph.jsonl

Entity queries

grep "p_forrest" memory/ontology/graph.jsonl
grep '"type":"Project"' memory/ontology/graph.jsonl
cat memory/ontology/graph.jsonl | jq -r 'select(.entity?.type=="Person") | .entity.properties.name'

Files

1 total
Select a file
Select a file to preview.

Comments

Loading comments…