huggingface-local-models — Claude Code skill: local GGUF models
Finds a GGUF repo on Hugging Face, matches a quant to your memory and starts it with llama.cpp. No guessing at filenames.
npx skills add huggingface/skills --skill huggingface-local-models -a claude-codeWhat huggingface-local-models does
The skill walks the agent through one loop: search Hugging Face for GGUF repos that llama.cpp can load, pick a quant, start the model with llama-cli or llama-server. The search uses the apps=llama.cpp filter. Exact filenames come from the repo tree API, so the agent stops inventing a .gguf that isn't there.
You get a default workflow and three reference files: hub-discovery.md, quantization.md and hardware.md covering Metal, CUDA, ROCm and CPU builds. Launch works two ways — llama-cli -hf <repo>:<QUANT>, or --hf-repo with --hf-file when a repo names its files in its own style. Conversion with convert_hf_to_gguf.py and llama-quantize is the fallback for repos that ship no GGUF yet.
llama.cpp has to be there first, or neither binary runs: brew install llama.cpp, winget install llama.cpp, or clone the repo and make. Gated repos need hf auth login. Q4_K_M is the default quant; for code work the skill leans toward Q5_K_M or Q6_K while memory allows.
What it helps with
- find a GGUF repo that llama.cpp can actually load
- pick a quant that fits your RAM or VRAM
- spin up a local OpenAI-compatible endpoint
- look up the exact
.gguffilename inside a repo - convert Transformers weights when no GGUF exists
Example prompts for the agent
- Find a GGUF build of Qwen3.6 and serve it with `llama-server`, quant sized to my memory
- Which quant should I use in this repo for coding?
- Start the server on `localhost:8080` and curl it as a smoke test
How to install huggingface-local-models
1Skills CLI (Vercel)
npx skills add huggingface/skills --skill huggingface-local-models -a claude-code2Manually: put the files in place
~/.claude/skills/huggingface-local-models/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/huggingface-local-models/
1Skills CLI (Vercel)
npx skills add huggingface/skills --skill huggingface-local-models -a codex2Manually: put the files in place
.agents/skills/huggingface-local-models/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add huggingface/skills --skill huggingface-local-models -a cursor2Manually: put the files in place
.cursor/skills/huggingface-local-models/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install huggingface/skills huggingface-local-models2Manually: put the files in place
.github/skills/huggingface-local-models/SKILL.md1Skills CLI (Vercel)
npx skills add huggingface/skills --skill huggingface-local-models -a gemini-cli2Platform CLI
gemini skills install https://github.com/huggingface/skills --path skills/huggingface-local-modelsManually: put the files in place
.devin/skills/huggingface-local-models/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add huggingface/skills --skill huggingface-local-models -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set10
The whole set →Similar
Questions about huggingface-local-models
How do I install huggingface-local-models in Claude Code?
Run npx skills add huggingface/skills --skill huggingface-local-models -a claude-code. The skill lands at ~/.claude/skills/huggingface-local-models/SKILL.md.
What does huggingface-local-models do?
It takes the agent from hunting a GGUF repo on Hugging Face to running that model locally with llama-cli or llama-server, choosing a quant along the way.
What do I need before using it?
A working llama.cpp install, either from a package manager or a make build. Repos behind gated access also require hf auth login.
Source text
SKILL.md · Apache-2.0
---
name: huggingface-local-models
description: "Use to select models to run locally with llama.cpp and GGUF on CPU, Mac Metal, CUDA, or ROCm. Covers finding GGUFs, quant selection, running servers, exact GGUF file lookup, conversion, and OpenAI-compatible local serving."
---
# Hugging Face Local Models
Search the Hugging Face Hub for llama.cpp-compatible GGUF repos, choose the right quant, and launch the model with `llama-cli` or `llama-server`.
## Default Workflow
1. Search the Hub with `apps=llama.cpp`.
2. Open `https://huggingface.co/<repo>?local-app=llama.cpp`.
3. Prefer the exact HF local-app snippet and quant recommendation when it is visible.
4. Confirm exact `.gguf` filenames with `https://huggingface.co/api/models/<repo>/tree/main?recursive=true`.
5. Launch with `llama-cli -hf <repo>:<QUANT>` or `llama-server -hf <repo>:<QUANT>`.
6. Fall back to `--hf-repo` plus `--hf-file` when the repo uses custom file naming.
7. Convert from Transformers weights only if the repo does not already expose GGUF files.
## Quick Start
### Install llama.cpp
```bash
brew install llama.cpp
winget install llama.cpp
```
```bash
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
make
```
### Authenticate for gated repos
```bash
hf auth login
```
### Search the Hub
```text
https://huggingface.co/models?apps=llama.cpp&sort=trending
https://huggingface.co/models?search=Qwen3.6&apps=llama.cpp&sort=trending
https://huggingface.co/models?search=<term>&apps=llama.cpp&num_parameters=min:0,max:24B&sort=trending
```
### Run directly from the Hub
```bash
llama-cli -hf unsloth/Qwen3.6-35B-A3B-GGUF:UD-Q4_K_M
llama-server -hf unsloth/Qwen3.6-35B-A3B-GGUF:UD-Q4_K_M
```
### Run an exact GGUF file
```bash
llama-server \
--hf-repo unsloth/Qwen3.6-35B-A3B-GGUF \
--hf-file Qwen3.6-35B-A3B-UD-Q4_K_M.gguf \
-c 4096
```
### Convert only when no GGUF is available
```bash
hf download <repo-without-gguf> --local-dir ./model-src
python convert_hf_to_gguf.py ./model-src \
--outfile model-f16.gguf \
--outtype f16
llama-quantize model-f16.gguf model-q4_k_m.gguf Q4_K_M
```
### Smoke test a local server
```bash
llama-server -hf unsloth/Qwen3.6-35B-A3B-GGUF:UD-Q4_K_M
```
```bash
curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer no-key" \
-d '{
"messages": [
{"role": "user", "content": "Write a limerick about exception handling"}
]
}'
```
## Quant Choice
- Prefer the exact quant that HF marks as compatible on the `?local-app=llama.cpp` page.
- Keep repo-native labels such as `UD-Q4_K_M` instead of normalizing them.
- Default to `Q4_K_M` unless the repo page or hardware profile suggests otherwise.
- Prefer `Q5_K_M` or `Q6_K` for code or technical workloads when memory allows.
- Consider `Q3_K_M`, `Q4_K_S`, or repo-specific `IQ` / `UD-*` variants for tighter RAM or VRAM budgets.
- Treat `mmproj-*.gguf` files as projector weights, not the main checkpoint.
## Load References
- Read [hub-discovery.md](references/hub-discovery.md) for URL-first workflows, model search, tree API extraction, and command reconstruction.
- Read [quantization.md](references/quantization.md) for format tables, model scaling, quality tradeoffs, and `imatrix`.
- Read [hardware.md](references/hardware.md) for Metal, CUDA, ROCm, or CPU build and acceleration details.
## Resources
- llama.cpp: `https://github.com/ggml-org/llama.cpp`
- Hugging Face GGUF + llama.cpp docs: `https://huggingface.co/docs/hub/gguf-llamacpp`
- Hugging Face Local Apps docs: `https://huggingface.co/docs/hub/main/local-apps`
- Hugging Face Local Agents docs: `https://huggingface.co/docs/hub/agents-local`
- GGUF converter Space: `https://huggingface.co/spaces/ggml-org/gguf-my-repo`
© huggingface · Apache-2.0 · huggingface/skills