Skip to content

Add "Two Memories: Honcho vs Hindsight" post - #5

Open
griswaldbrooks wants to merge 3 commits into
mainfrom
post/two-memories
Open

Add "Two Memories: Honcho vs Hindsight" post#5
griswaldbrooks wants to merge 3 commits into
mainfrom
post/two-memories

Conversation

@griswaldbrooks

Copy link
Copy Markdown
Owner

Source-level teardown of two open-source agent-memory systems — Honcho (Plastic Labs) vs Hindsight (Vectorize). The post descends layer by layer from design philosophy down to the CREATE TABLE statements, framing both as one bet restated: put the intelligence in the model, or in the structure.

Changes

Adds 3 files — no template or global-CSS changes:

  • content/blog/2026-06-27-two-memories.md — the post (renders at /blog/two-memories/)
  • static/blog/two-memories/widgets.css
  • static/blog/two-memories/widgets.js

Interactive figures: benchmark bars, two-pipeline retrieval diagram, surprisal demo, recency-envelope lab, and a side-by-side contradiction trace. All widget styles namespaced .tm-* / #tm-* (no bleed); progressive enhancement — prose + code still read with JS disabled.

Verification

  • zola build succeeds (exit 0). Post appears in blog index + agent-memory tag taxonomy.
  • Asset <link>/<script> resolve to /blog/two-memories/widgets.{css,js}; all 17 widget container IDs present in output.
  • python/sql/json code blocks pick up one-dark highlighting; two text pseudo-code blocks render plain (Zola has no text lexer — benign warning).
  • widgets.js parses cleanly; CSS fully namespaced.
  • Live figure interactivity not browser-tested headlessly — eyeball under zola serve.

Notes

  • Written first-person to match a personal blog — confirm the voice reads right before merging.
  • Filename date 2026-06-27 = publish date; adjust filename + frontmatter date to change.

🤖 Generated with Claude Code

griswaldbrooks and others added 3 commits June 29, 2026 10:29
Source-level comparison of two agent-memory systems, descending from
design philosophy to schema. Adds 3 files (1 post + 2 static assets);
no template or global-CSS changes. All widget styles namespaced .tm-*.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
feather.min.js was a parser-blocking <script> in <head>; when the CDN is
slow or blocked (privacy extension, Pi-hole, offline) it froze the entire
page parse, so deferred scripts — including the two-memories post's
widgets.js — never executed and no figures rendered. Load it async and
call feather.replace() defensively (immediately, on the script's onload,
and at DOMContentLoaded) so icons still render once it arrives.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The Plausible analytics script was `defer`, and deferred scripts execute
in strict document order — so when pls.mrkaran.dev is slow or blocked
(ad/privacy blockers routinely kill analytics domains), it stalled the
deferred queue and the two-memories post's widgets.js never ran, leaving
every figure blank. Loading it async decouples it: no third-party script
is now render-blocking or ahead of the widget script. Also stops the
analytics fetch from delaying DOMContentLoaded on every page.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant