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

your taskOmniRoute auto/best-fastGroqGeminiDeepSeek+ 8 more connected

OmniRoute picks one of these per call with its own scoring — in testing it most often landed on Groq, not guaranteed every time.

Search

your taskTavily↓ if emptyDuckDuckGo (free)

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.

Signal Digest tool — a real run watching OpenAI from Anthropic's seat

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.

Prospect Briefing tool — a real run on Linear and Karri Saarinen

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 radarfour independent search angles (funding, leadership, pricing, complaints) combined into one weighted score.
  • Build-vs-buy crossover calculatortwo parallel search tracks (OSS effort vs. vendor pricing) reconciled into an actual crossover month.
  • Launch-timing conflict checkersearches competitor/industry events and flags real calendar overlaps with a planned launch date.
  • Pre-call delta briefinganchors next-call talking points to what's changed since the last call, not a generic company profile.
  • Escalation-worthiness scorercross-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 →