104 lines
3.0 KiB
Markdown
104 lines
3.0 KiB
Markdown
# 🦉 Crumbpages Doktor - Handbuch (v2)
|
|
|
|
**Version:** RC1
|
|
**Autor:** Crystal Owl 🦉
|
|
**System:** Linux / macOS
|
|
|
|
---
|
|
|
|
## 📖 Einführung
|
|
|
|
Der **Crumbpages Doktor** ist ein modulares Skript zur Wartung und Diagnose der Crumbforest-Infrastruktur. Es vereint System-Checks, Git-Workflows und API-Testing in einem einheitlichen Interface.
|
|
|
|
> *"Ein aufgeräumter Wald ist ein sicherer Wald."*
|
|
|
|
---
|
|
|
|
## ⚙️ Konfiguration (.env)
|
|
|
|
Das Skript lädt Variablen aus einer `.env` Datei im gleichen Verzeichnis.
|
|
|
|
**Beispiel-Konfiguration:**
|
|
```ini
|
|
# API Setup
|
|
CRUMB_API_URL="http://localhost:8000"
|
|
CRUMB_API_TOKEN="changeme" # Setze auf "changeme" oder leer für Public Mode (kein Header)
|
|
|
|
# Remote / SSH
|
|
CRUMB_SSH_USER="admin"
|
|
CRUMB_SCP_TARGET="backup.crumbforest.de:/var/backups"
|
|
```
|
|
|
|
---
|
|
|
|
## 🌲 Git Workstation
|
|
|
|
Startet eine Subshell speziell für Git-Arbeiten.
|
|
|
|
* **Prompt:** Zeigt `(🌲 Git) user@host` an.
|
|
* **Aliase:**
|
|
* `gst` -> `git status`
|
|
* `gd` -> `git diff`
|
|
* `gl` -> `git log --graph ...`
|
|
* **Funktionen:**
|
|
* `check_health`: Prüft Sync-Status mit Remote (automatischer `git remote update`).
|
|
|
|
---
|
|
|
|
## 🕸️ Web Tools (API)
|
|
|
|
Die Schnittstelle zum Crumbcore. Ideal für RAG-Tests und API-Debugging.
|
|
|
|
* **Features:**
|
|
* Automatische Authentifizierung (Bearer Token via `.env`).
|
|
* JSON-Output Optimierung (stderr piping für `jq`).
|
|
* Browser-Integration.
|
|
* **Befehle:**
|
|
* `api_search <query> [limit]`:
|
|
Sucht im Vektor-Speicher. Sendet GET an `/api/documents/search`.
|
|
*Beispiel:* `api_search "nullfeld" | jq`
|
|
* `api_get <endpoint>`:
|
|
Generischer GET Request.
|
|
*Beispiel:* `api_get health` oder `api_get /__routes`
|
|
* `open_url <url>`:
|
|
Öffnet die URL im Standard-Browser des Systems (`open` oder `xdg-open`).
|
|
|
|
---
|
|
|
|
## 🔐 Remote Tools
|
|
|
|
Helfer für SSH-Verbindungen und Dateitransfers.
|
|
|
|
* **Befehle:**
|
|
* `my_keys`: Listet lokale Public Keys auf (zur Weitergabe an Admins).
|
|
* `ssh_config`: Öffnet die SSH Config im Editor.
|
|
* `crumbupload <datei>`: Lädt eine Datei via SCP auf das in `.env` definierte Ziel (`CRUMB_SCP_TARGET`).
|
|
|
|
---
|
|
|
|
## 🌐 DNS & 🖥️ System Doktor
|
|
|
|
Diese Module erstellen **Text-Reports** mit Zeitstempel zur Archivierung.
|
|
|
|
* **DNS Doktor:**
|
|
* Prüft A-Records (Lokal vs. 8.8.8.8).
|
|
* Analysiert MX (Mail) und TXT (SPF/DKIM) Records.
|
|
* Führt einen vollständigen Trace (`dig +trace`) durch.
|
|
* **System Doktor:**
|
|
* Erkennt automatisch Linux oder macOS.
|
|
* Sammelt Hostname, Kernel-Version, Disk-Usage (`df -h`) und Memory (`free -h`).
|
|
|
|
---
|
|
|
|
## ❓ Troubleshooting
|
|
|
|
**Problem: `api_ask` liefert JSON Fehler.**
|
|
* Lösung: Stelle sicher, dass du die RC1 Version benutzt. Alte Versionen hatten Probleme mit Anführungszeichen in Fragen.
|
|
* Workaround: Einfache Anführungszeichen für den String nutzen: `api_ask 1 'Frage mit "Quotes"'`.
|
|
|
|
**Problem: `.env` wird nicht geladen.**
|
|
* Lösung: Die Datei muss `.env` heißen und im selben Ordner liegen, in dem du das Skript ausführst.
|
|
|
|
---
|
|
*Crumbpages v1 - Documentation*
|