Kommandozeile¶
Installiert werden zwei Befehle: blunderbase, die Anwendung, und blunderbase-runner, der
Remote Runner.
Unter Docker stell allem hier unten docker exec -it blunderbase voran oder führ es einmalig
aus:
Beide lesen dieselbe Konfiguration wie der Server, BLUNDERBASE_DB_PATH
entscheidet also, welche Bibliothek ein Befehl anfasst.
serve¶
Betreibt die HTTP-API, die Web-App, den Socket /events, /mcp und die Analyse-Worker.
| Flag | Standard | Wirkung |
|---|---|---|
--host |
BLUNDERBASE_HOST |
Die Adresse, an die gebunden wird |
--port |
BLUNDERBASE_PORT |
Der Port, an den gebunden wird |
--reload |
aus | Bei einer Änderung am Quellcode neu starten |
import¶
Importiert Partien aus einer Quelle. pgn liest eine Datei, die anderen synchronisieren ein
Konto.
Die Quelle ist lichess, chesscom, fics oder pgn. Das zweite Argument ist das Konto,
das synchronisiert wird, oder die Datei, die gelesen wird.
| Flag | Wirkung |
|---|---|
--username |
Das Konto, das synchronisiert wird, statt des Positionsarguments |
--path |
Die PGN-Datei, die gelesen wird, statt des Positionsarguments |
--since |
Ab dieser Marke weitermachen statt ab der gespeicherten. all liest das ganze Archiv |
--max-games N |
Nach N Partien aufhören |
--not-mine |
Das PGN enthält fremde Partien: zum Studieren speichern, in keiner Statistik zählen |
Einen laufenden Import stoppst du mit Ctrl-C. Alles schon Importierte bleibt, und der nächste Import macht dort weiter. Siehe Bibliothek.
accounts¶
Die Benutzernamen, die eine Partie zu deiner machen.
$ blunderbase accounts list
$ blunderbase accounts add lichess yourname
$ blunderbase accounts reconcile
| Befehl | Wirkung |
|---|---|
blunderbase accounts list |
Jedes Konto und die Partien, die ihm zugeordnet sind |
blunderbase accounts add <platform> <username> |
Ein Konto registrieren und die Partien beanspruchen, die es schon gespielt hat. Die Plattform ist lichess, chesscom, fics oder otb |
blunderbase accounts reconcile |
Die Zuordnung zum Besitzer noch einmal über die schon gespeicherten Partien laufen lassen |
reconcile ist idempotent und ändert nie eine Partie, deren Seite schon bekannt ist. Es
trägt Farbe, Gegner und Wertungen bei einem Archiv nach, das importiert wurde, bevor
überhaupt ein Konto sagte, welcher Spieler du bist.
runners¶
Die Maschinen, die Engine-Arbeit rechnen dürfen. Ausführlich: Remote Runner.
$ blunderbase runners list
$ blunderbase runners create gpu-box --slots 8
$ blunderbase runners revoke gpu-box
| Befehl | Wirkung |
|---|---|
blunderbase runners list |
Jeder Runner, was er anbietet und was bei ihm ansteht |
blunderbase runners create <name> |
Einen Runner registrieren und sein Token und seine runner.yaml ausgeben, ein einziges Mal |
blunderbase runners revoke <name> |
Einen Runner löschen, dazu sein Token und die Engines, die er angeboten hat |
create nimmt:
| Flag | Standard | Wirkung |
|---|---|---|
--slots N |
1 |
Engine-Aufträge gleichzeitig |
--server |
BLUNDERBASE_PUBLIC_URL |
Wie der Runner diesen Server erreicht |
engines¶
Die Engine-Programme auf dieser Maschine. Ausführlich: Engines.
$ blunderbase engines list
$ blunderbase engines add sf-local stockfish --option Threads=4 --role quick --role deep
$ blunderbase engines remove sf-local
| Befehl | Wirkung |
|---|---|
blunderbase engines list |
Jede Engine-Zeile, wo sie liegt und was sie bedient |
blunderbase engines add <name> <path> |
Ein Programm auf diesem Host registrieren und ihm wahlweise gleich seine Rollen geben |
blunderbase engines remove <name> |
Eine Engine-Zeile löschen und aus der Warteschlange nehmen, was nur sie hätte rechnen können |
add nimmt einen Pfad – eine Datei, eine Kommandozeile mit Argumenten oder einen Namen im
PATH – und:
| Flag | Standard | Wirkung |
|---|---|---|
--kind |
uci |
uci oder maia |
--option NAME=VALUE |
— | Eine UCI-Option, geprüft gegen das, was das Programm angibt. Mehrfach möglich |
--role |
— | quick, deep oder human, weggenommen von dem, der die Rolle gerade hält. Mehrfach möglich. Ohne die Angabe werden nur unbesetzte Rollen gefüllt |
--replace |
aus | Die Engine dieses Namens aktualisieren, statt abzulehnen, und einschalten |
--disabled |
aus | Registrieren, ohne sie einzuschalten |
analyze¶
Reiht Engine-Analysen ein und arbeitet die Warteschlange in diesem Prozess ab. Die Warteschlange sind Zeilen in der Datenbank und kein Broker; das hier läuft also gefahrlos neben dem Server, und ein Neustart verliert nichts.
$ blunderbase analyze --tier deep --limit 50
$ blunderbase analyze --fen "rn1qkb1r/..." --nodes 4000000
| Flag | Standard | Wirkung |
|---|---|---|
--game-id N |
jede ausstehende Partie | Eine einzelne Partie analysieren |
--tier |
quick |
quick oder deep |
--fen |
— | Eine Stellung analysieren statt einer Partie |
--ply-range START:END |
die ganze Partie | Die Halbzüge, die eine Tiefenanalyse ansehen soll, Ende exklusiv |
--multipv N |
die gespeicherte Einstellung | Wie viele Varianten behalten werden |
--nodes N |
die gespeicherte Einstellung | Das Budget je Stellung |
--limit N |
— | Höchstens N Partien einreihen |
--queue-only |
aus | Einreihen, ohne die Worker laufen zu lassen |
--timeout |
3600 |
Nach so vielen Sekunden das Warten aufgeben |
mcp¶
Betreibt den MCP-Server für sich allein. serve bindet /mcp schon ein, das hier ist also
für einen lokalen Client, der einen eigenen Prozess über stdio will.
| Flag | Standard | Wirkung |
|---|---|---|
--transport |
stdio |
stdio für einen lokalen Client; http braucht BLUNDERBASE_MCP_BEARER_KEY |
--host |
BLUNDERBASE_HOST |
Die Adresse, an die gebunden wird, für http |
--port |
BLUNDERBASE_PORT plus eins |
Der Port, an den gebunden wird, für http |
Siehe Dein KI-Assistent.
set-password¶
Setzt oder ersetzt das Browser-Passwort des Besitzers. Wird zweimal abgefragt und nie angezeigt.
db¶
Datenbankpflege. Sichern und Wiederherstellen steht unter Sichern und wiederherstellen.
$ blunderbase db upgrade
$ blunderbase db backup /safe/place/blunderbase-2026-09-01.db
$ blunderbase db restore /safe/place/blunderbase-2026-09-01.db --force
| Befehl | Wirkung |
|---|---|
blunderbase db upgrade |
Ausstehende Migrationen anwenden. Auch beim Zurückgehen auf eine ältere Version sicher, und auf dem aktuellen Stand passiert nichts |
blunderbase db backup <output> |
Eine auf Integrität geprüfte Kopie der vollständigen Datenbank schreiben. --force ersetzt eine vorhandene Ausgabedatei |
blunderbase db restore <input> |
Die Datenbank durch eine auf Integrität geprüfte Sicherung ersetzen. --force ist Pflicht, um eine vorhandene Datenbank zu ersetzen |
blunderbase db rebuild-cards |
Die gespeicherte Karte jeder analysierten Partie neu berechnen |
blunderbase db rebuild-stats |
Die gespeicherte Statistik-Zusammenfassung jeder analysierten Partie neu berechnen |
blunderbase db rebuild-book |
Das vorberechnete Eröffnungsbuch des Explorers über alle Stellungen neu berechnen |
Die drei rebuild-Befehle sind nie nötig. Ein fertiger Analysedurchlauf schreibt neu, was er
angefasst hat, und was fehlt, wird beim Herausgeben auf dem langsamen Weg berechnet. serve
lässt den Durchlauf für Statistiken und Buch beim Start im Hintergrund laufen; die Befehle
sind also dafür, es jetzt zu tun und dabei zuzusehen – nach dem Import eines großen Archivs
oder bei einer Bibliothek, die analysiert wurde, bevor es diese Spalten gab.
demo¶
Baut eine anonyme Datenbank, die schreibgeschützt ausgeliefert wird. Siehe Eine schreibgeschützte öffentliche Demo.
blunderbase demo create liest eine bunt gemischte Auswahl analysierter Partien aus der
konfigurierten Bibliothek und schreibt eine eigene Datenbank. Es baut den PGN-Text ohne
Kommentare neu auf und erfindet jede Angabe, an der jemand zu erkennen wäre; Zugangsdaten und
persönliche Notizen werden nie kopiert. Jede Partie kommt mit einer fertigen Schnellanalyse
an, und das Ergebnis trägt keine Engine-Zeile, auf der Maschine, die es ausliefert, muss also
nie etwas rechnen.
| Flag | Standard | Wirkung |
|---|---|---|
--from |
BLUNDERBASE_DB_PATH |
Die Quellbibliothek |
--output |
<data dir>/demo.db |
Die neue Demo-Datenbank |
--games N |
3000 |
Wie viele Partien genommen werden |
--as-of YYYY-MM-DD |
heute | Das Datum der neuesten erfundenen Partie |
--force |
aus | Eine vorhandene Ausgabedatenbank ersetzen |
--runners |
aus | Die Runner-Zeilen kopieren – Name, Slots und den Hash des Tokens, sonst nichts –, damit ein Runner, der sich bei der Quellbibliothek anmeldet, sich mit demselben Token bei der Demo anmeldet |
blunderbase-runner¶
Betreibt auf dieser Maschine Schach-Engines für einen Blunderbase-Server. Die Konfigurationsdatei und jeder Schlüssel darin stehen unter Remote Runner.
| Flag | Wirkung |
|---|---|
--version |
Die Version ausgeben und beenden |
--config PATH |
Die runner.yaml, die gelesen wird. Voreingestellt BLUNDERBASE_RUNNER_CONFIG, und sonst allein die Umgebung |
--check |
Jede Engine prüfen, eine Verbindung öffnen, ausgeben, was akzeptiert wurde, und beenden. Nicht auf einen Timer legen: es übernimmt einen laufenden Runner |
--log-level |
debug, info, warning oder error. Überschreibt log_level in der Datei |
Exit-Codes: 0 wie gewünscht gestoppt, 1 die Konfiguration ist falsch oder es ließ sich
keine Engine starten, 2 der Server hat die Protokollversion dieses Runners abgelehnt.