Risposta rapida
Hermes Agent può essere self-hosted su un server domestico quando vuoi un agente AI che possa connettersi a un fornitore di modelli, usare strumenti e comunicare tramite un gateway di messaggistica come Telegram. Per la maggior parte dei principianti, la parte più difficile non è solo eseguire l'app. È capire dove avviene ogni azione: sul server host, all'interno del container, nell'ambiente dell'app o tramite una piattaforma di messaggistica.
Una configurazione self-hosted sicura dovrebbe rispondere a sei domande prima di risolvere qualsiasi problema:
- Sto lavorando sull'host o all'interno del container?
- Dove risiedono la configurazione dell'app, i log, i download e i dati di runtime?
- Quale utente possiede i file e esegue l'app?
- L'app riesce a raggiungere il fornitore di modelli e l'API di messaggistica?
- Le chiavi API, i token bot e le liste di permessi sono protetti?
- Come posso confermare che l'agente funziona ancora dopo il riavvio?
Se mantieni questi confini chiari, la configurazione di Hermes Agent diventa molto più facile da capire, verificare e correggere.
Cos'è Hermes Agent in una configurazione self-hosted su server domestico?
Hermes Agent è un workflow di agente AI self-hosted che può connettersi a un fornitore di modelli, usare strumenti e interagire tramite terminale o canali di messaggistica. Su un server domestico, spesso si trova tra il tuo modello AI, l'ambiente del server e un'interfaccia di comunicazione come una dashboard web o un gateway bot.
Il punto importante è che un agente self-hosted non è solo una chatbot. A seconda della configurazione, può interagire con file, strumenti da terminale, API di modelli, piattaforme di messaggistica e dati di runtime. Per questo motivo contano i percorsi, i permessi e i limiti di accesso.
Cosa fa Hermes Agent per l'interazione AI e la messaggistica
Hermes Agent può essere configurato per connettersi a un fornitore di modelli, avviare conversazioni, usare strumenti e connettere gateway di messaggistica. Il flusso di avvio rapido di Hermes Agent spiega che gli utenti possono installare Hermes, configurare un fornitore di modelli, avviare una prima conversazione, usare strumenti da terminale e successivamente connettere piattaforme di messaggistica tramite un gateway.
Per un utente di un server domestico, questo significa che Hermes può diventare un assistente AI persistente che gira su un dispositivo che controlli. Può anche introdurre nuovi livelli di configurazione: credenziali del modello, runtime dell'app, impostazioni del gateway e permessi di accesso.
Quando una configurazione WebUI è sufficiente
Una configurazione tramite WebUI è solitamente sufficiente quando l'app fornisce tutte le impostazioni necessarie direttamente nella dashboard. Questo è il percorso più sicuro per la maggior parte degli utenti perché evita di entrare nel terminale del container a meno che non manchi qualcosa o ci sia un problema.
Un approccio WebUI-first è adatto quando:
- l'app si installa correttamente;
- il fornitore del modello può essere configurato dall'interfaccia;
- il gateway di messaggistica può essere connesso senza accesso shell;
- la dashboard mostra chiaramente lo stato;
- i log non mostrano errori di permessi o di rete.
Se la dashboard ti offre l'opzione necessaria, usala prima. La configurazione del terminale del container dovrebbe essere considerata una soluzione di riserva o un percorso avanzato, non il primo passo predefinito per ogni utente.
Quando Hai Bisogno della Configurazione del Terminale del Container
Potresti aver bisogno della configurazione del terminale del container quando la dashboard non espone un'opzione richiesta, quando l'app richiede un wizard di configurazione dentro il container, o quando la risoluzione dei problemi richiede accesso ai log, all'ambiente di runtime o a comandi specifici dell'app.
Qui molti utenti si confondono. Un comando eseguito nella shell host potrebbe non influenzare l'app dentro il container. Un file visibile dentro il container potrebbe non esistere nello stesso percorso sull'host. Un errore di permessi può essere causato dall'utente che esegue l'app, non dal provider del modello o dal token bot.
Prima di usare il terminale del container, conferma esattamente quale shell stai usando e con quale utente stai eseguendo.
Cosa Ti Serve Prima di Iniziare
Una configurazione agente self-hosted richiede più di un server in esecuzione. Hai bisogno di un percorso di rete funzionante, accesso al modello, credenziali di messaggistica e permessi sufficienti per gestire l'app senza modificare accidentalmente file sbagliati.
Un Server Domestico con Accesso a Internet
Il server domestico dovrebbe poter accedere a internet se prevedi di usare un provider modello cloud o un'API di messaggistica. Se usi un endpoint modello locale, il server deve comunque poter raggiungere quell'endpoint sulla rete locale o sulla rete del container.
L'accesso alla rete è importante perché un agente può sembrare installato correttamente ma non rispondere. Per esempio, la connessione al provider del modello, il gateway di messaggistica o la dashboard possono dipendere da percorsi di rete diversi.
Inizia confermando:
- il server ha una connessione LAN stabile;
- il server può raggiungere l'endpoint o il provider del modello;
- il server può raggiungere l'API di messaggistica;
- la porta della dashboard è raggiungibile dal tuo browser;
- nessuna regola firewall blocca il gateway.
Un Provider di Modello o un Endpoint Modello Locale
Hermes ha bisogno di una connessione al modello prima di poter produrre risposte utili. Questo può essere un provider cloud, una chiave API o un endpoint compatibile con OpenAI. Alcuni utenti possono collegare un servizio modello locale se il loro hardware e stack modello lo supportano.
Il dettaglio importante della configurazione è che la configurazione del modello è separata da quella della messaggistica. Un bot può essere collegato correttamente mentre il provider del modello è errato, e un provider del modello può funzionare mentre il gateway del bot fallisce.
Tieni organizzati l'URL base del modello, la chiave API, il nome del modello e le impostazioni del contesto prima di iniziare la configurazione.
Un Account di Messaggistica e un Token Bot
Se vuoi parlare con l'agente tramite Telegram o un'altra piattaforma di messaggistica, hai bisogno di un account di messaggistica e di un token bot o credenziali gateway. Per Telegram, questo di solito significa creare un bot e salvare il suo token.
Un token bot deve essere trattato come una password. Telegram spiega che ogni bot riceve un token unico usato per autorizzare le richieste all'API Bot, e le richieste includono il token nel percorso API nel modello di autorizzazione token bot Telegram.
Non incollare un token bot in chat pubbliche, screenshot, log, issue GitHub o documenti condivisi. Se un token viene esposto, rigeneralo tramite il flusso ufficiale della piattaforma di messaggistica.
Indirizzo IP host, accesso login e permessi container
Hai bisogno dell'indirizzo IP host per accedere alla dashboard del server o connetterti via SSH. Hai anche bisogno di un accesso di login che ti permetta di gestire l'app in sicurezza.
Nei setup basati su container, i permessi sono spesso stratificati:
| Livello di permessi | Cosa controlla | Errore comune | Controllo di sicurezza |
|---|---|---|---|
| Utente host / account SSH | Accesso al filesystem del server domestico, comandi Docker e dashboard del server. | Dare per scontato che i permessi host si applichino automaticamente all'interno del container. | Conferma quale account è connesso e quali azioni a livello di server può eseguire. |
| Utente container | L'utente che esegue il processo dell'app e scrive i file dell'app all'interno del container. | Eseguire la configurazione come root quando l'app normalmente gira come utente non-root. | Controlla l'utente del container previsto prima di creare o modificare i dati dell'app. |
| Cartella host montata | La cartella host o il volume Docker esposto al container. | Modificare una cartella host che non è montata nel percorso letto dall'app. | Verifica il percorso sorgente host e il percorso di destinazione nel container. |
| Percorso runtime app | Dove vengono memorizzati configurazione, log, download, sessioni e dati temporanei. | Modificare file nel livello sbagliato o perdere le impostazioni dopo il riavvio. | Conferma che il percorso persista dopo il riavvio e sia scrivibile dall'utente dell'app. |
Non dare per scontato che root sia sempre la risposta giusta. Usare root al momento sbagliato può creare file di proprietà root che l'utente dell'app non può modificare successivamente.
Percorso Host vs Percorso Container vs Percorso Dati App
Questo è il concetto più importante per questo articolo. Molti problemi di configurazione di Hermes Agent derivano dalla confusione tra percorsi host, percorsi container, percorsi dati app, log, download e volumi montati.
Usa La Mappa di Controllo del Container Agent prima di eseguire o fare il debug dei comandi.
| Livello | Domanda da rispondere | Segnale di convalida | Errore tipico |
|---|---|---|---|
| Sistema host | È possibile raggiungere il server, la dashboard, la sessione SSH e il gestore dei container? | La dashboard o la sessione SSH si apre e il container è visibile come in esecuzione. | L'app sembra installata, ma il server o il container non sono effettivamente raggiungibili. |
| Runtime del container | Sono all'interno del container corretto e sto usando l'utente previsto? | La shell, la directory di lavoro e l'utente corrispondono al percorso di configurazione dell'app. | I comandi vengono eseguiti nella shell dell'host e non influenzano l'app all'interno del container. |
| Percorso dati app | Dove si trovano i file di configurazione, i log, i download e i file di runtime? | Le impostazioni e i log persistono dopo il riavvio e sono scrivibili dall'utente dell'app. | Le impostazioni scompaiono dopo il riavvio o l'app mostra errori di permesso negato. |
| Percorso di rete | Il container può raggiungere il fornitore del modello, l'endpoint locale e l'API di messaggistica? | I controlli del provider, le chiamate al gateway e l'accesso alla dashboard funzionano dal livello previsto. | Il modello o il bot falliscono anche se l'app sembra installata correttamente. |
| Credenziali e accesso | Le chiavi API, i token del bot e gli utenti consentiti sono configurati in modo sicuro? | I messaggi di test privati funzionano e i log non mostrano errori di token o accesso. | Il token del bot è invalido, esposto o l'ID utente consentito è errato. |
| Validazione del riavvio | La configurazione funziona ancora dopo il riavvio del gateway o del servizio? | Il bot risponde, la dashboard è funzionante e i log restano puliti dopo il riavvio. | La vecchia configurazione rimane attiva o le nuove impostazioni non vengono salvate. |
Cosa può vedere il sistema host
Il sistema host è il sistema operativo reale del server domestico. Può vedere le cartelle dell'host, i container Docker, le interfacce di rete, i dispositivi di archiviazione e i servizi a livello di sistema.
Se un'app è in esecuzione in Docker, l'host potrebbe non vedere il percorso interno dell'app nello stesso modo in cui lo vede il container. L'host potrebbe vedere un volume Docker, una cartella montata con bind mount o i metadati del container.
Ecco perché un percorso come /opt/data o /app/config potrebbe non significare la stessa cosa sull'host e all'interno del container.
Cosa può vedere il container
Un container vede il proprio filesystem. Può anche vedere le cartelle dell'host che sono state montate nel container. Il percorso del container è il percorso dal punto di vista dell'app.
Docker spiega che un bind mount monta un file o una directory dalla macchina host in un container, mentre un volume Docker viene creato all'interno della directory di storage di Docker sull'host ed è gestito da Docker tramite il modello di storage bind mount di Docker.
Questa distinzione è importante perché un container può accedere solo ai percorsi dell'host che sono montati al suo interno. Se l'app non riesce a trovare un file, il problema potrebbe essere che il file esiste sull'host ma non è montato nel percorso previsto all'interno del container.
Dove si trovano solitamente la configurazione dell'app e i dati di runtime
La configurazione dell'app, i log, i download e i dati di runtime possono trovarsi in posti diversi a seconda di come l'app è stata impacchettata. Alcuni dati possono essere all'interno del container, altri in un volume Docker e altri ancora montati direttamente dall'host.
Per un agente self-hosted, i tipi di dati comuni includono:
- impostazioni del fornitore del modello;
- configurazione del gateway;
- token del bot o impostazioni di messaggistica;
- log e stato della sessione;
- download temporanei;
- output degli strumenti;
- dati di runtime specifici dell'app.
La domanda importante non è solo "dove si trova il file?" ma "a quale livello appartiene questo file e quale utente può modificarlo?"

Perché la Confusione dei Percorsi Causa Problemi di Permessi e Dati
La confusione dei percorsi causa due problemi comuni. Primo, gli utenti modificano un file sull'host ma il container legge un file diverso nel proprio percorso. Secondo, gli utenti eseguono la configurazione come root e creano file che l'utente dell'app non può modificare in seguito.
I bind mount possono anche nascondere file esistenti nel container se una cartella host è montata sopra una directory del container non vuota. In tal caso, i file possono sembrare mancanti anche se sono solo nascosti dal mount.
Prima di risolvere un problema di dati dell'app, controlla il livello di runtime, i percorsi montati, il proprietario dei file e l'utente del container.
Come Configurare un Agente Self-Hosted Passo Dopo Passo
La configurazione di un agente self-hosted dovrebbe procedere da controlli a basso rischio a configurazione, poi validazione. Non iniziare cambiando permessi o riavviando servizi finché non sai quale livello sta fallendo.
Passo 1: Installa o Apri l'App dalla Dashboard del Tuo Server
Inizia con il metodo di installazione o avvio app più semplice supportato per il tuo server domestico. Se il server fornisce una dashboard per l'app, usala per confermare che Hermes Agent sia installato, visibile e in esecuzione.
A questo punto, non entrare nel container a meno che l'app non lo richieda. Prima conferma lo stato della dashboard, la versione dell'app se mostrata, e se è disponibile una pagina di configurazione.
Se l'app non si avvia affatto, controlla i log prima di modificare i file di configurazione.
Passo 2: Conferma l'IP dell'Host e l'Accesso alla Rete
Conferma l'indirizzo IP dell'host e assicurati che il tuo browser o terminale possa raggiungere il server. Lo stesso IP può essere usato per l'accesso alla dashboard, l'accesso SSH o l'accesso al gateway locale a seconda della configurazione.
Poi conferma l'accesso alla rete in uscita. Un bot di messaggistica non risponderà se il container non può raggiungere l'API di messaggistica, e un fornitore di modelli fallirà se il server non può raggiungere l'endpoint del modello.
Questo controllo aiuta a distinguere tra “configurazione app fallita” e “accesso rete fallito.”
Passo 3: Entra nel Container con l'Utente Corretto
Se è necessaria la configurazione del terminale del container, entra nel container con l'utente previsto dall'app. Questo è importante perché i file creati dall'utente sbagliato potrebbero causare errori di permessi in seguito.
Non considerare la shell dell'host e la shell del container come lo stesso ambiente. Un comando che funziona sull'host potrebbe non esistere all'interno del container, e un percorso file nel container potrebbe non esistere sull'host.
Prima di eseguire i comandi di configurazione, conferma:
- Sei all'interno del container corretto.
- Stai usando l'utente del container previsto.
- Sei nella directory di lavoro prevista.
- Il comando richiesto dall'app è disponibile.
- Sai come uscire e rientrare nel container.
Passo 4: Attiva l'Ambiente dell'App Prima di Eseguire i Comandi di Configurazione
Alcune app self-hosted utilizzano un ambiente virtuale o una configurazione shell specifica per l'app. Se l'ambiente non è attivato, il comando dell'app potrebbe non essere trovato o potrebbe essere eseguito con dipendenze errate.
Questo passaggio non è solo una formalità. Garantisce che la procedura guidata di configurazione, il comando del gateway e il comando di configurazione del modello vengano eseguiti nello stesso contesto di runtime dell'app.
Se un comando fallisce inaspettatamente, verifica se sei nel container giusto e se l'ambiente dell'app è attivo prima di reinstallare qualsiasi cosa.
Passo 5: Collega un Provider di Modelli o un Servizio Modello Locale
Configura il provider del modello, l'endpoint personalizzato o il servizio modello locale. Mantieni coerenti l'URL base, la chiave API, il nome del modello e le impostazioni relative al contesto con il provider che usi.
Se la configurazione del modello fallisce, verifica nell'ordine seguente:
- La chiave API è corretta?
- L'URL base è raggiungibile dal container?
- Il nome del modello è supportato dall'endpoint?
- L'app richiede un modello con contesto lungo?
- Ci sono problemi di rete o DNS all'interno del container?
Evita di confondere errori del modello con errori di messaggistica. Un bot Telegram che non risponde e un provider di modelli che fallisce sono correlati solo perché l'agente ha bisogno di entrambi per completare il flusso di lavoro.
Passo 6: Configura il Gateway di Messaggistica
Il gateway di messaggistica collega il runtime dell'agente a una piattaforma di messaggistica. Per Telegram, questo di solito comporta un token del bot e un'identità utente autorizzata.
Una buona configurazione del gateway dovrebbe definire chi può inviare messaggi all'agente, quale token del bot viene usato e se il bot è destinato a chat private, chat di gruppo o entrambe.
Non trattare mai un bot di messaggistica come un'interfaccia pubblica di default. Un agente self-hosted potrebbe avere accesso a strumenti, dati locali o azioni che non dovrebbero essere disponibili a ogni utente che può raggiungere il bot.
Passo 7: Riavvia il Gateway e Applica la Nuova Configurazione
Dopo modifiche al modello o al gateway di messaggistica, il gateway potrebbe dover essere riavviato prima che la nuova configurazione venga applicata. Il comportamento al riavvio è importante perché una configurazione può sembrare completa ma funzionare ancora con impostazioni vecchie.
Dopo il riavvio, convalida dal lato utente e dal lato server. Invia un messaggio di prova, controlla lo stato della dashboard e ispeziona i log per errori di permessi, token o rete.
Se la riconfigurazione non persiste dopo il riavvio, torna al percorso dei dati e ai confini di permesso.

Permessi, Token e Controllo Accessi
Gli agenti self-hosted combinano i permessi di runtime locali con le credenziali esterne. Ciò significa che una configurazione può funzionare tecnicamente ma essere comunque insicura se token, liste di autorizzazione o confini utente sono errati.
Perché l'Utente del Container è Importante
L'utente del container controlla quali file l'app può leggere e scrivere all'interno del container. Se i comandi di configurazione vengono eseguiti come root e successivamente l'app viene eseguita come utente non root, i dati dell'app potrebbero diventare inaccessibili all'app.
Questo spesso appare come un errore di permesso all'interno del percorso dei dati dell'app. La soluzione non è sempre continuare a usare root. In molti casi, l'approccio migliore è ripristinare la proprietà corretta ed eseguire l'app come l'utente previsto.
Usa root solo quando necessario per un passaggio specifico di recupero e evita di creare file di app di routine come root.
Perché le chiavi API e i token dei bot devono essere protetti
Le chiavi API e i token dei bot sono credenziali. Una chiave API modello può concedere accesso a un fornitore di modelli. Un token bot può autorizzare richieste come bot.
Non inserire questi valori in repository pubblici, screenshot, log condivisi o messaggi di supporto. Durante la risoluzione dei problemi, redigi i token prima di condividere qualsiasi configurazione o log.
Se un token è stato esposto, ruotalo invece di sperare che non venga usato.
Come la lista di utenti autorizzati controlla l'accesso privato
Una lista di utenti autorizzati limita quali utenti possono interagire con l'agente tramite un gateway di messaggistica. Questo è importante perché un bot di messaggistica può essere raggiungibile da più persone di quanto si pensi.
Per chat AI private, usa la lista di utenti autorizzati più piccola possibile. Conferma che l'ID utente autorizzato sia corretto e che i messaggi di test provengano da quell'account.
Se più persone devono avere accesso, aggiungile intenzionalmente invece di lasciare il bot aperto.
Perché i bot di messaggistica non dovrebbero essere trattati come interfacce pubbliche
Un bot di messaggistica può sembrare un'interfaccia chat normale, ma dietro potrebbe esserci un agente self-hosted con accesso a modelli, strumenti, sessioni e permessi runtime locali.
Questo lo rende diverso da un semplice bot di notifica. Dovrebbe avere regole di accesso chiare, token protetti e un percorso di rete controllato.
Per le chat di gruppo, sii prudente. I permessi di gruppo, la modalità privacy e lo stato di amministratore del bot possono cambiare quali messaggi il bot può vedere o a cui può rispondere.
Problemi comuni di configurazione e come risolverli
La maggior parte dei problemi di configurazione può essere ricondotta a uno di sei livelli: runtime, percorso dati, permessi, gateway, segreto o validazione.
Errori di permesso all'interno del percorso dei dati dell'app
Un errore di permesso di solito significa che l'utente attuale dell'app non può leggere o scrivere un file o una cartella richiesta. Questo può accadere quando un comando di configurazione precedente ha creato file come root o quando una cartella montata ha una proprietà errata.
Controlla prima questi aspetti:
- Sei all'interno del container o sull'host?
- Quale utente sta eseguendo l'app?
- Chi è il proprietario della cartella dei dati dell'app?
- Il percorso dei dati dell'app è montato dall'host?
- È stato eseguito un comando di configurazione precedentemente come root?
Non modificare ricorsivamente i permessi su cartelle ampie a meno che non si comprenda la destinazione. Correggi il percorso specifico più piccolo necessario.
Il bot non risponde dopo la configurazione
Un bot può non rispondere anche se Hermes Agent è in esecuzione. Il problema potrebbe essere il token, la lista di utenti autorizzati, il gateway di messaggistica, l'accesso alla rete o i permessi di gruppo.
Controlla in questo ordine:
- Conferma che il token del bot sia corretto.
- Conferma che l'ID utente sia autorizzato.
- Conferma che il gateway sia stato riavviato dopo la configurazione.
- Conferma che il container possa raggiungere l'API di messaggistica.
- Controlla i log dell'app per errori di token, rete o permessi.
- Testa la chat privata prima di eseguire il debug del comportamento della chat di gruppo.
Il test della chat privata è solitamente più semplice di quello di gruppo perché le autorizzazioni di gruppo aggiungono variabili extra.
Le impostazioni del fornitore del modello sono errate
Se il bot di messaggistica risponde ma le risposte del modello falliscono, il problema potrebbe essere il fornitore del modello. Controlla l'URL base, la chiave API, il nome del modello e la compatibilità dell'endpoint.
Per gli endpoint di modelli locali, verifica anche se il servizio modello è in esecuzione e raggiungibile dal contenitore. Un servizio raggiungibile dall'host potrebbe non esserlo dall'interno del contenitore se la rete è diversa.
Tieni separate le risoluzioni dei problemi del fornitore da quelle della messaggistica. Questo evita di modificare il bot quando il problema reale è la connessione al modello.
Il contenitore non riesce a raggiungere l'API di messaggistica
Se il contenitore non riesce a raggiungere l'API di messaggistica, il gateway non può ricevere o inviare messaggi correttamente. Ciò può essere causato da problemi DNS, regole firewall, impostazioni proxy o mancanza di accesso internet in uscita.
Verifica se l'host ha accesso a internet e se il contenitore ha accesso a internet. Questi non sono sempre identici.
Se il server domestico usa una VPN, un proxy o una rete ristretta, conferma che il contenitore è autorizzato a effettuare richieste HTTPS in uscita.
Le autorizzazioni della chat di gruppo o la modalità privacy bloccano le risposte
Il comportamento della chat di gruppo è più complicato rispetto alla chat privata. Un bot può rispondere in chat privata ma non in gruppo perché non vede il messaggio, non ha l'autorizzazione giusta o è influenzato dalle impostazioni sulla privacy.
Inizia con la convalida della chat privata. Poi testa separatamente la chat di gruppo.
Per l'uso di gruppo, verifica se il bot deve essere menzionato direttamente, se necessita di autorizzazioni di amministratore e se le sue impostazioni sulla privacy gli permettono di ricevere i messaggi richiesti.
Come verificare se Hermes Agent funziona
Una configurazione non è completa solo perché l'installazione è terminata. È completa quando modello, gateway, autorizzazioni, dashboard, log e comportamento di riconfigurazione superano tutti i controlli di base.
La procedura guidata di configurazione si completa senza errori
La procedura guidata di configurazione dovrebbe completarsi senza errori di comando mancante, errori del fornitore o errori di autorizzazione. Se fallisce, annota quale livello ha fallito prima di riprovare.
Un errore della procedura guidata di configurazione appartiene solitamente a una di queste categorie:
- credenziali del fornitore del modello;
- ambiente di runtime;
- autorizzazioni del contenitore;
- comando app mancante;
- accesso alla rete;
- configurazione del gateway.
Usa quella categoria per decidere il controllo successivo.
Il bot di messaggistica risponde a un messaggio di prova privato
La convalida più semplice della messaggistica è un messaggio di prova privato. Invia un messaggio base e conferma che il bot risponde.
Se la chat privata funziona, il token, la lista consentiti, il gateway e la connessione al modello sono probabilmente corretti. Se la chat di gruppo continua a non funzionare, concentrati sulle autorizzazioni di gruppo e sul comportamento della privacy invece di reinstallare l'app.
La chat privata dovrebbe essere il tuo primo test di messaggistica riuscito.
La dashboard mostra l'agente in esecuzione
La dashboard dovrebbe mostrare che l’agente o il gateway è in esecuzione, a seconda del sistema. Lo stato della dashboard è utile perché offre una vista lato server invece di affidarsi solo all’app di messaggistica.
Se la dashboard mostra stato fermo o non sano, controlla i log prima di cambiare token o impostazioni del modello.
Lo stato della dashboard e la risposta del bot dovrebbero concordare. Se uno funziona e l’altro fallisce, la discrepanza indica il livello che fallisce.
I Log Non Mostrano Errori di Permessi o Rete
I log non dovrebbero mostrare ripetutamente errori di permesso negato, token non valido, provider irraggiungibile, gateway fallito o timeout di rete.
Usa i log per determinare il passo successivo. Un errore di permesso indica proprietà del file o utente del container. Un errore di rete indica raggiungibilità API. Un errore di token indica configurazione delle credenziali.
Evita di correggere tutti i livelli contemporaneamente. Cambia una variabile, riavvia se necessario e testa di nuovo.
La Riconfigurazione Funziona Dopo il Riavvio
Una configurazione duratura dovrebbe sopravvivere a riavvii o riconfigurazioni. Dopo aver modificato le impostazioni del modello o del gateway, riavvia il servizio o il gateway richiesto e conferma che le nuove impostazioni siano ancora applicate.
Se le impostazioni scompaiono dopo il riavvio, controlla dove è memorizzata la configurazione e se il percorso dati dell’app è persistente.
Qui la conoscenza dei percorsi host, dei percorsi container e dei volumi montati diventa pratica.
Come Funziona in un Ambiente Reale di Server Domestico
In un ambiente reale di server domestico, il modello generale di configurazione rimane lo stesso: confermare il livello di runtime, controllare i percorsi dati, proteggere le credenziali, configurare l’accesso al gateway e convalidare con i log e lo stato della dashboard.
Una guida di configurazione specifica per dispositivo può quindi fornire il percorso esatto dei comandi. Ad esempio, il flusso di configurazione di ZimaOS Hermes Agent spiega un percorso di configurazione di Hermes Agent che include la configurazione del provider modello, il binding del bot Telegram, l’accesso al container Hermes come utente dell’app, l’attivazione dell’ambiente app, l’esecuzione dei comandi di configurazione, il controllo dello stato della dashboard e la risoluzione di errori di permessi o risposte del bot.
Per gli utenti che eseguono app self-hosted, gateway di messaggistica e flussi di lavoro agent leggeri su un server compatto sempre attivo, ZimaBoard 2 home ai server si adatta al tipo di ambiente in cui app Docker, accesso al terminale, servizi locali e percorsi dati specifici delle app devono essere compresi insieme. Non è l'unico modo per ospitare un agente, ma è un esempio rilevante del tipo di flusso di lavoro per server domestico descritto in questo articolo.
La lezione chiave è portabile: non memorizzare solo un comando di configurazione. Comprendi in quale livello stai operando e come convalidare il risultato.
FAQ
Posso configurare Hermes Agent solo tramite una dashboard web?
In molti casi, una dashboard web può essere sufficiente per la configurazione di base, specialmente se espone le impostazioni di modello e gateway. La configurazione tramite terminale del container diventa necessaria quando la dashboard non offre un'opzione richiesta o quando la risoluzione dei problemi richiede comandi a livello di app. Inizia con la WebUI quando possibile, poi usa il terminale del container solo se il percorso di configurazione lo richiede.
Perché devo entrare nel container invece che nella shell dell'host?
Alcuni comandi dell'app esistono solo all'interno del container perché lì risiedono il runtime dell'app e le dipendenze. Eseguire lo stesso comando sull'host potrebbe fallire o influenzare l'ambiente sbagliato. Entrare nel container con l'utente corretto aiuta a garantire che le modifiche di configurazione si applichino all'app stessa.
Qual è la differenza tra dati host e dati dell'app nel container?
I dati host risiedono nel filesystem del server domestico. I dati dell'app nel container possono risiedere all'interno del container, in un volume gestito da Docker o in una cartella host montata nel container. Lo stesso percorso di cartella visibile potrebbe non significare la stessa cosa tra host e container, quindi dovresti verificare i mount e le posizioni dei dati dell'app prima di modificare i file.
Perché Hermes Agent mostra un errore di permesso?
Un errore di permesso spesso significa che l'utente dell'app non può leggere o scrivere un file o una cartella richiesta. Questo può accadere se i file sono stati creati da root, se una cartella montata ha un proprietario errato o se il container è in esecuzione come un utente diverso da quello previsto. Controlla il livello runtime, l'utente del container, il percorso dei dati dell'app e la proprietà dei file prima di modificare permessi ampi.
Perché il mio bot Telegram non risponde?
Un bot Telegram potrebbe non rispondere perché il token è errato, l'ID utente non è autorizzato, il gateway non è stato riavviato, il container non riesce a raggiungere l'API di Telegram o i permessi della chat di gruppo bloccano il messaggio. Prova prima la chat privata perché elimina molte variabili legate ai gruppi. Poi controlla i log per errori di token, rete o permessi.
Devo esporre Hermes Agent direttamente su internet?
L'esposizione diretta al pubblico di solito non è la scelta migliore come impostazione predefinita per un agente self-hosted. Un bot di messaggistica o un gateway possono connettersi a strumenti, accesso ai modelli e possibilmente azioni runtime locali, quindi l'accesso dovrebbe essere limitato. Usa schemi di accesso privati, credenziali forti, liste di accesso e permessi conservativi prima di considerare qualsiasi configurazione esposta al pubblico.
Supporto e consigli
Altro da leggere

Come distribuire un LLM locale senza compromettere lo storage o le app
Questa guida spiega come distribuire in sicurezza un LLM locale su un NAS domestico condiviso o un server domestico. Copre i percorsi di archiviazione...

Cosa controllare prima di aggiungere una GPU a un NAS domestico
Questa guida spiega cosa verificare prima di aggiungere una GPU a un NAS domestico. Copre l'idoneità del carico di lavoro, gli slot PCIe, lo...

Quali sono i limiti dell'IA locale su un NAS domestico?
Questa guida spiega i limiti dell’IA locale su un NAS domestico in base al tipo di carico di lavoro, alle risorse hardware e all’impatto...

