AKB – Team-Wissensinfrastruktur, in der Menschen und AI gemeinsam lesen und schreiben, mit Berechtigungsverwaltung dazu
(github.com/dnotitia)Hallo. Bei Dnotitia, zu dem ich gehöre, entwickeln wir AKB (Agent Knowledge Base), eine Team-Wissensbasis, die AI-Agenten während der Arbeit direkt lesen und schreiben können.
Warum haben wir das gebaut?
Wikis für Menschen (Confluence, Notion) gibt es bereits viele. Auch auf der Agenten-Seite existieren ähnliche Werkzeuge. mem0 sammelt Inhalte aus Gesprächen als persönliches Gedächtnis, und LLM Wiki erstellt eine persönliche Wissensbasis, die Agenten lesen und schreiben können. Meist bleibt das jedoch auf die individuelle Ebene beschränkt, sodass man schwer sagen kann, dass es als gemeinsame Grundlage konzipiert ist, die mehrere Personen zusammen lesen und schreiben.
Auf ein ähnliches Problem weist auch Googles Open Knowledge Format (OKF) hin. Wissen ist über Wikis, Kataloge und Code verstreut, sodass Agenten den Kontext jedes Mal neu zusammensammeln müssen. Benötigt wird also nicht noch ein weiterer geschlossener Service, sondern ein gemeinsames Format, das verschiedene Werkzeuge zusammen lesen und schreiben können. Das von OKF vorgeschlagene Format ist einfach: Markdown-Dateien werden in einem Ordner gesammelt, und ganz oben in jeder Datei kommen ein paar Zeilen YAML hinzu. Wer dieses Format erstellt und wie es gelesen und erweitert wird, bleibt den jeweiligen Implementierungen überlassen.
Was macht AKB?
AKB ist eine Infrastruktur, die dieses Format als gemeinsame Wissensbasis für Teams umsetzt. Ein Vault ist zwar ein mit OKF kompatibles Markdown-Bündel, aber kein Index, der nur zum Suchen und Lesen dient, sondern ein gemeinsamer Speicher, in dem Menschen und Agenten dieselbe Quelle gemeinsam lesen und schreiben. Menschen greifen über eine Web-UI zu, Agenten über MCP. Trotzdem bearbeiten beide nur eine einzige Quelle. Sobald Agenten anfangen zu schreiben, wird auch wichtig, „was sich wie verändert hat“. Da der Vault ein Git-Repository ist, bleiben alle Änderungen als Commit und Diff erhalten.
Es geht dabei nicht nur um Dokumente. Wenn OKF ein Format ist, in dem Wissen als Markdown beschrieben wird, erweitert AKB denselben Vault um abfragbare Tabellen und Dateispeicher und verbindet Dokumente untereinander als Wissensgraph. Dokumente bleiben Wissen, das Menschen lesen und auf das Agenten referenzieren, während strukturierte Daten wie Listen, Status oder Statistiken in separaten Tabellen gespeichert und abgefragt werden können. Dadurch werden Dinge möglich, die mit einem Wiki oder reiner Suche für Menschen schwer umzusetzen sind – etwa AKB als Daten- und Änderungsverlaufsschicht zu verwenden und darauf Geschäfts-Apps zu entwickeln und zu betreiben.
Damit es aber wirklich eine gemeinsame Wissensbasis für ein Team wird, reichen Daten und Historie allein nicht aus. Ein Format wie OKF legt nicht fest, wer was sehen darf. Der Bereich, in den wir bei AKB am meisten Arbeit investiert haben, sind genau diese Berechtigungen. Agenten werden über die Person authentifiziert, die ihren Token ausgestellt hat, und übernehmen exakt die Vault-Berechtigungen dieser Person. Dieselben Zugriffsgrenzen, die für Menschen gelten, gelten unverändert auch für Agenten. Diese Grenzen werden auf zwei Ebenen erzwungen. Allgemeine Zugriffe wie Dokumente, Dateien oder Suche werden in der App-Schicht auf Berechtigungen geprüft. Der Pfad für Aggregations- und Analyse-SQL auf Tabellen wird zusätzlich in der DB-Schicht blockiert. Dabei wird eine PG-ACL-Methode verwendet, bei der Abfragen mit der PostgreSQL-Rolle des jeweiligen Nutzers ausgeführt werden. Wenn also auf einen Vault außerhalb der Berechtigungen referenziert wird, lehnt nicht die App, sondern PostgreSQL selbst den Zugriff ab.
Unser Team nutzt auf der AKB-Infrastruktur den Issue-Tracker reef. Ein einzelnes Issue ist sowohl ein Markdown-Dokument im Vault als auch eine abfragbare Tabellenzeile. Entwickler arbeiten mit Coding-Agenten wie Claude Code oder Codex, PMs mit dem spezialisierten Agenten von reef – und alle arbeiten auf dasselbe Dokument im Vault. PMs können Issues auf Basis des in AKB gesammelten Kontexts erstellen, ohne die Spezifikationssyntax für Entwickler kennen zu müssen. Entwickler wiederum müssen verstreute Hintergrundinformationen nicht erneut zusammensuchen, sondern holen sie sich per MCP und entwickeln darauf aufbauend weiter. Im Team erleben wir direkt, wie die technischen und sprachlichen Barrieren zwischen Entwicklern und PMs durch Agenten kleiner werden.
Direkt ansehen
Wenn Sie es ohne Installation direkt ausprobieren möchten, können Sie die öffentliche Demo (akb-demo.agent.seahorse.dnotitia.ai) aufrufen. (Eine Anmeldung ist nötig, aber da es sich um eine Demo handelt, werden alle Daten jede Woche zurückgesetzt.)
Wenn Sie es selbst ausprobieren möchten, starten Sie es wie unten mit Docker compose und rufen Sie dann localhost:3000 auf. Auch ohne Embedding-Key funktioniert die Stichwortsuche (BM25).
git clone https://github.com/dnotitia/akb && cd akb
cp config/app.yaml.example config/app.yaml
cp config/secret.yaml.example config/secret.yaml
docker compose up -d
Es gibt noch vieles, was verbessert werden muss. Wenn Sie es einmal starten, würden wir uns sehr freuen, wenn Sie Bugs, merkwürdige Punkte oder Ihre Eindrücke einfach in den Kommentaren hinterlassen.
Noch keine Kommentare.