Skip to main content

geepers-kernel

License: MIT Python 3.8+ PyPI

Core library for the geepers ecosystem. Unified interface to 10+ LLM providers, multi-agent orchestration patterns, 15+ structured data API clients, and MCP server infrastructure.

Documentation: dr.eamer.dev/geepers
Author: Luke Steuber


Install

pip install geepers-kernel

# With all provider dependencies
pip install geepers-kernel[all]

# Specific providers
pip install geepers-kernel[anthropic,xai,openai]

Or from source:

git clone https://github.com/lukeslp/geepers-kernel.git
cd geepers-kernel
pip install -e .[all]

Quick start

LLM providers

from llm_providers import ProviderFactory

provider = ProviderFactory.create_provider('xai', model='grok-3')
response = provider.complete(messages=[
    {'role': 'user', 'content': 'Explain quantum computing'}
])
print(response)

Multi-agent research (Dream Cascade)

from orchestration import DreamCascadeOrchestrator

orchestrator = DreamCascadeOrchestrator(
    provider_name='anthropic',
    model='claude-sonnet-4'
)

result = await orchestrator.execute(
    task="LLM safety research 2023-2025",
    enable_drummer=True,  # mid-level synthesis
    enable_camina=True    # executive summary
)

print(result.final_report)

Data fetching

from data_fetching import ClientFactory

arxiv = ClientFactory.create_client('arxiv')
papers = arxiv.search(query='quantum computing', max_results=10)

census = ClientFactory.create_client('census_acs')
data = census.get_demographics(geography='state:06')

LLM providers

Provider Chat Vision Image Gen
Anthropic (Claude) ✓ ✓ ,
OpenAI (GPT-4) ✓ ✓ ✓
xAI (Grok) ✓ ✓ ✓
Mistral ✓ ✓ ,
Cohere ✓ , ,
Google (Gemini) ✓ ✓ ,
Perplexity ✓ ✓ ,
Groq (Llama) ✓ , ,
HuggingFace ✓ ✓ ✓
DeepSeek ✓ , ,

Complexity router selects models automatically based on task requirements.


Orchestration patterns

Pattern What it does
dream-cascade Hierarchical: 8 parallel workers → Drummer synthesis → Camina executive summary
dream-swarm Parallel: 5+ domain-specific agents (Academic, News, Technical, Financial)
sequential Staged execution with per-step handlers
conditional Runtime branch selection
iterative Refinement loops with success predicates

Data sources (15+)

  • Academic: arXiv, Semantic Scholar, Open Library, Wikipedia
  • News: NewsAPI, YouTube
  • Code: GitHub repos, commits, users
  • Government: US Census ACS, SAIPE poverty estimates
  • Science: NASA (APOD, Mars photos, satellite imagery)
  • Weather: current conditions, forecasts, air quality
  • Finance: stock quotes, company fundamentals

MCP servers

Four MCP servers expose the library's capabilities via stdio/HTTP:

  • geepers-unified , orchestration (Dream Cascade, Dream Swarm)
  • geepers-providers , direct LLM provider access
  • geepers-data , data fetching tools
  • geepers-websearch , web search (Brave, SerpAPI)

See MCP Guide for configuration.


Package structure

geepers-kernel/
├── llm_providers/          # provider implementations + ProviderFactory
├── orchestration/          # Dream Cascade, Dream Swarm, Sequential, Conditional, Iterative
├── mcp/                    # MCP server implementations
├── data_fetching/          # structured API clients (dream_of_*)
├── document_generation/    # PDF, DOCX, Markdown output
├── config.py               # multi-source configuration
└── naming.py               # naming registry

Naming convention

Pattern Prefix Examples
Orchestration workflows dream-* dream-cascade, dream-swarm
Data tools dream_of_* dream_of_arxiv, dream_of_census_acs
Management tools geepers_* geepers_status, geepers_cancel

Configuration

# Core providers (at least one required)
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
XAI_API_KEY=xai-...

# Optional providers
MISTRAL_API_KEY=...
COHERE_API_KEY=...
GEMINI_API_KEY=...
PERPLEXITY_API_KEY=...
GROQ_API_KEY=...

# Data sources
YOUTUBE_API_KEY=...
GITHUB_TOKEN=ghp_...
NASA_API_KEY=...
NEWS_API_KEY=...

# Infrastructure
REDIS_HOST=localhost
REDIS_PORT=6379

Configuration precedence: defaults → .env → environment variables → CLI args


Testing

pytest
pytest --cov=. --cov-report=html
pytest tests/test_providers.py

License

MIT © Luke Steuber

Metadata

Release files for geepers-kernel 1.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geepers-kernel 1.4.2
File Size Uploaded
geepers_kernel-1.4.2.tar.gz 365.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for geepers-kernel 1.4.2
File Interpreter ABI Platform
geepers_kernel-1.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 788.0 kB

Release files / geepers_kernel-1.4.2.tar.gz

Download URL geepers_kernel-1.4.2.tar.gz
Size 365.4 kB
Tags Source
SHA-256 checksum
How to use checksums
8501375c3dab3f10b897a63d119d5a6b77c183de538f60c7178465995d89d5b4
BLAKE2b-256 checksum
How to use checksums
2105bcf836b750dcbf31be435ac70955ddeb77bce21272a8cecd7934b58da8b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release files / geepers_kernel-1.4.2-py3-none-any.whl

Download URL geepers_kernel-1.4.2-py3-none-any.whl
Size 422.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8a303bbccd161aec14e5a4df03d9addf472e53c67b15489eee6f3d12837519d1
BLAKE2b-256 checksum
How to use checksums
f7e784b731e117019dbc4cd2fd13fbf0a52f5d6e69f842f8c20f74c7b66bfe88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release history Release notifications | RSS feed

This release

1.4.2 This release

2 release files

1.4.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page