One platform. A roster of specialists. Shared everything underneath.
Laabha agents share the same data layer, the same authentication, the same billing wallet, the same audit trail. Hire one agent or fifteen — the setup is the same.
Every agent runs on the same three-layer stack.
Layer 3 — The agent (what you hire)
A skill file (5,000-word job description in plain English), a tool set (real APIs into TallyPrime, your phone, WhatsApp, the GST portal), and a slash command to invoke it.
This is what each agent uniquely brings. AI Accountant has tools for parsing PDFs and calling Tally XML. Khata has tools for processing Soundbox audio and OCR.
Layer 2 — Platform services (what every agent reuses)
| Service | What it does |
|---|---|
| Auth | One login across all agents (Zitadel OIDC + JWT). Sign in once; every agent knows who you are. |
| Chat UI + slash picker | Same chat for hiring any agent. Switch agents mid-conversation via slash command. |
| Tally bridge | One ngrok tunnel from your TallyPrime to Laabha. Used by every Tally-centric agent. |
| Audit trail | Every action by every agent logged with a user-visible audit ID. Cross-agent investigation just works. |
| Billing wallet | One ₹ credit balance. Every agent debits from the same wallet. One Razorpay top-up, all agents fueled. |
| Memory + narration rules | Rules you teach one agent propagate to related agents on the same client's data. |
| File storage | Bank statements, receipts, generated reports — one cache with TTL management, one cleanup job. |
When the next agent ships, it inherits this entire layer. No new auth flow, no new wallet, no new audit table.
Layer 1 — Infrastructure (what you never see)
AWS Lightsail (Mumbai region — data stays in India). Postgres for tenant data. Redis for sessions. Docker container per service. Cloudflare in front for DDoS + caching. Boring on purpose. Boring infrastructure is the right kind.
What changes for you, concretely.
Setup is one-time. Install the Tally bridge once. Set up your narration rules once. Top up your wallet once. Every new agent that ships uses this setup. The 12th agent costs the same to onboard as the first: zero.
Investment compounds. The narration rules you taught the AI Accountant make the future GST Reconciliation agent more accurate too — they share the same underlying classification system. The audit IDs from imports help future review-oriented agents cite their sources.
You're not locked in by per-agent contracts. No agent-specific subscriptions. You hire each agent as needed, pay per use (or per month for Khata), and stop using any agent you don't need. The platform infrastructure is what you're staying for.
Where your data lives. What we see. What we don't.
TallyPrime data stays on your machine. The Tally bridge runs on your Windows PC. Laabha talks to it over an ngrok tunnel you control. Your books are never copied to our servers, never synced, never backed up by us.
Khata data stays on your phone. The Khata app stores ledger entries locally on your phone, encrypted. Receipts you photograph are processed (OCR runs on our servers) and then the original image is deleted from our cache within 24 hours.
AI processing. Claude (Anthropic, US data centers) for agent reasoning. Google Gemini (multi-region) for OCR. Only the specific text passages needed for the current task are sent — never identifying data beyond what's necessary.
Audit logs. We retain audit log entries (which agent ran, what tools it called, what confidence scores it returned) for 12 months. These do NOT include underlying transaction data — only metadata of how it was processed.
The stack underneath.
| Layer | Technology |
|---|---|
| Agent runtime | Python + FastAPI + Anthropic SDK (Claude Sonnet/Opus for reasoning, Gemini for OCR) |
| Tally integration | TallyConnector (open-source C# NuGet) + Tally XML API via per-user ngrok tunnel |
| Auth | Zitadel OIDC + JWT (one identity across all agents) |
| Data store (per-tenant) | PostgreSQL (Mumbai-region AWS Lightsail) |
| Session cache | Redis with sliding TTL |
| Frontend | Vite + React + Tailwind (chat UI); React Native (Khata phone app) |
| Container orchestration | Docker Compose on Lightsail |
| Edge | Cloudflare (TLS, DDoS, CDN for static assets) |
| Billing | Razorpay (UPI / card / netbanking) + internal credit-wallet ledger |
| Audit + observability | Structured JSON logs (structlog) + per-request trace IDs across all services |
Most of this is boring on purpose. Boring infrastructure means fewer pages in the middle of the night. The interesting part is the agent layer — and that's where we spend our time.
See the platform run on your data.
15-minute demo. Bring a real client's bank statement, or a shopkeeper's day's transactions. We run the agents live.