# LogWhispererAI 🌌 aka Sacchi's Server Sentinel > **UVP:** Il DevOps tascabile che traduce i crash del tuo server e ti dice l'esatto comando per risolverli in sicurezza, senza farti perdere ore su StackOverflow. [![Tests](https://img.shields.io/badge/tests-12%2F12%20passing-brightgreen)]() [![Version](https://img.shields.io/badge/version-0.1.0-blue)]() [![Sprint](https://img.shields.io/badge/sprint-1%20completed-success)]() [![Status](https://img.shields.io/badge/status-active%20development-orange)]() 🎯 Visione del Progetto LogWhisperer AI trasforma i log di sistema e database spesso incomprensibili in alert azionabili descritti in "plain language". È pensato per piccole web agency e freelance che gestiscono infrastrutture (AWS, DigitalOcean, VPS) senza avere un sistemista senior dedicato. ## πŸš€ Stato di Sviluppo | Feature | Stato | Sprint | |---------|-------|--------| | βœ… Log Ingestion Script | **Completato** | Sprint 1 | | πŸ”„ AI Processing Pipeline | *In pianificazione* | Sprint 2 | | πŸ”„ Alerting (Telegram/Slack) | *In pianificazione* | Sprint 2-3 | | πŸ”„ Landing Page & Onboarding | *In pianificazione* | Sprint 3 | ### FunzionalitΓ  MVP - **Log Ingestion** βœ…: Script Bash leggero per il monitoraggio (tail -f) di log critici (syslog, nginx, postgres). Invia payload JSON via HTTP POST a webhook. - **AI Processing Pipeline** πŸ”„: Workflow su n8n che analizza i log tramite LLM (OpenAI/Anthropic) applicando il Metodo Sacchi (Safety first, little often, double check). - **Alerting Umano** πŸ”„: Notifiche su Telegram/Slack con sintesi del problema, severitΓ  e comando esatto per la mitigazione. πŸ› οΈ Stack Tecnologico Core Logic: Python 3.12+ (in venv) Automation: n8n (self-hosted) Database: Supabase / PostgreSQL AI: GPT-4o-mini / Claude 3.5 Sonnet Agentic Dev: OpenCode.ai ## πŸ› οΈ Setup per lo Sviluppo Il progetto segue una metodologia **Spec-Driven** e **TDD** (Test-Driven Development). ### Clone e setup ```bash # Clone git clone https://github.com/LucaSacchiNet/LogWhispererAI.git cd LogWhispererAI # Ambiente virtuale python3 -m venv venv source venv/bin/activate # Installazione dipendenze pip install pytest ``` ### Eseguire i Test ```bash # Attiva l'ambiente virtuale source venv/bin/activate # Esegui tutti i test pytest tests/test_logwhisperer.py -v # Test con coverage (opzionale) pytest tests/test_logwhisperer.py -v --tb=short ``` ### Usare lo Script di Log Ingestion ```bash # Installazione (interattiva) ./scripts/install.sh # Verifica configurazione ./scripts/logwhisperer.sh --validate # Test pattern matching ./scripts/logwhisperer.sh --dry-run --test-line "FATAL: database error" # Avvio monitoraggio ./scripts/logwhisperer.sh --config /etc/logwhisperer/config.env ``` ## πŸ€– Agenti AI (OpenCode.ai) Il progetto utilizza uno **staff di agenti specializzati** definiti in `AGENTS.md`: | Agente | Ruolo | |--------|-------| | `@product-manager` | Definisce roadmap e valida UVP | | `@tech-lead` | Architettura e specifiche tecniche | | `@python-developer` | Implementazione Python (TDD) | | `@bash-expert` | Script Bash e ottimizzazioni | | `@security-auditor` | VulnerabilitΓ  e compliance | | `@qa-engineer` | Test suite e coverage | | `@documentation-agent` | Docs e changelog | Per avviare una sessione di sviluppo: ```bash opencode ``` ## πŸ“œ Metodologia e Standard - **Git**: [Conventional Commits](https://www.conventionalcommits.org/) (`feat:`, `fix:`, `docs:`, `test:`) - **Changelog**: [Common Changelog](https://common-changelog.org/) standard - **Testing**: Pytest per logica Python e test integrazione per script Bash - **Metodo Sacchi**: Safety first, little often, double check ### Documentazione - `docs/prd.md` - Product Requirements Document - `docs/specs/` - Specifiche tecniche per ogni sprint - `docs/reviews/` - Project Review post-sprint - `docs/sprintN_verification.md` - Report verifica sprint ## πŸ“ Struttura del Progetto ``` LogWhispererAI/ β”œβ”€β”€ AGENTS.md # Regole agenti e Metodo Sacchi β”œβ”€β”€ CHANGELOG.md # Log modifiche β”œβ”€β”€ README.md # Questo file β”œβ”€β”€ LICENSE.md # Licenza proprietaria β”œβ”€β”€ docs/ β”‚ β”œβ”€β”€ prd.md # Product Requirements Document β”‚ β”œβ”€β”€ specs/ β”‚ β”‚ └── ingestion_script.md # Specifica tecnica Sprint 1 β”‚ β”œβ”€β”€ reviews/ β”‚ β”‚ └── sprint1_review.md # Project Review Sprint 1 β”‚ └── sprint1_verification.md # Report verifica β”œβ”€β”€ scripts/ β”‚ β”œβ”€β”€ logwhisperer.sh # Script principale β”‚ └── install.sh # Script installazione β”œβ”€β”€ tests/ β”‚ β”œβ”€β”€ __init__.py β”‚ └── test_logwhisperer.py # Test suite Python └── .opencode/ β”œβ”€β”€ agents/ # Configurazioni agenti └── skills/ # Skills TDD e Git ``` ## βš–οΈ Licenza e Note Legali Questo software Γ¨ **proprietΓ  riservata** di Luca Sacchi Ricciardi. Tutti i diritti sono riservati. Per ogni controversia derivante dall'uso o dallo sviluppo di questo software, il foro competente in via esclusiva Γ¨ il **Foro di Milano, Italia**. Per i dettagli completi, consultare il file [LICENSE.md](LICENSE.md). ## πŸ‘¨β€πŸ’» Autore **Luca Sacchi Ricciardi** - 🌐 [Sito Web / Blog](https://lucasacchi.net) - πŸ“Ί [Canale YouTube](https://www.youtube.com/@lucasacchinet) - πŸ”— [LinkedIn](https://www.linkedin.com/in/lucasacchi) - βœ‰οΈ luca@lucasacchi.net ---

LogWhispererAI - "Safety first, little often, double check"