ISEK Distributed Multi-Agent Framework
Project description
ISEK: Decentralized Agent-to-Agent (A2A) Network
English | ไธญๆ
ISEK is a decentralized agent network framework for building intelligent, collaborative agent-to-agent (A2A) systems. The Isek network integrates the Google A2A protocol and ERC-8004 contracts to enable identity registration, reputation building, and cooperative task-solving. Together, these elements form a self-organizing, decentralized society of agents.
๐งช ISEK is under active development. Contributions, feedback, and experiments are highly welcome.
What problem ISEK solve?
Our platform allows agent developers to run their agents locally. Through peer-to-peer connections, these agents join the ISEK network and can deliver services directly to users. While most frameworks treat agents as isolated agent executors, ISEK focuses on the missing layer: decentralized agent collaboration and coordination. We believe the future of intelligent systems lies in self-organizing agent networks capable of context sharing, team formation, and collective reasoning โ all without central control.
ISEK is not just about running agents โ it's about empowering them to find each other, reason together, and act as a decentralized system.
Why ERC-8004 matters?
ERC-8004 provides a decentralized framework for identity, reputation, and validation registries, establishing the foundation for trustless verification and reputation management.
๐ Features
-
**๐ง Decentralized Cooperation Using the ERC-8004 trustless Agent Contract as our registry, we provide decentralized identity, reputation, and validation services. Agents can discover peers and collaborate directly โ with no single point of failure.
-
**๐ Distributed Deployment Agent owners can run their agents 100% locally, mint an Agent NFT, and use an agent wallet to claim full ownership and control.
-
**๐ MCP-Based Agent Discovery Our map server connects to the agent discovery service, making it easy for users to find agents. Configure the MCP service once, and you can access agents directly through your favorite AI chatbot.
-
**๐ป Developer-Friendly CLI A streamlined CLI makes agent setup, deployment, and management fast and hassle-free.
๐ Quick Start
python3 -m venv isek_env && source isek_env/bin/activate
Installation
pip install isek
isek setup
Prerequisites
- Python 3.10+
- Node.js 18+ (for P2P functionality)
๐ก Tip: The
isek setupcommand automatically handles both Python and JavaScript dependencies.
Set Up Environment
Create a .env file:
OPENAI_MODEL_NAME=gpt-4o-mini
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_API_KEY=your_api_key
Wallet & Identity
ISEK now uses a simple local wallet manager and an ERC-8004 identity flow.
- Wallets are stored in
isek/web3/wallet.{NETWORK}.jsonby default. - ABI path is relative by default:
isek/web3/abi/IdentityRegistry.json. - Registration requires your agent card to provide a domain (we treat
urlasdomain).
Add these keys to your .env (adjust for your network):
# Network and chain
NETWORK=base-sepolia
ISEK_RPC_URL=https://sepolia.base.org
ISEK_CHAIN_ID=84532
# Identity contract
ISEK_IDENTITY_REGISTRY_ADDRESS=0xYourRegistryAddress
ISEK_IDENTITY_ABI_PATH=isek/web3/abi/IdentityRegistry.json
# Optional
ISEK_NETWORK_NAME=ISEK test network
ISEK_MAX_PRIORITY_FEE_GWEI=1
ISEK_EXPLORER_TX_URL_TEMPLATE=https://sepolia.basescan.org/tx/{tx_hash}
# Override wallet file location if needed
# ISEK_WALLET_DATA_FILE=isek/web3/wallet.base-sepolia.json
Register or resolve your agent identity:
from isek.web3.isek_identiey import ensure_identity
# Any object with .name and .domain (or .url) works
agent_card = type("Card", (), {"name": "My Agent", "domain": "http://agent.isek.xyz"})()
address, agent_id, tx_hash = ensure_identity(agent_card)
print("wallet:", address, "agent_id:", agent_id, "tx:", tx_hash)
Notes:
- If the registry address or ABI are not set, the function returns your wallet address and skips on-chain registration.
- If the agent is already registered, it returns the existing
agent_idwithout sending a transaction.
Launch Agent
from isek.agent.isek_agent import IsekAgent
from isek.models.openai import OpenAIModel
import dotenv
dotenv.load_dotenv()
agent = IsekAgent(
name="My Agent",
model=OpenAIModel(model_id="gpt-4o-mini"),
description="A helpful assistant",
instructions=["Be polite", "Provide accurate information"],
success_criteria="User gets a helpful response"
)
response = agent.run("hello")
Try Examples
In the examples folder, follow the examples from level 1 to level 10, and you should have a good understanding of ISEK
๐งช CLI Commands
isek setup # Install Python and JavaScript dependencies
isek clean # Clean temporary files
isek --help # View available commands
๐งฑ Project Structure
isek/
โโโ examples # Sample scripts demonstrating Isek usage
โโโ isek # Core functionality and modules
โ โโโ agent # Agent logic and behavior
โ โโโ node # Node orchestration
โ โโโ protocol # Inter-Agent communication Protocol Layer
โ โโโ memory # Agent state and context
โ โโโ models # LLM backends and interfaces
โ โโโ team # Multi-Agent Organization Interface
โ โโโ tools # The toolkit library for Agents
โ โโโ utils # Utility functions
โ โโโ cli.py # CLI entry point
โ โโโ isek_center.py # Local registry and coordinator
โโโ docs/ # Documentation
โโโ README.md # Project overview and documentation
๐ Star Us ๐
๐ค Contributing
We welcome collaborators, researchers, and early adopters!
- ๐ฌ Open issues or suggestions via GitHub Issues
- ๐ง Contact us directly: team@isek.xyz
- ๐ See our Contribution Guidelines
๐ License
Licensed under the MIT License.
โ ๏ธ Legal Notice
ISEK is an open-source, permissionless framework for building decentralized agent coordination systems.
The contributors do not operate, control, or monitor any deployed agents or their behavior.
By using this project, you accept full responsibility for your actions. See LEGAL.md for more details.
Made with โค๏ธ by the Isek Team
Autonomy is not isolation. It's cooperation, at scale.
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 isek-0.3.0.tar.gz.
File metadata
- Download URL: isek-0.3.0.tar.gz
- Upload date:
- Size: 6.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5bd56fa2e910441eee79a4e80f42974f2afa55ea1e21d0fea769daf071d0eade
|
|
| MD5 |
5437ca7f27fe782e9e6596ba75f6debd
|
|
| BLAKE2b-256 |
dbe2145458c48f242a633929662e824d55b5ae89688556970ba95826602f5bde
|
File details
Details for the file isek-0.3.0-py3-none-any.whl.
File metadata
- Download URL: isek-0.3.0-py3-none-any.whl
- Upload date:
- Size: 185.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ba264177d696023ac9015ca02d5129b3941b9cc9381879f5d1c67bfa2d523df
|
|
| MD5 |
da665e1eae44cc4320c2dbd0768c93ec
|
|
| BLAKE2b-256 |
9d7b5a94481d3b6d25e304c66cc2c7f558fff448a82c784fb3f5b228d097e5c7
|