llmfit-hardware-model-matcher
llmfit-hardware-model-matcher — an installable skill for AI agents.
By reason-machines · 1,387 installs
npx skills add reason-machines/trending-skills --skill llmfit-hardware-model-matcher
Source repository · Upstream listing
llmfit Hardware Model Matcher
Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection.
llmfit detects your system's RAM, CPU, and GPU then scores hundreds of LLM models across quality, speed, fit, and context dimensions — telling you exactly which models will run well on your hardware. It ships with an interactive TUI and a CLI, supports multi GPU, MoE architectures, dynamic quantization, and local runtime providers (Ollama, llama.cpp, MLX, Docker Model Runner).
Installation
macOS / Linux (Homebrew)
Quick install script
Windows (Scoop)
Docker / Podman
From source (Rust)
Core Concepts
Fit tiers : perfect (runs great), good (runs well), marginal (runs but tight), too tight (won't run)
Scoring dimensions : quality, speed (tok/s estimate), fit (memory headroom), context capacity
Run modes : GPU, CPU+GPU offload, CPU only, MoE
Quantization : automatically selects best quant (e.g. Q4 K M, Q5 K S, mlx 4bit) for your hardware
Providers : Ollama, llama.cpp, MLX, Docker Model Runner
Key Commands
Launch Interactive TUI
CLI Table Output
Show System Hardware Detection
List All Models
Search Models
Fit Analysis
Model Detail
Recommendations
Hardware Planning (invert: what hardware do I need?)
REST API Server (for cluster scheduling)
Hardware Overrides
When autodetection fails (VMs, broken nvidia smi, passthrough setups):
Accepted suffixes: G / GB / GiB , M / MB / MiB , T / TB / TiB (case insensitive).
Context Length Cap
REST API Reference
Start the server:
Endpoints
Query Parameters for /models and /models/top
Param Values Description
limit / n integer Max rows returned
min fit perfect\ good\ marginal\ too tight Minimum fit tier
perfect true\ false Force perfect only
runtime any\ mlx\ llamacpp Filter by runtime
use case general\ coding\ reasoning\ chat\ multimodal\ embedding Use case filter
provider string Substring match on provider
search string Free text across name/provider/size/use case
sort score\ tps\ params\ mem\ ctx\ date\ use case Sort column
include too tight true\ false Include non runnable models
max context integer Per request context cap
Scripting & Automation Examples
Bash: Get top coding models as JSON
Bash: Check if a specific model fits
Bash: Auto pull top Ollama model
Python: Query the REST API
Python: Hardware aware model selector for agents
Docker Compose: Node scheduler pattern
TUI Key Reference
Key Action
↑ / ↓ or j / k Navigate models
/ Search (name, provider, params, use case)
Esc / Enter Exit search
Ctrl U Clear search
f Cycle fit filter: All → Runnable → Perfect → Good → Marginal
a Cycle availability: All → GGUF Avail → Installed
s Cycle sort: Score → Params → Mem% → Ctx → Date → Use Case
t Cycle color theme (auto saved)
v Visual mode (multi select for comparison)
V Select mode (column based filtering)
p Plan mode (what hardware needed for this model?)
P Provider filter popup
U Use case filter popup
C Capability filter popup
m Mark model for comparison
c Compare view (marked vs selected)
d Download model (via detected runtime)
r Refresh installed models from runtimes
Enter Toggle detail view
g / G Jump to top/bottom
q Quit
Themes
t cycles: Default → Dracula → Solarized → Nord → Monokai → Gruvbox
Theme saved to ~/.config/llmfit/theme
GPU Detection Details
GPU Vendor Detection Method
NVIDIA nvidia smi (multi GPU, aggregates VRAM)
AMD rocm smi
Intel Arc sysfs (discrete) / lspci (integrated)
Apple Silicon system profiler (unified memory = VRAM)
Ascend npu smi
Common Patterns
"What can I run on my 16GB M2 Mac?"
"I have a 3090 (24GB VRAM), what coding models fit?"
"Can Llama 70B run on my machine?"
"Show me only models already installed in Ollama"
"Script: find best model and start Ollama"
"API: poll node capabilities for cluster scheduler"
Troubleshooting
GPU not detected / wrong VRAM reported
nvidia smi not found but you have an NVIDIA GPU
Models show as too tight but you have enough RAM
REST API: test endpoints
Apple Silicon: VRAM shows as system RAM (expected)
Context length environment variable