A2A protocol enables agent communication. AXME adds durable lifecycle, retries, timeouts, and human checkpoints.
a2a-with-durable-lifecycle is an early-stage Python project in the AI payments / x402 ecosystem, focused on a2a, agent-orchestration, agent-to-agent, durable-execution. It currently has 1 GitHub stars and 0 forks, and sits alongside related tools like beam-protocol, openclaw-a2a-bridge, ampersend-sdk, agoragentic-integrations, strands-a2a-demo, kudosflow.
A2A protocol enables agent communication. AXME adds what's missing - durable lifecycle, retries, timeouts, and human checkpoints.
A2A defines how agents talk to each other. But talking is not enough. When Agent B crashes mid-task, who retries? When Agent B needs a human decision, who manages the wait? A2A is a communication protocol - it handles the message. AXME is a lifecycle protocol - it handles everything after the message arrives.
Alpha - Built with AXME (AXP Intent Protocol). cloud.axme.ai - [email protected]
A2A handles communication between agents. But communication alone is not lifecycle management:
Every team ends up building the same retry/timeout/approval infrastructure on top of A2A. That infrastructure is what AXME provides.
# Dispatcher sends task to executor via HTTP
import httpx, time
max_retries = 3
for attempt in range(max_retries):
try:
resp = httpx.post("https://executor-agent/tasks", json={
"task_id": "TASK-2026-0042",
"task_type": "data_enrichment",
"input_data": {"records": 5000, "enrichment": "geo_lookup"},
})
resp.raise_for_status()
break
except httpx.HTTPError:
if attempt == max_retries - 1:
raise
time.sleep(2 ** attempt)
# Poll for result (no lifecycle tracking)
while True:
status = httpx.get(f"https://executor-agent/tasks/TASK-2026-0042").json()
if status["state"] in ("completed", "failed"):
break
time.sleep(5) # How long? Forever?
intent_id = client.send_intent({
"intent_type": "intent.a2a.task_execution.v1",
"to_agent": "agent://myorg/production/a2a-executor",
"payload": {"task_id": "TASK-2026-0042", "task_type": "data_enrichment"},
})
result = client.wait_for(intent_id)
AXME handles retries (3 attempts), timeouts (120s deadline), delivery confirmation, and lifecycle tracking. If the executor crashes, AXME retries. If it times out, the dispatcher knows.
pip install axme
export AXME_API_KEY="your-key" # Get one: axme login
from axme import AxmeClient, AxmeClientConfig
import os
client = AxmeClient(AxmeClientConfig(api_key=os.environ["AXME_API_KEY"]))
intent_id = client.send_intent({
"intent_type": "intent.a2a.task_execution.v1",
"to_agent": "agent://myorg/production/a2a-executor",
"payload": {
"task_id": "TASK-2026-0042",
"task_type": "data_enrichment",
"source_agent": "dispatcher-agent",
"input_data": {"records": 5000, "enrichment": "geo_lookup"},
"priority": "normal",
},
})
print(f"Dispatched: {intent_id}")
result = client.wait_for(intent_id)
print(f"Done: {result['status']}")
npm install @axme/axme
import { AxmeClient } from "@axme/axme";
const client = new AxmeClient({ apiKey: process.env.AXME_API_KEY! });
const intentId = await client.sendIntent({
intentType: "intent.a2a.task_execution.v1",
toAgent: "agent://myorg/production/a2a-executor",
payload: {
taskId: "TASK-2026-0042",
taskType: "data_enrichment",
sourceAgent: "dispatcher-agent",
inputData: { records: 5000, enrichment: "geo_lookup" },
priority: "normal",
},
});
console.log(`Dispatched: ${intentId}`);
const result = await client.waitFor(intentId);
console.log(`Done: ${result.status}`);
| Language | Directory | Install |
|---|---|---|
| Python | python/ |
pip install axme |
| TypeScript | typescript/ |
npm install @axme/axme |
+-----------+ send_intent() +----------------+ deliver +-----------+
| | ---------------> | | ----------> | |
| Dispatcher| | AXME Cloud | | Executor |
| (agent) | <- wait_for() -- | (platform) | <- result | (agent) |
| | | | | |
| | | - 3 retries | +-----------+
| | | - 120s timeout|
| | <- COMPLETED --- | - lifecycle |
| | | - audit trail |
+-----------+ +----------------+
# Install CLI (one-time)
curl -fsSL https://raw.githubusercontent.com/AxmeAI/axme-cli/main/install.sh | sh
# Open a new terminal, or run the "source" command shown by the installer
# Log in
axme login
# Install Python SDK
pip install axme
axme scenarios apply scenario.json
# Note the intent_id in the output
Get the agent key after scenario apply:
# macOS
cat ~/Library/Application\ Support/axme/scenario-agents.json | grep -A2 a2a-executor-demo
# Linux
cat ~/.config/axme/scenario-agents.json | grep -A2 a2a-executor-demo
Run in your language of choice:
# Python
AXME_API_KEY=<agent-key> python agent.py
# TypeScript (requires Node 20+)
cd typescript && npm install
AXME_API_KEY=<agent-key> npx tsx agent.ts
axme intents get <intent_id>
# lifecycle_status: COMPLETED
Built with AXME (AXP Intent Protocol).
SMTP for AI agents. The open communication protocol for agent-to-agent communication. 🌊
Cross-device Agent-to-Agent communication bridge for OpenClaw, powered by Google A2A Protocol
Tooling for building applications with x402 payment capabilities. Supports buyer and seller roles.
Public adapters and discovery catalog for Triptych OS (Agent OS): agent frameworks, MCP/A2A/x402 protocols, workflows, wallets, SDKs, and examples for execute-first routing, governed handoffs, and receipt-aware agent commerce.
Demo with multiple AI agents using A2A (agent-to-agent) with the Strands Agents SDK.
Visual workflow editor for building node-based AI agent workflows with drag-and-drop interface, A2A integration, and real-time execution
A local-first AI agent with persistent memory, emotional intelligence, and a peer-to-peer skills economy.
The trust layer for agent-to-agent commerce — natural-language mandates, ERC-7710 delegated permissions, x402 payments, escrow, and dispute resolution as one open, catch-all Agent Skill / Claude Code plugin.
Agent behavior that compiles
The A2A x402 Extension brings cryptocurrency payments to the Agent-to-Agent (A2A) protocol, enabling agents to monetize their services through on-chain payments. This extension revives the spirit of HTTP 402 "Payment Required" for the decentralized agent ecosystem.
Aser is a lightweight, self-assembling AI Agent frame.
Golang SDK for A2A Protocol