Initial commit: LangMem fact-based AI memory system with docs and MCP integration

- Complete fact-based memory API with mem0-inspired approach
- Individual fact extraction and deduplication
- ADD/UPDATE/DELETE memory actions
- Precision search with 0.86+ similarity scores
- MCP server for Claude Code integration
- Neo4j graph relationships and PostgreSQL vector storage
- Comprehensive documentation with architecture and API docs
- Matrix communication integration
- Production-ready Docker setup with Ollama and Supabase

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Docker Config Backup
2025-07-17 13:16:19 +02:00
commit 46faa78237
43 changed files with 9086 additions and 0 deletions

91
start-dev.sh Executable file
View File

@@ -0,0 +1,91 @@
#!/bin/bash
# LangMem Development Startup Script
set -e
echo "🚀 Starting LangMem Development Environment"
# Check if .env exists, if not copy from example
if [ ! -f .env ]; then
echo "📋 Creating .env file from example..."
cp .env.example .env
echo "⚠️ Please update .env with your actual database password"
fi
# Check if required services are running
echo "🔍 Checking required services..."
# Check Ollama
if ! curl -s http://localhost:11434/api/tags > /dev/null; then
echo "❌ Ollama is not running. Please start Ollama first."
exit 1
fi
echo "✅ Ollama is running"
# Check Supabase
if ! docker ps | grep -q supabase-db; then
echo "❌ Supabase is not running. Please start Supabase first."
exit 1
fi
echo "✅ Supabase is running"
# Check if localai network exists
if ! docker network ls | grep -q localai; then
echo "📡 Creating localai network..."
docker network create localai
fi
echo "✅ Docker network 'localai' is ready"
# Build and start services
echo "🏗️ Building and starting LangMem services..."
docker compose up -d --build
# Wait for services to be ready
echo "⏳ Waiting for services to be ready..."
sleep 10
# Check service health
echo "🔍 Checking service health..."
max_retries=30
retry_count=0
while [ $retry_count -lt $max_retries ]; do
if curl -s http://localhost:8765/health > /dev/null; then
echo "✅ LangMem API is healthy"
break
fi
retry_count=$((retry_count + 1))
echo "⏳ Waiting for API to be ready (attempt $retry_count/$max_retries)"
sleep 2
done
if [ $retry_count -eq $max_retries ]; then
echo "❌ API failed to become ready"
docker compose logs langmem-api
exit 1
fi
# Display service status
echo ""
echo "🎉 LangMem Development Environment is ready!"
echo ""
echo "📊 Service Status:"
echo " - LangMem API: http://localhost:8765"
echo " - API Documentation: http://localhost:8765/docs"
echo " - Neo4j Browser: http://localhost:7474"
echo " - Health Check: http://localhost:8765/health"
echo ""
echo "🔧 Useful Commands:"
echo " - View logs: docker compose logs -f langmem-api"
echo " - Run tests: ./test.sh"
echo " - Stop services: docker compose down"
echo " - Restart API: docker compose restart langmem-api"
echo ""
echo "🔑 API Key: langmem_api_key_2025"
echo ""
# Show current health status
echo "🏥 Current Health Status:"
curl -s http://localhost:8765/health | python3 -m json.tool || echo "Failed to get health status"