lazyllm
v0.2.3
Published
A Terminal User Interface (TUI) for managing local large language models using Ollama
Readme
LazyLLM
A Terminal User Interface (TUI) for managing local large language models using Ollama. Built with Go and the Bubble Tea framework, featuring a clean Gruvbox Dark aesthetic.
Features
- Model Management: View your installed models, including size, format, quantization, and last modified date.
- Resource Control: Easily load (
l) models into memory or unload (u) them to free up resources. - Model Discovery: Browse the Ollama registry (
r) to discover and pull new models. - Pull Models: Pull models (
p) directly from the UI with real-time progress bars. Supports pulling with the--insecureflag. - Quick Chat: Start a chat session with a model instantly by pressing
Enter. - Open With...: Quickly launch models with your favorite external CLI tools like Claude Code, OpenCode, and OpenClaw (
o). - Ollama Detection: Automatically detects if Ollama is installed or running, and offers to install it via the official script if missing.
Installation
Using npx (Recommended)
You can run LazyLLM instantly without installing anything if you have Node.js installed:
npx lazyllmManual Installation
Ensure you have Go installed, then clone and build the project:
git clone https://github.com/yourusername/lazyllm.git
cd lazyllm
go build -o lazyllm .Move the binary to somewhere in your $PATH to use it from anywhere.
sudo mv lazyllm /usr/local/bin/Usage
Simply run lazyllm in your terminal:
lazyllmKeybindings
Up/Downorj/k: Navigate lists/: Filter list itemsp: Pull a new modelr: Browse the Ollama Registryd: Delete the selected modell: Load the selected model into memoryu: Unload the selected model from memoryEnter: Launch the default chat command for the selected modelo: Open the "Open With..." menu to launch the model with an external toolq/ctrl+c: Quit the application
Configuration
You can customize the default chat command that runs when you press Enter on a model by setting the LAZYLLM_CHAT_CMD environment variable. Use {model} as a placeholder for the selected model name.
export LAZYLLM_CHAT_CMD="ollama run {model}" # This is the defaultBuilt With
- Ollama - Local LLM runner.
- Bubble Tea - The fun, functional and stateful way to build terminal apps.
- Bubbles - UI components for Bubble Tea.
- Lip Gloss - Style definitions for nice terminal layouts.
- goquery - Used for scraping the Ollama registry.
Releasing a new version
- Update the
versioninpackage.json(e.g."0.1.0"->"0.1.1"). - Commit your changes:
git commit -am "chore: bump version to 0.1.1" - Tag the release:
git tag v0.1.1 - Push the tag to trigger GitHub Actions (which compiles the binaries):
git push origin v0.1.1 - Publish to npm:
npm publish
