hermes-agent/optional-skills
briandevans 8a9ab8b56b fix(cli): stop shredding an existing MEMORY.md on hermes import-agent
memories/MEMORY.md is the "§"-delimited store written by MemoryStore, not a
markdown document. parse_existing_memory_entries() fell back to
extract_markdown_entries() -- the *source* parser for CLAUDE.md / AGENTS.md --
whenever the destination held no delimiter, which is exactly the case for a
single-entry store or one that was hand-edited or shell-appended. That
extractor skips fenced code blocks, skips table rows, splits a block into one
entry per bullet and reflows paragraphs. The shredded result was then written
straight back over the user's store and reported as "Imported", with no backup
to recover from.

Parse the destination the way MemoryStore._parse_entries does: split on
ENTRY_DELIMITER only, so a store with no delimiter is one intact entry.
extract_markdown_entries() is unchanged and still used on the sources, where
it is correct.

Also restore the safety net the port dropped. The openclaw migration script
this module was ported from calls maybe_backup(destination) before rewriting a
memory store; the port did not. Snapshot the store to <name>.bak.<unix_ts>
(same naming as MemoryStore._backup_drifted_file), refuse to rewrite when the
snapshot fails, and write via temp file + atomic rename so an interrupted
import cannot leave a truncated store and a symlinked MEMORY.md stays a
symlink.

The identical fallback lives in openclaw_to_hermes.py, where it is reached
from migrate_memory() (memories/MEMORY.md and memories/USER.md) and
migrate_daily_memory(); fixed there too.
2026-07-29 16:49:07 +05:30
..
autonomous-ai-agents fix(skills): sync coding-agent CLI skills to current flags/packages 2026-07-24 08:18:10 -07:00
blockchain
communication
creative fix(windows): sweep remaining bare read_text/write_text sites + linter rule 2026-07-24 17:10:39 -07:00
data-science
devops docs(skills): fix remaining 13 broken related_skills refs repo-wide 2026-07-24 07:54:05 -07:00
dogfood
email/agentmail
finance
gaming
health
mcp docs(skills): fix remaining 13 broken related_skills refs repo-wide 2026-07-24 07:54:05 -07:00
migration fix(cli): stop shredding an existing MEMORY.md on hermes import-agent 2026-07-29 16:49:07 +05:30
mlops fix(skills): sync mlops training/model-infra skills to current APIs 2026-07-24 08:18:05 -07:00
payments
productivity
research fix(windows): sweep remaining bare read_text/write_text sites + linter rule 2026-07-24 17:10:39 -07:00
security
software-development
web-development
yuanbao
DESCRIPTION.md