Show HN: GoModel – an open-source AI gateway in Go; 44x lighter than LiteLLM
by santiago-pl on 4/21/2026, 2:11:53 PM
Hi, I’m Jakub, a solo founder based in Warsaw.<p>I’ve been building GoModel since December with a couple of contributors. It's an open-source AI gateway that sits between your app and model providers like OpenAI, Anthropic or others.<p>I built it for my startup to solve a few problems:<p><pre><code> - track AI usage and cost per client or team - switch models without changing app code - debug request flows more easily - reduce AI spendings with exact and semantic caching </code></pre> How is it different?<p><pre><code> - ~17MB docker image - LiteLLM's image is more than 44x bigger ("docker.litellm.ai/berriai/litellm:latest" ~ 746 MB on amd64) - request workflow is visible and easy to inspect - config is environment-variable-first by default </code></pre> I'm posting now partly because of the recent LiteLLM supply-chain attack. Their team handled it impressively well, but some people are looking at alternatives anyway, and GoModel is one.<p>Website: <a href="https://gomodel.enterpilot.io" rel="nofollow">https://gomodel.enterpilot.io</a><p>Any feedback is appreciated.
https://github.com/ENTERPILOT/GOModel/
Comments
by: indigodaddy
Any plans for AI provider subscription compatibility? Eg ChatGPT, GH Copilot etc ? (Ala opencode)
4/21/2026, 4:03:20 PM
by: tahosin
This is really useful. I've been building an AI platform (HOCKS AI) where I route different tasks to different providers — free OpenRouter models for chat/code gen, Gemini for vision tasks. The biggest pain point has been exactly what you describe: switching models without changing app code.<p>One thing I'd love to see is built-in cost tracking per model/route. When you're mixing free and paid models, knowing exactly where your spend goes is critical. Do you have plans for that in the dashboard?
4/21/2026, 3:51:29 PM
by: pjmlp
Expectable, given that LiteLLM seems to be implemented in Python.<p>However kudos for the project, we need more alternatives in compiled languages.
4/21/2026, 3:15:17 PM
by: Talderigi
Curious how the semantic caching layer works.. are you embedding requests on the gateway side and doing a vector similarity lookup before proxying? And if so, how do you handle cache invalidation when the underlying model changes or gets updated?
4/21/2026, 3:15:07 PM
by: anilgulecha
how does this compare to bifrost - another golang router?
4/21/2026, 3:01:05 PM