Baby-SkyNet

Baby-SkyNet

Provides Claude AI with persistent, searchable memory management across sessions using SQL database, semantic analysis with multi-provider LLM support (Anthropic/Ollama), vector search via ChromaDB, and graph-based knowledge relationships through Neo4j integration.

Category
Visit Server

README

Baby-SkyNet 🤖

Autonomous Memory Management System for Claude AI with Multi-Provider LLM Integration & Graph Database

Ein MCP Server der Claude ein permanentes, durchsuchbares Gedächtnis verleiht - inklusive semantischer Analyse, Multi-Provider LLM Support und Graph-Datenbank Integration.

Was ist das?

Baby-SkyNet erweitert Claude um:

  • Persistentes Memory - Erinnerungen überleben Session-Grenzen
  • Kategorisierung - Strukturierte Organisation von Wissen
  • Volltext-Suche - Finde alte Gespräche und Erkenntnisse
  • Semantische Analyse - KI-gestützte Konzept-Extraktion
  • Multi-Provider Support - Ollama (lokal) + Anthropic API
  • Graph Database - Neo4j Integration für verknüpfte Informationen

Features v2.3

Core Memory Management

  • ✅ SQL Database - Robuste, lokale Datenhaltung
  • ✅ Kategorien-System - Programmieren, Debugging, Projekte, etc.
  • ✅ Volltext-Suche - Durchsuche alle Memories
  • ✅ CRUD Operations - Create, Read, Update, Move

Advanced Vector & Graph Storage

  • ✅ ChromaDB Integration - Vector-basierte semantische Suche
  • ✅ Neo4j Graph Database - Relationship-basierte Memory-Vernetzung
  • ✅ Multi-Source Search - Kombinierte Resultate aus allen Datenquellen
  • ✅ Graph Analytics - Netzwerk-Statistiken und Beziehungsanalyse

Semantic Analysis Engine

  • ✅ Multi-Provider LLM - Ollama (lokal) oder Anthropic API
  • ✅ Memory Classification - technical, emotional, procedural, factual
  • ✅ Concept Extraction - Automatische Schlüsselkonzept-Extraktion
  • ✅ Batch Processing - Asynchrone Analyse mehrerer Memories
  • ✅ Metadata Enrichment - Tools, People, Code-Detection
  • ✅ Relationship Detection - Automatische semantische Verknüpfungen

Container Management & Auto-Start

  • ✅ Podman/Docker Integration - Automatisches Container-Management
  • ✅ Auto-Start Services - ChromaDB und Neo4j automatisch starten
  • ✅ Health Monitoring - Container-Status in memory_status Tool
  • ✅ Smart Recovery - Neustart fehlgeschlagener Container

Quick Start

Voraussetzungen

  • Node.js >= 18.0
  • TypeScript >= 5.0
  • Ollama (optional, für lokale LLM) oder Anthropic API Key
  • MCP-kompatible Umgebung (Claude Desktop, etc.)

Installation

# Repository klonen
git clone https://github.com/spie-mkroehn/baby-skynet.git
cd baby-skynet

# Dependencies installieren
npm install

# TypeScript kompilieren
npm run build

# Starten
npm start

Konfiguration

Option 1: Anthropic API (empfohlen)

# .env Datei erstellen
echo "ANTHROPIC_API_KEY=your_api_key_here" > .env

# Mit Claude Haiku starten
node build/index.js --db-path ./claude_memory.db --brain-model claude-3-5-haiku-latest

Option 2: Lokale Ollama

# Ollama installieren und Modell laden
ollama pull llama3.1:latest

# Mit Ollama starten
node build/index.js --db-path ./claude_memory.db --brain-model llama3.1:latest

MCP Integration

In Claude Desktop claude_desktop_config.json:

{
  "mcpServers": {
    "baby-skynet": {
      "command": "node",
      "args": [
        "/pfad/zu/baby-skynet/build/index.js", 
        "--db-path", "/pfad/zu/claude_memory.db",
        "--brain-model", "claude-3-5-haiku-latest"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "your_api_key_here"
      }
    }
  }
}

Neo4j Graph Database (Optional aber empfohlen)

Neo4j Setup:

# 1. Neo4j installieren
# Download von https://neo4j.com/download/
# Oder mit Docker:
docker run --publish=7474:7474 --publish=7687:7687 --volume=$HOME/neo4j/data:/data neo4j

# 2. Environment Variables konfigurieren
cp .env.example .env
# Bearbeite .env mit deinen Neo4j Credentials:
# NEO4J_URL=bolt://localhost:7687
# NEO4J_USER=neo4j
# NEO4J_PASSWORD=your_password

Graph Features nutzen:

  • save_memory_with_graph - Memory mit automatischer Vernetzung
  • search_memories_with_graph - Erweiterte Suche mit Kontext
  • get_memory_graph_context - Beziehungsnetzwerk anzeigen
  • get_graph_statistics - Netzwerk-Statistiken

LLM Client Factory Architecture

Baby-SkyNet verwendet eine zentrale LLMClientFactory zur Verwaltung aller LLM-Provider:

Unterstützte Provider

  • Anthropic Claude: claude-3-sonnet, claude-3-haiku, etc.
  • Ollama Local Models: llama2, mistral, etc.

Automatische Provider-Erkennung

import { LLMClientFactory } from './llm/LLMClientFactory.js';

// Automatische Erkennung basierend auf Modellname
const anthropicClient = LLMClientFactory.createClient('claude-3-sonnet');
const ollamaClient = LLMClientFactory.createClient('llama2');

SemanticAnalyzer Integration

Der SemanticAnalyzer nutzt die Factory automatisch:

import { SemanticAnalyzer } from './llm/SemanticAnalyzer.js';

const analyzer = new SemanticAnalyzer('claude-3-sonnet'); // Verwendet Factory intern

🧪 Testing

Baby-SkyNet verfügt über eine umfassende Test-Suite mit 18+ Tests:

# Build & einzelner Test
npm run build
node tests/test-simple.js

# Alle Tests ausführen
Get-ChildItem tests\test-*.js | ForEach-Object { node $_.FullName }

Test-Kategorien:

  • Core System Tests (Basis-Funktionalität)
  • Integration Tests (End-to-End)
  • MCP Interface Tests (Claude Desktop)
  • Database Tests (PostgreSQL/SQLite)
  • VectorDB Tests (ChromaDB)
  • External Service Tests (OpenAI, Neo4j)

📖 Detaillierte Dokumentation: TESTING.md | tests/README.md

✅ JobProcessor Reorganisation (Januar 2025)

Verzeichnisstruktur optimiert

  • JobProcessor.ts von src/jobs/ nach src/utils/ verschoben
  • Leeres jobs/ Verzeichnis entfernt
  • Import-Pfade entsprechend aktualisiert

Neue schlanke Struktur:

src/
├── database/     # Alle Datenbank-bezogenen Klassen
├── embedding/    # Embedding-Services
├── llm/          # LLM-Clients und SemanticAnalyzer
├── utils/        # Utilities inkl. JobProcessor
└── index.ts      # Hauptdatei

Vorteile:

  • Weniger Verzeichnisse → übersichtliche

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured