Xaibo is a framework for building powerful, transparent, and modular AI agents.
Project description
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.
Sequence Diagram Overview
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.10+ and pip.
-
Install
uv: (if you don't already have it)pip install uv
-
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.
-
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/openaiand the debugging ui athttp://localhost:9001. -
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!
- GitHub Repository: github.com/xpressai/xaibo - Report issues, suggest features, or submit a pull request.
- Discord Community: Join our Discord Server - Ask questions, share what you're building, and connect with the community.
- Contact Us: hello@xpress.ai
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".
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xaibo-0.2.1.tar.gz.
File metadata
- Download URL: xaibo-0.2.1.tar.gz
- Upload date:
- Size: 1.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00ee99440422e12c88f6f1aab06a27a9efb2967bddcdb770e2f9d55b4e7173d8
|
|
| MD5 |
21e7134b195f9a47027263e3b4a5d4f8
|
|
| BLAKE2b-256 |
3df7069c697b0f62fdb4ea1f5a402e52420cfce4f9cd8b5b5c057d9195083420
|
Provenance
The following attestation bundles were made for xaibo-0.2.1.tar.gz:
Publisher:
ci-cd.yml on XpressAI/xaibo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
xaibo-0.2.1.tar.gz -
Subject digest:
00ee99440422e12c88f6f1aab06a27a9efb2967bddcdb770e2f9d55b4e7173d8 - Sigstore transparency entry: 944500262
- Sigstore integration time:
-
Permalink:
XpressAI/xaibo@2d1c0568e85cc5a676062911c4e773c49e3bc86b -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/XpressAI
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci-cd.yml@2d1c0568e85cc5a676062911c4e773c49e3bc86b -
Trigger Event:
release
-
Statement type:
File details
Details for the file xaibo-0.2.1-py3-none-any.whl.
File metadata
- Download URL: xaibo-0.2.1-py3-none-any.whl
- Upload date:
- Size: 606.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4ddbb68426dce8526ca3eaa42fb9d0cc5522398e38df9a2c2c64ced1a08fd03
|
|
| MD5 |
8c610c59c158becde87aa3ae2e8fd5e0
|
|
| BLAKE2b-256 |
10a1aef54bced22381386fbada3903ee674886f3094417fd67f7709f1ee5d9b6
|
Provenance
The following attestation bundles were made for xaibo-0.2.1-py3-none-any.whl:
Publisher:
ci-cd.yml on XpressAI/xaibo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
xaibo-0.2.1-py3-none-any.whl -
Subject digest:
e4ddbb68426dce8526ca3eaa42fb9d0cc5522398e38df9a2c2c64ced1a08fd03 - Sigstore transparency entry: 944500265
- Sigstore integration time:
-
Permalink:
XpressAI/xaibo@2d1c0568e85cc5a676062911c4e773c49e3bc86b -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/XpressAI
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci-cd.yml@2d1c0568e85cc5a676062911c4e773c49e3bc86b -
Trigger Event:
release
-
Statement type: