Software gestionale per agenti AI: come capire se regge
Un gestionale o CRM con AI significava un software con l'AI integrata. Con agenti come Claude Code, Codex e Cursor, significa sempre più spesso un software gestionale che il tuo agente può usare: clienti, commesse, fatture e pagamenti. Questo pone una domanda prima di ogni altra: può farlo in sicurezza? Nel luglio 2025 l'agente AI del servizio di sviluppo Replit ha cancellato il database di produzione di un utente durante un code freeze esplicito. Poi ha sostenuto che il ripristino fosse impossibile, anche se esisteva un backup. Replit ha reagito separando automaticamente i database di sviluppo e di produzione (heise online, 25 lug 2025). La lezione: un'istruzione in un prompt non è un blocco. Se un agente può fare danni dipende dal software che usa. In un gestionale, un errore non resta nel codice, arriva al tuo cliente. Le otto verifiche qui sotto valgono per qualsiasi software che affidi a un agente. Alla fine vedi come le gestisce Time Momentum.
1. Un'interfaccia che l'agente sa leggere
Un agente che clicca tra le schermate o estrae HTML tira a indovinare. Verifica che ci sia una riga di comando o un'API che restituisce JSON ed espone il proprio schema: quali comandi esistono, quali campi sono obbligatori, quali valori sono ammessi. Anche gli errori dovrebbero essere leggibili dalle macchine, con un codice che dice all'agente se correggere la chiamata, attendere o chiedere a te.
Verifica anche la copertura. Ciò che funziona solo nell'interfaccia, l'agente lo fa con un giro lungo o non lo fa affatto.
2. Permessi separati
All'agente serve una chiave propria che puoi revocare in qualsiasi momento, non la tua password. Ancora meglio se la chiave viene scambiata con un token a breve durata invece di viaggiare con ogni richiesta.
Alcune azioni non vanno nelle mani di un agente: creare nuove chiavi, eliminare l'account, cambiare la password. Il software dovrebbe bloccarle sul server per l'accesso degli agenti, non soltanto sconsigliarle nella documentazione.
3. Conferma per tutto ciò che è irreversibile
Una fattura emessa non si può ritirare, solo stornare. Il software dovrebbe contrassegnare questi passaggi come distruttivi ed eseguirli solo con una conferma esplicita. Quella conferma deve stare nello strumento stesso; una frase nel prompt non ha protetto il database di Replit.
4. Simulazione (dry run)
Prima che l'agente modifichi qualcosa di importante, dovrebbe poterti mostrare esattamente cosa invierebbe: metodo, indirizzo, corpo. Così approvi ciò che hai visto, non un'intenzione a parole.
5. Idempotenza
Gli agenti riprovano. Se la connessione cade, l'agente ci riprova, e senza protezione la voce di tempo o il pagamento finiscono due volte nel sistema. Verifica se la creazione di un record accetta un ID tuo che permette al server di riconoscere un nuovo tentativo, e se le operazioni in blocco riescono per intero o per niente. Dove un passaggio non va ripetuto, l'errore dovrebbe dirlo.
6. Log tracciabili
Dopo vuoi sapere cosa è successo. Significa che ogni azione è un comando leggibile che puoi eseguire tu stesso, che le richieste si possono registrare su richiesta senza esporre la chiave e che puoi vedere quale chiave era attiva e quando. Una chiave per agente rende tutto univoco.
7. Annullare
Gli errori capitano. Conta come si correggono: modificare o eliminare bozze, correggere registrazioni, stornare ciò che è stato emesso, con una traccia invece di una sovrascrittura silenziosa. Ciò che è già fatturato dovrebbe essere bloccato, così una correzione in un punto non cambia una fattura conclusa.
8. Limiti del piano
Quando l'agente incontra un limite, come una funzione fuori dal tuo piano o troppe richieste, il software dovrebbe dirlo chiaramente: con un motivo e indicando se serve attendere o se devi decidere tu. Un agente che scambia un limite per un errore continua a riprovare o cerca una scorciatoia.
Le otto verifiche in Time Momentum
Il tuo agente usa Time Momentum tramite la riga di comando tm.
- Quali comandi esistono, quali sono distruttivi?
tm --json - Quali campi accetta una fattura?
tm schema invoices --json - Mostrami la richiesta prima di emetterla
tm invoices finalize <invoice-id> --dry-run - Va bene, emettila
tm invoices finalize <invoice-id> --yes - Registra i 90 minuti di stamattina
tm timers add --project-id <project-id> --started-at "today 09:00" --duration 1:30 --client-id <uuid> - Storna la fattura
tm invoices cancel <invoice-id> --reason "Periodo di prestazione errato" --yes - Quale chiave è stata attiva per ultima?
tm api-keys list
L'accesso per agenti fa parte di Pro.
| Verifica | In Time Momentum |
|---|---|
| 1. Interfaccia | Ogni operazione dell'API ha esattamente un comando tm, e un test lo verifica a ogni modifica. Output ed errori in JSON, tm schema elenca comandi e campi, e il codice di uscita dice all'agente se correggere la chiamata, chiederti, attendere o riprovare. |
| 2. Permessi separati | Una chiave API per agente, creata nell'app web e revocabile in qualsiasi momento. tm la scambia con un token valido un'ora; revocare la chiave chiude subito la sessione. Creare chiavi ed eliminare l'account sono bloccati sul server per questo accesso. Una chiave di lettura raggiunge solo alcune route di lettura e i timer. |
| 3. Conferma | Emettere, stornare, eliminare e revocare sono contrassegnati come distruttivi. Nel terminale tm chiede conferma; un agente ha bisogno di un --yes esplicito, altrimenti tm si ferma senza inviare nulla. Il server rifiuta una fattura elettronica con dati obbligatori mancanti, che resta una bozza. |
| 4. Dry run | --dry-run mostra metodo, indirizzo e corpo della richiesta senza inviarla e senza la chiave. |
| 5. Idempotenza | Le voci di tempo accettano un ID tuo (--client-id), così i nuovi tentativi non creano duplicati. Un pagamento cumulativo su più fatture riesce per intero o per niente. Se la preparazione di una fattura fallisce dopo che la bozza esiste, l'errore indica la bozza da cui proseguire. |
| 6. Log | Ogni azione è un comando leggibile che puoi eseguire tu stesso. --verbose registra ogni richiesta, mai la chiave o il token. L'elenco delle chiavi mostra quando ciascuna è stata usata l'ultima volta. Non c'è un registro attività separato per agente. |
| 7. Annullare | Le bozze si possono modificare ed eliminare, i pagamenti correggere o rimuovere. Per impostazione predefinita, una fattura emessa si può solo stornare, con un proprio documento di storno. Il tempo su fatture emesse e report delle attività finalizzati è bloccato. |
| 8. Limiti del piano | Una funzione Pro senza Pro restituisce upgrade_required con il nome della funzione, troppe richieste restituiscono rate_limited con un tempo di attesa. Il codice di uscita dice all'agente se chiedere a te o attendere. |
Cosa nessun software fa al posto tuo
Dai a ogni agente una chiave propria con i permessi minimi necessari, una chiave di lettura dove basta leggere. Consenti ciò che è irreversibile solo quando lo chiedi tu, e guarda la simulazione prima di approvare. L'accesso degli agenti a Time Momentum fa parte di Pro.
Approfondimenti
Il miglior CRM per agenti AI
Cosa si intende per CRM per agenti AI e dove si collocano i grandi CRM e Time Momentum.
Leggi la guidaMCP o CLI per agenti AI
Perché una riga di comando spesso è più adatta agli agenti di un server MCP.
Leggi la guida
Domande frequenti
Che cos'è un CRM con AI?
O un CRM con funzioni AI integrate, come bozze di email o lead scoring, oppure un CRM che il tuo agente AI può usare tramite un'API, un server MCP o una riga di comando. Questa guida parla del secondo tipo.
Perché l'agente di Replit ha cancellato il database?
Secondo i resoconti, ha eseguito il comando di database npm run db:push durante un code freeze, senza autorizzazione. All'epoca anteprima, test e produzione condividevano lo stesso database (heise online). L'istruzione di non cambiare nulla stava solo nella conversazione, non nel software.
Basta dire all'agente di non cancellare nulla?
No. Un prompt è una richiesta, non un blocco. Ti proteggono solo i limiti imposti dal server: permessi mancanti, conferma obbligatoria, dati fatturati bloccati.
E se il mio agente sbaglia qualcosa in Time Momentum?
Modifichi o elimini le bozze, correggi i pagamenti e storni una fattura emessa con un proprio documento di storno. Il tempo fatturato resta sempre bloccato.
Lascia fatturare il tuo agente in sicurezza
- 30 giorni di Pro
- Senza carta di credito
- Poi continui con Free