Build autonomous AI agents in 3 lines of code. Production-ready orchestration with P2P mesh networking.
Project description
JarvisCore Framework
Build autonomous AI agents with P2P mesh networking.
Features
- ✅ AutoAgent - LLM generates and executes code from natural language
- ✅ CustomAgent - Bring your own logic (LangChain, CrewAI, etc.)
- ✅ P2P Mesh - Agent discovery and communication via SWIM protocol
- ✅ Workflow Orchestration - Dependencies, context passing, multi-step pipelines
Installation
pip install jarviscore-framework
Setup
# Initialize project
python -m jarviscore.cli.scaffold --examples
cp .env.example .env
# Add your LLM API key to .env
# Validate
python -m jarviscore.cli.check --validate-llm
python -m jarviscore.cli.smoketest
Quick Start
AutoAgent (LLM-Powered)
from jarviscore import Mesh
from jarviscore.profiles import AutoAgent
class CalculatorAgent(AutoAgent):
role = "calculator"
capabilities = ["math"]
system_prompt = "You are a math expert. Store result in 'result'."
mesh = Mesh(mode="autonomous")
mesh.add(CalculatorAgent)
await mesh.start()
results = await mesh.workflow("calc", [
{"agent": "calculator", "task": "Calculate factorial of 10"}
])
print(results[0]["output"]) # 3628800
CustomAgent (Your Code)
from jarviscore import Mesh
from jarviscore.profiles import CustomAgent
class ProcessorAgent(CustomAgent):
role = "processor"
capabilities = ["processing"]
async def execute_task(self, task):
data = task.get("params", {}).get("data", [])
return {"status": "success", "output": [x * 2 for x in data]}
mesh = Mesh(mode="distributed", config={'bind_port': 7950})
mesh.add(ProcessorAgent)
await mesh.start()
results = await mesh.workflow("demo", [
{"agent": "processor", "task": "Process", "params": {"data": [1, 2, 3]}}
])
print(results[0]["output"]) # [2, 4, 6]
Execution Modes
| Mode | Profile | Use Case |
|---|---|---|
autonomous |
AutoAgent | Single machine, LLM code generation |
p2p |
CustomAgent | Agent-to-agent communication, swarms |
distributed |
CustomAgent | Multi-node workflows + P2P |
Documentation
- Getting Started - 5-minute quickstart
- AutoAgent Guide - LLM-powered agents
- CustomAgent Guide - Bring your own code
- API Reference - Detailed API docs
- Configuration - Settings reference
Version
0.2.0
License
MIT License
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
jarviscore_framework-0.2.0.tar.gz
(199.6 kB
view details)
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.2.0.tar.gz.
File metadata
- Download URL: jarviscore_framework-0.2.0.tar.gz
- Upload date:
- Size: 199.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
624c545b16b0544a1e6edc0883aaa46f7a06e45305c8af26a0759b5abff2b09b
|
|
| MD5 |
4833e0673f609898cc543f0a6d20e01e
|
|
| BLAKE2b-256 |
4885705ce11cccbee45ba8160daca198cf8d1132f520d08f269b9dd2408ab99d
|
File details
Details for the file jarviscore_framework-0.2.0-py3-none-any.whl.
File metadata
- Download URL: jarviscore_framework-0.2.0-py3-none-any.whl
- Upload date:
- Size: 264.6 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 |
f72b4f5bbb4b2a6dce8580f5a68eba81838a74ee9d1e4fe3721d184c0ccfcd23
|
|
| MD5 |
2f1571413e6fcf208b7f180b8777c20a
|
|
| BLAKE2b-256 |
28194c4b939b5bf91361169ad7994d6f05d37e69e94d6e9dc00341554e1d0262
|