Skip to main content

Telemetry

What hali reports, why it matters, and how it makes the registry better for everyone.


The philosophy

hali's telemetry is opt-in, anonymous, and purpose-built. It exists for exactly one reason: to make the public registry smarter, safer, and faster.

Every pull event you report contributes to the trust scoring system that helps the community identify reliable models and publishers. Your anonymous reports verify that models are valid, downloadable, and come from publishers who deliver what they promise.

There is no tracking. No analytics. No "product improvement" data collection. No user behavior monitoring. Just factual, anonymous reports that say "this model was successfully downloaded from this source at this time."


What gets reported

When telemetry is enabled, the daemon sends a pull event to the registry for each model you download:

{
"model_id": "mistral:7b:instruct:q4_k_m",
"revision": "abc123...",
"infohash": "a3f9c21b4d67...",
"magnet": "magnet:?xt=urn:btih:a3f9c21b4d67...",
"source_url": "https://huggingface.co/TheBloke/...",
"local_hash": "def789...",
"timestamp": 1700000000,
"publisher_pubkey": "abc123...64-char-hex...",
"publisher_sig": "def789...128-char-hex..."
}
FieldWhat it isWhy it's sent
model_idCanonical model identifierMaps the event to a specific model
revisionHuggingFace revision hashVerifies the exact version downloaded
infohashBitTorrent infohashLinks to the torrent swarm
magnetMagnet URIEnables anyone to join the swarm
source_urlHuggingFace download URLVerifies the model's origin
local_hashHash of the local GGUF fileVerifies file integrity
timestampWhen the download completedFeeds the maturity score
publisher_pubkeyYour Ed25519 public key (64 hex)Attributes the report to your identity
publisher_sigEd25519 signature (128 hex)Proves the report came from you

What is NOT collected

hali telemetry does not collect or report:

  • Your IP address
  • Your machine name or hostname
  • Your username or real identity
  • Your geographic location
  • Your download speed or bandwidth
  • What other models you have cached
  • How often you use hali
  • Your Ollama/LM Studio usage
  • Anything about your system, your files, or your behavior

The telemetry payload is a single JSON object per download — it contains only the public metadata about the model you just pulled and a cryptographic signature proving it came from your key.


Why reporting matters

Every pull event you report makes the registry better for the community. Your anonymous download confirmations feed the trust scoring engine, which helps everyone identify quality models and reliable publishers. You're contributing real signal that protects the ecosystem from bad actors — just by using the tool normally.

How your reports improve the registry

1. Trust scoring

The download_success_rate component of the trust score (20% weight) depends entirely on download reports from peers like you:

trust_score = 0.4 × format_validity
+ 0.3 × publisher_reputation
+ 0.2 × download_success_rate ← YOUR REPORTS
+ 0.1 × maturity_factor

Each successful download you report increases the success rate for that model. Each failure report (e.g., corrupted file) decreases it. Over time, this separates reliable models from unreliable ones.

2. Publisher reputation

Your reports flow up to publisher reputation scores. Publishers who consistently deliver valid, downloadable models earn higher reputations. Their models rank higher in search. The community benefits from better signal.

3. Visibility

Models below the visibility threshold (score < 0.3) are hidden from search results. Your reports are part of the mechanism that surfaces good models and suppresses bad ones.

4. Freshness

The maturity_factor component (10% weight) uses timestamps from pull events to measure how long a model has been in active circulation. Older models with consistent download success get a maturity bonus.


The signing pipeline

Every telemetry event is cryptographically signed with your Ed25519 keypair. This proves:

  • The report genuinely came from you (not a third party)
  • The data hasn't been tampered with in transit
  • The report can be attributed to a specific publisher identity

The signing flow:

Events that fail signature verification are rejected silently by the backend. They do not affect trust scores.


Managing telemetry

Check current state

hali telemetry status
# Telemetry is enabled.

Enable

hali telemetry enable

Pull events are signed and submitted after each download.

Disable

hali telemetry disable

When disabled:

  • Pull events are still generated and queued on disk
  • They are never sent to the registry
  • Manifest generation still happens locally (the torrent is created, the infohash is computed)
  • The manifest is not submitted to the registry — your model stays local

Re-enable

hali telemetry enable
hali service restart # Submits queued events and manifests

When you re-enable telemetry, the daemon submits any queued events from when telemetry was disabled.


FAQ

Can I use hali without telemetry?

Yes. Disable it with hali telemetry disable. Everything still works — downloading, caching, LAN sharing, exporting to runtimes. The only things that stop: manifest submission to the registry (your models stay local) and pull event reporting.

Can I see what data was sent?

Enable debug logging:

hali config set debug true
hali service restart

The daemon will log the telemetry payload before sending.

What happens if the registry is unreachable?

Events are queued locally and retried. If the registry is down, nothing is lost — events are sent when connectivity returns.

Is my privacy at risk?

Your only identifier is a randomly generated Ed25519 public key. No personal information is attached. If you've created a publisher profile (display name, website, etc.), that profile is publicly visible on the registry — it's your choice what goes in it.

Does disabling telemetry hurt other users?

Indirectly, yes. Without pull reports, the trust scoring system has less data to work with. Models take longer to accumulate download success metrics. New publishers take longer to build reputation. The registry is marginally less useful without your contribution.

But this is your choice — hali works perfectly without telemetry, just without the global registry benefit.