Knot AI Knot Scribe liest einen Diff und schreibt die Commit-Message. Beide Modelle laufen komplett auf deiner eigenen Hardware, ohne dass Code dein Gerät verlässt. Knot Delta ist das größere: Gib ihm eine Änderung, und es sagt dir, was sich wirklich geändert hat und wo das Risiko liegt.
KNOT SCRIBE · 7B
Schreibt deine Commits
Liest einen Diff und schreibt eine Conventional-Commit-Message mit dem richtigen Typ. Offene Gewichte, auf Hugging Face und Ollama.
KNOT DELTA · 9B
Erklärt, was sich geändert hat
Das größere der beiden, gebaut für eine andere Frage: Zu einer Änderung sagt es, welche Dateien betroffen sind und wo das Risiko liegt.
git diff → Knot Scribe · 7B → fix: prevent division by zero
Knot Scribe liest die Änderung und gibt eine strukturierte Message zurück. Mit genau diesem Ein- und Ausgabeformat wurde es auch trainiert und evaluiert.
01
Es bekommt den git diff, bei großen Änderungen über mehrere Dateien dazu etwas Dateikontext. Alles wird so gepackt, dass das Modell den Umfang des ganzen Commits sieht.
02
Strukturierte JSON-Ausgabe, beschränkt auf {title, body}: eine Conventional-Commit-Betreffzeile mit korrektem Typ plus Body. Erfundene Issue-Referenzen und Sign-offs werden entfernt.
Es ist das Modell, das in Knot die Commits automatisch schreibt, ohne dass du etwas tun musst. Trotzdem ist es offen und eigenständig. Du kannst es also mit jedem Git-Workflow nutzen.
Das Testset heißt gold-v1: sechzig von Hand geprüfte Commits, gleichmäßig über alle elf Commit-Typen verteilt. v4 und v5 wurden beide am 2026-07-21 darauf bewertet, und zwar über denselben Ollama-Pfad, mit dem das Modell ausgeliefert wird.
TYP-GENAUIGKEIT VON RELEASE ZU RELEASE
Mit v5 wurde der Benchmark schwerer. v3 und v4 wurden auf einem früheren Set bewertet, das nur JS/TS enthielt. v5 wird auf dem ausgewogenen Set mit elf Typen bewertet, das überall weiter unten verwendet wird. Dort kommt v4 bei einer neuen Messung auf 48,3%. Der echte Vorsprung von v5 gegenüber v4 liegt also bei +11,7 Prozentpunkten und ist größer, als die Release-Zahlen zeigen.
| Metrik | v4 | v5 |
|---|---|---|
| Typ-Genauigkeit | 48,3% | 60,0% |
| Scope-Genauigkeit | 68,3% | 75,0% |
| Wortüberlappung Titel | 27,2% | 19,1% |
| Titel exakt gleich | 6,7% | 0,0% |
| Generierungsfehler / 60 | 7 | 4 |
| Typ | n | v4 | v5 |
|---|---|---|---|
| feat | 6 | 4/6 | 4/6 |
| fix | 6 | 5/6 | 4/6 |
| refactor | 6 | 0/6 | 2/6 |
| perf | 6 | 2/6 | 2/6 |
| test | 5 | 4/5 | 4/5 |
| docs | 6 | 4/6 | 5/6 |
| build | 5 | 0/5 | 0/5 |
| ci | 6 | 5/6 | 6/6 |
| chore | 6 | 5/6 | 6/6 |
| revert | 2 | 0/2 | 0/2 |
v5 hebt die Typ-Genauigkeit (48 auf 60) und den Scope (68 auf 75) und halbiert fast die Formatfehler (7 auf 4). Am meisten gewinnt es bei den Typen, die v4 falsch hatte: refactor (0 auf 2), dazu ci und chore, die jetzt fast perfekt sind. Wortüberlappung im Titel und exakter Titel sinken (27 auf 19 und 7% auf 0%), weil v5 paraphrasiert. Es schreibt eigene Titel, oft aussagekräftiger als der eine menschliche Commit, an dem es gemessen wird. Ein exakter Abgleich bestraft genau das. build und revert bleiben schwer (ein Konflikt mit der Konvention und zu wenige Beispiele).
Knot Delta ist die 9B-Hälfte des Paars. Sein Bericht nennt, welche Dateien betroffen sind und was die Änderung erreichen wollte. Es wird mit Knot ausgeliefert. Jede Zahl unten ist an echter Git-Historie gemessen und steht neben der Baseline, die ein faules Modell erreichen würde. Die Scorecard stammt aus einem eingefrorenen Held-out-Set: 325 Commits aus neun Repositorys, auf denen Delta nie trainiert wurde, darunter vite, radicle und svelte. Die Grounding-Tabelle darunter ergänzt dieses Set um drei Läufe auf je einem einzelnen Repo.
Änderungstyp-F1 (Absicht aus dem Code gelesen)
0,409
vs 0,032 Mehrheitsklasse
12,9× Basisrate · n=235
Zitierte Dateien, die im Diff vorkommen
100%
0% halluziniert bei vier Repos
hält auch bei ungesehenem Go
Vollständig belegte Berichte
98,5%
325 Held-out-Commits
im ersten Durchlauf 88%
Präzision auf die exakte Zeile
0,64
0,94 tolerant (richtige Region)
Datei und Region zuverlässig · exakte Zeile nicht
| Repo | Sprache | verifiziert | Zeilenpräzision |
|---|---|---|---|
| flask | Python | 11/12 | 74% |
| gin | Go · ungesehen | 12/12 | 70% |
| ripgrep | Rust | 12/12 | 52% |
| frozen 325 | JS/TS + | 320/325 | 64% |
Delta zitiert nie eine Datei, die nicht im Diff steht (100% in jedem Repo, auch bei Go, das in seinen Trainingsdaten fehlt). Je nach Repo trifft es in 92 bis 100% der Fälle die richtige Region. Die exakte Zeile trifft es noch nicht zuverlässig: Das gelingt in 52 bis 74% der Fälle, am seltensten bei Rust.
Knot Scribe ist ein QLoRA-Fine-Tune eines freizügig lizenzierten Basismodells. Trainiert wurde es auf 3.227 Paaren aus Diff und Commit-Message, gesammelt aus freizügig lizenzierten Open-Source-Repositorys.
Alle Dateien (Adapter-Gewichte, GGUF, Tokenizer und die vollständige Model Card) liegen öffentlich auf Hugging Face.
Scribe ergibt nur bei einem Diff aus der Staging-Area Sinn. Delta liest jeden Diff, den du ihm gibst.
ollama run pointbreaklab/knot-scribe "$(git diff --staged)" ollama run pointbreaklab/knot-delta "$(git diff)" llama.cpp funktioniert genauso. Ollama ist nur der kürzere Weg. Das GGUF und den genauen Befehl für jedes Modell findest du auf seiner Hugging-Face-Seite unten. Metal, CUDA und CPU laden alle dasselbe GGUF.
Knot Scribe schreibt jede Commit-Message in Knot, und Knot Delta liefert dessen Änderungsberichte. Knot ist das Peer-to-Peer-Versionskontrollsystem von PointBreakLab.