Intercept, trace, and swap LLMs without leaving the terminal
It exists to let developers swap between LLM providers and build terminal AI tools without giving up control of tool execution.

What it does
Lemmy is a TypeScript monorepo that pairs a multi-provider LLM client with a terminal UI framework. The core library normalizes Anthropic, OpenAI, and Google Gemini behind one interface, handles conversation context manually, and requires you to execute tools yourself rather than letting the model run unsupervised. The TUI package renders terminal interfaces with differential updates, and the apps folder includes utilities like claude-bridge to reroute Claude Code traffic to other providers and claude-trace to visualize those conversations.
The interesting bit
The project keeps humans in the loop by design: tool calls are exposed for interception instead of being hidden inside a black-box loop. claude-bridge effectively decouples Claude Code’s IDE integration from Anthropic’s API, while claude-trace turns opaque agent conversations into inspectable artifacts.
Key highlights
- Unified LLM client for Anthropic, OpenAI, and Google with Zod-typed tool definitions
- Manual tool execution with interception hooks for controlled workflows
- Terminal UI framework with differential rendering and composable components
claude-bridgeintercepts Claude Code requests to use other LLM providersclaude-tracevisualizes Claude Code conversations; covered by Simon Willison
Caveats
lemmy-chatis explicitly marked work in progress- Several apps (red-teaming, snap-happy) are narrow examples or single-purpose utilities
- Package-level documentation lives in subfolder READMEs; the top-level README is an overview
Verdict Developers building terminal-first AI tools or trying to audit and redirect Claude Code traffic will find the most value here; those looking for a fully autonomous agent framework should look elsewhere.
Frequently asked
- What is badlogic/lemmy?
- It exists to let developers swap between LLM providers and build terminal AI tools without giving up control of tool execution.
- Is lemmy open source?
- Yes — badlogic/lemmy is an open-source project tracked on heatdrop.
- What language is lemmy written in?
- badlogic/lemmy is primarily written in TypeScript.
- How popular is lemmy?
- badlogic/lemmy has 1.6k stars on GitHub.
- Where can I find lemmy?
- badlogic/lemmy is on GitHub at https://github.com/badlogic/lemmy.