💡 Inspiration
Across Kenya and East Africa, informal savings and credit cooperatives—known as Chamas—are the financial backbone for millions of students, informal traders, and entrepreneurs. Coupled with mobile money (M-Pesa), Chamas pool local capital to fund education, farm inputs, and micro-enterprises.
However, traditional Chamas suffer from three critical bottlenecks:
- Manual SMS Reconciliation: Treasurers manually verify SMS messages, exposing groups to fake receipt fraud and bookkeeping errors.
- The "Unbanked" Credit Gap: Members build reliable informal savings track records, yet remain locked out of formal institutional credit because they lack conventional credit bureau scores.
- Liquidity Fragility: Without real-time underwriting, emergency micro-loans can quickly drain a community vault.
We built ChamaGraph AI to replace manual spreadsheets with an autonomous, spatial graph network powered by native Jac agents and Gemini.
🚀 What it Does
ChamaGraph AI is a multi-agent community micro-finance platform built entirely on Jac's Object-Spatial Programming paradigm:
- Autonomous M-Pesa SMS Deposit Agent (
ProcessSMSDepositWalker): Community members paste incoming mobile money SMS notifications. Using Gemini 2.5 Flash via Jac'sby llm()syntax, the agent extracts the transaction reference code, amount, and sender phone number, confirms receipt legitimacy, locates the community vault (ChamaVault), credits liquidity, and walks to the member's graph node to log a verifiedTransactionwhile incrementing their community trust score. - Context-Aware Micro-Loan Underwriter (
ApplyLoanWithAuditWalker): When a member requests credit (e.g., funding inventory for solar lanterns), the agent evaluates their cumulative savings, dynamic trust score, loan purpose, and the vault's live liquidity. The agent invokes Gemini to generate an explainable, risk-scored credit assessment (0–100 risk score), logs aLoanApplicationnode, and safely disburses capital. - Live Graph Visualizer & Snapshot Agent (
GetChamaOverviewWalker): Recursively traverses the live graph topology, serializing vault metrics, member trust rankings, and active loan books in real time.
🛠️ How We Built It
We built ChamaGraph AI with an emphasis on agentic graph locomotion rather than building a basic single-prompt chatbot wrapper:
- Core Language: Over 95% of application logic is written in native Jac (
jaclang), cleanly exceeding the 80% hackathon threshold. - Spatial Graph Modeling: Modeled
node ChamaVault,node Member,node Transaction, andnode LoanApplicationdirectly on the Jac spatial graph with zero-migration persistence. - Autonomous Locomotion (
walkers): Implemented multi-node graph traversal (visit), state mutations, and conditional dispatch using Jac walkers. - Provider-Agnostic AI (
by llm()): Configured Jac'sbyllmsubsystem powered by Google Gemini 2.5 Flash, returning typed structured outputs via Jac'sobj AuditResultandobj ParsedSMS. - Full-Stack REST & UI Bridge: Integrated a responsive, dark-mode dashboard styled with Tailwind CSS, communicating with native Jac walkers through typed API hooks.
⚡ Challenges We Ran Into
- Spatial locomotion edge-returns: Handling typed returns from Jac's
++>node connection operator required structuring walker properties cleanly so metadata remained accessible across node hops. - Strict structured parsing: Ensuring unstructured SMS text from varied telecom formats parsed reliably into typed Kenyan Shilling (KES) floats and phone strings, which we solved by designing typed Jac
objcontracts forby llm(). - Preserving 80%+ Jac rule: Instead of building a detached React frontend with heavy JavaScript bundles that could skew repo metrics, we kept our architecture lean so the repository registers as pure Jac.
🏆 Accomplishments That We're Proud Of
- Executed end-to-end multi-agent graph workflows where an incoming SMS directly mutates member balances, updates community trust metrics, and unlocks real-time credit underwriting.
- Zero external SQL/NoSQL database setup—everything persists directly within Jac's graph architecture.
- Real-world social impact: Providing unbanked African youth and traders with verifiable, algorithmically fair financial reputations.
📚 What We Learned
- How Object-Spatial Programming and Jac's
walkerconcept simplify state management for autonomous agent systems compared to typical Python agent orchestration frameworks. - The speed and utility of compiler-driven prompt synthesis using Jac's
by llm()syntax.
🔮 What's Next for ChamaGraph AI
- USSD & WhatsApp Bot Integration: Exposing the Jac walkers via Twilio / Africa's Talking USSD gateways so rural members without smartphones can interact via feature phones.
- Inter-Chama Federation: Allowing different Chama vaults to establish cross-pool credit guarantees on the graph.
- Decentralized Escrow: Bridging Jac nodes with mobile money STK push APIs for automated disbursals.
Log in or sign up for Devpost to join the conversation.