Skip to main content

Xaibo: The Modular AI Agent Framework

Build flexible, observable, and production-ready AI agents with clean, swappable components.

Xaibo is a modular framework designed to help you build sophisticated AI systems that are easy to test, debug, and evolve. Move beyond monolithic agent scripts and start creating with components you can trust.

Xaibo Debug UI - Sequence Diagram Overview

Sequence Diagram Overview

Xaibo Debug UI - Detail View

Detail View of Component Interactions

Visually trace every step of your agent's operation in the debug UI.

Why Use Xaibo?

Build with Confidence, Not Concrete

Xaibo's protocol-driven architecture lets you define how components interact without locking you into specific implementations. Swap LLMs, vector stores, or tools without rewriting your agent's core logic.

Understand Your Agent's Every Thought

Every component is automatically wrapped in a transparent proxy that observes all inputs, outputs, and errors. The built-in debug UI provides a sequence diagram of your agent's inner workings, making complex interactions easy to understand and debug.

Test, Don't Guess

With first-class support for dependency injection, you can easily swap in mock components to write fast, deterministic tests for your agent's logic. Ensure your agent behaves as expected before you ever hit a real LLM API.

Quick Start

Get your first Xaibo agent running in under a minute.

Prerequisites: Python 3.11+ and pip.

  1. Install uv: (if you don't already have it)

    pip install uv
    
  2. Initialize a new project:

    uvx xaibo init my-agent-project
    

    You will be asked what dependencies you want to install. That way you don't need to install half the internet, if you are going to use just third-party APIs.

  3. Start the development server:

    cd my-agent-project
    uv run xaibo dev
    

    This starts the development server with an OpenAI compatible chat completions API at http://localhost:9001/openai and the debugging ui at http://localhost:9001.

  4. Interact with the example agent: You can now send requests to your agent using any OpenAI-compatible client.

    # Send a simple chat completion request to the Xaibo OpenAI-compatible API
    curl -X POST http://127.0.0.1:9001/openai/chat/completions \
      -H "Content-Type: application/json" \
      -d '{
        "model": "example",
        "messages": [
          {"role": "user", "content": "Hello, what time is it now?"}
        ]
      }'
    
    # Same request using HTTPie (a more user-friendly alternative to curl)
    http POST http://127.0.0.1:9001/openai/chat/completions \
      model=example \
      messages:='[{"role": "user", "content": "Hello, what time is it now?"}]'
    

What You Get

The init command sets up a clean, organized project structure for you:

my-agent-project/
├── agents/
│   └── example.yml    # Your agent's configuration
├── modules/
│   └── __init__.py
├── tools/
│   └── example.py     # An example tool implementation
├── tests/
│   └── test_example.py
└── .env               # Environment variables

Core Features

  • Protocol-Driven Architecture: Enforces clean separation between components.
  • Built-in Debug UI: Visually trace and inspect your agent's execution flow.
  • Dependency Injection: Easily swap implementations and write mockable, testable code.
  • Extensible Module System: Ships with modules for major LLM providers (OpenAI, Anthropic, Google), local embeddings, vector memory, and more.
  • Tool Support: Create tools with simple python, use MCP servers or integrate whatever fits your needs.
  • OpenAI-Compatible API: Use your agent with a wide range of existing tools and libraries out-of-the-box.
  • MCP Adapter: Expose your agents as tools to any Model Context Protocol-compatible client.

Dive Deeper: Full Documentation

For detailed guides on agent configuration, core concepts, available protocol implementations, and creating your own modules, please see our full documentation.

Get Involved

Xaibo is actively developed and we welcome contributors!

Development

Roadmap

Xaibo is actively developing:

  • Enhanced visual configuration UI
  • Visual tool definition with Xircuits
  • More API adapters beyond OpenAI standard
  • Multi-user aware agents

The core principles and APIs are stable for production use.

Contributing

Running Tests

Tests are implemented using pytest.

# From the root xaibo directory
uv sync --all-extras
uv run pytest

If you are using PyCharm to run them, you will need to configure it to also show logging output. That way some failures will be a lot easier to debug.

Go to File > Settings > Advanced Settings > Python and check the option Pytest: do not add "--no-header --no-summary -q".

Metadata

Release files for xaibo 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xaibo 0.3.0
File Size Uploaded
xaibo-0.3.0.tar.gz 2.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for xaibo 0.3.0
File Interpreter ABI Platform
xaibo-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.5 MB

Release files / xaibo-0.3.0.tar.gz

Download URL xaibo-0.3.0.tar.gz
Size 2.0 MB
Tags Source
SHA-256 checksum
How to use checksums
a03d7953bbe5215aaec51efb34afe9832b0e803835a00e85f3c59c91a74ef77e
BLAKE2b-256 checksum
How to use checksums
58f0f75b738393c0e71626e09f4062bd8f219a3592d0e3cb4e7d98e10bcb4e0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / xaibo-0.3.0-py3-none-any.whl

Download URL xaibo-0.3.0-py3-none-any.whl
Size 581.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b4f5bc85582a2456bea0901661623d5bc96b74b76b4d2ca573f9a09b851e7e65
BLAKE2b-256 checksum
How to use checksums
0bf9795af59f8ede0e9975f2528ad2764cd7d1cba86433f05cba4dc455039870
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page