HesabuAgent — CrewAI multi-agent system for Kenya county budget analysis. Flags anomalies and public interest gaps.
# 💰 HesabuAgent — Kenya Budget Intelligence Agent
> Multi-agent AI system for analysing Kenya county budget execution. Built on CrewAI — correlates Controller of Budget absorption data with OCDS procurement contracts.
## What it does
HesabuAgent deploys a crew of specialised AI agents to answer the hardest question in Kenya's devolution accountability:
> *"County X was allocated KES 800M for development. It absorbed only 62%. Where did the money go — and what did it procure?"*
**Three agents, one crew:**
| Agent | Role | Data source |
|-------|------|-------------|
| **Budget Analyst** | Reads COB absorption rates, flags low-performing counties | `county_budgets_fy2223.csv` |
| **Procurement Analyst** | Queries OCDS tenders from `
tenders.go.ke` | OCDS API |
| **Report Writer** | Synthesises findings into plain-language county brief | Both |
## Sample output
```
County: Turkana
Development budget: KES 4.2B
Absorbed: 41% (KES 1.72B)
Unspent: KES 2.48B
Procurement contracts (OCDS):
- 12 tenders published, 8 awarded
- KES 890M in awarded contracts — roads and water infrastructure
- KES 830M gap: no matching procurement records
Assessment: KES 830M in development spend has no procurement paper trail.
Recommend: County Assembly to request statement of account under PFM Act.
```
## Quickstart
```bash
pip install hesabu-agent
# or from source:
git clone
github.com
cd hesabu-agent
pip install -r requirements.txt
export ANTHROPIC_API_KEY=your_key
streamlit run app.py
```
## Architecture
```
crew/
├── agents.py ← Budget Analyst, Procurement Analyst, Report Writer
├── tasks.py ← Task definitions for each agent
└── tools.py ← COB data loader, OCDS API client, CSV tools
app.py ← Streamlit interface
```
Built on CrewAI (49k+ GitHub stars, MIT) — the leading multi-agent orchestration framework for Python.
## Data sources
- **Controller of Budget** — county budget execution reports (our publi …