{
  "id": 9833569,
  "title": "Crystals: agent memory that arrives before you act",
  "url": "https://urgent.news/2026/09/25/crystals-agent-memory-that-arrives-before-you-act",
  "topic": "ai",
  "section": "AI",
  "published": "2026-09-25T20:44:57.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/tom_jones_230c4659491adcd/crystals-agent-memory-that-arrives-before-you-act-27h8"
  },
  "original_language": "en",
  "account": "Agent memory in AI systems often takes the form of a search box, with a retriever pulling relevant chunks when an agent suspects it needs assistance. To avoid costly mistakes from confident agents, crystals are introduced. A crystal is a markdown file containing a binding block at the top, specifying which actions it responds to and when it should be delivered. The crystal arrives before the action is executed, ensuring the information is available even if the agent was not explicitly asked for it.\n\nThe crystal contains a substring matching rule, which is simple yet robust, matching plain text substrings case-insensitively without word boundaries. This approach allows for easy auditing and prevents drift in the system's behavior. However, a significant challenge arises when a crystal's content exceeds the token budget, causing it to be cut off before reaching the model. This results in a \"crystal failure,\" where the agent fails to execute the intended action due to the missing information.\n\nTo address this issue, a new approach is proposed, focusing on the earlier stage of the system where the note is matched and budgeted. By ensuring that the crystal's content is correctly matched and delivered within the token budget, the system can avoid these failures and maintain reliable agent memory. This field report presents a new perspective on agent memory, highlighting the importance of efficient channel management and budget allocation to prevent costly mistakes in real-world deployments.",
  "summary": "Most agent memory is a search box. The model wonders something, a retriever runs, chunks come back. That design has one load-bearing hole: retrieval fires only when the agent already suspects it needs help. The expensive mistakes are the confident ones, and a confident agent never queries. So we push instead. A note gets bound to an action , and it arrives in the moment before that action runs,…",
  "key_points": [
    "Crystals are markdown files with binding blocks specifying actions and timing.",
    "Substring matching rule allows case-insensitive text matching without word boundaries.",
    "New approach focuses on earlier stage to match and budget crystal content within token limits."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}