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
- User Guide - Complete 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.1
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.1.tar.gz
(214.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.1.tar.gz.
File metadata
- Download URL: jarviscore_framework-0.2.1.tar.gz
- Upload date:
- Size: 214.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 |
ed69ad21f578bf3dddf251a1e808d291a8c27cce1d7151ef8d69651d300ddbca
|
|
| MD5 |
d1627a2778a70ba58c6d8edc203a7e3b
|
|
| BLAKE2b-256 |
62a22cbaf0cc0a10c930f9d11dcfa8ba1aaec3ceaa824740a1a3b2df0033f6f3
|
File details
Details for the file jarviscore_framework-0.2.1-py3-none-any.whl.
File metadata
- Download URL: jarviscore_framework-0.2.1-py3-none-any.whl
- Upload date:
- Size: 278.4 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 |
19a27bfc8408bacde946f098f756269882a9defb366416d9ddbb4baf2b671baf
|
|
| MD5 |
c374f3c0c6fca77e37015c1b8f987c74
|
|
| BLAKE2b-256 |
f4082d3ca7ba4850b3f3e245f394e52947b6cc6c27770a65517631a0d49f972d
|