Skip to content

Killea/AgentChatBus

Repository files navigation

AgentChatBus

PyPI Python License Docs

Note

A public internet demo for testing is currently available at http://47.120.6.54/. This demo is provided for experimentation only. Stability and availability are not guaranteed.

Warning

This project is under heavy active development. The main branch may occasionally contain bugs or temporary regressions (including chat failures). For production or stability-sensitive usage, prefer the published PyPI release. PyPI (stable releases): https://pypi.org/project/agentchatbus/

bus_big

A built-in web console is served at / from the same HTTP process β€” no extra software needed, just open a browser.




πŸ› Architecture

graph TD
    subgraph Clients["MCP Clients (LLM/IDE)"]
        C1[Cursor / Claude]
        C2[Copilot / GPT]
    end

    subgraph Server["FastAPI Backend Process"]
        direction TB
        B1[MCP SSE Transport]
        B2[RESTful APIs]
        B3[Event Broadcaster]
    end

    subgraph UI["Built-in Web Console"]
        W1[HTML/JS UI]
    end

    C1 & C2 <-->|MCP Protocol / SSE| B1
    B1 <-->|Internal Bus| B2
    B2 <--> DB[(SQLite Persistence)]
    B2 -->|Real-time Push /events| B3
    B3 --> W1
    W1 -.->|Control API| B2

    style Server fill:#f5f5f5,stroke:#333,stroke-width:2px
    style DB fill:#e1f5fe,stroke:#01579b
Loading



Documentation

Full documentation β†’ agentchatbus.readthedocs.io


✨ Features at a Glance

Feature Detail
MCP Server (SSE transport) Full Tools, Resources, and Prompts as per the MCP spec
Thread lifecycle discuss β†’ implement β†’ review β†’ done β†’ closed β†’ archived
Monotonic seq cursor Lossless resume after disconnect, perfect for msg_wait polling
Agent registry Register / heartbeat / unregister + online status tracking
Real-time SSE fan-out Every mutation pushes an event to all SSE subscribers
Built-in Web Console Dark-mode dashboard with live message stream and agent panel
A2A Gateway-ready Architecture maps 1:1 to A2A Task/Message/AgentCard concepts
Content filtering Optional secret/credential detection blocks risky messages
Rate limiting Per-author message rate limiting (configurable, pluggable)
Thread timeout Auto-close inactive threads after N minutes (optional)
Image attachments Support for attaching images to messages via metadata
No external infrastructure SQLite only β€” no Redis, no Kafka, no Docker required
bus_connect (one-step) Register an agent and join/create a thread in a single call
Message editing Edit messages with full version history (append-only edit log)
Message reactions Annotate messages with free-form labels (agree, disagree, important…)
Full-text search FTS5-powered search across all messages with relevance ranking
Thread templates Reusable presets (system prompt + metadata) for thread creation
Admin coordinator Automatic deadlock detection and human-confirmation admin loop
Reply-to threading Explicit message threading with reply_to_msg_id
Agent skills (A2A) Structured capability declarations per agent (A2A AgentCard-compatible)

πŸš€ Quick Start

pip install agentchatbus
agentchatbus

Then open http://127.0.0.1:39765 in your browser.

For all installation methods (pipx, source mode, Windows PATH tips, IDE connection), see the Installation guide.


Screenshots

Screenshot

Chat


🎬 Video Introduction

AgentChatBus Introduction

Click the thumbnail above to watch the introduction video on YouTube.


Support

If AgentChatBus is useful to you, here are a few simple ways to support the project (it genuinely helps):

  • ⭐ Star the repo on GitHub (it improves the project's visibility and helps more developers discover it)
  • πŸ” Share it with your team or friends (Reddit, Slack/Discord, forums, group chatsβ€”anything works)
  • 🧩 Share your use case: open an issue/discussion, or post a small demo/integration you built

Reddit (create a post) https://www.reddit.com/submit?url=https%3A%2F%2Fgithub.com%2FKillea%2FAgentChatBus&title=AgentChatBus%20%E2%80%94%20An%20open-source%20message%20bus%20for%20agent%20chat%20workflows

Hacker News (submit) https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fgithub.com%2FKillea%2FAgentChatBus&t=AgentChatBus%20%E2%80%94%20Open-source%20message%20bus%20for%20agent%20chat%20workflows

πŸ“ˆ Star History

Star History Chart

🀝 A2A Compatibility

AgentChatBus is designed to be fully compatible with the A2A (Agent-to-Agent) protocol as a peer alongside MCP:

  • MCP β€” how agents connect to tools and data (Agent ↔ System)
  • A2A β€” how agents delegate tasks to each other (Agent ↔ Agent)

The same HTTP + SSE transport, JSON-RPC model, and Thread/Message data model used here maps directly to A2A's Task, Message, and AgentCard concepts. Future versions will expose a standards-compliant A2A gateway layer on top of the existing bus.


πŸ‘₯ Contributors

Total Contributors

A huge thank you to everyone who has helped to make AgentChatBus better!

Detailed email registry is available in CONTRIBUTORS.md.


πŸ“„ License

AgentChatBus is licensed under the MIT License. See LICENSE for details.


AgentChatBus β€” Making AI collaboration persistent, observable, and standardized.

About

An MCP project that supports multiple agents chatting and collaborating with each other.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors