Introduzione
Tidiko AI è una piattaforma per permettere ai clienti di avere chatbot AI personalizzati per la loro azienda.
Architettura della Piattaforma
Componenti Principali
La piattaforma è composta da 3 elementi principali che lavorano insieme per fornire un sistema completo di gestione AI:
1. Laravel Application
- Scopo: Gestione delle logiche di business e interfaccia utente
- Funzionalità principali:
- Gestione account utenti (amministratori e clienti)
- Gestione assistenti e agenti AI
- Gestione piani di abbonamento
- Interfaccia amministrativa e clienti
- Chat widget JavaScript, Chat SDK headless e Chat REST API per l'integrazione custom
- Repository: Tidiko AI - Laravel Application
2. Node Agent (LangGraph)
- Scopo: Gestione delle chat AI e intermediario tra Laravel e Worker
- Tecnologie: LangGraph, Qdrant (vector store), GPT-4o-mini
- Funzionalità principali:
- Ricerca documenti nel vector store
- Generazione risposte AI tramite GPT-4o-mini
- Intermediazione richieste tra Laravel e Worker
- Gestione streaming delle risposte
- Repository: Tidiko AI - Node Agent cartella
main
3. Node Worker
- Scopo: Esecuzione attività in background
- Tecnologie: Hatchet (sistema di code), Qdrant (vector store), Jina (embedding), Crawlee + Playwright (crawling interno), MinIO (object storage)
- Funzionalità principali:
- Generazione embedding per ricerca documenti
- Elaborazione e salvataggio documenti su Qdrant
- Crawling avanzato con Crawlee + Playwright (sitemap ricorsive, batching automatico)
- Storage object con MinIO per risultati crawling
- Salvataggio messaggi chat su Laravel
- Repository: Tidiko AI - Node Worker cartella
hatchet
Flusso delle Interazioni
Laravel ↔ Node Agent (LangGraph)
Operazioni dirette:
- Caricamento e eliminazione risorse
- Creazione e eliminazione collection (una per assistente/agente)
- Invio messaggi utente tramite chat widget
- Ricezione streaming risposte AI
Node Agent (LangGraph) ↔ Worker
Il Node Agent funge da intermediario per:
- Adattamento parametri richieste da Laravel
- Invio richieste di elaborazione documenti
- Invio richieste di salvataggio chat
- Gestione di tutte le operazioni asincrone
Worker ↔ Laravel
Comunicazione limitata:
- Verifica spazio rimanente per caricamento link
- Salvataggio messaggi chat elaborati
- Nota: Il Worker non è esposto pubblicamente in rete
4. Plugin WordPress
- Scopo: Integrazione del widget chat nei siti WordPress
- Repository: Tidiko AI - WordPress Plugin
🆕 Tecnologie e Miglioramenti Recenti
Aggiornamenti 2026 (post ottobre 2025)
| Area | Feature | PR di riferimento |
|---|---|---|
| Chat | Modulo contatto HITL con interrupt() LangGraph | neting-ai #134, tidiko-node-agent #76 |
| Upload | Pipeline diretta Laravel → Worker + webhook HMAC | neting-ai #121, tidiko-node-agent #64 |
| RAG | Loader JSONL/Markdown, ricerca hybrid BM25+RRF | neting-ai #133, tidiko-node-agent #71 |
| Widget | Renderer Streamdown, embed iframe, reconnect socket | neting-ai #122 |
| Admin | UX migliorata (link azienda, bulk delete utenti) | neting-ai #118 |
| Ops | Deploy SSH con smoke check e manifest hash | neting-ai #120 |
| Agent | Tool feedback max 100 char con truncation | tidiko-node-agent #63 |
| Docs | Agent-ready: AGENTS.md, llms.txt, INDEX, legacy cleanup | tidiko-dev-docs |
Per agenti AI: leggere INDEX e il file AGENTS.md nella root del repository dev-docs.
Crawler Interno con Crawlee + Playwright
Il sistema di crawling è stato completamente rinnovato con:
- ✅ Crawlee: Framework moderno per web scraping con supporto avanzato per sitemap ricorsive
- ✅ Playwright: Browser automation per gestire contenuti JavaScript e SPA
- ✅ Batching Automatico: Divisione intelligente degli URL in batch da 10 per ottimizzare le performance
- ✅ Pipeline HTML → Markdown: Conversione avanzata con rimozione elementi non utili
- ✅ Fallback Crawl4AI: Mantiene compatibilità con il sistema precedente
MinIO Object Storage
Integrazione completa di MinIO per:
- ✅ Storage Risultati Crawling: Salvataggio persistente dei contenuti estratti
- ✅ Gestione URL Lists: Tracking degli URL processati e falliti
- ✅ Compatibilità S3: API standard per facilità di migrazione
- ✅ Console Web: Interfaccia amministrativa per monitoraggio
Docker Unificato con Turborepo
Sistema di build ottimizzato:
- ✅ Immagini Unificate: Un solo Dockerfile per app e worker
- ✅ Turborepo: Build parallela e cache intelligente
- ✅ Docker Compose Profiles: Gestione unificata di dev/prod/staging
- ✅ Hot Reload: Sviluppo rapido con mount del codice sorgente