archive-profile-memory
Archive or clean up facts from active MEMORY.md into memory-archive/ without deleting them. Use when the user wants to forget, remove, tidy old memory, or free space for new memories.
Try your first task
A source-grounded starter task has not been verified for this skill yet.
SKILL.md
name: archive-profile-memorydescription: Archive or clean up facts from active MEMORY.md into memory-archive/ without deleting them. Use when the user wants to forget, remove, tidy old memory, or free space for new memories.Use this skill when the user wants to remove facts from active memory without deleting them permanently.
- Use the
update-profile-memoryskill to add facts to activeMEMORY.md. - Use profile skills for repeatable procedures — not for archiving memory.
- Archived facts live under
memory-archive/and are not loaded into chat automatically. Usesearch_filesorread_fileto retrieve them later.
MEMORY.md shape
Active memory is MEMORY.md in the profile workspace:
- A preamble (
# Memory Logand---) must stay intact. - Facts are bullets under dated sections:
## YYYY-MM-DDfollowed by- bullet text.
Copy bullet text verbatim from read_file output when editing. Do not paraphrase.
Archive file shape
Archive files live at memory-archive/YYYY-MM.md (year and month of the archive action, UTC).
New archive file template:
# Archived Memory
---
Each archive append starts with metadata comments, then the archived sections:
<!-- archived: 2026-07-12T10:30:00.000Z -->
<!-- reason: user asked to forget old job details -->
## 2026-06-29
- Old preference.
Preserve each bullet's original ## YYYY-MM-DD section header from MEMORY.md.
Workflow
read_fileMEMORY.mdand identify the exact- bulletlines to archive.- Confirm targets with the user when the request is ambiguous.
- Choose
memory-archive/{YYYY-MM}.mdfor the current month. - Check whether the archive file exists before calling
read_file. Withbash, runif test -f memory-archive/{YYYY-MM}.md; then printf 'exists\n'; else printf 'missing\n'; fiin the active profile workspace, replacing{YYYY-MM}with the chosen month. A missing file (or missingmemory-archive/directory) is normal for the first archive:- If the result is
exists,read_filethe archive to preserve its contents. - If the result is
missing, skip the read and create the archive in step 5. - If
bashis unavailable, useread_file; treat only a file-not-found result as a new archive. Stop on permission or other errors rather than overwriting an unread archive.
- If the result is
- Append to the archive first (reduces data-loss risk):
- If the file does not exist,
write_filewith the template plus the append block. - If it exists,
edit_fileto append after the existing content (orwrite_filethe full merged content).
- If the file does not exist,
edit_fileMEMORY.mdto remove each archived- bulletline.- Remove any
## YYYY-MM-DDsection that has no bullets left. - Re-read
MEMORY.mdand the archive file to verify the result. - If archiving was to free space for new memories, confirm
MEMORY.mdis under 4096 bytes before retrying withupdate-profile-memory.
When edit_file reports a missing, duplicate, or overlapping match, read_file again and issue a corrected edit with exact text.
Legacy layout
If you find archives under data/memory-archive/ instead of memory-archive/, use the top-level memory-archive/ path for new writes.