Illustrative Papiercollage: drei abstrakte Arbeitsfenster sind mit einem gemeinsamen Karteikartenarchiv verbunden.
Symbolbild für ein gemeinsames Projektgedächtnis; keine Darstellung der Funes-Oberfläche.KI-generierte Darstellung · AI News · KI-generierte Illustration mit OpenAI

In 30 Sekunden

  • Funes erschließt vorhandene Sitzungsprotokolle und liefert auffindbare Originalpassagen statt bloßer Zusammenfassungen.
  • Die lokale Suche und optionale Synchronisation sollen den Wechsel zwischen Agenten und Rechnern erleichtern.
  • Alte Fehlannahmen und sensible Inhalte bleiben ein Thema: Suchtreffer müssen eingeordnet, geteilte Daten geprüft werden.

Wer Software mithilfe von KI-Agenten entwickelt, kennt das wiederkehrende Problem: Ein KI-Helfer analysiert mühsam eine veraltete Bibliothek, behebt einen obskuren Fehler oder findet eine funktionierende Konfiguration, doch in einer neuen Sitzung steht der damalige Arbeitskontext nicht unbedingt wieder zur Verfügung. Startet man am nächsten Tag eine neue Sitzung oder wechselt zu einem anderen Modell, beginnt die Recherche von vorn. Übergabenotizen, gespeicherte Projektanweisungen und frühere Chats helfen dabei. Sie machen die damaligen Überlegungen aber nicht in jedem Werkzeug automatisch auffindbar.

Mit dem Open-Source-Projekt Funes hat Hugging-Face-Entwickler David Corvoysier eine Infrastruktur vorgestellt, die dieses Wissensleck schließen soll. Als langlebige Speicherebene konzipiert, protokolliert Funes die Interaktionen von Programmierassistenten, bereitet sie lokal auf und stellt sie für spätere Sitzungen sowie andere Agenten bereit. Zum Start werden gängige Werkzeuge wie Claude Code, Codex, pi und Hermes unterstützt.

Unveränderte Rohdaten statt unvollständiger Zusammenfassungen

Ein zentraler Ansatz von Funes unterscheidet sich grundlegend von klassischen Speicheransätzen, die auf eine Verdichtung von Inhalten setzen: Das Werkzeug verzichtet bewusst darauf, Protokolle beim Speichern vorab zusammenzufassen oder zu destillieren. Stattdessen werden die Rohprotokolle der Agentensitzungen in eine standardisierte Struktur aus Gesprächsrunden und Inhaltsblöcken überführt und als fortlaufendes Protokoll im Lance-Datenformat gesichert.

Der Grund für diesen Verzicht auf automatische Zusammenfassungen liegt in den Tücken der Datenreduktion. Im Rahmen der herstellereigenen Vergleichstests zeigte sich, dass eine automatische Kompaktierung bei einer von zwei untersuchten Aufgaben fehlschlug, weil die Zusammenfassung nach Darstellung des Autors entscheidende frühere Erkenntnisse nicht ausreichend bewahrte. Funes bewahrt Gesprächspassagen und ihre Herkunft, statt sie auf eine Zusammenfassung zu reduzieren. Eine unveränderte Vollkopie ist das dennoch nicht: Die Protokolle werden vereinheitlicht und erkannte Zugangsdaten bereits beim Indexieren unkenntlich gemacht.

Mehrstufige Suche und Kosteneffizienz

Um aus den wachsenden Protokollmengen gezielt die relevanten Fragmente abzurufen, setzt Funes auf ein kombiniertes Abrufverfahren. Die Such-Pipeline verbindet eine semantische Vektorsuche mit einer klassischen schlüsselwortbasierten BM25-Suche. Anschließend bewertet ein Cross-Encoder die Trefferqualität neu, gewichtet neuere Informationen stärker und bindet den umliegenden Kontext der gefundenen Stellen ein.

In den herstellereigenen Messungen für den gezielten Wissensabruf erwies sich dieses Verfahren bei zwei untersuchten Aufgaben als viermal beziehungsweise achtmal kostengünstiger als eine schriftliche Übergabe. Da der Agent nur die exakt benötigten historischen Abschnitte in sein aktives Kontextfenster lädt, sinkt der Token-Verbrauch im Vergleich zu umfangreichen manuellen Kontextbeschreibungen oder wiederholten Analyse-Schleifen. Diese Werte basieren allerdings auf einer sehr kleinen Testbasis von genau zwei isolierten Aufgabenstellungen des Autors und lassen sich nicht pauschal auf jedes Softwareprojekt übertragen.

Lokale Datenhoheit und Team-Synchronisation

Ein wichtiger Aspekt für Entwickler und Unternehmen ist das Dateneigentum. Funes ist überwiegend in Rust programmiert und wird als eigenständige Binärdatei ohne externe Laufzeitabhängigkeiten für maschinelles Lernen ausgeliefert. Indexierung, Einbettungen und die erneute Bewertung der Suchtreffer laufen standardmäßig lokal; für diesen lokalen Abruf ist kein Hub-Konto nötig. Das bedeutet nicht, dass jede spätere Verarbeitung lokal bleibt: Die zurückgegebenen Passagen werden vom verwendeten Coding-Agenten verarbeitet, der seinerseits einen externen Modelldienst nutzen kann.

Was bleibt lokal, was kann geteilt werden?

SchrittEinordnung
Index und SucheStandardmäßig lokal auf dem eigenen Rechner
Geteiltes GedächtnisOptional als eigener Hugging-Face-Datensatz; standardmäßig privat
Antwort des Coding-AgentenHängt vom eingesetzten Agenten und dessen Modellzugang ab
Prüfung eines SuchtreffersHerkunft, Datum und aktuellen Projektstand berücksichtigen
Redaktionelle Übersicht nach der Projektvorstellung. Der verwendete Coding-Agent kann zusätzlich einen externen Modelldienst verwenden. Quelle ↗

Für Teams oder Entwickler, die zwischen mehreren Rechnern wechseln, bietet das Werkzeug die Möglichkeit, die gespeicherten Sitzungen mit privaten Datensätzen auf Hugging Face zu synchronisieren. Das Projekt entfernt erkannte Zugangsdaten beim Indexieren. Vor einem Upload prüft ein zusätzlicher Scanner die ausgehenden Inhalte und hält Treffer zurück; fehlt der Scanner oder schlägt er fehl, wird laut Sicherheitsdokumentation nichts veröffentlicht. Daraus folgt jedoch keine Garantie, dass alle vertraulichen Geschäftsinformationen erkannt werden. Die Sichtbarkeit des Ziel-Datensatzes und die Eignung der Inhalte für eine Übertragung müssen deshalb geprüft werden.

Einstieg ohne ein neues Gedächtnis zu erfinden

Der offizielle Einstieg ist bewusst kompakt: Der Befehl „funes add“ richtet die Integration für einen unterstützten Agenten ein, baut einen ersten Index auf und installiert die automatische Erfassung abgeschlossener Gesprächsrunden. Der Nutzer muss die Hooks laut Projektvorstellung also nicht grundsätzlich von Hand zusammensetzen. Ob diese Einrichtung zur eigenen Umgebung passt, sollte man vor einem breiten Einsatz anhand der aktuellen Dokumentation prüfen. Wir haben Funes für diesen Artikel nicht selbst installiert oder im Alltag getestet.

Für den Abruf gibt es zwei unterschiedliche Schritte. Mit „recall“ sucht der Agent relevante Originalpassagen und bekommt deren Herkunft mitgeliefert. „get“ öffnet die vollständige Gesprächsrunde samt Umfeld. Für Menschen bietet „ask“ eine einzelne Frage an das Gedächtnis. Der Unterschied ist praktisch: Ein Suchtreffer liefert einen Einstieg, das Umfeld hilft zu beurteilen, ob er die richtige Antwort enthält.

Ein Suchtreffer ist noch keine Projektentscheidung

Stellen wir uns ein kleines Website-Projekt vor. Am Montag verwirft der Agent eine Bibliothek, weil ein konkreter Test fehlschlägt. Am Dienstag behebt jemand die Ursache und verwendet die Bibliothek doch. In einer späteren Suche könnten beide Gesprächsstellen auftauchen. Dieses Beispiel ist fiktiv, zeigt aber die Bedeutung der erhaltenen Herkunftsdaten: Datum, Sitzung und Kontext helfen, einen damaligen Zwischenstand von einer späteren Entscheidung zu unterscheiden.

Das Gedächtnis wird dadurch nachvollziehbarer, aber nicht unfehlbar. Funes speichert Arbeitsspuren; der Artikel behauptet keinen Nachweis, dass ein Agent jeden alten Irrtum zuverlässig erkennt. Für wichtige Entscheidungen lohnt es sich, den gefundenen Kontext mit dem aktuellen Projektstand abzugleichen. Ein archivierter Lösungsversuch ersetzt weder den heutigen Code noch einen aktuellen Test.

Gerade für Vibecoder ist das eine hilfreiche Unterscheidung. Man muss nicht jede technische Einzelheit behalten, sollte aber erkennen können, woher eine Antwort stammt und ob sie noch gilt. Ein Werkzeug, das auf eine konkrete frühere Sitzung verweist, bietet dafür einen besseren Ausgangspunkt als eine unbelegte Erinnerung.

Die Idee von Funes ist damit größer als ein weiterer Speicherknopf: Projektwissen soll zwischen Sitzungen, Agenten und – auf Wunsch – Rechnern anschlussfähig werden. Wie groß der Nutzen im eigenen Alltag ist, muss ein eigener Versuch zeigen. Die zwei Vergleichsaufgaben des Autors sind ein interessanter Hinweis, noch keine allgemeine Produktivitätsmessung.