Side project — agentic AI & LLM routing
OmniRoute for PMs — building agentic AI tools at $0
Most "AI for PMs" content stops at pasting a prompt into ChatGPT. This is two working, search-grounded agentic tools, built on a self-hosted router to 230+ free LLM and search providers — no backend, no credit card, $0 spent anywhere in the stack.
Role
Personal project — built to stress-test OmniRoute hands-on
Stack
OmniRoute (self-hosted gateway) + static HTML/JS, no backend
Cost
$0 — every provider on a genuine free tier, no card on file
Scope
2 working, search-grounded agentic tools
The numbers, up front
$0
total cost — no credit card, anywhere in the stack
230+
LLM and search providers behind one OmniRoute API
4
free-tier providers actually connected — Groq, Gemini, DeepSeek, Tavily
2
working agentic tools shipped, both grounded in real search
The premise: agentic isn't a pricing tier
The usual assumption is that building a real AI agent — something that searches, reasons over evidence, and commits to a judgment call — needs a funded API budget and an engineering team. OmniRoute is an open-source, self-hosted gateway that sits between an app and 230+ LLM and search providers behind one OpenAI-compatible endpoint, picking (and falling back across) whichever one actually serves a given request. Connect a handful of genuine free tiers — we used Groq, Gemini and DeepSeek for chat, Tavily for search — and the entire cost of running two working agentic tools drops to exactly zero.
How this run gets routed
Chat
OmniRoute picks one of these per call with its own scoring — in testing it most often landed on Groq, not guaranteed every time.
Search
Our own fallback, not OmniRoute's — Tavily first for quality, DuckDuckGo only if Tavily returns nothing.
What we built — two tools, no backend of our own
Both tools call OmniRoute directly from the browser. Neither "knows" the answer going in — each gathers evidence from a few independent search angles, weighs what it actually found, and commits to a verdict with a confidence level attached. If search comes back empty, the tool says so instead of asking the model to fill the gap.
Signal Digest — competitive intelligence, grounded in real search
Scenario: you're a PM at Anthropic, keeping an eye on OpenAI. Runs targeted searches for launches, hiring and pricing activity, ranks and dedupes the results, then synthesizes a current-state verdict — explicitly not a prediction, just what's publicly visible right now, with cited sources.

Prospect Briefing — sales/account prep, grounded in real search
Same search → rank → synthesize pipeline, applied to a prospect company and named attendees — a company overview, per-attendee notes, and talking points tied to what was actually found, not generic pitch copy.

What we learned building this
The free, no-key search tier is real but fragile
DuckDuckGo's free, zero-setup search worked initially, then silently started returning empty result sets after roughly a dozen automated requests — no error, just nothing. Without a guard, the LLM happily filled the gap with a plausible-sounding but entirely fabricated citation URL. Connecting a real free-tier key (Tavily) fixed reliability outright. The lesson for evaluating any "AI agent" claim: ask what happens when its tool call comes back empty.
"Auto" routing doesn't always diversify the way you'd expect
Asking for auto/best-fast across a batch of 8 different tasks routed every single one to the same provider (Groq) in one run. The routing logic is real, but it's optimizing for speed/quality, not for spreading load across every connected provider — worth knowing before assuming "auto" gives you built-in redundancy for free.
Not all "free" providers are the same shape
Groq, Gemini and DeepSeek are permanent, no-cost API allocations. Connecting an IDE tool like Cursor via OAuth is also genuinely free, but draws from that account's shared monthly quota — the same bucket your day-to-day usage of that tool draws from, not a separate allocation.
More agentic ideas any PM can build on the same base
Neither tool above exists because competitive intel or sales prep needed solving from scratch — the honest goal was getting hands-on with OmniRoute itself. These are more entry points into the same exercise, each exercising a different part of the framework, not a product roadmap:
- Vendor renewal risk radar — four independent search angles (funding, leadership, pricing, complaints) combined into one weighted score.
- Build-vs-buy crossover calculator — two parallel search tracks (OSS effort vs. vendor pricing) reconciled into an actual crossover month.
- Launch-timing conflict checker — searches competitor/industry events and flags real calendar overlaps with a planned launch date.
- Pre-call delta briefing — anchors next-call talking points to what's changed since the last call, not a generic company profile.
- Escalation-worthiness scorer — cross-references incident history and account signals against a defined rubric, reasoning shown, not hidden.
Hard constraints we kept
- No spend, anywhere — every provider used has a genuine free tier, no card on file.
- No fabricated numbers — every figure on this page came from an actual run of the code.
- No scraping behind a login or against a provider's terms of service.
More side quests
Projects →