P2P distributed agent framework with LLM code generation and event-sourced state management
Project description
JarvisCore Framework
P2P distributed agent framework with LLM code generation and production-grade state management
Features
- ✅ Simple Agent Definition - Write just 3 attributes, framework handles everything
- ✅ P2P Mesh Architecture - Automatic agent discovery and task routing via SWIM protocol
- ✅ Event-Sourced State - Complete audit trail with crash recovery
- ✅ Autonomous Execution - LLM code generation with automatic repair
Installation
pip install jarviscore
Setup & Validation
1. Configure LLM Provider
Copy the example config and add your API key:
cp .env.example .env
# Edit .env and add one of: CLAUDE_API_KEY, AZURE_API_KEY, GEMINI_API_KEY, or LLM_ENDPOINT
2. Validate Installation
# Check setup
python -m jarviscore.cli.check
# Test LLM connectivity
python -m jarviscore.cli.check --validate-llm
# Run smoke test (end-to-end validation)
python -m jarviscore.cli.smoketest
✅ All checks pass? You're ready to build agents!
Quick Start
from jarviscore import Mesh
from jarviscore.profiles import PromptDevAgent
# Define agent (3 lines)
class ScraperAgent(PromptDevAgent):
role = "scraper"
capabilities = ["web_scraping"]
system_prompt = "You are an expert web scraper..."
# Create mesh and run workflow
mesh = Mesh(mode="autonomous")
mesh.add(ScraperAgent)
await mesh.start()
results = await mesh.workflow(
workflow_id="wf-123",
steps=[
{"id": "scrape", "task": "Scrape example.com", "role": "scraper"}
]
)
Architecture
JarvisCore is built on three layers:
- Execution Layer (20%) - Profile-specific execution (Prompt-Dev, MCP)
- Orchestration Layer (60%) - Workflow engine, dependencies, state management
- P2P Layer (20%) - Agent discovery, task routing, mesh coordination
Documentation
- User Guide - Complete guide for AutoAgent users
- API Reference - Detailed API documentation
- Configuration Guide - Settings and environment variables
- Troubleshooting - Common issues and solutions
- Examples - Working code examples
Development Status
Version: 0.1.0 (Alpha) Day 1: Core framework foundation ✅
License
MIT License - see LICENSE file for details
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jarviscore_framework-0.1.0.tar.gz.
File metadata
- Download URL: jarviscore_framework-0.1.0.tar.gz
- Upload date:
- Size: 102.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b72566e3669a92fb7f1ff381748e2106fe7d6f482d5e914ea7363f92b6841585
|
|
| MD5 |
33263bcca6fa21bb08a94c26321daaa5
|
|
| BLAKE2b-256 |
07247579b46ef3c471e43acf62f35f0f134fecef14910e5d9a074658c0d3f8ea
|
File details
Details for the file jarviscore_framework-0.1.0-py3-none-any.whl.
File metadata
- Download URL: jarviscore_framework-0.1.0-py3-none-any.whl
- Upload date:
- Size: 121.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53d895c7d57479181da4f6863255101f652cc644bb3d4e43244745126ceb95c5
|
|
| MD5 |
10b8edce1df8c8222f2afa8f9fc7c8f4
|
|
| BLAKE2b-256 |
3de8f6958b7e55f153b7683c09b35115bf48871e911262b9e96fc2095371bc43
|