# 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
```yaml
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
[β Minimal Deployment Guide](minimal.md){ .md-button .md-button--primary }
---
### Standard - Code Graph + Memory
**Perfect for**: Teams building project knowledge bases
```yaml
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
[β Standard Deployment Guide](standard.md){ .md-button .md-button--primary }
---
### Full - All Features
**Perfect for**: Teams wanting complete AI-powered capabilities
```yaml
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
[β Full Deployment Guide](full.md){ .md-button .md-button--primary }
---
## π 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
```mermaid
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
```mermaid
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
```mermaid
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:
```mermaid
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
- [ ] `.env` file 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.
```bash
# Stop current deployment
make docker-stop
# Start different mode
make docker-minimal # or
make docker-standard # or
make docker-full
```
!!! warning "Configuration Required"
When switching to Standard or Full mode, update your `.env` file with required API keys and service URLs.
## π Next Steps
- [Minimal Deployment Guide](minimal.md)
- [Standard Deployment Guide](standard.md)
- [Full Deployment Guide](full.md)
- [Docker Guide](docker.md)