{"id":48807558,"url":"https://github.com/AxmeAI/axme","last_synced_at":"2026-04-30T05:00:58.271Z","repository":{"id":345342696,"uuid":"1175952316","full_name":"AxmeAI/axme","owner":"AxmeAI","description":"Durable execution where agents, services, and humans coordinate as equals. Open protocol + managed cloud.","archived":false,"fork":false,"pushed_at":"2026-04-11T07:27:50.000Z","size":2030,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-17T14:44:19.610Z","etag":null,"topics":["agent-coordination","async-workflows","distributed-systems","durable-execution","human-in-the-loop","intent-protocol","long-running-tasks","multi-agent","orchestration","workflow-engine"],"latest_commit_sha":null,"homepage":"https://cloud.axme.ai","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AxmeAI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-08T12:13:26.000Z","updated_at":"2026-04-11T07:27:53.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/AxmeAI/axme","commit_stats":null,"previous_names":["axmeai/axme"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AxmeAI/axme","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AxmeAI%2Faxme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AxmeAI%2Faxme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AxmeAI%2Faxme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AxmeAI%2Faxme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AxmeAI","download_url":"https://codeload.github.com/AxmeAI/axme/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AxmeAI%2Faxme/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32455234,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"online","status_checked_at":"2026-04-30T02:00:05.929Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-coordination","async-workflows","distributed-systems","durable-execution","human-in-the-loop","intent-protocol","long-running-tasks","multi-agent","orchestration","workflow-engine"],"created_at":"2026-04-14T06:01:04.431Z","updated_at":"2026-04-30T05:00:58.265Z","avatar_url":"https://github.com/AxmeAI.png","language":null,"funding_links":[],"categories":["🧱 Agent Frameworks"],"sub_categories":["Multi-Agent Orchestration"],"readme":"# AXME\n\n**Durable execution for AI agents and services - workflow orchestration with built-in human approval gates, agent crash recovery, and multi-agent orchestration. No cluster required.**\n\nSubmit work once. AXME drives it to completion through crashes, retries, timeouts, and human-in-the-loop steps. A managed Temporal alternative with durable execution without cluster setup, an agent kill switch, and an agent monitoring dashboard out of the box.\n\n[![Alpha](https://img.shields.io/badge/status-alpha-orange)](https://cloud.axme.ai/alpha/cli) [![License](https://img.shields.io/badge/license-Apache%202.0-blue)](LICENSE) [![cloud.axme.ai](https://img.shields.io/badge/cloud-cloud.axme.ai-5b21b6)](https://cloud.axme.ai)\n\n**[Quick Start](#quick-start)** · **[Docs](https://github.com/AxmeAI/axme-docs)** · **[Examples](https://github.com/AxmeAI/axme-examples)** · **[Spec](https://github.com/AxmeAI/axme-spec)**\n\n---\n\n```python\nintent = client.send_intent({\n    \"intent_type\": \"intent.deployment.approval.v1\",\n    \"to_agent\": \"agent://myorg/prod/deploy-checker\",\n    \"payload\": {\"service\": \"api-gateway\", \"version\": \"3.2.1\"},\n})\nresult = client.wait_for(intent[\"id\"])  # waits hours if needed. survives crashes.\n```\n\n![AXME scenario demo](demo.gif)\n\n---\n\n## Why AXME?\n\n- **Human approval gates that survive for hours** - AI agents block forever waiting for human approval - no reminders, no escalation, session dies. AXME provides built-in human-in-the-loop task types that wait as long as needed.\n- **AI agent crash recovery** - agent crashes mid-task - state is gone, start over from scratch. AXME preserves intent state across restarts so work resumes, not restarts.\n- **Webhook retry is everyone's problem** - backoff, jitter, DLQ, HMAC, idempotency. AXME handles delivery guarantees so you don't.\n- **Multi-agent orchestration across machines** - most frameworks only work in one process. AXME provides an agent coordination protocol that works across services, languages, and clouds.\n- **Temporal alternative without the overhead** - Temporal is overkill for 80% of use cases - cluster, determinism constraints, no built-in HITL. AXME gives you durable execution without cluster setup.\n- **Agent monitoring dashboard and kill switch** - agents in production with zero visibility - no health checks, no cost tracking, no way to stop a misbehaving agent. AXME includes a real-time agent monitoring dashboard and an agent kill switch out of the box.\n\n## Before and After\n\n**Without AXME** - polling, webhooks, Redis, and glue code:\n\n```python\nresp = requests.post(\"https://api.vendor.com/generate\", json=payload)\njob_id = resp.json()[\"job_id\"]\n\nfor _ in range(120):                          # poll loop\n    status = requests.get(f\".../jobs/{job_id}\").json()\n    if status[\"state\"] in (\"completed\", \"failed\"):\n        break\n    time.sleep(5)\n\n@app.post(\"/webhooks/vendor\")                 # webhook endpoint\ndef handle_webhook(req):\n    redis.set(f\"job:{req.json['job_id']}\", req.json[\"result\"])\n\nresult = redis.get(f\"job:{job_id}\")           # fetch from cache\n```\n\n**With AXME** - submit once, get result later:\n\n```python\nfrom axme import AxmeClient, AxmeClientConfig\n\nclient = AxmeClient(AxmeClientConfig(api_key=\"axme_sa_...\"))\nintent = client.send_intent(\"agent://myorg/prod/generator\", payload)\nresult = client.wait_for(intent[\"id\"])        # retries, timeouts, delivery - handled\n```\n\nNo polling. No webhooks. No Redis. No glue code.\n\n---\n\n## Quick Start\n\n```bash\n# Install CLI\ncurl -fsSL https://raw.githubusercontent.com/AxmeAI/axme-cli/main/install.sh | sh\n\n# Authenticate\naxme login\n\n# Run your first example\naxme examples run human/cli\n```\n\nFull walkthrough: [cloud.axme.ai/alpha/cli](https://cloud.axme.ai/alpha/cli)\n\n---\n\n## Agent Monitoring Dashboard - See and Control Your Agents\n\nEvery agent you deploy gets a real-time agent monitoring dashboard, policy enforcement, and an agent kill switch.\n\nOpen the live dashboard at [mesh.axme.ai](https://mesh.axme.ai), or from your terminal:\n\n```bash\naxme mesh dashboard\n```\n\n![Agent Mesh Dashboard](mesh-dashboard.png)\n\n**Dashboard** - all agents on one screen with health, intents, and cost tracking (day/week/month).\n\n**Policies** - restrict which intent types an agent can send or receive, set cost and rate limits, auto-block on breach.\n\n![Policies](mesh-policies.png)\n\n**Kill switch** - isolate a misbehaving agent in one click. All intents blocked instantly. Reversible.\n\n```python\nfrom axme import AxmeClient, AxmeClientConfig\n\nclient = AxmeClient(AxmeClientConfig(api_key=\"axme_sa_...\"))\nclient.mesh.start_heartbeat()  # agent appears in dashboard with live health\nclient.mesh.report_metric(success=True, latency_ms=230, cost_usd=0.02)\n```\n\n---\n\n## AXME vs Temporal vs Inngest\n\n| | DIY (webhooks + polling) | Temporal | Inngest | AXME |\n|---|---|---|---|---|\n| Polling | Yes | No | No | No |\n| Webhooks | Yes | No | Yes (event-driven) | No |\n| Human approval gates | Custom build | Possible (heavy) | No | Built-in (8 task types) |\n| Workflow orchestration | Manual state machine | Required (deterministic) | Step functions | Not required |\n| Agent monitoring dashboard | Custom build | No | No | Built-in |\n| Agent kill switch | No | No | No | One-click isolate |\n| AI agent crash recovery | No | Replay-based | Retry-based | Intent-state durable |\n| Multi-agent orchestration | No | Possible (complex) | No | Native agent coordination protocol |\n| Human in the loop | No | External | No | 8 built-in task types |\n| Setup | Low (but fragile) | High (cluster + workers) | Medium (functions) | None (managed) |\n| Lines of code | ~200 | ~80 | ~40 | 4 |\n\n---\n\n## What You Can Build\n\n**Backend teams** - workflow orchestration for approval flows, long-running API coordination, replace polling and webhooks.\n\n**AI agent builders** - human-in-the-loop approvals that wait hours not minutes, multi-agent orchestration with handoffs across services, AI agent crash recovery across restarts, framework-agnostic (LangGraph, CrewAI, AutoGen, raw Python).\n\n**Platform teams** - one agent coordination protocol instead of webhook-polling-queue stack, a Temporal alternative that ships in minutes.\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eIntent Lifecycle\u003c/strong\u003e\u003c/summary\u003e\n\n```\nCREATED -\u003e SUBMITTED -\u003e DELIVERED -\u003e ACKNOWLEDGED -\u003e IN_PROGRESS -\u003e WAITING -\u003e COMPLETED\n                                                                            \\-\u003e FAILED\n                                                                            \\-\u003e CANCELLED\n                                                                            \\-\u003e TIMED_OUT\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eDelivery Bindings\u003c/strong\u003e\u003c/summary\u003e\n\nHow intents reach agents and services:\n\n| Binding | Transport | Use Case |\n|---|---|---|\n| `stream` | SSE (server-sent events) | Real-time agent listeners |\n| `poll` | GET polling | Serverless / cron-based consumers |\n| `http` | Webhook POST | Backend services with an HTTP endpoint |\n| `inbox` | Human inbox | Human-in-the-loop tasks |\n| `internal` | Platform-internal | Built-in platform steps (reminders, escalations) |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eHuman Task Types\u003c/strong\u003e\u003c/summary\u003e\n\n| Type | Purpose |\n|---|---|\n| `approval` | Binary yes/no decision gate |\n| `review` | Content review with comments and verdict |\n| `form` | Structured data collection |\n| `manual_action` | Physical or out-of-band action |\n| `override` | Manual override of an automated decision |\n| `confirmation` | Acknowledge receipt before proceeding |\n| `assignment` | Route work to a specific person or team |\n| `clarification` | Request missing information |\n\nThree paths for human participation:\n\n| Path | How |\n|---|---|\n| **CLI** | `axme tasks list` then `axme tasks approve \u003ctask_id\u003e` |\n| **Email** | Magic link sent to assignee; click to approve/reject |\n| **Form** | Custom form submitted via API or embedded UI |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eConnecting an Agent\u003c/strong\u003e\u003c/summary\u003e\n\n```python\nfrom axme import AxmeClient, AxmeClientConfig\n\nclient = AxmeClient(AxmeClientConfig(api_key=\"axme_sa_...\"))\n\nfor delivery in client.listen(\"agent://myorg/myworkspace/my-agent\"):\n    intent = client.get_intent(delivery[\"intent_id\"])\n    result = process(intent[\"payload\"])\n    client.resume_intent(delivery[\"intent_id\"], result)\n```\n\nAgent addressing: `agent://org/workspace/name`\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eScenarioBundle\u003c/strong\u003e\u003c/summary\u003e\n\nA JSON file that declares agents, human roles, workflow steps, and an intent - everything to run a coordination scenario:\n\n```json\n{\n  \"scenario_id\": \"human.cli.v1\",\n  \"agents\": [\n    { \"role\": \"checker\", \"address\": \"deploy-readiness-checker\", \"delivery_mode\": \"stream\", \"create_if_missing\": true }\n  ],\n  \"humans\": [\n    { \"role\": \"operator\", \"display_name\": \"Operations Team\" }\n  ],\n  \"workflow\": {\n    \"steps\": [\n      { \"step_id\": \"readiness_check\", \"assigned_to\": \"checker\" },\n      { \"step_id\": \"ops_approval\", \"assigned_to\": \"operator\", \"requires_approval\": true }\n    ]\n  },\n  \"intent\": {\n    \"type\": \"intent.deployment.approval.v1\",\n    \"payload\": { \"service\": \"api-gateway\", \"version\": \"3.2.1\" }\n  }\n}\n```\n\n```bash\naxme scenarios apply scenario.json --watch\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eMCP - AI Assistant Integration\u003c/strong\u003e\u003c/summary\u003e\n\nAXME exposes an MCP server at `mcp.cloud.axme.ai`. AI assistants (Claude, ChatGPT, Gemini) can manage the platform through 48 tools.\n\n```\nPOST https://mcp.cloud.axme.ai/mcp\nAuthorization: Bearer \u003caccount_session_token\u003e\n\n{\"jsonrpc\": \"2.0\", \"id\": 1, \"method\": \"tools/call\",\n \"params\": {\"name\": \"axme.intents_send\", \"arguments\": {\n   \"to_agent\": \"agent://myorg/production/my-agent\",\n   \"intent_type\": \"task.process.v1\",\n   \"payload\": {\"data\": \"...\"}\n }}}\n```\n\n[Connector setup guides](https://github.com/AxmeAI/axme-docs/tree/main/docs/connectors) for Claude, ChatGPT, and Gemini.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eAXP - the Intent Protocol\u003c/strong\u003e\u003c/summary\u003e\n\nAXP is the open protocol behind AXME. It defines the intent envelope, lifecycle states, delivery semantics, and contract model. AXP can be implemented independently of AXME Cloud.\n\nProtocol spec: [axme-spec](https://github.com/AxmeAI/axme-spec)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eSDKs\u003c/strong\u003e\u003c/summary\u003e\n\nAll SDKs implement the same AXP protocol surface. All are at **v0.1.2 (Alpha)**.\n\n| SDK | Package | Install |\n|---|---|---|\n| **[Python](https://github.com/AxmeAI/axme-sdk-python)** | `axme` | `pip install axme` |\n| **[TypeScript](https://github.com/AxmeAI/axme-sdk-typescript)** | `@axme/axme` | `npm install @axme/axme` |\n| **[Go](https://github.com/AxmeAI/axme-sdk-go)** | `github.com/AxmeAI/axme-sdk-go/axme` | `go get github.com/AxmeAI/axme-sdk-go@latest` |\n| **[Java](https://github.com/AxmeAI/axme-sdk-java)** | `ai.axme:axme-sdk` | Maven Central |\n| **[.NET](https://github.com/AxmeAI/axme-sdk-dotnet)** | `Axme.Sdk` | `dotnet add package Axme.Sdk` |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eRepository Map\u003c/strong\u003e\u003c/summary\u003e\n\n| Repository | Description |\n|---|---|\n| **[axme](https://github.com/AxmeAI/axme)** | This repo - project overview and entry point |\n| **[axme-docs](https://github.com/AxmeAI/axme-docs)** | API reference, integration guides, MCP connector setup |\n| **[axme-examples](https://github.com/AxmeAI/axme-examples)** | Runnable examples across all SDKs |\n| **[axme-cli](https://github.com/AxmeAI/axme-cli)** | CLI - manage intents, agents, scenarios, tasks |\n| **[axme-spec](https://github.com/AxmeAI/axme-spec)** | AXP protocol specification |\n| **[axme-conformance](https://github.com/AxmeAI/axme-conformance)** | Conformance test suite |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eContributing\u003c/strong\u003e\u003c/summary\u003e\n\n- **Protocol / schemas** - [axme-spec](https://github.com/AxmeAI/axme-spec)\n- **Documentation** - [axme-docs](https://github.com/AxmeAI/axme-docs)\n- **SDK improvements** - respective SDK repository\n- **Examples** - [axme-examples](https://github.com/AxmeAI/axme-examples)\n- **Conformance checks** - [axme-conformance](https://github.com/AxmeAI/axme-conformance)\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) · [SECURITY.md](SECURITY.md) · [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)\n\n\u003c/details\u003e\n\n---\n\n## Topics\n\n`durable-execution` `workflow-orchestration` `temporal-alternative` `human-in-the-loop` `human-approval-gates` `ai-agent-crash-recovery` `agent-kill-switch` `agent-monitoring-dashboard` `multi-agent-orchestration` `agent-coordination-protocol` `durable-execution-without-cluster` `ai-agents` `hitl` `intent-protocol` `agentic-workflows`\n\n---\n\n[contact@axme.ai](mailto:contact@axme.ai) · [@axme_ai](https://x.com/axme_ai) · [Security](SECURITY.md) · [License](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAxmeAI%2Faxme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAxmeAI%2Faxme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAxmeAI%2Faxme/lists"}