Was macht QMD — Lokale Wissensdatenbank-Suche?
QMD ist die lokale Vektor-+Stichwort-Suchmaschine über die Workspaces des Benutzers. Verwenden Sie sie bevor Sie Fragen beantworten, die möglicherweise bereits dokumentiert sind — insbesondere für Kontext zu Personen, Projekten, Entscheidungen und vergangenen Arbeiten.
Arbeitsablauf
Der Arbeitsablauf ist immer:
- Suchen Sie nach Kandidatendokumenten.
- Rufen Sie die vollständige Quelle mit
qmd getoderqmd multi-getab. - Antworten Sie aus dem abgerufenen Text, unter Angabe von Pfaden oder Doc-IDs.
Antworten Sie nicht allein aus Ausschnitten, wenn der Benutzer Fakten, Entscheidungen, Zitate oder Nuancen benötigt. Ausschnitte sind nur Hinweise.
Wenn Sie darüber berichten, was Sie abgerufen haben, reicht eine kurze Notiz; fügen Sie keine ganzen Dateien ein, es sei denn, es ist nötig:
Abgerufen: #abc123 wiki/projects/GenAICategorizer.md, #def432 memory/2026-05-26.md
Wählen Sie den richtigen Suchmodus
| Modus | Befehl | Verwendung |
|---|---|---|
| BM25-Stichwort | qmd search | Exakte Wörter, Titel, Namen, Codesymbole, seltene Phrasen |
| Hybrid + Reranking | qmd query | Indirekte Formulierung, konzeptionelles Abrufen, beste Qualität |
| Strukturiert | qmd query mit lex:/vec:/hyde:-Feldern | Schwierige Suchen, die exakte Anker + semantisches Abrufen benötigen |
Einfache Suche:
qmd search "Challenger-Crew-Projektstatus" -n 10
qmd search '"GenAI Categorizer"' -c wiki-main -n 5
Semantische Konzeptsuchen:
qmd query "Entscheidungsqualität hängt davon ab, Annahmen und Kontext offenzulegen" -n 10
Strukturierte Abfrage (schwierige Suchen):
qmd query $'intent: Finden Sie das Konzeptpapier über Metriken als Instrumente, ohne dass OKRs das Urteilsvermögen ersetzen.
lex: Cockpit-Instrumente OKR Goodhart Metriken Urteil
vec: datengestützt nicht metrikgetrieben Produkturteil
hyde: Ein Konzeptpapier sagt, Metriken seien nützlich wie Cockpit-Instrumente, aber Führungskräfte sollten datengestützt und nicht metrikgetrieben bleiben, da OKRs und Dashboards das Produkturteil nach Goodhart verfälschen können.'
Felder strukturierter Abfragen:
intent:gibt an, was Sie zu finden versuchen und was vermieden werden soll.lex:exakte Begriffe, Aliase, Titel und seltene Wörter.vec:paraphrasiert die Idee in natürlicher Sprache.hyde:beschreibt das Dokument oder die Antwort, die die Anfrage erfüllen würde.
Quellen abrufen
qmd get "#abc123" # nach Doc-ID aus Suchergebnissen
qmd get "wiki/projects/GenAICategorizer.md" --full # nach Pfad
qmd multi-get "#abc123,#def432" --md # Stapelverarbeitung nach Doc-IDs
qmd multi-get 'memory/2026-05-*.md' -l 80 # Glob-Stapelverarbeitung
Verwenden Sie multi-get, wenn Sie mehrere Treffer vergleichen oder Kontext über Seiten hinweg sammeln. Verwenden Sie --full, wenn die genaue Quelle wichtig ist.
Sammlungen nach Agent
Jeder Agent hat seinen eigenen QMD-Index mit XDG-isolierter Konfiguration. Die Agentenliste befindet sich unter ${OPENCLAW_HOME}/config/agents.map. Wenn Sie von der CLI aus suchen, verwenden Sie den XDG-Wrapper des Agenten:
# Hauptagent
XDG_CONFIG_HOME=${OPENCLAW_HOME}/agents/main/qmd/xdg-config XDG_CACHE_HOME=${OPENCLAW_HOME}/agents/main/qmd/xdg-cache qmd query "..."
# Dev-Agent und jeder andere Agent — gleiches Muster, Agentennamen austauschen
Sammlungen des Hauptagenten
| Sammlung | Inhalt |
|---|---|
identity-main | Kerndokumente — SOUL, IDENTITY, TOOLS, AGENTS, NETWORK, MEMORY-Index |
wiki-main | Dauerhafter Wissenskortex. Wiki — Agentenverhalten (agentenübergreifende Regeln), Projekte, Werkzeuge, Konzepte, Personen. Primäres, dauerhaftes Gedächtnis seit 2026-05-28. |
memory-main | Tägliche Gedächtnisdateien (YYYY-MM-DD.md) — 7-Tage-Erfassungsschicht, die Inhalte in wiki-main befördert |
workspace-docs-main | Vollständiges Workspace-Markdown (Referenzen, Aufgaben, Übergaben, Erkenntnisse) |
skills-main | Skill-Definitionen (SKILL.md-Dateien) |
agents-*-identity | Identitäts-/Konfigurationsdokumente anderer Agenten (pro Agent-Workspace) |
agents-*-memory | Tägliche Gedächtnisdateien anderer Agenten (pro Agent-Workspace) |
agents-*-wiki | Dauerhafte Wikis anderer Agenten (pro Agent-Workspace) — der Hauptagent kann dauerhaftes Fachwissen direkt abfragen. |
handoffs-* | Übergabedateien pro Agent (Haupt-, Dev- und jeder andere Agent) |
Hinweise zu spezialisierten Sammlungen
Die Sammlungsnamen unten stammen aus der eigenen QMD-Konfiguration jedes spezialisierten Agenten. Vom Hauptagenten aus verwenden Sie die agentenübergreifenden Entsprechungen (agents-<agent>-wiki, agents-<agent>-memory).
| Wonach Sie suchen | Agent | Wichtige Sammlungen (innerhalb des Agenten) | Vom Hauptagenten |
|---|---|---|---|
| Codeprojekte, Build-Konfigurationen, technische Entscheidungen | dev | projects-dev, identity-dev, wiki-dev | agents-dev-wiki, agents-dev-memory |
Kontext- und Sammlungsbereich
Die Metadaten context: von QMD (gesetzt in index.yml oder über qmd context add) verbessern die Suchrelevanz, indem sie beschreiben, was jede Sammlung enthält. Sie werden zusammen mit den Ergebnissen zurückgegeben.
Grenzen Sie Suchen mit -c ein, wenn breite Abfragen in den falschen Korpus abdriften:
qmd search "Standup-Notizen diese Woche" -c agents-dev-memory -n 10
qmd query "GenAI-Projektstatus" -c wiki-main -c projects-dev -n 10
Lassen Sie -c weg, um in allem zu suchen.
Diagnose
qmd status # Sammlungszahlen und ausstehende Einbettungen
qmd update # Neuindizierung (nach Hinzufügen/Bearbeiten von Dateien in indizierten Pfaden verwenden)
qmd embed # Vektoren generieren/neu erstellen nach einem Update
Wenn qmd query oder qmd vsearch fehlschlagen (Modell/GPU nicht verfügbar), fallen Sie auf qmd search mit stärkeren lexikalischen Begriffen zurück.
Hinweis: Ältere Dokumente verwiesen auf qmd doctor — dieser Unterbefehl ist in der aktuellen CLI-Version nicht vorhanden. Verwenden Sie qmd status für den Gesundheitszustand und qmd update/qmd embed für Reparaturen.
MCP-Werkzeuge
Bei Verwendung von MCP (Standard für OpenClaw-Agenten) bevorzugen Sie strukturierte Abfragen:
{
"searches": [
{ "type": "lex", "query": "Challenger-Crew-Status" },
{ "type": "vec", "query": "Was ist der aktuelle Stand des Challenger-Crew-Projekts?" }
],
"intent": "Projektstatus finden, keine allgemeinen Konzepte über die Crew.",
"limit": 10
}
Fallstricke
- Halten Sie nicht bei Ausschnitten an. Rufen Sie Dokumente ab, bevor Sie Behauptungen aufstellen.
- Übermäßige semantische Suche vermeiden. Wenn Sie genaue Titel oder Begriffe kennen, ist BM25 schneller und oft besser.
- Indizes nicht leichtfertig ändern.
qmd collection add,qmd updateundqmd embedändern den lokalen Zustand und können teuer sein. - Modellgestützte Befehle können umgebungsabhängig sein. Wenn
qmd queryoder Reranking fehlschlagen, fallen Sie aufqmd searchmit stärkeren lexikalischen Begriffen zurück. - Mehrdeutige Formulierungen des Benutzers benötigen eine Absicht. Fügen Sie
intent:hinzu, anstatt darauf zu hoffen, dass die Abfrageerweiterung die richtige Domäne errät. - Sammlungsnamen sind wichtig. Grenzen Sie mit
-cein, wenn die Abfrage mehrere Domänen treffen könnte. - Aktualität: QMD bewertet alte Ergebnisse nicht ab. Überprüfen Sie bei zeitkritischen Gedächtnisinhalten die Dateinamen — YYYY-MM-DD näher am heutigen Datum ist aktueller.
Einrichtung und Wartung
Führen Sie diese nur aus, wenn Sie dazu aufgefordert werden. Suchen und Abrufen sind sicher; Indexänderungen sind nicht trivial.
qmd collection add ~/notes --name notes # CLI-Alternative zum Bearbeiten von index.yml
qmd context add qmd://notes "Beschreibung" # CLI-Alternative zu context: in index.yml
qmd update # Sammlungen neu indizieren
qmd embed # Vektoren generieren/neu erstellen
qmd status # Gesundheitscheck nach Änderungen