Skip to main content

llama-buddy

A friendly CLI wrapper for llama.cpp

Manage, download, and serve local LLMs with a single command. Think of it as an ollama-like experience built on top of llama-server.

Python 3.10+ License: MIT PyPI


Features

  • Background server — start/stop/restart llama-server as a daemon
  • Multi-model routing — preset-based configuration with automatic model load/unload
  • Interactive downloads — search HuggingFace, pick a quant, download with progress and resume
  • Rich terminal UI — tables, panels, interactive selectors, and live search
  • GGUF inspector — view model metadata, architecture, and sampling parameters
  • Server props — inspect active sampling parameters on loaded models
  • Sampling sync — automatically applies GGUF-recommended sampling params to your preset
  • Per-model settings — context size, GPU layers, flash attention, and more
  • Multi-token prediction — models that ship an MTP head get speculative decoding switched on by themselves. A head shipped as a separate file is downloaded with the model and only wired in once the installed llama.cpp is confirmed to load it; the check runs again after every llama.cpp upgrade
  • Idle sleeping — llama-server releases the weights of a model after a configurable idle timeout
  • VRAM tracking — automatically parses server logs to show memory usage per model
  • Auto-sync — preset file stays in sync with the llama.cpp cache automatically

Screenshots

Model listing — llb models

llb models

Interactive download — llb download

llb download

llb download quantization

Model info — llb info

llb info

Installation

pipx install llama-buddy

Or with uv:

uv tool install llama-buddy

This installs the llb command into an isolated environment and adds it to your PATH.

Prerequisites

  • Python 3.10+
  • llama.cpp installed and llama-server on your PATH

Quick start

# Download a model (interactive search)
llb download

# Or specify directly
llb download mistralai/Ministral-3-3B-Instruct-2512-GGUF:Q4_K_M

# Start the server
llb start

# List all models
llb models

# Chat with a model (uses llama-cli)
llb chat

# Inspect model metadata
llb info

# Show active sampling params for a loaded model
llb props

# Apply GGUF-recommended sampling params to all models
llb info --apply-sampling

# Configure settings (interactive TUI)
llb settings

# Open the web UI in your browser
llb open

# Stop the server
llb stop

Commands

Command Description
llb start Start llama-server in the background. Extra args are forwarded.
llb stop Stop the running server.
llb restart Restart the server.
llb status Show whether the server is running.
llb models List all models with status, size, VRAM usage, and grouping. Supports --sort size.
llb download [model] Download a model. Interactive HF search when no model given.
llb remove [model] Remove a model with confirmation dialog. --keep-files to preserve GGUFs.
llb info [model] Show GGUF metadata. Interactive selector when no model given.
llb info --apply-sampling [model] Write GGUF sampling params into the preset. All models when no model given.
llb props [model] Show active server sampling params for a loaded model.
llb settings Interactive editor for global and per-model settings.
llb chat [model] Interactive chat via llama-cli. Model selector when no model given.
llb open Open the llama-server web UI in your browser.
llb logs Tail the server log file.

Configuration

Config files live in ~/.config/llama/:

File Purpose
models.ini Model preset file — sections are HF repo IDs, auto-synced with cache
settings.json Global server settings (port, context size, GPU layers, etc.)
vram.json Cached per-model VRAM usage (parsed from server logs)
server.pid PID of the running server
server.log Server stdout/stderr

Per-model settings

Run llb settings and select Model Settings to configure per-model overrides:

  • Context size, GPU layers, flash attention
  • Custom aliases
  • Any llama-server parameter

Development

# Clone and install
git clone https://github.com/thilomichael/llama-buddy.git
cd llama-buddy
uv sync

# Run
uv run llb <command>

# Test
uv run pytest

# Lint
uv run ruff check src/ tests/

License

MIT

Metadata

Release files for llama-buddy 0.1.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llama-buddy 0.1.14
File Size Uploaded
llama_buddy-0.1.14.tar.gz 42.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llama-buddy 0.1.14
File Interpreter ABI Platform
llama_buddy-0.1.14-py3-none-any.whl Python 3 none any Details

Total release size: 92.6 kB

Release files / llama_buddy-0.1.14.tar.gz

Download URL llama_buddy-0.1.14.tar.gz
Size 42.0 kB
Tags Source
SHA-256 checksum
How to use checksums
f2e1654d04ded9dbb214f75a9dbfce5942652a486ca1db853f73e829c5987e68
BLAKE2b-256 checksum
How to use checksums
fd51598d1dc15164f1c229be71c9d614c438149a023ab88cc1c13ba08582fdba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / llama_buddy-0.1.14-py3-none-any.whl

Download URL llama_buddy-0.1.14-py3-none-any.whl
Size 50.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
53f4fcec9a7faf07c2a8c7b9432b8c73074a4e2f9c1ce198058b5f034c7d004f
BLAKE2b-256 checksum
How to use checksums
a9ca3e9d6d775b3052925d82e0b3eaa4f4a8d3129f0e1be5e68ecceabe4fde56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.1.16

2 release files

0.1.15

2 release files

This release

0.1.14 This release

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page