Deployment OverviewΒΆ
Choose the right deployment mode based on your needs and available infrastructure.
π― Deployment ModesΒΆ
Minimal - Code Graph OnlyΒΆ
Perfect for: Developers who want code intelligence without LLM overhead
Requirements:
- Neo4j database
- Docker & docker-compose
- No LLM needed β
- No embedding model needed β
Resources:
- Image size: ~500MB
- Memory: ~1GB RAM
- Startup time: ~5 seconds
Available Features:
- β Repository ingestion and code parsing
- β File relationship discovery (imports, dependencies)
- β Impact analysis (who depends on this file?)
- β Context packing for AI assistants
- β Full-text search on file paths and content
- β Memory Store
- β Knowledge RAG
- β Auto-extraction
Use When:
- You want code navigation and analysis only
- You don't need LLM-powered features
- You're working in air-gapped environments
- You want minimal resource usage
Standard - Code Graph + MemoryΒΆ
Perfect for: Teams building project knowledge bases
Requirements:
- Neo4j database
- Docker & docker-compose
- Embedding model (Ollama/OpenAI/Gemini) β
- No LLM needed β
Resources:
- Image size: ~600MB
- Memory: ~2GB RAM
- Startup time: ~8 seconds
Available Features:
- β All Minimal features
- β Manual memory management (add/update/delete)
- β Vector-based memory search
- β Project memory summaries
- β Memory superseding (track decision changes)
- β Auto-extraction from git/conversations
- β Knowledge RAG
Use When:
- You want to maintain project decision logs
- You need searchable team knowledge
- You have access to an embedding service
- You prefer manual curation over auto-extraction
Full - All FeaturesΒΆ
Perfect for: Teams wanting complete AI-powered capabilities
Requirements:
- Neo4j database
- Docker & docker-compose
- LLM (Ollama/OpenAI/Gemini/OpenRouter) β
- Embedding model β
Resources:
- Image size: ~800MB
- Memory: ~4GB RAM (+ LLM requirements)
- Startup time: ~15 seconds
Available Features:
- β All Standard features
- β
Automatic memory extraction from:
- Git commits
- AI conversations
- Code comments (TODO/FIXME/NOTE)
- Q&A sessions
- β
Knowledge base RAG:
- Document ingestion
- Intelligent Q&A
- Multi-format support
- β Batch repository analysis
Use When:
- You want fully automated knowledge extraction
- You need document Q&A capabilities
- You have LLM infrastructure available
- You want maximum AI assistance
π Mode Comparison MatrixΒΆ
| Feature Category | Minimal | Standard | Full |
|---|---|---|---|
| Code Graph | |||
| Repository ingestion | β | β | β |
| Incremental updates | β | β | β |
| File search | β | β | β |
| Impact analysis | β | β | β |
| Context packing | β | β | β |
| Memory Store | |||
| Add memory | β | β | β |
| Search memories | β | β (vector) | β (vector) |
| Update/delete | β | β | β |
| Supersede | β | β | β |
| Extract from git | β | β | β (LLM) |
| Extract from chat | β | β | β (LLM) |
| Extract from code | β | β | β (LLM) |
| Knowledge RAG | |||
| Add documents | β | β | β |
| Query knowledge | β | β | β (LLM) |
| Vector search | β | β | β |
| Infrastructure | |||
| Neo4j | Required | Required | Required |
| Embedding | - | Required | Required |
| LLM | - | - | Required |
| Performance | |||
| Image size | 500MB | 600MB | 800MB |
| RAM usage | 1GB | 2GB | 4GB+ |
| Startup time | 5s | 8s | 15s |
ποΈ Architecture DiagramsΒΆ
Minimal Mode ArchitectureΒΆ
graph TB
subgraph "Client"
A[Claude Desktop / API Client]
end
subgraph "Docker Network"
B[MCP Server<br/>Minimal]
C[(Neo4j<br/>Graph DB)]
end
subgraph "Code Graph Services"
D[Code Ingestor]
E[Graph Service]
F[Ranker]
G[Pack Builder]
end
A -->|MCP/REST| B
B --> D
B --> E
B --> F
B --> G
D -->|Store| C
E -->|Query| C
style B fill:#90EE90
style C fill:#87CEEB Standard Mode ArchitectureΒΆ
graph TB
subgraph "Client"
A[Claude Desktop / API Client]
end
subgraph "Docker Network"
B[MCP Server<br/>Standard]
C[(Neo4j<br/>Graph DB)]
end
subgraph "Code Graph Services"
D[Code Ingestor]
E[Graph Service]
end
subgraph "Memory Services"
F[Memory Store]
end
subgraph "External"
G[Embedding Service<br/>Ollama/OpenAI]
end
A -->|MCP/REST| B
B --> D
B --> E
B --> F
D -->|Store| C
E -->|Query| C
F -->|Store/Search| C
F -->|Vectorize| G
style B fill:#FFD700
style C fill:#87CEEB
style G fill:#FFA07A Full Mode ArchitectureΒΆ
graph TB
subgraph "Client"
A[Claude Desktop / API Client]
end
subgraph "Docker Network"
B[MCP Server<br/>Full]
C[(Neo4j<br/>Graph DB)]
D[Ollama<br/>Optional]
end
subgraph "All Services"
E[Code Graph]
F[Memory Store]
G[Knowledge RAG]
H[Memory Extractor]
end
subgraph "External/Optional"
I[LLM Service<br/>OpenAI/Gemini]
J[Embedding Service]
end
A -->|MCP/REST| B
B --> E
B --> F
B --> G
B --> H
E -->|Store| C
F -->|Store/Search| C
G -->|Store/Query| C
F -->|Vectorize| J
G -->|Generate| I
H -->|Analyze| I
D -.->|Local LLM| I
D -.->|Local Embed| J
style B fill:#FF6347
style C fill:#87CEEB
style D fill:#DDA0DD π Quick Decision GuideΒΆ
Use this flowchart to choose your deployment mode:
graph TD
A[Start] --> B{Do you need<br/>LLM features?}
B -->|No| C{Do you need<br/>memory search?}
B -->|Yes| D[Full Mode]
C -->|No| E[Minimal Mode]
C -->|Yes| F{Can you provide<br/>embedding service?}
F -->|Yes| G[Standard Mode]
F -->|No| E
E --> H[β Code Graph only<br/>β No external deps<br/>β Fast & lightweight]
G --> I[β Code Graph<br/>β Memory Store<br/>β Need embedding]
D --> J{Do you have<br/>local GPU?}
J -->|Yes| K[Use with-ollama profile]
J -->|No| L[Use cloud LLM]
K --> M[β All features<br/>β Self-hosted<br/>β High resources]
L --> N[β All features<br/>β Lower resources<br/>β API costs]
style E fill:#90EE90
style G fill:#FFD700
style K fill:#FF6347
style L fill:#FF6347 π Pre-Deployment ChecklistΒΆ
For All ModesΒΆ
- Docker installed (version 20.10+)
- docker-compose installed (version 1.29+)
- At least 4GB free disk space
- Ports 7474, 7687, 8000 available
-
.envfile configured
Additional for Standard ModeΒΆ
- Embedding service available:
- Local Ollama running, or
- OpenAI API key, or
- Google API key for Gemini
Additional for Full ModeΒΆ
- LLM service available:
- Local Ollama running, or
- OpenAI API key, or
- Google API key, or
- OpenRouter API key
- Embedding service (same as Standard)
- For local Ollama: GPU with 8GB+ VRAM (optional but recommended)
π Switching Between ModesΒΆ
You can switch deployment modes at any time. Data in Neo4j is preserved.
# Stop current deployment
make docker-stop
# Start different mode
make docker-minimal # or
make docker-standard # or
make docker-full
Configuration Required
When switching to Standard or Full mode, update your .env file with required API keys and service URLs.