Back to browse
GitHub Repository
82 starsTypeScript

PrismCat – Local transparent proxy and debugging console for LLM APIs

by etgpao·May 26, 2026·2 points·2 comments

AI Analysis

●●SolidBig BrainSolve My Problem

Subdomain routing means zero /etc/hosts edits—just change base_url and capture everything.

Strengths
  • *.localhost subdomain routing auto-resolves without hosts file manipulation.
  • Single binary with system tray support across Windows, macOS, and Linux.
  • Full SSE streaming capture shows exactly what SDKs inject into prompts.
Weaknesses
  • LLM observability space already has LangSmith, Helicone, and Arize.
  • No mention of request modification or replay capabilities for testing.
Target Audience

Backend developers, AI engineers debugging LLM integrations

Similar To

LangSmith · Helicone · mitmproxy

Post Description

Hi HN,

I built PrismCat because I got tired of not knowing what LLM SDKs (like LangChain or various OpenAI/Anthropic wrappers) were silently injecting into my prompts behind the scenes. It's often hard to debug why a streaming request froze, or why a function-calling agent returned malformed JSON, without diving deep into SDK code.

PrismCat is a single-binary, self-hosted proxy and UI designed to run silently 24/7 as an LLM "black box" logger.

How it works: It uses subdomain routing to achieve transparent proxying. For example, if you add an upstream named `openai`, PrismCat exposes `http://openai.localhost:8080`.

Modern operating systems and browsers resolve `*.localhost` to `127.0.0.1` automatically, so you don't even need to edit your `/etc/hosts` file. You just change one line in your code—the `base_url`—and everything gets captured transparently (including Server-Sent Events/streaming).

Key features: - Fully local-first: written in Go, stores data in SQLite, never sends your keys or prompts to a third party. - Interactive Playground: Tweak and replay failed requests in the UI without re-running your scripts. - SSE capture: Captures and reconstructs SSE chunks so you can inspect the raw flow. - Request Override (Opt-in): Intercept and rewrite outgoing requests/headers without code changes.

I'd love to hear your feedback on the implementation (especially the subdomain routing approach) and what features you'd like to see next!

Similar Projects