RUDIS

Riferimento tecnico

Aggiornato 1 September 2026 / 1 settembre 2026

Italiano · English

Rete e porte

ModalitàBindURL tipico
LAN Wi‑Fi0.0.0.0:8099http://192.168.x.x:8099
Tailscale HTTPS0.0.0.0:8443https://100.x.x.x:8443

Script: ./scripts/serve-lan.sh (HTTP) e ./scripts/serve-lan.sh --https (TLS self-signed da data/ssl/rudis.crt o data/rudis.crt).

Endpoint utili

  • GET /health — demone vivo, modello caricato?
  • GET /api/network — IP LAN, indirizzo Tailscale 100.x, hostname
  • POST /api/verify — My Factum, Shopper Truth (header X-RUDIS-App)

Certificati e firewall

HTTPS usa certificati self-signed accettati dalle app RUDIS su host privati/Tailscale. Su macOS consenti connessioni in entrata per RUDIS/python se il firewall è attivo. Guest Wi‑Fi isolato blocca :8099 — usa Tailscale.

Modelli e cartelle

I modelli restano nelle cartelle configurate da RUDIS sul Mac (MLX/Hugging Face locali). Non vengono sincronizzati sul telefono. Scarica modelli dal Mac prima di usare le app.

Limiti payload (app iOS)

  • OCR testo — circa 12.000 caratteri max (Contract Lens, Invoice Check, …)
  • Trascrizione verbale — circa 16.000 caratteri max (RUDIS Minutes)
  • JPEG e file audio — non inviati; preprocessing on-device

Header X-RUDIS-App

Ogni app client invia un identificativo (es. factum, jobtailor, cinearchive) per routing e log sul backend. Non è tracking pubblicitario.

Troubleshooting

  • Connection refused — demone non avviato o bind su 127.0.0.1 invece di 0.0.0.0. Usa serve-lan.sh.
  • Errore certificato Tailscale — prova prima HTTP :8099 in LAN; poi Detect salva HTTPS 100.x.
  • Timeout — modello non caricato o Mac in sleep. Controlla menu bar e /health.
  • 403 / model missing — installa un default_model sul Mac.

Network and ports

ModeBindTypical URL
LAN Wi‑Fi0.0.0.0:8099http://192.168.x.x:8099
Tailscale HTTPS0.0.0.0:8443https://100.x.x.x:8443

Scripts: ./scripts/serve-lan.sh (HTTP) and ./scripts/serve-lan.sh --https (self-signed TLS from data/ssl/rudis.crt or data/rudis.crt).

Useful endpoints

  • GET /health — is the daemon up, model loaded?
  • GET /api/network — LAN IP, Tailscale 100.x address, hostname
  • POST /api/verify — My Factum, Shopper Truth (X-RUDIS-App header)

Certificates and firewall

HTTPS uses self-signed certs trusted by RUDIS apps on private/Tailscale hosts. On macOS allow incoming connections for RUDIS/python if the firewall is on. Isolated guest Wi‑Fi blocks :8099 — use Tailscale.

Models and folders

Models stay in RUDIS-configured folders on the Mac (local MLX/Hugging Face). They are not synced to the phone. Download models on the Mac before using apps.

Payload limits (iOS apps)

  • OCR text — about 12,000 characters max (Contract Lens, Invoice Check, …)
  • Minutes transcript — about 16,000 characters max (RUDIS Minutes)
  • JPEG and audio files — not uploaded; on-device preprocessing

X-RUDIS-App header

Each client app sends an identifier (e.g. factum, jobtailor, cinearchive) for routing and logging on the backend. Not advertising tracking.

Troubleshooting

  • Connection refused — daemon not running or bound to 127.0.0.1 instead of 0.0.0.0. Use serve-lan.sh.
  • Tailscale certificate error — try HTTP :8099 on LAN first; then Detect saves HTTPS 100.x.
  • Timeout — model not loaded or Mac asleep. Check menu bar and /health.
  • 403 / model missing — install a default_model on the Mac.