AlexsJones/llmfit

★ 38,505⑂ 2,485

Hundreds of models & providers. One command to find what runs on your hardware.

About AlexsJones/llmfit

AlexsJones/llmfit is an open-source project on GitHub, mainly written in Rust. Hundreds of models & providers. One command to find what runs on your hardware. It currently holds 38,505 stars and 2,485 forks with 51 open issues, and was last pushed on 2026-10-30 (repository created 2026-02-15).

Project Overview

AI Homed tracks it on the AI Models & LLM Tools board.

GitHub Repository Details

Repository AlexsJones/llmfit · default branch main · size 33882 KB · watchers 113 · source: GitHub REST API and repository README

README

llmfit

https://github.com/AlexsJones/llmfit/blob/HEAD/llmfit icon

English · 中文 · 日本語

https://github.com/AlexsJones/llmfit/blob/HEAD/CI https://github.com/AlexsJones/llmfit/blob/HEAD/Crates.io https://github.com/AlexsJones/llmfit/blob/HEAD/License https://github.com/AlexsJones/llmfit/blob/HEAD/Signed with SignPath

https://github.com/AlexsJones/llmfit/blob/HEAD/AlexsJones%2Fllmfit | Trendshift

Find out which open-source Large Language Models (LLMs) your hardware can comfortably run. llmfit inspects your CPU, system RAM, GPU(s), VRAM, and accelerator configuration to recommend models across popular quantizations.

📊 New: benchmark & share — real numbers from your machine, better estimates for everyone. Download a model, serve it, and measure real tok/s on your hardware — then contribute the results back to the project as a PR, straight from the TUI. No gh CLI, no third-party account. Every run is saved locally first, your own measurements replace estimates in the fit table, and each merged submission ships in the next release: anyone on identical hardware gets measured ✓ numbers before they ever run a benchmark. Follow the step-by-step benchmarking guide →

llmfit demo: searching for a model, simulating different hardware, and planning a deployment

Features

A terminal tool that right-sizes LLM models to your system's RAM, CPU, and GPU. Detects your hardware, scores each model across quality, speed, fit, and context dimensions, and tells you which ones will actually run well on your machine.

Ships with an interactive TUI (default) and a classic CLI mode. Supports multi-GPU setups, MoE architectures, dynamic quantization selection, speed estimation, and local runtime providers (Ollama, llama.cpp, MLX, Docker Model Runner, LM Studio).

---

Sister projects

---

Documentation

| | | |---|---| | Get started | Install · Usage · How it works | | Guides | TUI guide · Benchmarking step-by-step · CLI & automation · Runtime providers · OpenClaw integration | | Reference | How it works (full) · Platform & GPU support · Custom models · Development | | Project | Contributing · Alternatives · Code signing · License |

---

Install

Windows

WinGet

winget install --exact --id AlexsJones.llmfit

Scoop

scoop install llmfit

If Scoop is not installed, follow the Scoop installation guide.

macOS / Linux

Homebrew

Prebuilt binary (recommended, works on all macOS/Linux versions):

brew install AlexsJones/llmfit/llmfit

Or from the homebrew-core formula, which builds from source on macOS versions without a bottle:

brew install llmfit

MacPorts

port install llmfit

Quick install

curl -fsSL https://llmfit.axjns.dev/install.sh | sh

Downloads the latest release binary from GitHub and installs it to /usr/local/bin (or ~/.local/bin if no sudo).

Install to ~/.local/bin without sudo:

curl -fsSL https://llmfit.axjns.dev/install.sh | sh -s -- --local

uv / pip

To install or update llmfit:
uv tool install -U llmfit

To run without installing:

uvx llmfit

You can also install llmfit as a Python package in the normal way with tools such as pip or uv.

Pre-built Binaries

Download release binaries for Linux, macOS, and Windows directly from the GitHub Releases page. Windows binaries are only published once that release's sign-windows job has signed, repackaged, and re-checksummed them; if signing is skipped or fails, the Windows assets are held back and attached by a re-run of the release workflow (with its fresh signing requests approved) rather than shipped unsigned. Releases before v1.1.19 did not have this guard, so verify the executable signature on older versions if you require a signed binary.

---

Container Deployment

llmfit provides a multi-architecture Docker image (ghcr.io/alexsjones/llmfit) supporting both interactive CLI/TUI and headless Web UI / API server modes.

Interactive TUI

To launch the interactive TUI instead, pass the global --tui flag:

docker run -it --rm ghcr.io/alexsjones/llmfit --tui

Non-Interactive

This prints JSON from llmfit recommend command.

docker run ghcr.io/alexsjones/llmfit

This prints JSON from llmfit recommend command. The JSON could be further queried with jq.

podman run ghcr.io/alexsjones/llmfit recommend --use-case coding | jq '.models[].name'
To launch the interactive TUI instead, pass the global --tui flag:
docker run --rm -it ghcr.io/alexsjones/llmfit --tui

From source

git clone https://github.com/AlexsJones/llmfit.git
cd llmfit
cargo build --release

binary is at target/release/llmfit

---

Usage

Terminal Interface (TUI)

Launch llmfit in your terminal without flags to start the interactive browser:

llmfit          # interactive TUI: your hardware, every model, ranked

The TUI shows your detected specs at the top and every model scored for fit, speed, quality, and context. See the TUI guide for navigation, planning, simulation, downloads, the community leaderboard, and benchmarking.

Keybindings inside the TUI:

Command Line Options

# Print hardware telemetry and recommended models to standard output
llmfit recommend

Output system profile and recommendations in raw JSON format

llmfit recommend --json

Estimate SSD capacity for keeping three runnable models

llmfit storage --keep 3 --selection largest --json

Start the native HTTP API server

llmfit serve --host 0.0.0.0 --port 8787

See model library storage for selection, OS reserve, download scratch, free-space headroom, and hardware simulation.

Web UI & API Server

docker run -d -p 8787:8787 ghcr.io/alexsjones/llmfit serve

Docker Compose

---
services:
  llmfit:
    image: ghcr.io/alexsjones/llmfit:latest
    container_name: llmfit
    restart: unless-stopped
    command: ["serve", "--host", "0.0.0.0", "--port", "8787"]
    ports:
  • "8787:8787"
healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8787/health"] interval: 15s timeout: 5s retries: 3 start_period: 10s

For scripts, agents, and classic terminal output:

llmfit fit                    # table of all models ranked by fit
llmfit fit --show-incompatible # also show backend-incompatible models as non-runnable
llmfit recommend --json       # top picks as JSON (agent/script consumption)
llmfit info ""         # one model: fit analysis, estimate basis, verify commands
llmfit bench                  # measure real tok/s/TTFT against your running provider
llmfit doctor                 # hardware detection report for bug reports
llmfit serve                  # start the api and web user interface

Full reference: CLI & automation.

---

Community & Benchmarks

llmfit includes hardware detection and performance benchmarks contributed by the community. You can share your hardware benchmark results using:

llmfit bench --share

---

How it works

llmfit detects your hardware (RAM, CPU, GPU/VRAM, backend), then scores every model in its catalog across four dimensions: memory fit, estimated speed, quality, and context. Speed estimates come from a memory-bandwidth model grounded in runtime sampling and real community measurements — and every estimate ships its inputs, so llmfit info shows exactly what a number assumes and how to verify it on your machine.

Full detail, including the estimation formulas and the model database: How llmfit works.

---

Contributing

Contributions are welcome, especially new models.

Before submitting a PR

Please run cargo fmt before pushing your changes. Most CI check failures are caused by unformatted code:

cargo fmt

Guides for adding models — locally (no rebuild) or to the built-in catalog: Custom models.

---

Alternatives

If you're looking for a different approach, check out llm-checker -- a Node.js CLI tool with Ollama integration that can pull and benchmark models directly. It takes a more hands-on approach by actually running models on your hardware via Ollama, rather than estimating from specs. Good if you already have Ollama installed and want to test real-world performance. Note that it doesn't support MoE (Mixture-of-Experts) architectures -- all models are treated as dense, so memory estimates for models like Mixtral or DeepSeek-V3 will reflect total parameter count rather than the smaller active subset.

---

Code signing

llmfit's Windows release binaries are intended to be digitally signed (Authenticode) via SignPath.io, with a free code signing certificate provided by the SignPath Foundation. The release workflow only attaches Windows assets after the sign-windows job has signed, repackaged, and re-checksummed them; when signing is skipped or fails, the Windows zips (and the PyPI Windows wheels built from them) are held back until the workflow is re-run against the tag and the new signing requests that re-run submits are approved. Releases before v1.1.19 could publish an unsigned Windows artifact, so verify the executable signature on those before relying on it.

Signing happens automatically in the release pipeline: only artifacts built by GitHub Actions from this repository are submitted for signing, and signing requests are approved by the project maintainer (@AlexsJones).

Code signing policy: see the SignPath Foundation code signing policy and terms.

Privacy: this program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it. llmfit only contacts external services when you explicitly use the corresponding feature (e.g. model downloads, runtime provider queries, or the community leaderboard).

---

License

MIT

GitHub Stars & Activity

38,505Stars
2,485Forks
51Open issues
RustLanguage

GitHub Popularity

GitHub stars38,505
Forks2,485
Open issues51
Primary languageRust
LicenseMIT
Stars gained today0
Created2026-02-15
Last pushed2026-10-30

Trending History

Trending statusnot on today's boards

Related AI Projects

1

rtk-ai / rtk

Rust★ 83,857⑂ 0
→
2

janhq / jan

Rust★ 45,000⑂ 0
→
3

tinyhumansai / openhuman

Rust★ 42,145⑂ 0
→
4

Zackriya-Solutions / meetily

Rust★ 31,902⑂ 0
→
5

morluto / rea

TypeScript★ 320,235⑂ 0
→
6

affaan-m / ECC

JavaScript★ 283,160⑂ 0
→
7

NousResearch / hermes-agent

Python★ 254,906⑂ 0
→
8

firecrawl / firecrawl

TypeScript★ 192,727⑂ 0
→

More AI Rankings