Initial commit: my-brain-importer RAG knowledge management agent

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Christoph K.
2026-03-10 21:07:23 +01:00
commit a3bcac55fb
12 changed files with 880 additions and 0 deletions

46
cmd/ingest/main.go Executable file
View File

@@ -0,0 +1,46 @@
// ingest importiert Markdown-Dateien und Bildbeschreibungen in Qdrant
package main
import (
"fmt"
"os"
"path/filepath"
"strings"
"my-brain-importer/internal/brain"
"my-brain-importer/internal/config"
)
func main() {
config.LoadConfig()
bin := os.Args[0]
if len(os.Args) < 2 {
// Standard: Markdown aus brain_root importieren
brain.RunIngest(config.Cfg.BrainRoot)
return
}
arg := os.Args[1]
switch {
case arg == "-h" || arg == "--help":
printUsage(bin)
case strings.ToLower(filepath.Ext(arg)) == ".json":
// Argument ist eine JSON-Datei → Bildbeschreibungen importieren
brain.RunIngestJSON(arg)
default:
// Argument ist ein Verzeichnis → Markdown importieren
brain.RunIngest(arg)
}
}
func printUsage(bin string) {
fmt.Printf("ingest importiert Daten in die Qdrant-Wissensdatenbank\n\n")
fmt.Printf("Usage:\n")
fmt.Printf(" %s Markdown aus brain_root (config.yml) importieren\n", bin)
fmt.Printf(" %s /pfad/zum/ordner Markdown aus benutzerdefiniertem Verzeichnis\n", bin)
fmt.Printf(" %s datei.json Bildbeschreibungen aus JSON importieren\n", bin)
os.Exit(0)
}