{
  "source_file": "0930",
  "source_platform": "Ghost",
  "author": "Louis-François Bouchard / What's AI",
  "title_listed": "How to Build a Memory Your AI Agents Can Actually Reuse",
  "keywords": "",
  "domain": "大模型算法",
  "content_type": "深度技术解析",
  "is_paid_flag": "否",
  "url": "https://www.louisbouchard.ai/memory-for-ai-agents/",
  "publish_date": "2026-06",
  "corpus_stage": "",
  "notes": "",
  "id": "c6088722f550",
  "collected_at": "2026-10-02T12:40:33",
  "title": "How to Build a Memory Your AI Agents Can Actually Reuse",
  "body_markdown": "The short version\nReusable agent memory lives outside the model in a structure future sessions can inspect and update.\nKeep raw sources untouched, maintain an index that tells the agent what exists, and build derived notes that point back to evidence. Instead of pasting an entire archive into every prompt, load only what the current task needs and keep the result understandable by humans.\nThe bottleneck is not giving the model more information once. It is making useful information available again later.\nAgent memory works better as external files and references than as one giant prompt pasted into every session.\nA practical research OS gives agents a structure they can inspect, query, and update without rebuilding context from zero.\nMost agent workflows still have the same annoying problem.\nYou teach the agent something useful, it works well for one session, and then the next time you start again from zero.\nSame links.\nSame PDFs.\nSame notes.\nSame explanations.\nSame “please remember my style and constraints.”\nVery productive. Very 2026. haha.\nThis is the problem Paul Iusztin and I focused on in our AI Engineer World’s Fair Online Track talk, which was selected as a keynote. Super cool surprise, but more importantly, I think the topic is one of the most useful things AI engineers need to understand right now.\nYou can watch the full keynote here:\nThe main idea is simple: the bottleneck is not giving the model more information.\nThe bottleneck is reusing that information later.\nI have notes in Obsidian, Readwise highlights, GitHub repos, meeting recaps, old video research, articles, and random saved links I definitely planned to revisit. Paul has thousands of notes too.\nBut when I start a new project, I do not want to paste my whole second brain into Claude Code, Cursor, or Codex. That would be expensive, slow, and honestly pretty bad.\nThe better pattern is to keep memory outside the model.\nSo we built an AI Research OS based on plain files and references. No vector database required. No knowledge graph to maintain. Just a structure agents can inspect, query, and update.\nIt has three layers.\nFirst, the raw layer.\nEvery source stays untouched. If the agent ingests an article, repo, transcript, note, or highlight, the original version is preserved. This matters because summaries lose details. When accuracy matters, the agent can always go back to the source.\nSecond, the index.\nThis is the map. The agent reads an\nindex.yaml\nfile that tells it what exists, where it lives, what each source is about, and which derived notes point back to it.\nInstead of loading everything, the agent starts from the catalog, reads summaries, then opens only the files it needs.\nThird, the wiki.\nThis is where the memory starts becoming useful. The system turns sources into concepts, comparisons, entities, notes, and open questions.\nFor example, if you ingest a few open-source coding agent repos, it can create notes about permission flows, sandboxing, tool registries, sub-agents, memory systems, and then compare the architectures across repos.\nAnd when you ask new questions, the wiki can grow. New concepts, new comparisons, new notes.\nThat is the part I care about most.\nA normal research document is static. Useful once, then slowly stale.\nA file-based wiki can keep compounding as you work.\nOf course,\nvector databases\nand RAG systems still make sense for production products. We use them at Towards AI, especially for our AI tutor. But for a personal research workflow, I want something I can inspect by hand.\nI want to open the folder, read the files, edit a bad summary, remove a weak source, and understand why the agent answered something.\nThat is much harder when everything is hidden behind embeddings and database calls.\nSo the useful lesson from the keynote is this:\nDo not make the model remember everything.\nMake the agent know where to look. (typically named skills or here a “Wiki”)\nThat same idea is also what we’ll cover in more depth during my in-person AI Engineer World’s Fair workshop in San Francisco on June 29 with Omar and Samridhi from Towards AI.\nThat workshop is about context management and memory for long-running agents, using the open-source AI tutor we built for Towards AI Academy.\nThe tutor has to answer based on our course content, the student’s current lesson, the student profile, long debugging sessions, and code. And it still has to be fast enough to use.\nThat means every context decision matters: what to retrieve, what to keep, what to remove, when to compact, when summarization helps, when caching makes summarization a bad idea, and how to avoid old tool outputs quietly filling the entire context window.\nI recorded my part of that workshop early for paid subscribers, which you can join here:\nhttps://louisbouchard.substack.com/subscribe\nThe short version is: agents do not need infinite context.\nThey need better memory, better retrieval, better compression, and better systems around them.\nThat is where the real engineering is.\nAs a teaser, here’s the experiment website for this upcoming workshop:\nhuggingface.co/spaces/towardsai-tutors/context-engineering-experiments\nFAQ\nHow do you build reusable memory for AI agents?\nKeep notes, sources, decisions, and references in an external structure the agent can inspect and update across sessions.\nWhy not paste everything into the model context?\nIt gets expensive, slow, and messy. External memory lets the agent retrieve what matters without dragging the whole archive into every run.\nWhat should agent memory avoid?\nAvoid treating memory as a vague pile of text. The agent needs clear files, references, and rules for what should be reused.\nWhat belongs in reusable agent memory?\nStore concise decisions, verified facts, source references, user preferences, and durable outputs that future work genuinely needs.\nHow should an agent retrieve old memory?\nIt should search or filter the external store and load only the records relevant to the current goal.",
  "metadata": {
    "title": "How to Build a Memory Your AI Agents Can Actually Reuse",
    "description": "Build reusable memory for AI agents with plain files, source references, an index, and a wiki that future sessions can inspect, query, and update.",
    "keywords": null,
    "author": "Louis-François Bouchard",
    "og:site_name": "Louis-François Bouchard, aka What's AI",
    "og:locale": "en_US",
    "og:locale:alternate": "fr_CA",
    "og:type": "article",
    "og:title": "How to Build a Memory Your AI Agents Can Actually Reuse",
    "og:description": "Build reusable memory for AI agents with plain files, source references, an index, and a wiki that future sessions can inspect, query, and update.",
    "og:url": "https://www.louisbouchard.ai/memory-for-ai-agents/",
    "og:image": "https://www.louisbouchard.ai/media/ghost/content/images/2026/06/AIE-Video---YT.png",
    "og:image:secure_url": "https://www.louisbouchard.ai/media/ghost/content/images/2026/06/AIE-Video---YT.png",
    "og:image:alt": "Paul Iusztin and Louis-François Bouchard presenting an Agent Memory keynote at AI Engineer World's Fair",
    "twitter:card": "summary_large_image",
    "twitter:site": "@Whats_AI",
    "twitter:creator": "@Whats_AI",
    "twitter:title": "How to Build a Memory Your AI Agents Can Actually Reuse",
    "twitter:description": "Build reusable memory for AI agents with plain files, source references, an index, and a wiki that future sessions can inspect, query, and update.",
    "twitter:image": "https://www.louisbouchard.ai/media/ghost/content/images/2026/06/AIE-Video---YT.png",
    "twitter:image:alt": "Paul Iusztin and Louis-François Bouchard presenting an Agent Memory keynote at AI Engineer World's Fair",
    "article:published_time": "2026-06-26T11:25:01.000Z",
    "article:modified_time": "2026-06-26T11:25:01.000Z",
    "article:author": "Louis-François Bouchard"
  },
  "paywall": {
    "listed_paid": false,
    "detected": false,
    "marker": "",
    "public_only": false,
    "policy": "付费/会员内容只保留页面公开可见部分，不绕过付费墙"
  },
  "crawl": {
    "success": true,
    "status_code": 200,
    "error": ""
  },
  "code_blocks": [],
  "images": [],
  "audio": [],
  "videos": [
    {
      "url": "https://www.youtube.com/watch?v=ZRM_TfEZcIo",
      "src": "https://www.youtube-nocookie.com/embed/ZRM_TfEZcIo?feature=oembed",
      "status": "ok",
      "kind": "single_video",
      "local_path": "attachments/c6088722f550/videos/repair-ZRM_TfEZcIo.mp4",
      "bytes": 170873224,
      "valid": true,
      "height": 1080,
      "width": 1920,
      "duration": "2371.961000",
      "reused": false
    }
  ],
  "links": [
    {
      "href": "https://www.youtube-nocookie.com/embed/ZRM_TfEZcIo?feature=oembed",
      "label": "",
      "type": "iframe"
    },
    {
      "href": "https://www.louisbouchard.ai/what-are-vector-databases/",
      "label": "vector databases",
      "type": "a"
    },
    {
      "href": "https://louisbouchard.substack.com/subscribe",
      "label": "https://louisbouchard.substack.com/subscribe",
      "type": "a"
    },
    {
      "href": "https://huggingface.co/spaces/towardsai-tutors/context-engineering-experiments",
      "label": "huggingface.co/spaces/towardsai-tutors/context-engineering-experiments",
      "type": "a"
    }
  ],
  "repair_version": 2,
  "repaired_at": "2026-10-14T10:47:50Z",
  "source_url": "https://www.louisbouchard.ai/memory-for-ai-agents/",
  "papers": [],
  "actual_video_files": [],
  "body_chars": 5981,
  "expected_body_images": 0,
  "discovery_status": "ok",
  "delivery_status": "ok",
  "missing_reason": "",
  "raw_html": "attachments/c6088722f550/pages/source.html",
  "local_html": "attachments/c6088722f550/pages/article.html",
  "body_base_path": "attachments/c6088722f550/pages/",
  "body_markdown_path": "attachments/c6088722f550/pages/article.md"
}