SIGIL vs ollama show + hf cache verify

These are the commands a developer reaches for first — and they are the right tools for what they do. This page is honest about what each covers and where SIGIL extends the surface into an audit-ready artifact.

Pick the built-in when

You are inspecting a single model interactively. You want to check that downloaded files are intact, see the Modelfile and tokenizer details, or list which features (completion, vision) the model advertises. The terminal output is the answer.

Pick SIGIL when

You need one artifact you can attach to a compliance review — JSON for diffing, Markdown for the ticket — that records manifest provenance, SPDX license family, every blob's SHA-256, the runtime's exposure (in observe mode), and a deterministic verdict from a policy with a completeness beside it (no LLM).

Axis-by-axis

What each command produces and what it leaves to you.

Axisollama showhf cache verifySIGIL
InputSingle Ollama model tagSingle HF repo (model / dataset / space)Entire Ollama store (or a single model)
Returnsmodelfile / parameters / template / details / model_info / capabilitiesChecksum verification result (file count + OK/FAIL)The session (JSON) with models, layers, licenses, listeners, findings, coverage, verdict and completeness; Markdown and AI-BOM v2 rendered from it
Integrity checkNoneFile checksum vs. HubStreaming SHA-256 of every Ollama blob vs. manifest digest
License familyModelfile LICENSE string onlyNoneSPDX id from the Ollama license layer — 10 families by shortname or body match
ProvenanceImplicit in the tagHF repo idregistry / namespace / model / tag tuple parsed from manifest path
Runtime API exposureOut of scopeOut of scopeWith --active api-probe: whether GET /api/version answered at one literal address, and the version it reported. Classifying the configured host is planned
Listener bind classificationOut of scopeOut of scopeObserve mode: the listener held by ollama serve, found through its fd table; loopback / wildcard / private / global from the address
Audit artifactTerminal text — not designed for archivalTerminal text — not designed for archivalCanonical JSON session (sigil-session/1) + Markdown render — diffable across review cycles
VerdictNonePass/fail per filePASS / WARN / FAIL from findings and a TOML policy, with completeness beside it (no LLM)
ReachOllama onlyHF cache onlyOllama today; llama.cpp / vLLM planned

What ollama show tells you, and what it doesn't

ollama show gemma4:e2b --license prints the license text declared in the Modelfile, and --modelfile prints the Modelfile itself. Useful for triage, not for attaching to a review ticket.

# ollama show output
Modelfile: ...
LICENSE: """Apache License Version 2.0, January 2004 ..."""
parameters: temperature 0.7
template: """..."""
# hf cache verify output
✅ Verified 13 file(s) for 'meta-llama/Llama-3.2-1B-Instruct' (model)
in ~/.cache/huggingface/hub/models--meta-llama--Llama-3.2-1B-Instruct/...
All checksums match.

Specification example (golden example 14, tool.version 0.0.0-example), not a real system. An excerpt of SIGIL's AI-BOM v2 Markdown, as it is written:

# SIGIL AI-BOM

| AI\-BOM |  |
|---|---|
| Schema | sigil\-aibom\/2 |
| Mode | observe |

## Outcome

**Verdict:** PASS · **Completeness:** COMPLETE

## Listeners

| Listener | Address | Port | Owner |
|---|---|---|---|
| listener\:tcp\/127\.0\.0\.1\:11434\#7001 | 127\.0\.0\.1 | 11434 | process 4242 \(start 1000\) |

## Models

| Model | Name | Provenance | Layers | License |
|---|---|---|---|---|
| model\:models\/registry\.ollama\.ai\/library\/m\/latest | m\:latest | registry\.ollama\.ai\/library\/m\:latest | 3 \(found 3\, absent 0\, unresolved 0\, not looked up 0\) | MIT |

What hf cache verify does well

For Hugging Face cache integrity, this is the right tool. It is fast, vendor-official, and answers exactly the question: "did my downloaded files match the Hub at fetch time?".

Where SIGIL extends the surface

SIGIL covers what the built-ins leave out: the auditable artifact, the deterministic verdict and completeness, the manifest-aware integrity check, and the runtime's exposure as it was when you audited.

Use both

Built-ins are daily tools. SIGIL is the per-review-cycle artifact.

When SIGIL is the wrong choice

If you only need ad-hoc inspection of one model and you don't need a versioned artifact, the built-ins are faster. If your entire AI footprint is the HF cache and you do not run Ollama, hf cache verify covers integrity and SIGIL adds nothing today — llama.cpp and vLLM support are planned, not current.

Sources

Facts above are checked against current vendor docs.