Why my agent returns zero memories for new vendors
The most important line of code in my accounts payable agent is the one that makes it forget everything. When an invoice arrives from a vendor we have never paid, the agent skips memory recall and returns an empty list. That looks like a missing feature. It is the feature. What LedgerMind does LedgerMind is an accounts payable decision agent. An invoice comes in, and the agent approves it, flags…
The accounts payable agent in question is LedgerMind, which makes decisions based on whether to approve, flag an exception, hold payment, or send the invoice to a human. The decision pipeline includes Invoice, Purchase Order, Goods Receipt, Memory Recall, Risk Evaluation, Decision, and Memory Retain. Memory comes from Hindsight, an open-source agent memory system.
In the case of new vendors, LedgerMind skips memory recall and returns an empty list, which appears to be a missing feature. However, it is actually an intentional design choice that helps maintain trust by not manufacturing trust for vendors with no history. A memory layer that returns something for a vendor with no history could potentially lead to trust issues, as a shared bank detail might contain memories about other vendors with similar categories, terms, and amounts.
To prevent this, LedgerMind refrains from making a recall call for new vendors. Instead, it gates new vendors by finance staff, which is the right default. While the agent does make two calls to Hindsight—one before deciding and one after—the reasoning behind these calls is carefully constrained to avoid circular evidence and ensure trustworthiness. This includes filtering raw memories to include only those that mention the vendor by name and do not include the current invoice number.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.