Gateway
Wat is de Gateway?
De Gateway is het hart van Neotask, een enkele langlopende service die alle agentsessies, berichtkanalen, tooluitvoering en apparaatverbindingen beheert. Alles loopt via de Gateway.
Het is een WebSocket-server die luistert naar verbindingen van clients (desktopapp, mobiele apps, webdashboard) en de volledige levenscyclus van de AI-assistent beheert.
Architectuur
Componenten
- WebSocket-server, Accepteert clientverbindingen (standaardpoort 18789)
- HTTP-server, Bedient de Control UI, canvas-host en gezondheidscontrolepunten
- Kanaaladapters, Onderhouden verbindingen met berichtenplatformen (WhatsApp, Telegram, Discord, enz.)
- Sessiebeheerder, Bewaart en beheert agentgesprekstoestand
- Cron-planner, Voert geplande taken en hartslagwakeups uit
- Plugin-runtime, Laadt en beheert de pluginlevenscyclus
- Browserdienst, Beheert Chromium-instanties voor webautomatisering
Bindingsmodi
| Modus | Beschrijving |
|---|---|
| Loopback | Standaard. Alleen toegankelijk vanaf localhost (127.0.0.1) |
| LAN | Toegankelijk op uw lokale netwerk. Automatisch te vinden via Bonjour/mDNS |
| Tailnet | Toegankelijk via Tailscale VPN met MagicDNS |
| Aangepast | Binden aan een specifiek adres |
Authenticatie
| Methode | Beschrijving |
|---|---|
| Token | WebSocket bearer-token (UUID of aangepaste reeks) |
| Wachtwoord | Op wachtwoord gebaseerde authenticatie (bcrypt-gehashd) |
| Vertrouwde proxy | Voor reverse proxies met pre-auth-headers |
| Lokaal vertrouwen | Loopback-verbindingen automatisch goedgekeurd |
Configuratie
De Gateway wordt geconfigureerd via neotask.json (JSON5-formaat). Belangrijke secties:
| Sectie | Beheert |
|---|---|
agents |
Agentlijst, standaardinstellingen, werkruimten |
gateway |
Poort, bindingsmodus, authenticatie, herlaadgedrag |
channels |
Per-kanaalconfiguratie en -inloggegevens |
tools |
Toolrechten, profielen, beveiliging |
plugins |
Pluginladen, inschakelen, per-pluginconfiguratie |
models |
Providerauthenticatie, fallbacks, providerinstellingen |
skills |
Vaardighedenmappen, per-vaardigheidsconfigutratie |
browser |
Browserprofielen, poorten, headless-modus |
cron |
Plannerconfiguratie |
session |
Resetregels, compactiedrempels |
messages |
TTS-instellingen, mediabeleid |
memory |
Geheugensindexeringsconfiguratie |
security |
Sandboxing, verhoogde modus, goedkeuringen |
Warm herladen
Configuratiewijzigingen kunnen worden toegepast zonder opnieuw op te starten:
| Modus | Gedrag |
|---|---|
| Hybride (standaard) | Veilige wijzigingen warm toepassen, voor anderen opnieuw opstarten |
| Warm | Alleen warm-veilige wijzigingen toepassen, anderen negeren |
| Opnieuw opstarten | Opnieuw opstarten bij elke herlaad-vereiste wijziging |
| Uit | Geen automatisch herladen |
Externe toegang
Tailscale (aanbevolen)
Tailscale biedt veilige, zero-config externe toegang:
- Koppel de Gateway aan uw Tailnet
- Toegang vanaf elk apparaat op hetzelfde Tailscale-netwerk
- Automatische DNS via MagicDNS
- Tailscale Serve kan het dashboard beschikbaar stellen via HTTPS
SSH-tunnel
Stuur de Gateway-poort door via SSH:
- Eenvoudig, veilig, geen configuratiewijzigingen nodig
- Werkt met elke SSH-compatibele machine
- Ondersteunt het volledige WebSocket-protocol en de Control UI
Beveiligingsregels
- Loopback + SSH/Tailscale is de veiligste combinatie
- Niet-loopback-binding vereist configuratie van het authenticatietoken
- TLS-vingerafdrukpinning beschikbaar voor extra beveiliging
- Browsercontrole is standaard uitgeschakeld voor externe verbindingen
Gezondheidsmonitoring
Gezondheidscontrolepunt
Het /health HTTP-controlepunt geeft terug:
- Gatewaystatus
- RPC-levendigheid
- Per-kanaalstatus (verbonden, authenticatiestatus, aantal accounts)
- Browsergereedheid
- Actieve agents en verbonden nodes
- Uptime
Probes
- RPC-levendigheid, WebSocket-verbinding + echoptest
- Kanaalstatus, Authenticatiecontrole + API-ping per kanaal
- Browsergereedheid, Poortcontrole, procescontrole
- Node-connectiviteit, Tijdstempel van laatste hartslag
Detectie
Bonjour/mDNS
Wanneer gebonden aan LAN, adverteert de Gateway zichzelf via multicast DNS:
- Servicetype:
_neotask-gw._tcp - Bevat poort, transport, TLS-status en Tailscale DNS-info
- Companion-apps vinden de Gateway automatisch
Brede detectie
Ontdek gateways over uw netwerk met configureerbare time-outs. Ondersteunt zowel lokale Bonjour als Tailscale DNS-detectie.
Meerdere gateways
U kunt meerdere Gateway-instanties op dezelfde machine uitvoeren met behulp van profielen:
- Elk profiel heeft afzonderlijke configuratie, werkruimte, sessies en toestand
- Verschillende poorten voor elke Gateway
- Handig voor isolatie (persoonlijk versus werk) of testen
Diagnostiek
Doctor
Het ingebouwde diagnostische hulpmiddel controleert:
- Configuratiegeldigheid
- Bestandsrechten
- Kanaalconnectiviteit
- Modelauthenticatiestatus
- Compatibiliteit met Node.js-versie
- Veelvoorkomende verkeerde configuraties
Het kan automatisch veel problemen oplossen wanneer toestemming wordt gegeven.
Logboekregistratie
Gateway-logboeken worden geschreven naar dagelijkse JSONL-bestanden:
- Tokengebruiksbijhouding per voltooiing
- Kanaalevenementlogboeken
- Foutlogboekregistratie met gestructureerde context
- Configureerbare logboekniveaus