In One Paragraph
You asked me to teach you how to find/review/edit Aria's MD files, then noticed NEXT.md had become a bloated 75 KB file. We diagnosed it (24 stacked "Done This Session" blocks duplicating session journals + 18 stacked cron-run paragraphs duplicating daily audits — root cause: append-only by accident), reviewed the Nous Research Hermes Agent repo for memory-hygiene patterns, and applied four disciplines back to Aria. Result: NEXT.md cut 90% (519 → 99 lines), MEMORY.md tightened, CLAUDE.md gained explicit hygiene rules, a weekly Sunday self-audit cron now watches for regression, and a paste-ready brief for Linq is live so she can apply the same lessons to Aspire Digital. Three commits, all pushed.
The Numbers
| File | Before | After | Change | Cap |
|---|---|---|---|---|
| memory/NEXT.md | 519 lines / 75 KB | 99 lines / 7.9 KB | −81% / −89% | 200 L / 20 KB |
| memory/MEMORY.md | 177 lines / 22 KB | 178 lines / 22 KB | +rules, −daily-list bloat | 250 L / 25 KB |
| CLAUDE.md | 98 lines | 124 lines | +Memory Hygiene section | — |
New Files
memory/aria-self/cross-agent-memory-infra.md
Your "we'll need shared Python infra across agents eventually" note, captured. Reconsider when a 2nd agent (likely Linq) hits the same memory-hygiene class of problem. Until then, markdown rules + cron is sufficient.
memory/tools/weekly-self-audit.md
Reference doc for the new cron — what it checks, where to find logs, how to adjust the caps.
ops/aria-weekly-self-audit.sh
144-line pure-shell audit script. No LLM cost. Auto-commits + pushes its own output.
~/Library/LaunchAgents/com.aria.weekly-self-audit.plist
Sundays 06:33 AM local. Loaded + verified via launchctl list. Local-only (not in repo, like the other Aria launchd plists).
memory/daily/2026-04-29-self-audit.md
Today's test-run output. All clean. (See "Audit output" below.)
The Four Disciplines (from Hermes)
1. Hard caps on index files
Hermes' MEMORY.md is capped at ~2,200 chars; their system errors at 80% capacity and forces consolidation. Aria adopted soft caps + a weekly audit (not enforced auto-erroring; we're one user).
2. Frozen-snapshot principle
Memory loads once at session start. Edits go to disk immediately but are only seen on the next session. Cache cost discipline + bloat prevention in one rule.
3. Search, don't carry forward
Hermes uses SQLite + FTS5 for past-session recall. Aria's equivalent: link to memory/sessions/aria/ and memory/daily/; let grep + git log do retrieval.
4. Self-healing infra ships
Rules without enforcement decay. Hermes ships auto-prune + VACUUM as code; Aria ships a weekly cron. The shape that fits the user.
Today's Test-Run Audit Output
# Aria Weekly Self-Audit — 2026-04-29 ## Sizes | File | Lines | KB | Cap | Status | |-----------|-------|----|----------------|--------| | NEXT.md | 99 | 7 | 200L / 20KB | ✅ ok | | MEMORY.md | 178 | 22 | 250L / 25KB | ✅ ok | ## Drift checks - ✅ urgent.json / NEXT.md — every urgent id referenced in NEXT.md ## Session journal coverage (last 7 days) - ✅ no gaps — every committed day has a session journal ## All clean ✅ No flags this week. Hygiene holding.
Commits Shipped Today
472107f Memory hygiene overhaul — Hermes Agent review applied (−492 +134)
7708712 Weekly self-audit auto-generated — 2026-04-29 (test-run output)
0937b9b Wire weekly self-audit cron — Sunday 06:33 launchd job (+211 −2)
18ddafc Weekly self-audit auto-generated — 2026-04-29 (post-fix re-run, all clean)
For Linq
The paste-ready prompt for Linq is live at /info/linq-memory-brief. It distills the four disciplines + Aria's case study so Linq doesn't have to read the Hermes repo herself, then asks her to audit Aspire Digital memory through the same lenses and report back.
Linq will return: (1) sizes she found, (2) disciplines adopted, (3) disciplines skipped + why, (4) cleanup commit reference. One short paragraph, not a treatise.
The Deferred Idea (your call)
You pushed back when I said "Python codebase to enforce hygiene = overkill for one user." Your framing:
"even though I'm one person our agents will become many agents as they already are and so that might be an idea that we build that crosses all agents or something... but we can defer that change or thought until later"
Captured at memory/aria-self/cross-agent-memory-infra.md. Trigger to revisit: when a 2nd agent (likely Linq) independently needs the same hygiene tooling. At that point, build it once for both.
Candidates if/when it happens: hard-cap CLI, sliding-window prune CLI, FTS5 cross-session search, uniform self-audit reporter, shared skill registry.
What's Next
• Tomorrow's morning briefing will see today's audit file and surface "all clean" as part of the cron summary. First proper validation.
• Sunday 06:33 AM first real fire of com.aria.weekly-self-audit. Topher should see the audit file land in memory/daily/ with whatever flags accumulated over the week.
• When ready, hand the Linq brief over and watch what she does on the Aspire side. Her result will be a useful signal on whether the cross-agent infra idea has crossed the "build it" threshold.
• Follow-up Aria can do on its own: skill audit. Recurring patterns (urgent.json reconcile, session-journal write, lane sweep) might deserve to be in ~/projects/shared-skills/ rather than re-inferred each session. Listed in NEXT.md follow-up ideas.