Open source · iOS e sistemi distribuiti
Codex Relay
v0.1.0
Un’app per seguire e continuare le sessioni Codex da iPhone, collegata alle proprie macchine tramite un Hub self-hosted.
Vedi Codex RelayGo · Swift · SwiftUI · WebSocket · Self-hosting


Panoramica
Seguire le sessioni Codex delle proprie macchine da iPhone, senza trasformare il client mobile in un terminale remoto generico.
Progettazione e sviluppo di Hub, Agent, protocollo di sincronizzazione, client SwiftUI nativo, PWA e flusso di rilascio.
Contesto
Seguire sessioni aperte su più macchine richiede di distinguere stato del lavoro, disponibilità della connessione e attività che attendono un intervento. Il client mobile non esegue un terminale remoto generico.
Architettura
Client SwiftUI, Hub e Agent in Go. Il client riceve aggiornamenti attraverso il servizio centrale; SQLite conserva lo stato applicativo. HTTP e WebSocket separano richieste e aggiornamenti, con riconnessione e revoca degli accessi esplicite.
- Release pubblica v0.1.0
- Hub e Agent in Go
- App iOS 17+ in SwiftUI e fallback PWA
Implementazione e decisioni
Hub e agent con responsabilità distinte
L’agent si collega al servizio centrale; il client riceve sessioni e aggiornamenti tramite l’Hub. Riconnessione e stato delle macchine sono problemi espliciti del protocollo, non dettagli nascosti nell’interfaccia.
La lettura è uno stato da preservare
La politica di scorrimento distingue chi segue l’ultimo messaggio da chi sta leggendo la cronologia. Una nuova risposta può aggiornare i dati senza spostare automaticamente il punto di lettura.
Accesso e persistenza
SQLite conserva informazioni applicative e token in forma hash. Revoca degli accessi e riconnessione richiedono percorsi di errore verificabili, oltre al caso di connessione riuscita.
Verifica
Le verifiche documentate includono test Go con race detector, test Swift, build del simulatore e controlli sugli installer. Queste prove non certificano ogni combinazione di rete e dispositivo: l’interazione su iPhone e le notifiche richiedono verifiche dedicate.
Stato attuale
Release pubblica v0.1.0, installazione self-hosted. Non è dichiarata una distribuzione su App Store. Il progetto è indipendente e non è un’app ufficiale OpenAI.