This folder contains comprehensive documentation for understanding the Embabel ecosystem, including the Guide application, Embabel Agent framework, and supporting libraries.
Document
Description
When to Use
RAGBOT-PRIMER.md
RAG chatbot architecture
When building RAG-powered chatbots
Document
Description
When to Use
EMBABEL-COMMON-PRIMER.md
Foundational libraries & utilities
Understanding shared components
DICE (Domain-Integrated Context Engineering)
Document
Description
When to Use
DICE-PRIMER.md
Knowledge graph & proposition architecture
Building knowledge systems
Quick Start Reading Order
GUIDE-PRIMER.md - Architecture, packages, Drivine patterns
KEY-FLOWS.md - Request tracing
PATTERNS-QUICK-REFERENCE.md - Code snippets
EMBABEL-AGENT-PRIMER.md - Core concepts (Actions, Goals, Planning)
EMBABEL-AGENT-PATTERNS.md - Implementation patterns
EMBABEL-AGENT-EXAMPLES-PRIMER.md - See it in action
RAGBOT-PRIMER.md - Chatbot with RAG integration
EMBABEL-COMMON-PRIMER.md - Shared utilities
DICE-PRIMER.md - Proposition-based knowledge graphs
Repository
Purpose
Key Technologies
guide
AI-powered chat application
Neo4j, Drivine, WebSocket
embabel-agent
AI agent framework
GOAP, Utility AI, MCP
embabel-agent-examples
Learning examples
Java/Kotlin, Shell modes
ragbot
RAG chatbot reference
Lucene, Jinja templates
embabel-common
Shared libraries
Core interfaces, utilities
dice
Knowledge engineering
Prolog, propositions
Technology
Used In
Purpose
Spring Boot 3.5
All
Application framework
Kotlin + Java 21
All
Primary languages
Neo4j + Drivine
Guide, DICE
Graph database
WebSocket/STOMP
Guide
Real-time chat
Lucene
Ragbot
Vector storage
Jinja (Jinjava)
All
Prompt templates
GOAP / Utility AI
embabel-agent
Planning systems
Spring AI
embabel-agent
LLM integration
MCP Protocol
embabel-agent
Tool server/client
tuProlog
DICE
Logical inference
com.embabel.guide.chat.* → WebSocket chat system
com.embabel.guide.domain.* → User domain model
com.embabel.hub.* → REST auth/user management
com.embabel.guide.rag.* → RAG and AI integration
com.embabel.agent.core.* → Agent, Action, Goal, Blackboard
com.embabel.agent.api.* → Ai, PromptRunner, ActionContext
com.embabel.agent.spi.* → Extension points
com.embabel.chat.* → Chatbot, Conversation
com.embabel.agent.rag.* → RAG integration
com.embabel.common.core.* → Identified, Versioned, types
com.embabel.common.ai.* → Llm, LlmOptions, ModelProvider
com.embabel.common.textio.* → Template rendering
com.embabel.common.util.* → General utilities
com.embabel.dice.common.* → SourceAnalysisContext, Relations
com.embabel.dice.proposition.* → Proposition, EntityMention
com.embabel.dice.projection.* → Graph, Prolog, Memory projectors
com.embabel.dice.operations.* → Abstraction, Contrast
docker compose up neo4j -d
OPENAI_API_KEY=sk-... ./mvnw spring-boot:run
cd embabel-agent-examples/scripts/kotlin
OPENAI_API_KEY=sk-... ./shell.sh
cd ragbot
OPENAI_API_KEY=sk-... ./scripts/shell.sh
# Then: ingest, chat
Generated: January 2026