Matrix — Rete di Chat Decentralizzata
Matrix — Decentralized Chat Network — easy-to-understand guide based on official docs
Matrix — Rete di Chat Decentralizzata
Se hai mai desiderato una rete di chat dove non sei vincolato al server di qualcun altro, Matrix è la risposta. È un protocollo di messaggistica aperto e federato — pensa alla posta elettronica, ma per la messaggistica istantanea. Puoi gestire il tuo homeserver, oppure usarne uno pubblico come matrix.org. In entrambi i casi, mantieni il controllo delle tue conversazioni.
Hermes Agent si collega direttamente a Matrix usando l’SDK Python mautrix. Questo significa che il tuo bot può chattare con te tramite Matrix, usando tutti i poteri di Hermes che conosci e ami — uso di strumenti, memoria, ragionamento e risposte in tempo reale. Gestisce testo, file, immagini, audio, video e persino la crittografia end-to-end opzionale (E2EE).
E la parte migliore: Hermes funziona con qualsiasi homeserver Matrix. Synapse, Conduit, Dendrite, o il grande server pubblico su matrix.org — scegli quello che preferisci.
Come si Comporta Hermes
Una volta connesso, Hermes ha alcune impostazioni predefinite intelligenti. Ecco il riepilogo rapido:
| Contesto | Comportamento |
|---|---|
| Messaggi diretti (DM) | Hermes risponde a ogni messaggio. Non serve menzionarlo con @. Ogni DM ha la propria sessione. |
| Stanze | Per impostazione predefinita, Hermes attende una menzione @ prima di rispondere. Puoi modificarlo con MATRIX_REQUIRE_MENTION=false o aggiungere stanze specifiche a MATRIX_FREE_RESPONSE_ROOMS. Gli inviti alle stanze vengono accettati automaticamente. |
| Thread | Hermes supporta completamente i thread di Matrix. Rispondi in un thread e Hermes mantiene quel contesto separato dalla timeline principale della stanza. Nei thread in cui il bot ha già partecipato non serve una menzione. |
| Auto-threading | Per impostazione predefinita, Hermes crea automaticamente un thread per ogni risposta in una stanza. Questo mantiene le conversazioni ordinate e isolate. Puoi disattivarlo con MATRIX_AUTO_THREAD=false. |
| Comandi | I normali /comandi funzionano come previsto. Se il tuo client riserva / per i comandi locali, usa semplicemente !comandi — Hermes normalizza automaticamente questi alias. |
| Controlli interattivi | Le approvazioni per i comandi pericolosi e la selezione /model possono usare le reazioni di Matrix. Puoi persino limitare le reazioni di approvazione all’utente che ha richiesto l’azione. |
| Attività di pensiero e strumenti | Hermes usa pannelli threadati e modificabili per l’attività di pensiero e degli strumenti quando il progresso del gateway è abilitato. Niente più flooding della timeline principale con aggiornamenti. |
| Stanze condivise | Per impostazione predefinita, Hermes isola la cronologia delle sessioni per utente all’interno di una stanza. Due persone nella stessa stanza non condividono un’unica trascrizione a meno che tu non lo disabiliti esplicitamente. |
Consiglio da pro: Invita semplicemente l’utente Matrix del bot in qualsiasi stanza e si unirà e inizierà a rispondere automaticamente.
Cosa Può Fare Hermes su Matrix
Ecco l’elenco completo delle capacità, direttamente dalla dichiarazione dell’adattatore:
- Testo — sì
- Thread — sì
- Reazioni — sì
- Approvazioni — sì
- Selettore modello — sì
- Pannelli di pensiero — sì
- Immagini — sì (incluse più immagini)
- File — sì
- Voce/audio — sì
- Video — sì
- E2EE — disattivata / opzionale / obbligatoria (in base alla modalità)
- Diagnostica — sì
Modello di Sessione in Matrix
Per impostazione predefinita, Hermes mantiene le cose ben separate:
- Ogni DM ha la propria sessione
- Ogni thread ha il proprio namespace di sessione
- Ogni utente in una stanza condivisa ha la propria sessione all’interno di quella stanza
Questo è controllato da config.yaml:
group_sessions_per_user: true
Impostalo su false solo se vuoi esplicitamente una conversazione condivisa per l’intera stanza:
group_sessions_per_user: false
Le sessioni condivise possono essere utili per una stanza collaborativa, ma attenzione: gli utenti condividono la crescita del contesto e i costi dei token, il task lungo e pesante di una persona può gonfiare il contesto di tutti gli altri, e l’esecuzione in corso di una persona può interrompere il follow-up di un’altra.
Configurazione di Menzioni e Thread
Puoi modificare tutto tramite variabili d’ambiente o config.yaml. Ecco la versione YAML:
matrix:
require_mention: true # Richiedi @menzione nelle stanze (default: true)
allowed_users: # Utenti Matrix autorizzati a attivare i turni dell'agente
- "@alice:matrix.org"
allowed_rooms: # Stanze Matrix autorizzate a attivare i turni dell'agente
- "!abc123:matrix.org"
free_response_rooms: # Stanze esenti dal requisito di menzione
- "!abc123:matrix.org"
ignore_user_patterns: # Utenti fantasma bridge/appservice da ignorare
- "^@telegram_"
- "^@whatsapp_"
process_notices: false # Ignora m.notice per impostazione predefinita
session_scope: room # auto|room|thread; room è consigliato per stanze di progetto
auto_thread: true # Crea automaticamente thread per le risposte (default: true)
dm_mention_threads: false # Crea thread quando menzionato con @ in DM (default: false)
max_message_length: 16000 # Dimensione massima dei messaggi in uscita in caratteri (default: 16000, max: 65535)
Oppure tramite variabili d’ambiente:
MATRIX_REQUIRE_MENTION=true
MATRIX_ALLOWED_USERS=@alice:matrix.org
MATRIX_ALLOWED_ROOMS=!abc123:matrix.org
MATRIX_FREE_RESPONSE_ROOMS=!abc123:matrix.org,!def456:matrix.org
MATRIX_IGNORE_USER_PATTERNS='^@telegram_,^@whatsapp_'
MATRIX_PROCESS_NOTICES=false
MATRIX_SESSION_SCOPE=room # consigliato per un contesto stabile nelle stanze di progetto
MATRIX_AUTO_THREAD=true
MATRIX_DM_MENTION_THREADS=false
MATRIX_REACTIONS=true # default: true — reazioni emoji durante l'elaborazione
MATRIX_ALLOW_ROOM_MENTIONS=false
Consiglio: MATRIX_REACTIONS=false disattiva le reazioni emoji del ciclo di elaborazione (👀/✅/❌) che il bot pubblica sui messaggi in arrivo. Utile per stanze dove le reazioni sono rumorose o non supportate.
Altro consiglio: Hermes invia menzioni Matrix strutturate per ID espliciti come @alice:example.org. Le menzioni @room a livello di stanza sono controllate separatamente.
Questo è il quadro completo di Matrix. Che tu gestisca il tuo homeserver o voglia semplicemente una chat decentralizzata che rispetti la tua privacy, Hermes fa al caso tuo. Vai a invitare il tuo bot in una stanza e guardalo in azione!
📖 Documentazione ufficiale
この記事は Hermes Agent のDocumentazione ufficialeに基づいています:Documentazione ufficiale › user-guide/messaging/matrix