Gateway

Cos'è il Gateway?

Il Gateway è il cuore di Neotask, un singolo servizio a lunga esecuzione che gestisce tutte le sessioni degli agenti, i canali di messaggistica, l'esecuzione degli strumenti e le connessioni dei dispositivi. Tutto passa attraverso il Gateway.

È un server WebSocket che ascolta le connessioni dai client (app desktop, app mobili, dashboard web) e gestisce l'intero ciclo di vita dell'assistente AI.

Architettura

Componenti

Modalità di Binding

Modalità Descrizione
Loopback Predefinita. Accessibile solo da localhost (127.0.0.1)
LAN Accessibile sulla rete locale. Auto-scopribile tramite Bonjour/mDNS
Tailnet Accessibile tramite Tailscale VPN con MagicDNS
Custom Lega a un indirizzo specifico

Autenticazione

Metodo Descrizione
Token Bearer token WebSocket (UUID o stringa personalizzata)
Password Autenticazione basata su password (hash bcrypt)
Trusted Proxy Per proxy inversi con header pre-autenticati
Local Trust Connessioni loopback approvate automaticamente

Configurazione

Il Gateway è configurato tramite neotask.json (formato JSON5). Sezioni principali:

Sezione Controlla
agents Elenco agenti, valori predefiniti, workspace
gateway Porta, modalità di binding, autenticazione, comportamento di ricarica
channels Configurazione e credenziali per canale
tools Permessi degli strumenti, profili, sicurezza
plugins Caricamento plugin, abilitazione, configurazione per plugin
models Autenticazione provider, fallback, impostazioni provider
skills Directory delle skill, configurazione per skill
browser Profili browser, porte, modalità headless
cron Configurazione dello scheduler
session Regole di reset, soglie di compattazione
messages Impostazioni TTS, policy media
memory Configurazione dell'indicizzazione della memoria
security Sandboxing, modalità elevata, approvazioni

Hot Reload

Le modifiche alla configurazione possono essere applicate senza riavvio:

Modalità Comportamento
Hybrid (predefinita) Applica immediatamente le modifiche sicure, riavvia per le altre
Hot Applica solo le modifiche hot-safe, ignora le altre
Restart Riavvia per qualsiasi modifica che richiede ricarica
Off Nessun ricaricamento automatico

Accesso Remoto

Tailscale (Consigliato)

Tailscale fornisce accesso remoto sicuro e zero-config:

SSH Tunnel

Inoltra la porta del Gateway tramite SSH:

Regole di Sicurezza

Monitoraggio della Salute

Endpoint di Health

L'endpoint HTTP /health restituisce:

Probe

Scoperta

Bonjour/mDNS

Quando legato alla LAN, il Gateway si annuncia tramite DNS multicast:

Scoperta Wide-Area

Scopri i gateway sulla tua rete con timeout configurabili. Supporta sia Bonjour locale che scoperta DNS Tailscale.

Gateway Multipli

Puoi eseguire più istanze del Gateway sulla stessa macchina usando i profili:

Diagnostica

Doctor

Lo strumento di diagnostica integrato controlla:

Può correggere automaticamente molti problemi quando glielo viene permesso.

Logging

I log del Gateway vengono scritti in file JSONL giornalieri: