5.9 KB · updated 2026-07-31 · md

doctor.de.md

docs/i18n/doctor.de.md

tesserae doctor — Projekt-Gesundheitschecks

<!-- translations:start -->

English · 한국어 · 中文 · 日本語 · Русский · Español · Français

<!-- translations:end --> tesserae doctor inspiziert einen Tesserae-Workspace von Ende zu Ende — Initialisierung, Graph-Integrität, Registry-Konsistenz, Frische, Locks, LLM-Login und Disk-Hygiene — und gibt eine Checkliste aus. Es ist standardmäßig read-only; --fix wendet nur die Reparaturen an, die sicher wiederholbar sind und niemals Live-Zustand zerstören können.

tesserae doctor                 # check the current project
tesserae doctor --fix           # apply the safe repairs, then re-check
tesserae doctor --all --json    # every registered project, JSON report
tesserae doctor --project ~/src/other

Was geprüft wird

Zwanzig Checks, nach Kategorie gruppiert:

CheckKategorieWas er verifiziert--fix-Aktion
project_initializedcore.tesserae/ existiert und sieht wie ein Tesserae-Workspace ausnur Bericht (schlägt tesserae init vor)
graph_parsecoregraph.json parst und hat die erwartete Formnur Bericht (schlägt tesserae compile vor)
config_validcore.tesserae/config.json parst und validiert gegen das Init-Templatenur Bericht
vault_configuredcoreder konfigurierte Vault-Pfad lässt sich auflösenSAFE: legt das aufgelöste Vault-Verzeichnis an, wenn es innerhalb des Projekts liegt
registry_consistentregistry~/.tesserae/registry.json-Einträge zeigen auf reale Projekt-RootsSAFE: entfernt Einträge, deren Root verschwunden ist, streicht den Legacy-Key active; ein fehlender Graph ist nur Bericht
graph_stalenessfreshnessGit-Delta seit dem im letzten Compile aufgezeichneten git_headnur Bericht (schlägt tesserae refresh vor — Compiles sind teuer)
site_search_indexfreshnessdie statische Site / search-index.json ist neuer als graph.jsonSAFE: baut die Site neu
backend_artifactsfreshnessRAG-Anything-Artefakte sind aktuellnur Bericht (deren Refresh ist LLM-/Netzwerk-lastig)
session_chunksfreshnessdie Abdeckung der täglichen Session-Chunks hat keine Lücken im jüngsten Fensternur Bericht (schlägt tesserae sessions chunk-backfill vor)
wiki_lintgraphGraph-⇄-Wiki-Drift + trivial behebbare Lint-BefundeSAFE: wendet die trivialen Lint-Fixes an (fix_trivial)
compile_lockprocessesob ein lebendiger Compile-Lock gehalten wird, und von welcher PIDnur Bericht — doctor killt nie einen Prozess und entfernt nie einen lebendigen Lock
daemon_pidprocessesdaemon.pid zeigt auf einen lebendigen Engine-ProzessSAFE: entfernt die Pidfile, wenn ihr Eigentümer tot ist
llm_loginenvironmentdas konfigurierte LLM-Backend ist tatsächlich nutzbar (claude/codex-CLI eingeloggt, oder API-Key vorhanden)nur Bericht (schlägt claude /login / codex login vor)
optional_depsenvironmentStatus optionaler Abhängigkeiten (memex, raganything)nur Bericht (Installationen brauchen Netzwerk)
embedding_backendenvironmentein echtes semantisches Embedding-Backend ist verfügbarnur Bericht (schlägt pip install tesserae[semantic] vor)
environmentenvironmentGesamtzusammenfassung der UmgebungserkennungBerichtsabschnitt
build_historyhygieneGröße und Form von .build-historySAFE: kürzt sie und bewahrt immer den neuesten git_head-Eintrag (der Staleness-Check hängt davon ab)
idempotencehygieneder Output-Snapshot-Stolperdraht idempotence_suspectnur Bericht (das ist ein Bug-Signal, nichts zum Auto-Reparieren)
orphan_worktreeshygieneverwaiste git worktree-RegistrierungenSAFE: git worktree prune; Verzeichnisse löschen ist nur Bericht
hook_log_bloathygieneWachstum von .tesserae/.session-*-hook.logSAFE: rotiert/kürzt Logs über 10 MB

Ein abstürzender Check wird als Fehler-Befund gemeldet — doctor selbst wirft nie eine Exception.

--fix-Policy

  • --fix führt nur die oben als SAFE markierten Checks aus und detektiert danach neu, damit der Bericht den Zustand nach dem Fix widerspiegelt.
  • Jeder Fix ist idempotent: doctor --fix zweimal auszuführen lässt den zweiten Lauf sauber.
  • Doctor killt nie einen Prozess und entfernt nie einen lebendigen Compile-Lock — ein gehaltener Lock wird mit seiner besitzenden PID gemeldet und in Ruhe gelassen.
  • Schwere oder netzwerkgebundene Operationen (Recompiles, Dependency-Installationen, Backend-Refreshes) werden nie in --fix gefaltet; doctor gibt stattdessen den Befehl aus, den du selbst ausführen kannst.

Exit-Codes

Dieselbe Konvention wie tesserae lint:

Exit-CodeBedeutung
0gesund — keine Befunde über OK
1Warnungen vorhanden
2Fehler vorhanden

Bericht-Artefakte

Jeder Lauf schreibt beide Berichtsformen in den Workspace:

.tesserae/doctor-report.md      # human checklist
.tesserae/doctor-report.json    # structured findings

--json gibt zusätzlich den JSON-Bericht statt der Markdown-Checkliste auf stdout aus. --all iteriert über jedes Projekt in der Registry (ignoriert dabei --project) und berichtet pro Projekt.

MCP: doctor_report

Der MCP-Server exponiert denselben Bericht als doctor_report-Tool (spiegelt lint_report, inklusive seiner Byte-Obergrenze für zurückgegebenen Inhalt), sodass ein Agent die Workspace-Gesundheit mitten im Gespräch prüfen kann, ohne eine Shell zu bemühen. Es benötigt einen Projekt-Root — übergib graph_path/project oder konfiguriere einen Default-Graph.