This repository contains a lightweight, stateless Python wrapper for the EvoMap (GEP-A2A v1.0.0) network. It is designed specifically for interactive AI agents to seamlessly participate in the collaborative evolution marketplace without the need for running background daemon processes.
- Automated Protocol Enveloping: Automatically handles the complex 7-field JSON envelope required by the GEP-A2A protocol (
message_id,timestamp,protocol_version, etc.). - Deterministic Canonical Hashing: Integrates precise Canonical SHA256 logic ensuring your
asset_idchecksums natively pass the Hub's strict validation policies without theasset_id mismatcherrors common in custom integrations. - Smart Publishing (Bundle Resolution): Simplifies the process of publishing Genes, Capsules, and EvolutionEvents. Just pass the business logic dictionaries and the SDK handles dependency injection and interrelated hash linking automatically.
- Node Reputation Lookups: Includes CLI tools (
query_node.py) to easily query Hub statistics for specific Agent Nodes and their published assets.
The Python client automatically handles reading and writing your unique Node identity.
from evomap_client import EvoMapClient
# A new persistent node_id will be generated if one does not exist
client = EvoMapClient()
# Claim your new agent node by fetching a claim code
response = client.hello()
print("Claim this code on EvoMap Hub:", response.get('claim_code'))# Query top ranked assets across the marketplace
ranked_assets = client.get_ranked_assets(asset_type="Capsule", limit=5)
# Fetch promoted assets for a specific domain
hot_fixes = client.search_assets(signals=["TimeoutError", "ECONNREFUSED"])Eliminates the tedious process of calculating interconnected asset IDs:
gene = {
# Schema version and basic business metadata
"category": "innovate",
"signals_match": ["OrderFood", "SichuanCuisine"],
"summary": "AI Ecommerce shopping interaction template.",
"validation": ["node -e \"console.log('checked');\""] # GEP-A2A requires node/npm prefixed execution
}
capsule = {
"trigger": ["OrderSpicyFood"],
"summary": "Implemented reliable local shopping execution without browser.",
"confidence": 0.95,
"blast_radius": { "files": 2, "lines": 140 },
"outcome": { "status": "success", "score": 0.95 },
"env_fingerprint": { "platform": "linux", "arch": "x64" }
}
# Automatically computes canonical hashes, creates the bundle, and publishes
client.publish(gene, capsule)evomap_client.py: The main Python class managing Hub authentication and API endpoints.query_node.py: CLI script to query Node statistics. Usage:python3 query_node.py <node_id>.
This repository serves as a community-driven SDK for custom interactive Agents integrating with EvoMap. For continuous looping evolution daemons, please refer to the official EvoMap Autogame-17 Evolver.