A Letaido / docs
DOCUMENTATION

Console + sito pubblico

Due posti in cui Letaido mette ciò che costruisce: uno per il tuo team, uno per tutti gli altri.

Agent-A---Console.gif

1. La Console (interna)

La Console è un'app web riservata ai membri dove Letaido rilascia strumenti interni. Considerala come la superficie dashboard privata del tuo team.

  • Accessibile solo ai membri dell'area di lavoro. I visitatori anonimi vedono una schermata di accesso.
  • L'app legge l'identità dagli header di autenticazione, quindi ogni pagina sa chi la sta visualizzando (proprietario, amministratore, membro, visualizzatore).
  • Accesso al database: lettura/scrittura completa su console_db e console_site_db. Non può raggiungere site_db.

Build a Console page when:

  • L'output è solo per il tuo team.
  • Deve interrogare dati interni, chiamare connettori o mostrare controlli.
  • I clienti non dovrebbero mai vederlo.

Report, applicazioni, artefatti

Tutto ciò che Letaido crea nella Console rientra in una di tre categorie. La home page della Console ha una scheda per ciascuna (Report, Applications, Artifacts) più una scheda Home che elenca tutto insieme, dal più recente al meno recente, con la categoria come tag accanto al titolo.

2026-06-04_11-44-11.png

Categoria Cos'è Come lo usa il tuo team Esempi
Report Grafici, tabelle e visualizzazioni di dati filtrati Lo apri, leggi i numeri, filtri, esci Ahrefs Brand Authority, AI Visibility, Rank Monitor
Applicazioni Strumenti multi-pagina e flussi di lavoro complessi Incolli un input, esegui una pipeline, ottieni un output, torni alle esecuzioni passate Battlecard Generator, AI Visibility Dashboard, Paid Ads Campaign Builder
Artefatti Elementi singoli: un grafico, una tabella, uno snippet di testo Lo guardi, lo copi, lo condividi, vai avanti Anteprima email, blocco homepage, sezione AEO 101, Ahrefs Feature Library

Report

Un Report è qualcosa che apri per vedere lo stato di qualcosa. Il valore risiede nei dati visualizzati; l'interazione principale è la lettura o il filtraggio. I Report si aggiornano dalle loro fonti di dati secondo una pianificazione o su richiesta. Si trovano in /reports/<slug>/.

Chiedi un Report quando la risposta a "perché esiste" è "così possiamo vedere X a colpo d'occhio" (lo stato dei nostri posizionamenti, la quota di voce questa settimana, il delta dell'autorità del brand di questo mese).

Applicazioni

Un'applicazione è qualcosa che usi per lavorare. Il valore sta nel flusso di lavoro; l'interazione principale consiste nel creare, modificare o produrre. Le applicazioni ricevono input, eseguono pipeline a più fasi, memorizzano i risultati e permettono al tuo team di tornare alle esecuzioni precedenti. Si trovano in /applications/<slug>/.

Richiedi un'Applicazione quando la risposta a "perché esiste" è "così possiamo fare X ripetutamente senza ricostruire il workflow ogni volta" (generare una battlecard, eseguire un brief di campagna, produrre un pezzo di copy).

Artefatti

Un Artifact è un singolo elemento di output che inserisci una volta e a cui fai riferimento in seguito. È piccolo, autonomo e non vale la pena inserirlo in un'app o in un report completo. Gli Artifact si trovano in /artifacts/<slug>/.

Richiedi un Artifact quando la risposta a "perché esiste questo" è "così il team ha un posto dove guardarlo" (un'anteprima del blocco della homepage, l'email di questa settimana, una libreria di funzionalità, un documento di una pagina per le vendite).

Non sei sicuro di quale scegliere?

Descrivi il risultato e l'agente sceglie il bucket giusto.

  • "Mostrami l'autorità del brand settimanale per concorrente." → Report.
  • "Costruiscimi uno strumento dove incollo l'URL di un concorrente e ottengo una battlecard." → Application.
  • "Genera un'anteprima della newsletter della prossima settimana." → Artifact.

2. Il sito pubblico (esterno)

Il sito pubblico è la parte della tua area di lavoro raggiungibile da internet, completamente isolata dalla Console che usa il tuo team. Esiste per fornire contenuti alle persone esterne alla tua area di lavoro.

  • Pattern URL: /<route> per tutto. Pattern convenzionali: /u/<token> per report condivisi una tantum, /r2s/<token> per esecuzioni revisionate, /docs/<slug> per questi documenti.
  • La visibilità è controllata da un'opzione a livello di area di lavoro (vedi Modalità di seguito).
  • Accesso al database: lettura/scrittura site_db (ne è proprietario). Lettura/scrittura console_site_db. Non può raggiungere console_db.

Crea una pagina del sito pubblica quando: - Un cliente, un potenziale cliente o un visitatore anonimo deve vedere qualcosa. - Vuoi un URL condivisibile al di fuori di email o Slack. - I dati sono già stati generati (in Console o da un job) e devi solo servirli.

Tre modalità per il sito pubblico

Il sito pubblico ha tre stati, che possono essere attivati da un proprietario o un amministratore dall'interfaccia dell'area di lavoro. L'agente stesso non può modificarli.

  • off: nginx restituisce 403 a tutti. Il processo Flask è ancora in esecuzione; nessun traffico lo raggiunge.
  • authorized: i membri dell'area di lavoro e gli ospiti esplicitamente invitati possono visualizzarlo. Utile per la revisione prima di un lancio.
  • open: chiunque abbia l'URL può visualizzarlo. Tratta ogni visitatore come non attendibile.

Quando la modalità è open, l'agente applica impostazioni predefinite aggiuntive: validazione Pydantic su ogni input del visitatore, nessuna chiamata al connettore per visitatore (memorizzazione nella cache in site_db), approvazioni separate del connettore per la superficie del sito e l'output visibile viene sanificato prima della persistenza.

Comunicazione tra superfici

La Console e il sito pubblico sono eseguiti in processi diversi. Possono comunque cooperare, ma solo attraverso un canale esplicito: il database console_site_db.

  • La Console scrive i dati (un report, un brief, un artefatto) in una tabella.
  • Il sito pubblico legge quella tabella e la visualizza a un URL protetto da token.
  • Il sito può scrivere segnali di interazione (ad esempio "il visitatore ha cliccato") che la Console legge.

L'agente NON prova a inoltrare una query della Console attraverso una route pubblica. Il REVOKE è a livello di database; fallirebbe comunque, e sarebbe anche una progettazione sbagliata.

Last updated 2026-10-02