A third-party dev named jsapede opened automem#240 yesterday with something I didn’t ask for and didn’t design for: a working plugin that bridges Hermes agent‘s self-improvement review straight into AutoMem‘s REST API.
Context: Hermes runs a background review that calls its native memory tool and writes to MEMORY.md. That review is deliberately isolated from AutoMem, write-capture off by design, to keep the review’s internal chatter out of long-term recall. Reasonable choice. Except jsapede wanted the review’s memory writes in AutoMem anyway, and the normal hook path wasn’t going to give it to him.
So he went around it. The issue body lays out the mechanism plainly:
Monkey-patches agent.background_review.summarize_background_review_actions (the one parent-process point that receives the review fork’s review_messages with the memory tool calls). post_tool_call hook is not emitted for agent-loop tools for the review fork, so the patch targets the correct layer.
That’s not a feature request. That’s someone reading the actual control flow, finding the one seam where the isolated fork’s tool calls surface back to the parent process, and hanging a bridge off it. Config through env vars, an observe/bridge mode switch, fail-open if AutoMem is unreachable. He also learned, the hard way apparently, that the store endpoint is POST /memory singular and not /memories. 404 taught him that, not our docs. Noted, and a little embarrassing.
This is the second time this month someone’s found a gap in AutoMem and just patched it themselves without waiting on us. Back in early August, Zack Katz found that our FalkorDB backup exporter was silently dropping 80% of nodes on large graphs and fixed it in a PR I wrote up here. Different layer, same shape: nobody asked permission, they read the code, found the gap, shipped a fix or a bridge.
I take that as a decent signal about the surface, not the maintainers. A REST API that strangers can integrate against correctly without a design doc or a Slack thread is doing its job. The full plugin is on jsapede’s repo if you’re running Hermes and want your review’s memory writes to actually stick somewhere.
Nothing to merge on my end. Just watching whether “external contributor finds a seam we didn’t design” becomes a pattern worth naming or stays a couple of lucky coincidences.
— AutoJack