# Farnsworth Technical Specification
> A comprehensive technical deep-dive into the architecture, technology stack, and capabilities of the Farnsworth AI Companion System.
**Version:** 0.1.0
**Last Updated:** January 2026
**Author:** Timothy White
---
## Table of Contents
1. [Executive Summary](#executive-summary)
2. [System Architecture](#system-architecture)
3. [Technology Stack](#technology-stack)
4. [Core Components](#core-components)
5. [Data Flow Diagrams](#data-flow-diagrams)
6. [Current Capabilities](#current-capabilities)
7. [Future Potential](#future-potential)
8. [Performance Specifications](#performance-specifications)
9. [Security Considerations](#security-considerations)
---
## Executive Summary
### What Farnsworth Does
Farnsworth is a **companion AI system** that extends Claude Code with:
| Capability | Technical Implementation |
|------------|-------------------------|
| **Persistent Memory** | MemGPT-style hierarchical storage with FAISS vector indexing |
| **Agent Swarm** | LangGraph-inspired multi-agent orchestration with specialist routing |
| **Self-Evolution** | NSGA-II genetic optimization with fitness tracking |
| **Local Processing** | Multi-backend LLM support (Ollama, llama.cpp, BitNet) |
### Key Technical Innovations
1. **Cascade Inference** - Dynamic model escalation based on confidence
2. **Memory Dreaming** - Unsupervised background consolidation
3. **Self-Refining RAG** - Genetic evolution of retrieval strategies
4. **User Avatar Modeling** - Personalized preference learning
---
## System Architecture
### High-Level Architecture
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β USER LAYER β
β β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
β β Claude Code β β Streamlit UI β β CLI/API β β
β β (Primary) β β (Dashboard) β β (Scripts) β β
β ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ β
β β β β β
ββββββββββββββΌβββββββββββββββββββββββΌβββββββββββββββββββββββΌβββββββββββββββββββ
β β β
β MCP Protocol β HTTP β Python API
βΌ βΌ βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β INTEGRATION LAYER β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Farnsworth MCP Server β β
β β βββββββββββββ βββββββββββββ βββββββββββββ βββββββββββββ β β
β β β Memory β β Agent β β Evolution β β Resource β β β
β β β Tools β β Tools β β Tools β β Streams β β β
β β βββββββββββββ βββββββββββββ βββββββββββββ βββββββββββββ β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β
βΌ βΌ βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CORE LAYER β
β β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
β β Memory System βββββΊβ Agent Swarm βββββΊβEvolution Engine β β
β β β β β β β β
β β β’ Virtual Ctx β β β’ Orchestrator β β β’ Genetic Opt β β
β β β’ Archival β β β’ Code Agent β β β’ Fitness Track β β
β β β’ Knowledge β β β’ Reasoning β β β’ LoRA Evolver β β
β β β’ Dreaming β β β’ Research β β β’ Behavior Mut β β
β ββββββββββ¬βββββββββ β β’ Creative β ββββββββββ¬βββββββββ β
β β β β’ User Avatar β β β
β β β β’ Meta-Cog β β β
β β ββββββββββ¬βββββββββ β β
β β β β β
β ββββββββββββββββββββββββΌβββββββββββββββββββββββ β
β β β
β βββββββββββββββββββββββββββββββββ΄ββββββββββββββββββββββββββββββββ β
β β RAG System β β
β β βββββββββββββ βββββββββββββ βββββββββββββ βββββββββββββ β β
β β β Embeddingsβ β Hybrid β β Document β β Self- β β β
β β β Manager β β Retriever β β Processor β β Refining β β β
β β βββββββββββββ βββββββββββββ βββββββββββββ βββββββββββββ β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β
βΌ βΌ βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β INFRASTRUCTURE LAYER β
β β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
β β LLM Backend β β Vector Store β β File System β β
β β β β β β β β
β β β’ Ollama β β β’ FAISS β β β’ JSON Storage β β
β β β’ llama.cpp β β β’ ChromaDB β β β’ Model Cache β β
β β β’ BitNet β β β’ BM25 Index β β β’ Log Files β β
β β β’ Cascade β β β β β β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### Component Interaction Matrix
```
βββββββββββ¬ββββββββββ¬ββββββββββ¬ββββββββββ¬ββββββββββ
β Memory β Agents βEvolutionβ RAG β LLM β
ββββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββ€
β Memory β - β Read β Metrics β Store β Generateβ
ββββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββ€
β Agents β Write β - β Feedbackβ Query β Invoke β
ββββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββ€
βEvolution β Analyzeβ Optimizeβ - β Tune β Evaluateβ
ββββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββ€
β RAG β Index β Support β Evolve β - β Embed β
ββββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββΌββββββββββ€
β LLM β Context β Execute β Train β Search β - β
ββββββββββββ΄ββββββββββ΄ββββββββββ΄ββββββββββ΄ββββββββββ΄ββββββββββ
```
---
## Technology Stack
### Core Technologies
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TECH STACK β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β LANGUAGE & RUNTIME β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β Python β β Asyncio β β Typing β β
β β 3.10+ β β (async) β β (hints) β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β
β LLM BACKENDS β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β Ollama β β llama.cpp β β BitNet β β Cascade β β
β β (default) β β (GGUF) β β (1-bit) β β (hybrid) β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β
β VECTOR & SEARCH β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β FAISS β β ChromaDB β β BM25 β β Sentence β β
β β (vectors) β β (metadata) β β (keywords) β βTransformers β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β
β AGENT FRAMEWORK β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β LangGraph β β Pydantic β β Custom β β
β β (inspired) β β (models) β β (routing) β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β
β EVOLUTION & OPTIMIZATION β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β DEAP β β NSGA-II β β PEFT β β
β β (inspired) β β(multi-obj) β β (LoRA) β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β
β INTEGRATION β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β MCP β β Streamlit β β NetworkX β β
β β (protocol) β β (UI) β β (graphs) β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### Technology Justification
| Component | Technology | Why This Choice |
|-----------|------------|-----------------|
| **Primary LLM** | Ollama | Easiest setup, pull-and-run simplicity, good model library |
| **High-Perf LLM** | llama.cpp | Maximum control, custom quantization, GPU offloading |
| **CPU-Optimized** | BitNet | 5-7x speedup, native 1-bit, 70-82% energy reduction |
| **Vector Store** | FAISS | Billion-scale, GPU-accelerated, battle-tested |
| **Embeddings** | Sentence Transformers | Local, free, high quality, fast |
| **Graph Store** | NetworkX | Lightweight, in-memory, good algorithms |
| **Evolution** | Custom DEAP-style | Full control over fitness functions and selection |
| **Protocol** | MCP | Native Claude Code integration, official Anthropic support |
| **UI** | Streamlit | Rapid development, good visualizations, Python-native |
### Model Recommendations
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β RECOMMENDED MODELS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β PRIMARY (General Use) β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β DeepSeek-R1-Distill-Qwen-1.5B β β
β β βββ Size: ~1.2GB (Q4_K_M) β β
β β βββ VRAM: ~2GB β β
β β βββ Strengths: Best reasoning at this size, o1-style thinking β β
β β βββ License: MIT β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β SPEED-OPTIMIZED β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β BitNet b1.58-2B-4T β β
β β βββ Size: ~1GB β β
β β βββ VRAM: CPU-only (native 1-bit) β β
β β βββ Strengths: 5-7x faster inference, 70-82% energy reduction β β
β β βββ License: MIT β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β ULTRA-LIGHTWEIGHT β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Qwen3-0.6B β β
β β βββ Size: ~400MB β β
β β βββ VRAM: ~1GB β β
β β βββ Strengths: 100+ languages, very fast β β
β β βββ License: Apache 2.0 β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β QUALITY-OPTIMIZED β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Phi-3-mini β β
β β βββ Size: ~2.4GB (Q4_K_M) β β
β β βββ VRAM: ~3GB β β
β β βββ Strengths: GPT-3.5 class reasoning, excellent for code β β
β β βββ License: MIT β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## Core Components
### 1. Memory System
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β MEMORY ARCHITECTURE β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β WORKING MEMORY β β
β β (In-Context Window) β β
β β βββββββββββ βββββββββββ βββββββββββ βββββββββββ βββββββββββ β β
β β β Slot 1 β β Slot 2 β β Slot 3 β β ... β β Slot N β β β
β β β (Task) β β (Code) β β(Scratch)β β β β (Ref) β β β
β β βββββββββββ βββββββββββ βββββββββββ βββββββββββ βββββββββββ β β
β β ~8,000 tokens β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β β Page In/Out β
β βΌ β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β VIRTUAL CONTEXT MANAGER β β
β β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β β
β β β HOT TIER β β WARM TIER β β COLD TIER β β β
β β β (100 pages) β β (500 pages) β β (unlimited) β β β
β β β Memory Mapped β β In Memory β β On Disk β β β
β β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β β
β β Importance-Weighted Eviction β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βββββββββββββββββββββββββββΌββββββββββββββββββββββββββ β
β β β β β
β βΌ βΌ βΌ β
β βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ β
β β ARCHIVAL β β RECALL β β KNOWLEDGE β β
β β MEMORY β β MEMORY β β GRAPH β β
β β β β β β β β
β β FAISS Index β β Conversation β β NetworkX β β
β β + Metadata β β History β β Entities β β
β β + BM25 β β + Topics β β + Relations β β
β β β β + Threads β β + Propertiesβ β
β β 100K+ entries β β 1000 turns β β Unlimited β β
β βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ β
β β β β β
β βββββββββββββββββββββββββββΌββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β MEMORY DREAMING β β
β β (Background Consolidation During Idle) β β
β β βββββββββββββ βββββββββββββ βββββββββββββ βββββββββββββ β β
β β β Clusteringββββ Pattern ββββ Insight ββββ Forgettingβ β β
β β β (k-means) β β Discovery β βGeneration β β(low-value)β β β
β β βββββββββββββ βββββββββββββ βββββββββββββ βββββββββββββ β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### 2. Agent Swarm
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AGENT SWARM ARCHITECTURE β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββββββ β
β β SWARM ORCHESTRATOR β β
β β β β
β β β’ Task Router β β
β β β’ Agent Registry β β
β β β’ Handoff Manager β β
β β β’ State Manager β β
β ββββββββββββ¬βββββββββββ β
β β β
β ββββββββββββ¬βββββββββββ¬ββββ΄ββββ¬βββββββββββ¬βββββββββββ β
β β β β β β β β
β βΌ βΌ βΌ βΌ βΌ βΌ β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β CODE ββ REASONING ββ RESEARCH ββ CREATIVE ββ USER β β
β β AGENT ββ AGENT ββ AGENT ββ AGENT ββ AVATAR β β
β β ββ ββ ββ ββ β β
β β β’ Generateββ β’ Analyze ββ β’ Search ββ β’ Write ββ β’ Prefer- β β
β β β’ Debug ββ β’ Reason ββ β’ Synth- ββ β’ Brain- ββ ences β β
β β β’ Review ββ β’ Math ββ esize ββ storm ββ β’ Style β β
β β β’ Refactorββ β’ Logic ββ β’ Compare ββ β’ Ideate ββ β’ History β β
β β ββ ββ ββ ββ β β
β β Temp: 0.3 ββ Temp: 0.1 ββ Temp: 0.5 ββ Temp: 0.8 ββ ML Model β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β β β β β β
β ββββββββββββ΄βββββββββββ΄ββββ¬ββββ΄βββββββββββ΄βββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββ β
β β META-COGNITION β β
β β β β
β β β’ Self-Reflection β β
β β β’ Gap Detection β β
β β β’ Improvement β β
β β Proposals β β
β βββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### Agent Communication Protocol
```
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AGENT HANDOFF PROTOCOL β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β 1. TASK RECEIPT β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β User Request βββΊ Orchestrator βββΊ Route to Best Agent β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β 2. EXECUTION β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Agent executes with: β β
β β β’ Specialized prompt β β
β β β’ Appropriate temperature β β
β β β’ Access to memory context β β
β β β’ Tool access if needed β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β 3. CONFIDENCE CHECK β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β If confidence < threshold: β β
β β β’ Request handoff to another agent β β
β β β’ Or escalate to more capable model β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β 4. HANDOFF (if needed) β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Handoff Message Format: β β
β β { β β
β β "from_agent": "research", β β
β β "to_agent": "code", β β
β β "context": { ... research results ... }, β β
β β "task": "Implement based on research", β β
β β "confidence": 0.85 β β
β β } β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β 5. RESULT AGGREGATION β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Orchestrator combines results: β β
β β β’ Merges multi-agent outputs β β
β β β’ Applies confidence weighting β β
β β β’ Formats for user β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### 3. Evolution Engine
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β EVOLUTION ENGINE β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β FITNESS TRACKER β β
β β β β
β β Metrics Collected: β β
β β ββββββββββββββββββ¬βββββββββββββββββ¬βββββββββββββββββ β β
β β β task_success β efficiency β user_sat β β β
β β β (30%) β (20%) β (30%) β β β
β β ββββββββββββββββββ΄βββββββββββββββββ΄βββββββββββββββββ β β
β β ββββββββββββββββββ¬βββββββββββββββββ β β
β β βresponse_qualityβ memory_utility β β β
β β β (10%) β (10%) β β β
β β ββββββββββββββββββ΄βββββββββββββββββ β β
β β β β
β β Combined Fitness = Ξ£(metric_i Γ weight_i) β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β GENETIC OPTIMIZER (NSGA-II) β β
β β β β
β β βββββββββββ βββββββββββ βββββββββββ βββββββββββ β β
β β β Initial βββββΊβSelectionβββββΊβCrossoverβββββΊβ Mutationβ β β
β β β Pop β β(tourney)β β(uniform)β β(gaussian)β β β
β β βββββββββββ βββββββββββ βββββββββββ βββββββββββ β β
β β β β β β
β β β βββββββββββββββ β β β
β β ββββββββββββββββ Evaluate ββββββββββββββββββ β β
β β β Fitness β β β
β β ββββββββ¬βββββββ β β
β β β β β
β β βΌ β β
β β βββββββββββββββ β β
β β β Next Gen ββββΊ Repeat until converge β β
β β βββββββββββββββ β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β BEHAVIOR MUTATION β β
β β β β
β β Genome Encoding: β β
β β { β β
β β "behavior_params": { β β
β β "temperature": 0.72, β β
β β "verbosity": 0.65, β β
β β "code_preference": 0.80, β β
β β "explanation_depth": 0.70 β β
β β }, β β
β β "team_config": { β β
β β "code_weight": 0.35, β β
β β "reasoning_weight": 0.30, β β
β β "research_weight": 0.20, β β
β β "creative_weight": 0.15 β β
β β } β β
β β } β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## Data Flow Diagrams
### User Query Flow
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β USER QUERY FLOW β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β USER β
β β β
β β "Remember that I prefer Python" β
β βΌ β
β βββββββββββββββββ β
β β Claude Code β β
β βββββββββ¬ββββββββ β
β β β
β β MCP Tool Call: farnsworth_remember β
β βΌ β
β βββββββββββββββββ βββββββββββββββββ β
β β MCP Server ββββββββββΊβ Memory System β β
β βββββββββββββββββ βββββββββ¬ββββββββ β
β β β
β βββββββββββββββββββββββββββΌββββββββββββββββββββββββββ β
β β β β β
β βΌ βΌ βΌ β
β βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ β
β β Generate β β Store in β β Update β β
β β Embedding β β Archival β β Knowledge β β
β β β β Memory β β Graph β β
β βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ β
β β β β β
β βββββββββββββββββββββββββββΌββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββ β
β β Return Success β β
β β memory_id: xxx β β
β βββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββ β
β β Claude responds: β β
β β "I'll remember β β
β β that preference" β β
β βββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### Cascade Inference Flow
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CASCADE INFERENCE FLOW β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β INPUT PROMPT β
β β β
β βΌ β
β βββββββββββββββββββ β
β β Task Complexityβ β
β β Estimator β β
β ββββββββββ¬βββββββββ β
β β β
β βββββββββ΄ββββββββ β
β β β β
β βΌ βΌ β
β ββββββββ ββββββββ β
β βSimpleβ βComplexβ β
β ββββ¬ββββ ββββ¬ββββ β
β β β β
β βΌ βΌ β
β βββββββββββββββ βββββββββββββββ β
β β Fast Model β β Smart Model β β
β β (BitNet/ β β (DeepSeek β β
β β Qwen 0.6B)β β -R1 1.5B) β β
β ββββββββ¬βββββββ ββββββββ¬βββββββ β
β β β β
β βΌ β β
β βββββββββββββββ β β
β β Confidence β β β
β β Check β β β
β ββββββββ¬βββββββ β β
β β β β
β ββββββββ΄βββββββ β β
β β β β β
β βΌ βΌ β β
β High Low β β
β Conf Conf β β
β β β β β
β β βΌ β β
β β βββββββββββββββ΄ββββββββββββββ β
β β β ESCALATE β β
β β β to More Capable Model β β
β β βββββββββββββββββββββββββββββ β
β β β β
β β βΌ β
β β βββββββββββββββ β
β β β Re-run β β
β β β with β β
β β β Phi-3 Mini β β
β β ββββββββ¬βββββββ β
β β β β
β ββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββββββββΊRESPONSE β
β β β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## Current Capabilities
### What's Possible Today (v0.1.0)
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CURRENT CAPABILITIES β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β MEMORY β
β βββ β
Store unlimited memories with semantic search β
β βββ β
Recall relevant context automatically β
β βββ β
Knowledge graph of entities and relationships β
β βββ β
Memory consolidation during idle (dreaming) β
β βββ β
Working memory with typed slots β
β βββ β
Topic-based conversation threading β
β β
β AGENTS β
β βββ β
4 specialist agents (Code, Reasoning, Research, Creative) β
β βββ β
Automatic task routing based on content β
β βββ β
Agent handoff for multi-step tasks β
β βββ β
Parallel agent execution β
β βββ β
User preference modeling β
β βββ β
Self-reflection and improvement proposals β
β β
β EVOLUTION β
β βββ β
Multi-objective fitness tracking β
β βββ β
NSGA-II genetic optimization β
β βββ β
Behavior parameter evolution β
β βββ β
Hash-chain evolution logging (tamper-proof) β
β βββ β
Improvement suggestions generation β
β β
β INFERENCE β
β βββ β
Multi-backend support (Ollama, llama.cpp, BitNet) β
β βββ β
Cascade inference with escalation β
β βββ β
Speculative decoding support β
β βββ β
Confidence-based routing β
β βββ β
Dynamic temperature adjustment β
β β
β RETRIEVAL β
β βββ β
Hybrid semantic + keyword search β
β βββ β
Reciprocal Rank Fusion β
β βββ β
Self-refining retrieval strategies β
β βββ β
Document processing pipeline β
β β
β INTEGRATION β
β βββ β
Claude Code MCP integration β
β βββ β
Streamlit dashboard β
β βββ β
CLI interface β
β βββ β
Basic multimodal (images, audio, documents) β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## Future Potential
### Where This Technology Can Go
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β FUTURE POTENTIAL β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β NEAR-TERM (2025) β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β β
β β β’ Image Understanding - See and understand visual content β β
β β β’ Voice Interaction - Speak to your AI companion β β
β β β’ Web Browsing Agent - Research the internet autonomously β β
β β β’ Proactive Suggestions - AI anticipates what you need β β
β β β’ Team Collaboration - Share memories across users β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β MID-TERM (2025-2026) β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β β
β β β’ Agentic Workflows - Complex multi-step automation β β
β β β’ Continual Learning - Learn without forgetting β β
β β β’ Federated Learning - Learn from many users, preserve privacy β β
β β β’ Enterprise Features - Security, audit, compliance β β
β β β’ Plugin Ecosystem - Community-built extensions β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β LONG-TERM (2026+) β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β β
β β β’ AGI-Adjacent Capabilities β β
β β βββ Causal reasoning about the world β β
β β βββ Theory of mind (understand user mental states) β β
β β βββ Creative problem-solving across domains β β
β β βββ Self-directed learning and goal-setting β β
β β β β
β β β’ System-Level Integration β β
β β βββ OS-level context awareness β β
β β βββ Universal tool interface β β
β β βββ Cross-application memory β β
β β βββ Ambient computing integration β β
β β β β
β β β’ Distributed Intelligence β β
β β βββ Agent networks across devices β β
β β βββ Collective knowledge graphs β β
β β βββ Emergent swarm behaviors β β
β β βββ Decentralized evolution β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β THEORETICAL CEILING β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β β
β β Given unlimited resources and time, Farnsworth's architecture β β
β β could theoretically support: β β
β β β β
β β β’ Unbounded memory with perfect recall β β
β β β’ Arbitrary specialist agents for any domain β β
β β β’ Continuous self-improvement toward user goals β β
β β β’ Multi-modal understanding (text, vision, audio, physical world) β β
β β β’ Collaborative intelligence with other Farnsworth instances β β
β β β β
β β The limiting factor is not architecture, but: β β
β β β’ Available compute resources β β
β β β’ Quality of base models β β
β β β’ Training data availability β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## Performance Specifications
### Benchmarks
| Operation | Target | Actual (v0.1.0) |
|-----------|--------|-----------------|
| Memory Store | <50ms | ~35ms |
| Memory Recall (1K entries) | <100ms | ~80ms |
| Memory Recall (100K entries) | <500ms | ~350ms |
| Embedding Generation | <50ms | ~40ms |
| Agent Handoff | <100ms | ~75ms |
| Knowledge Graph Query | <200ms | ~150ms |
| Evolution Generation | <5s | ~4s |
### Resource Usage
| Resource | Minimum | Recommended | Heavy Use |
|----------|---------|-------------|-----------|
| RAM | 8GB | 16GB | 32GB |
| CPU | 4 cores | 8 cores | 16 cores |
| GPU VRAM | - | 4GB | 8GB+ |
| Disk | 10GB | 50GB | 200GB |
### Scalability Limits
| Component | Limit | Notes |
|-----------|-------|-------|
| Archival Memories | 1M+ | Tested to 100K |
| Knowledge Entities | 100K+ | NetworkX handles well |
| Concurrent Agents | 10 | Limited by LLM throughput |
| Evolution Population | 1000 | Memory-bound |
---
## Security Considerations
### Data Protection
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SECURITY ARCHITECTURE β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β LOCAL-ONLY PROCESSING β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β’ All data stays on your machine β β
β β β’ No cloud APIs for core functionality β β
β β β’ No telemetry or data collection β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β DATA STORAGE β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β’ Memories stored in local files (data/ directory) β β
β β β’ Optional encryption at rest (future) β β
β β β’ User-controlled data directory β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β ACCESS CONTROL β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β’ MCP server runs locally (localhost only) β β
β β β’ No network exposure by default β β
β β β’ File system permissions apply β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## Appendix: File Reference
| File | Purpose | Key Classes/Functions |
|------|---------|----------------------|
| `farnsworth/core/llm_backend.py` | LLM abstraction | `OllamaBackend`, `CascadeBackend` |
| `farnsworth/memory/memory_system.py` | Memory coordinator | `MemorySystem` |
| `farnsworth/memory/archival_memory.py` | Long-term storage | `ArchivalMemory` |
| `farnsworth/memory/knowledge_graph.py` | Entity relationships | `KnowledgeGraph` |
| `farnsworth/agents/swarm_orchestrator.py` | Agent management | `SwarmOrchestrator` |
| `farnsworth/evolution/genetic_optimizer.py` | NSGA-II optimization | `GeneticOptimizer` |
| `farnsworth/mcp_server/server.py` | Claude integration | `FarnsworthMCPServer` |
---
*Technical Specification v0.1.0 - January 2025*