Command Reference
Every hali CLI command, its flags, and what it does.
hali search
Search HuggingFace for GGUF models.
hali search <query>
hali search mistral
hali search "llama 3 instruct"
hali search codellama
| Detail | Value |
|---|---|
| Source | HuggingFace API |
| Filter | GGUF format only |
| Sort | Download count, descending |
| Results | Top 20 repos |
Output lists repo names with download counts, numbered for use with hali pull.
hali pull
Download a model from HuggingFace (or LAN if a peer has it).
hali pull <model>
<model> can be:
| Format | Example | Prompts? |
|---|---|---|
| Search query | hali pull mistral | Yes — pick repo, then quantization |
| HF repo path | hali pull TheBloke/Mistral-7B-Instruct-v0.2-GGUF | Yes — pick quantization |
| Canonical model ID | hali pull mistral:7b:instruct:q4_k_m | No — direct download |
Behavior:
- Checks local cache first — if found, returns instantly ("Already downloaded")
- Checks LAN peers next (if daemon is running) — downloads from LAN at local speed
- Falls back to HuggingFace HTTP download
- Automatically hashes pieces (if
streaming_hashis on) - Auto-starts the daemon if not running
- Submits a signed manifest to the registry (if telemetry is enabled)
After download:
- Saves the GGUF to the cache
- Writes
metadata.jsonreceipt - Prints the magnet URI
- Model appears in
hali listandhali daemon status
hali list
List all models in the local cache.
hali list
Output:
MODEL ID SIZE DOWNLOADED
------------------------------------------ ---------- ----------
mistral:7b:instruct:q4_k_m 4.14 GB 2026-05-23
llama:8b:instruct:q5_k_m 5.67 GB 2026-05-22
hali daemon
Manage the background daemon (halid).
hali daemon start
Launch the daemon in the background.
hali daemon start
- No-op if already running
- Spawns as a detached background process
- Opens torrent port and loopback HTTP port
- Writes
daemon.addr(IPC address)
hali daemon stop
Stop the running daemon.
hali daemon stop
hali daemon status
Show daemon state.
hali daemon status
Output:
- PID, uptime, torrent port
- SEEDING section: models being seeded, status, peer count, magnet URIs
- LAN AVAILABLE section: models discovered from LAN peers
hali stats
Show live transfer statistics.
hali stats # Terminal — live speeds
hali stats --web # Browser — dashboard at http://127.0.0.1:47433
| Flag | Effect |
|---|---|
--web | Open web dashboard in default browser |
The dashboard auto-refreshes and shows download/upload speeds, session totals, active models, and clickable magnet links.
hali service
Manage the OS-level service (Windows SCM or Linux systemd).
The service is optional.
hali pullauto-starts the daemon when needed. Install the service only to keep the daemon running across reboots.
hali service install # Register and start the service
hali service uninstall # Stop and remove the service
hali service start # Start the service
hali service stop # Stop the service
hali service restart # Restart the service
hali service status # Show service state
hali service enable-lan # Bind daemon HTTP to 0.0.0.0 (Linux only)
hali service disable-lan # Bind daemon HTTP to 127.0.0.1 (Linux only)
| Platform | Service name | Manager |
|---|---|---|
| Windows | HaliDaemon | SCM |
| Linux | halid | systemd |
Service recovery (automatic restart on failure):
- 1st failure: restart after 5 seconds
- 2nd failure: restart after 30 seconds
- 3rd+ failure: restart after 60 seconds
hali export
Export cached models to inference runtimes.
hali export ollama <model_id>
Create an Ollama manifest pointing at the cached GGUF.
hali export ollama mistral:7b:instruct:q4_k_m
- No file copy — the manifest is a pointer to the cache
- Instant — idempotent, safe to run repeatedly
- After export,
ollama listshows the model immediately
hali export lmstudio <model_id>
Copy the GGUF into LM Studio's models directory.
hali export lmstudio mistral:7b:instruct:q4_k_m
- File is copied — LM Studio expects models in its own directory
- Original stays in the hali cache
- Both copies coexist
hali export all <model_id>
Export to every detected runtime.
hali export all mistral:7b:instruct:q4_k_m
hali runtime
Detect and list local inference runtimes.
hali runtime list
RUNTIME STATUS PATH
----------- ------- ----
Ollama running ~/.ollama
LM Studio stopped ~/.lmstudio
Detects Ollama and LM Studio by checking well-known paths. Custom paths can be set via hali config set ollama_models_dir and hali config set lmstudio_models_dir.
hali telemetry
Manage anonymous pull-event telemetry.
hali telemetry status # Show current state
hali telemetry enable # Opt in
hali telemetry disable # Opt out
See Telemetry Reference for exactly what's sent.
hali config
View and modify persistent daemon configuration.
hali config show # Print all settings
hali config set <key> <value> # Set a value
Supported config keys:
| Key | Values | Default |
|---|---|---|
streaming_hash | true / false | true |
debug | true / false | false |
telemetry.enabled | true / false | true |
telemetry.ingest_url | URL or default | Registry URL |
models_dir | path or default | Platform default |
lmstudio_models_dir | path or default | Auto-detected |
ollama_models_dir | path or default | Auto-detected |
daemon_listen_addr | 127.0.0.1 / 0.0.0.0 / default | 127.0.0.1 |
max_upload_mbps | integer (0 = unlimited) | 0 |
max_download_mbps | integer (0 = unlimited) | 0 |
lan.hmac_enabled | true / false | false |
lan.hmac_shared_secret | 64-char hex or default | Auto-generated |
See Config Reference for full details.
hali network
Network diagnostics and LAN peer management.
hali network status
Show effective network mode, transport capabilities, and reachability.
hali network status
hali network seen
Show recent LAN announcements from peers.
hali network seen # List recent announcements
hali network seen -p # Interactive picker, then download
hali network pull [model_id]
Download from LAN peers only (no HuggingFace fallback).
hali network pull # Interactive picker
hali network pull mistral:7b:instruct:q4_k_m # Direct
Fails if no LAN peer has the model.
hali profile
hali profile create
Create or update your signed publisher profile.
hali profile create # Interactive
hali profile create --display-name "..." --description "..." # Scripted
--website "..." --non-interactive
Prompts for:
- Display name
- Description
- Website (optional)
- Contact (optional)
The profile is signed with your Ed25519 key and submitted to the registry.
hali version
Print version information.
hali version
hali version 0.1.0 (abcdef1) oss
Command summary
| Command | What it does |
|---|---|
hali search <query> | Search HuggingFace for GGUF models |
hali pull <model> | Download and cache a model |
hali list | List all cached models |
hali daemon start | Start the background daemon |
hali daemon stop | Stop the daemon |
hali daemon status | Show daemon state and seeding list |
hali stats | Show live transfer speeds |
hali stats --web | Open web dashboard |
hali service install | Register OS service |
hali service start/stop/status | Manage OS service |
hali export ollama <id> | Export to Ollama |
hali export lmstudio <id> | Export to LM Studio |
hali export all <id> | Export to all runtimes |
hali runtime list | List detected runtimes |
hali telemetry enable/disable/status | Manage telemetry |
hali config show | View all settings |
hali config set <key> <val> | Change a setting |
hali network status | Check network capabilities |
hali network seen | Show LAN peer announcements |
hali network pull <id> | Download from LAN only |
hali profile create | Create publisher profile |
hali version | Print version info |