Skip to main content

The open-source protocol to send, track, and orchestrate tasks between AI agents

Project description

Elkar

The open-source protocol to send, track, and orchestrate tasks between AI agents.

No more silos. Elkar lets your agents collaborate — even across companies or tech stacks.

Website     💬 Discord     Open Issues     Open PRs

✨ What is Elkar?

Elkar is an open-source framework designed to coordinate multiple AI agents, even across different companies or systems.

Use it to:

  • Send tasks to any agent via API
  • Track long-running jobs asynchronously
  • Stream workflows between agents in real-time
  • Browse and manage task history for visibility

Built for developers and teams who want to orchestrate autonomous agent networks — without reinventing the wheel.

🧪 Getting Started

  1. Clone the repo

📦 Python Package

The Python package provides a simple implementation of the A2A protocol for building and connecting AI agents.

Basic Usage

from elkar import A2AServer, TaskManager

# Create your task manager
task_manager = TaskManager()

# Initialize the A2A server
server = A2AServer(
    task_manager=task_manager,
    host="0.0.0.0",
    port=5000
)

# Start the server
server.start()

Features

  • Full A2A protocol implementation
  • Built-in task management
  • Support for streaming responses
  • Push notifications
  • State transition history
  • CORS support
  • Custom authentication

🖥️ A2A Client

The A2A client is a React + TypeScript application for testing and interacting with A2A-compatible servers.

Features

  • Configure server URL (authentication coming soon)
  • Send messages to A2A Servers
  • View task status and responses
  • Get task details by ID
  • Cancel tasks
  • Display artifacts returned by agents
  • Task management

Getting Started with the Client

  1. Install dependencies
cd a2a-client
npm install
  1. Start the development server
npm run dev
  1. Open your browser at http://localhost:5173

Usage

  • Configure your A2A server URL and API key
  • Send tasks and messages to agents
  • Monitor task status and responses
  • Manage task history and artifacts

Community

Join our Discord server

Contribute

We ❤️ feedback, issues, PRs, and ideas! Open a pull request, and we'll review it as soon as possible.

If you find Elkar useful, a GitHub ⭐️ would mean a lot! It helps more people discover the project and join the journey!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

elkar-0.1.5.tar.gz (104.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

elkar-0.1.5-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file elkar-0.1.5.tar.gz.

File metadata

  • Download URL: elkar-0.1.5.tar.gz
  • Upload date:
  • Size: 104.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.16

File hashes

Hashes for elkar-0.1.5.tar.gz
Algorithm Hash digest
SHA256 735245bc36f980785d8623c559bf3e5cf8490b5626537943d106643c13b11796
MD5 9332507db27c6a6e3617d3984eabe407
BLAKE2b-256 428ddaf39a3d9515dbf289d4f0b4bd0f97c5d1ca033889b8521e5b766a98115f

See more details on using hashes here.

File details

Details for the file elkar-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: elkar-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.16

File hashes

Hashes for elkar-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 86aaaa6a28b3b1fa385aeb37aa6ae35658312558424377e961d0551c96993e77
MD5 2e4aea92a5117edc9c6dad55f2c61292
BLAKE2b-256 ec9251a0bf4ac7b0abbb63011c8572e750ee92a15036917535c39cd4f2c3fdb2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page