Give Your Coding Agents a Memory You Own

2026年9月3日 00:00
站內 AI 整理稿

Back to Articles Give Your Coding Agents a Memory You Own Published September 3, 2026 Update on GitHub Upvote 69 +63 David Corvoysier dacorvo Follow I work across several machines, and I switch coding agents depending on the task.Every one of them meets my projects as a stranger.

The reasoning from “last Tuesday” disappears when the session ends.Each new agent, on each new host, starts from zero.Earlier this year, Software Forgets: Agent Traces Are the Memory made the case that coding agents already produce the record we keep losing.

As they search a codebase, try approaches, hit errors, read documentation, and change direction, they leave behind a dense account of not just what changed, but why.While the diagnosis is correct, traces are only potential memory.The session logs of an agent are still just an archive.

You cannot grep your way to “why did we move off the streaming parser?” across ten thousand turns.For an agent to use those traces while it works, they need indexing, retrieval, ranking, and exact provenance.That is what funes provides.

It is a durable memory layer for your agents (Claude Code, Codex, pi, and Hermes).It is built from the sessions already on your machine.It works locally and becomes part of your agent's normal workflow with one command.

When you want it to, it can also travel to a Hugging Face dataset you own, private by default.Add memory to the agent you already use funes is a single binary.Its default inference backend has no ML runtime dependency, and embedding and reranking happen on your machine.

Install it: curl -fsSL https://huggingface.co/buckets/huggingface/funes/resolve/install.

sh | sh Then add it to an agent: funes add claude # or: codex, pi, hermes That one add command builds the first index, gives the agent recall and get tools, and installs the automation that indexes each completed turn.

Indexing is incremental, with new runs adding new turns rather than embedding the whole history again.The older and deeper content can backfill in bounded steps.From there, you just work.When a task touches a past decision, rationale, or finding, the agent can reach for recall itself.

You do not need to remember the old session or paste its context into the new one.With funes added, recall happens inside the conversation.The agent reaches for its memory on its own and names the session behind its answer.

recall returns the original text, not a summary, and shows exactly where it came from (the agent, timestamp, session, and turn).Each result includes a get command that opens the full turn and its surrounding context.

Underneath, one deterministic pipeline parses every supported trace into the same turn-and-block shape, chunks it, embeds it with a pinned local model, and writes it to a local Lance dataset.

A query combines vector and BM25 search, fuses their rankings, reranks the candidates with a cross-encoder, reweights them by recency, and attaches neighboring chunks.

That design gives funes three important properties: One memory across agents: Claude Code, Codex, pi, and Hermes all write to the same shape.recall spans their histories, and every hit says which agent produced it.Raw evidence stays intact: Nothing is distilled into a fact at write time.

A result can always lead back to the turn that produced it.recall is local by default: No account or Hub repository is required.A hosted model does not process your sessions for indexing; embedding and reranking run on your machine, and your coding agent does the reasoning.

The agent as a stranger problem is already solved on one machine.But memory gets more useful when the next agent is running somewhere else.

A memory is a dataset, not a service To make a memory follow your work, bind one when you add funes to an agent: funes add codex acme/funes-memory The bind publishes your current memory there.funes then keeps it current, indexing each turn locally and publishing at session boundaries.

The agent recalls from it throughout.Run the same command on another machine and the memory follows you there.Underneath, the local memory is a Lance dataset, and the shared memory is a Hugging Face dataset (private by default) you own.

Before anything reaches the Hub, credentials have already been redacted during indexing.Publishing then scans every chunk again and withholds anything that still looks like a secret.The scanner behind this is documented in SECURITY.md, including what it does and doesn't cover.

When an agent reads a remote memory, funes caches the dataset files locally, so warm queries return to local speed.The Hub supplies the ownership, access control, versioning, and distribution it already supplies for other datasets.

Your memory does not become an account in a separate memory service, and you do not rent it back through an API.Ask first, wire later recall is shaped for agents.When you want to put a question to a memory yourself, use ask.

It reads your local memory by default: funes ask claude "what did we decide about the streaming parser" Or point it at a shared memory.

We published a memory of funes development, so you can ask why funes works the way it does without creating a memory of your own: funes ask claude "why is funes append-only" --memory huggingface/funes-memory funes ask is the read-only, one-question sibling of funes add.

It recalls the passages, hands them to a coding agent, and returns a grounded answer that names its sources.It does not install an integration or change the agent's persistent setup.A retrieval miss is not papered over.If the passages do not support an answer, the agent says so.

You can rephrase the question or add funes to the agent so it can search the memory iteratively during normal work.Switching agents without losing the thread A shared memory is not tied to the agent or model that created it.

Start a task in Claude Code, continue it in Codex next week, and the second agent can recall the first agent's reasoning.Use pi with a local model or one served through the Hugging Face router, then return to Claude.Claude makes a decision; a hook indexes it; Codex recalls it in another session.

The older hits in the demo are earlier recordings of the same experiment: an append-only memory remembered the rehearsals too.This matters in a few different scopes: Across your machines: Bind each agent to one memory and recall the history from whichever host you are using.

Across a team: A new teammate's agent can retrieve months of decisions on day one, including dead ends and rationale that never made it into a pull request.Alongside an open-source project: A maintainer can publish the sessions behind a release, naming them on the push.

Think of it as a searchable CLAUDE.md that holds the history of why the project is the way it is, instead of a page someone must keep rewriting.Anyone can read a public memory with --memory.

Published memories carry a dataset card and the funes tag, making them recognizable and discoverable on the Hub.The Hub already hosts open weights and datasets.funes adds open working memory.

It holds the decisions, failed approaches, and rationale behind a project, queryable by another agent and traceable to the sessions that produced them.The cheapest way out of a long session A long investigation bloats a session until each turn costs more to carry the context than to do the work.

The usual answers are to let the agent compact and carry on, or to write a handoff and start fresh.Recall is a third, so we measured them against each other on the handoff-vs-recall benchmark: two tasks whose answer cannot be reconstructed without the session prior knowledge.

Compaction is what most agents do by default, and it was the only one of the three whose result divided: it arrived on one task and never arrived on the other.Where it failed, its summary had flattened the findings that mattered.

Recall returns the passages themselves, so a finding does not have to survive summarization.Recall was the cheapest of the three on both tasks, 8x cheaper than a written handoff on one and 4x on the other.

The lighter segment of each bar is the one-time charge for preparing the channel, the handoff or the compaction, paid before the first question is asked and counted once.A cross marks a channel that never arrives, and so has no cost per success.

Stop starting from zero “To think is to forget differences, generalize, make abstractions.” — Jorge Luis Borges, Funes the Memorious Your agents already wrote the record.funes lives at github.

com/huggingface/funes, one command away from turning that record into a memory the next agent can read, on whichever machine you happen to be on.Built on open source funes invents little of this.

It leans on open-source embedding models good enough to run locally, on Lance's append-only datasets with cheap incremental writes, and on the Hub's caching and content-dedup for datasets.The work is in fitting them into a memory an agent can actually use.funes is open source too.

Open an issue for anything from an install snag to a recall that missed, or an agent you'd like supported.

Datasets mentioned in this article 2 More Articles from our Blog announcementopen-sourcecommunity The Open Source Community is backing OpenEnv for Agentic RL +16 114 June 8, 2026 announcementmlxllm The PR you would have opened yourself 73 April 16, 2026 Community helpmehere 6 days ago This is a test comment from our security scan 1 reply · ❤️ 2 2 + x0mhb 4 days ago A2 reply probe helpmehere 6 days ago No description provided.

Reply helpmehere 6 days ago No description provided.

Reply deleted 6 days ago This comment has been hidden x0mhb 4 days ago x Reply x0mhb 4 days ago Reply x0mhb 4 days ago x Reply x0mhb 4 days ago Reply x0mhb 4 days ago x Reply x0mhb 4 days ago This comment has been hidden (marked as Spam) vshulcz 4 days ago Ran funes 1.3.

0 on a machine with 19,195 coding-agent sessions already on disk (LongMemEval laid down in the real ~/.claude and ~/.codex layouts), 100 questions whose answer sits in exactly one session, scored by whether that session comes back.Disclosure: I maintain deja-vu, one of the tools in the same table.

Full index: 2h03m on an M4 pro laptop (308k chunks), 6.3s per query.With defaults: hit@1 9/100, hit@5 39, found@50 71.With --half-life 0: 19/46/71 — the 30-day recency half-life halves rank-1 on history older than a month, which is most of what's on a real disk; worth a mention in the docs.

Once recency is off, the vector+rerank stack is clearly the best ranker in the table at rank five.The documented one-minute first pass leaves 218 of the 19k sessions indexed (0/100 answered), so the "about a minute" framing is really "about a minute until the embedding job starts".

For comparison on the same corpus, deja-vu (plain BM25 over 24 agents' files) indexes in 29s and answers in 24ms at hit@1 18/100, hit@5 35.Corpus, drivers and every row: vshulcz.github.io/deja-vu/guide/day-zero.html - happy to be corrected if a setting I missed changes the numbers.

🤯 1 1 + Reply johandoc about 23 hours ago The idea of giving coding agents persistent, traceable memory is really interesting.Keeping the original reasoning and context available across sessions and even across different agents could make agentic workflows much more reliable.

At Kellton, we’re seeing similar value in building AI agents that can retain context, orchestrate tasks, and work across enterprise workflows.Great read on where agent memory is heading.Learn more about Kellton’s AI Agent Development Services: https://www.kellton.

com/ai-services/ai-agent-development-services Reply EditPreview Upload images, audio, and videos by dragging in the text input, pasting, or clicking here.Tap or paste here to upload images Comment · Sign up or log in to comment Upvote 69 +57 Datasets mentioned in this article 2

Related

相關文章

IT之家AI Agent

長安汽車首席專家譚歡:未來要用機器人造車、賣車,讓機器人上車、造機器人

作者:清源 責編:清源 評論: 9 月 18 日消息,在今天(18 日)的第 22 屆中國汽車產業發展(泰達)國際論壇“新賽道生態專場:具身智能新賽道”活動中,長安汽車首席專家、長安天樞智能機器人公司總經理譚歡在演講中指出,AI 正推動以物理具身智能為核心的基礎設施革新,汽車未來形態是“汽車機器人”—— 自學習、自組織、自進化的組合智能體。

1 小時前
量子位AI Agent

具身智能技術路線尚未定型,基礎設施卻先收斂

具身智能技術路線尚未成形,但基礎設施需求已開始收斂,重點從製造機器人轉向持續迭代機器人能力。百度集團沈抖指出,智能體能力邊界快速擴展,進入規模化部署階段,但機器人學習新任務與跨環境適應性仍待突破。

2 小時前

88小時抵一個人思考4000年,OpenAI核心研究員:除了自我進化,更可怕的是AI正學會“隱藏自己”

AI正在把4000年的人類認知勞動壓縮進88小時,OpenAI研究員Noam Brown坦言連他自己也被進展速度持續震驚。AI正在把過去需要數千年完成的認知勞動壓縮到數天。真正的問題已經不只是模型能否變得更聰明,而是實驗能否跟上、人類能否在模型繼續自我改進前確認它仍然安全。

3 小時前
智東西AI Agent

Agent辦事、花式P圖、動嘴玩電腦……實測Wildcat Lake輕薄本玩AI有多爽

作者 | ZeR0 編輯 | 漠影 桂林依山傍水,連城市的輪廓,都是一座座山勾勒出來的。抬眼一望,便是翰墨丹青般的自然光景,既沉靜婉約,又意境悠遠。這種乾淨的留白之美,早已被古人融入山水畫藝中,幾筆山石,一帶煙雲,餘下的留給水色,也留給看畫的人。 淨,並非空無一物,而是通過剋制的取捨,讓真正重要的東西凸顯出來。這與今年推出的第三代英特爾酷睿處理器(代號Wildcat Lake)的設計理念不謀而合。

9 小時前
AIbaseAI Agent

吳恩達回應AI末日論:別被科幻敘事帶偏,應解決現實工程問題

吳恩達曾參與創辦Google Brain和Coursera。吳恩達稱,科技行業早期曾放大AI潛在災難性風險,以獲取關注並影響監管方向;近兩週相關討論再次升溫,也可能存在類似動機。他認為AI確實存在現實風險,尤其包括網絡安全等領域,但不認同將人類滅絕風險作為當前AI發展的核心判斷依據。

9 小時前
IT之家AI Agent

智譜 GLM-5.3-FlashX 模型上線,更快、更流暢

作者:汪淼 責編:汪淼 評論: 感謝網友 Agent 的線索投遞!9 月 18 日消息,智譜今日宣佈推出 GLM-5.3-FlashX(最高 200 tokens/s),為企業與開發者帶來更快、更流暢的模型體驗。智譜官方表示,GLM-5.3-Flash 此前以“Ox Alpha”之名與全球開發者見面,獲得海內外開發者的廣泛認可,調用量持續攀升。

11 小時前