mercury-agent
Soul-driven AI agent with permission-hardened tools, token budgets, and multi-channel access. Runs 24/7 from CLI or Telegram.
Analisi AI · Italiano
openai · gpt-4o-miniSintesi
Mercury Agent è un agente AI autonomo e "soul-driven" che opera con strumenti con permessi rafforzati e budget di token. È progettato per funzionare 24/7 tramite CLI o Telegram, ricordando informazioni cruciali e chiedendo l'approvazione prima di agire. Incorpora una memoria persistente "Second Brain" basata su SQLite e la possibilità di estendere le sue capacità tramite skill.
Casi d'uso
- →Assistente personale autonomo che gestisce attività quotidiane, pianifica eventi e rileva informazioni rilevanti da conversazioni, senza intervento manuale.
- →Agente di supporto tecnico automatizzato che può leggere log, eseguire comandi e interagire con le API di sistema, chiedendo conferma per azioni critiche e imparando dalle interazioni passate.
- →Strumento di automazione per sviluppatori che delega compiti di codifica a sub-agenti, gestisce le versioni con Git e interagisce con file e shell, il tutto da un'interfaccia CLI o Telegram.
Idee SaaS / Business
Una versione SaaS di Mercury Agent ospitata nel cloud, con una dashboard per la gestione centralizzata degli agenti, la configurazione dei 'Second Brain', l'approvazione delle azioni e il monitoraggio dell'utilizzo dei token. Offri piani a livelli basati su potenza di calcolo, storage della memoria e connettori LTM.
Una piattaforma dove gli utenti possono sviluppare, pubblicare e vendere/comprare 'skill' estensibili per Mercury Agent. Includerebbe un IDE web per la creazione di skill con AI-guidance e un sistema di monetizzazione basato sulle transazioni o su abbonamenti per skill premium.
Una soluzione per team che permette di distribuire e orchestrare più Mercury Agent per scopi aziendali specifici (es. agenti di vendita, supporto clienti, agenti di ricerca). Ogni agente sarebbe configurabile con ruoli e permessi specifici, e gli amministratori del team avrebbero una vista unificata delle attività e delle interazioni.
README · tradotto in italiano
Introduzione
Agente AI "soul-driven" con strumenti con permessi rafforzati, budget di token e accesso multi-canale.
Ricorda ciò che conta. Chiede prima di agire. Funziona 24/7 da CLI o Telegram. 31 strumenti integrati, skill estensibili, memoria "Second Brain" basata su SQLite.
🔖 Versione Stabile Corrente: v1.1.6
Avvio Rapido
npx @cosmicstack/mercury-agent
Oppure installa globalmente:
npm i -g @cosmicstack/mercury-agent
mercury
La prima esecuzione avvia l'assistente di configurazione (nome, provider, Telegram opzionale). Dopo la configurazione, Mercury apre la schermata di avvio Ink TUI e chiede la modalità di permesso (Chiedimi o Consenti Tutto) prima che inizi la chat.
Per riconfigurare in seguito (cambiare chiavi, nome, impostazioni):
mercury doctor
mercury doctor --platform
Perché Mercury?
Ogni agente AI può leggere file, eseguire comandi e recuperare URL. La maggior parte lo fa silenziosamente. Mercury chiede prima — e ricorda ciò che conta.
- Permessi rinforzati — Blacklist della shell (
sudo,rm -rf /, ecc. non vengono mai eseguiti). Scoping di lettura/scrittura a livello di cartella. Flusso di approvazione in sospeso. "Chiedimi" o "Consenti Tutto" per sessione. Nessuna sorpresa. - Second Brain — Memoria persistente e strutturata con SQLite + ricerca full-text FTS5. 10 tipi di memoria, estrazione automatica, risoluzione dei conflitti, consolidamento automatico. Mercury apprende le tue preferenze, obiettivi e abitudini senza immissione manuale.
- Soul-driven — Personalità definita da file markdown di tua proprietà (
soul.md,persona.md,taste.md,heartbeat.md). Nessun wrapper aziendale. - Token-aware — Applicazione del budget giornaliero. Auto-conciso quando supera il 70%. Comando
/budgetper controllare, resettare o ignorare. - Streaming in tempo reale — Streaming di token in tempo reale su CLI con salvataggio/ripristino del cursore e re-rendering markdown. Streaming Telegram con messaggi di stato modificabili.
- Sempre attivo — Esecuzione come demone in background su qualsiasi sistema operativo. Riavvio automatico in caso di crash. Avvio all'accensione. Pianificazione Cron, monitoraggio heartbeat e notifiche proattive.
- Estensibile — Installa skill della community con un solo comando. Pianifica skill come attività ricorrenti. Basato sulla specifica Agent Skills.
Mercury ora seeda una skill web-search di default alla prima esecuzione in ~/.mercury/skills/web-search/SKILL.md.
Modalità Demone
Un comando per rendere Mercury persistente:
mercury up
Questo installa il servizio di sistema (se non installato), avvia il demone in background e assicura che Mercury sia in esecuzione. Usa questo come comando principale.
Se Mercury è già in esecuzione, mercury up si limita a confermarlo e mostra il PID.
Altri comandi del demone
mercury restart # Riavvia il processo in background
mercury stop # Ferma il processo in background
mercury start -d # Avvia in background (senza installazione del servizio)
mercury logs # Visualizza i log recenti del demone
mercury status # Mostra se il demone è in esecuzione
La modalità demone include il ripristino automatico in caso di crash — se il processo si blocca, si riavvia automaticamente con un backoff esponenziale (fino a 10 riavvii al minuto).
Servizio di sistema (avvio automatico all'accensione)
mercury up lo installa automaticamente. Puoi anche gestirlo direttamente:
mercury service install
| Piattaforma | Metodo | Richiede Admin |
|---|---|---|
| macOS | LaunchAgent (~/Library/LaunchAgents/) | No |
| Linux | systemd user unit (~/.config/systemd/user/) | No (linger per l'avvio) |
| Windows | Task Scheduler (schtasks) | No |
mercury service status # Controlla se il servizio è in esecuzione
mercury service uninstall # Rimuovi il servizio di sistema
In modalità demone, Telegram diventa il tuo canale principale — la CLI è solo per i log, poiché non c'è un terminale per l'input.
Comandi CLI
| Comando | Descrizione |
|---|---|
mercury up | Raccomandato. Installa il servizio + avvia il demone + assicura l'esecuzione |
mercury | Avvia l'agente (stesso di mercury start) |
mercury start | Avvia in primo piano |
mercury start -d | Avvia in background (modalità demone) |
mercury restart | Riavvia il processo in background |
mercury stop | Ferma un processo in background |
mercury logs | Visualizza i log recenti del demone |
mercury doctor | Riconfigura l'installazione (nome, provider, canali, permessi predefiniti) |
mercury doctor --platform | Mostra diagnostica di compatibilità terminale/demone multipiattaforma |
mercury setup | Riesegui l'assistente di configurazione |
mercury status | Mostra configurazione e stato del demone |
mercury help | Mostra il manuale completo |
mercury upgrade | Aggiorna all'ultima versione |
mercury telegram list | Elenca gli utenti Telegram approvati e in sospeso |
| `mercury telegram approve <code | id>` |
mercury telegram reject <id> | Rifiuta una richiesta di accesso Telegram in sospeso |
mercury telegram remove <id> | Rimuove un utente Telegram approvato |
mercury telegram promote <id> | Promuove un membro Telegram ad admin |
mercury telegram demote <id> | Retrocede un admin Telegram a membro |
mercury telegram reset | Cancella tutti gli accessi Telegram e ricomincia da capo |
mercury service install | Installa come servizio di sistema (avvio automatico all'accensione) |
mercury service uninstall | Disinstalla il servizio di sistema |
mercury service status | Mostra lo stato del servizio di sistema |
mercury --verbose | Avvia con log di debug |
Comandi in Chat
Digita questi comandi durante una conversazione — non consumano token API. Funzionano sia su CLI che su Telegram.
| Comando | Descrizione |
|---|---|
/help | Mostra il manuale completo |
/status | Mostra configurazione agente, budget e utilizzo |
/tools | Elenca tutti gli strumenti caricati |
/skills | Elenca le skill installate |
/stream | Attiva/disattiva lo streaming di testo Telegram |
/stream off | Disabilita lo streaming (messaggio singolo) |
/budget | Mostra lo stato del budget dei token |
/budget override | Ignora il budget per una richiesta |
/budget reset | Resetta l'utilizzo a zero |
/budget set <n> | Cambia il budget giornaliero dei token |
/permissions | Cambia la modalità di permesso (Chiedimi / Consenti Tutto) |
/view | Attiva/disattiva la vista progressi (bilanciata/dettagliata) |
/view balanced | Imposta la vista progressi compatta |
/view detailed | Imposta la vista progressi completa |
/code agent <task> | Delega un'attività di codifica a un sub-agente in background |
/ws exit | Esci dalla modalità IDE dello spazio di lavoro e torna alla chat generale |
/tasks | Elenca le attività pianificate |
/memory | Visualizza e gestisci la memoria "second brain" |
/unpair | Telegram: resetta tutti gli accessi |
Strumenti Integrati
| Categoria | Strumenti |
|---|---|
| Filesystem | read_file, write_file, create_file, edit_file, list_dir, delete_file, send_file, approve_scope |
| Shell | run_command, cd, approve_command |
| Messaggistica | send_message |
| Git | git_status, git_diff, git_log, git_add, git_commit, git_push |
| Web | fetch_url |
| Skill | install_skill, list_skills, use_skill |
| Scheduler | schedule_task, list_scheduled_tasks, cancel_scheduled_task |
| Sistema | budget_status |
Canali
| Canale | Funzionalità |
|---|---|
| CLI | Ink TUI, selettore modalità permessi all'avvio, prompt interattivi per i permessi (frecce + Invio; scorciatoie Y/N/A), visualizzazioni progressi (bilanciata/dettagliata), streaming in tempo reale |
| Telegram | Formattazione HTML, messaggi di streaming modificabili, caricamento file, indicatori di digitazione, accesso multi-utente con ruoli admin/membro |
Scorciatoie Workspace/Codifica (CLI)
Ctrl+P→ passa alla modalità PianoCtrl+X→ passa alla modalità EseguiEscoCtrl+Q→ esci dallo workspace e torna alla chat generaleCtrl+V→ attiva/disattiva la vista progressi (/viewè un fallback quando il terminale intercetta Ctrl+V)
Note sull'interfaccia Spotify (CLI)
- Il deck Spotify supporta scorciatoie da tastiera:
Nsuccessivo,Pprecedente,+/-volume,Zin riproduzione. - L'album art inline è opzionale e protetta:
- Abilita con
MERCURY_SPOTIFY_ART=1 - Attualmente si rende solo nelle sessioni iTerm locali
- Ricade automaticamente sull'interfaccia solo testo in SSH/mobile/terminali leggeri
- Abilita con
Accesso Telegram
Mercury utilizza un modello di accesso basato sull'organizzazione con amministratori e membri.
- Configurazione iniziale: Invia
/startal tuo bot, ricevi un codice di accoppiamento, inseriscilo nella CLI conmercury telegram approve <code>. Diventi il primo amministratore. - Utenti aggiuntivi: Invia
/startper richiedere l'accesso. Gli amministratori approvano o rifiutano dalla CLI. - Ruoli: Gli amministratori possono approvare/rifiutare richieste, promuovere/retrocedere utenti e resettare l'accesso. I membri possono chattare con Mercury.
- Reset: Gli amministratori possono inviare
/unpairin Telegram o eseguiremercury telegram resetnella CLI per cancellare tutti gli accessi e ricominciare. - Solo chat private — i messaggi di gruppo vengono sempre ignorati.
Comandi CLI: mercury telegram list|approve|reject|remove|promote|demote|reset
Scheduler
- Ricorrente:
schedule_taskcon espressioni cron (0 9 * * *per ogni giorno alle 9 del mattino) - Singola esecuzione:
schedule_taskcondelay_seconds(es. 15 secondi) - Le attività persistono in
~/.mercury/schedules.yamle vengono ripristinate al riavvio - Le risposte vengono reindirizzate al canale dove è stata creata l'attività
Second Brain
Mercury costruisce una memoria strutturata e persistente che cresce con ogni conversazione. Abilitato per impostazione predefinita, estrae, archivia e richiama automaticamente fatti su di te.
- 10 tipi di memoria — identità, preferenza, obiettivo, progetto, abitudine, decisione, vincolo, relazione, episodio, riflessione
- Estrazione automatica — dopo ogni conversazione, Mercury estrae 0–3 fatti con punteggi di confidenza, importanza e durabilità
- Richiamo pertinente — prima di ogni messaggio, i primi 5 ricordi corrispondenti (budget di 900 caratteri) vengono iniettati nel contesto
- Consolidamento automatico — ogni 60 minuti, Mercury costruisce un riepilogo del profilo, un riepilogo dello stato attivo e genera riflessioni da pattern
- Risoluzione dei conflitti — i ricordi opposti vengono risolti per confidenza (vince il più alto) o per recenza (vince il più recente)
- Auto-pulizia — i ricordi con ambito attivo diventano obsoleti dopo 21 giorni; i ricordi inferiti decadono; i ricordi durevoli a bassa confidenza vengono scartati dopo 120 giorni
- Controlli utente —
/memoryper panoramica, ricerca, pausa, ripristino e cancellazione - Disabilita — variabile d'ambiente
SECOND_BRAIN_ENABLED=falseomemory.secondBrain.enabled: falsenella configurazione
Tutti i dati rimangono sulla tua macchina in ~/.mercury/memory/second-brain/second-brain.db (SQLite + FTS5). Nessun cloud.
Configurazione
Tutti i dati di runtime vivono in ~/.mercury/ — non nella tua directory di progetto.
| Percorso | Scopo |
|---|---|
~/.mercury/mercury.yaml | Configurazione principale (provider, canali, budget) |
~/.mercury/.env | Chiavi e token API (caricati insieme a .env del progetto) |
~/.mercury/soul/*.md | Personalità dell'agente (anima, persona, gusti, battito cardiaco) |
~/.mercury/permissions.yaml | Capacità e regole di approvazione |
~/.mercury/skills/ | Skill installate |
~/.mercury/schedules.yaml | Attività pianificate |
~/.mercury/token-usage.json | Monitoraggio utilizzo token giornaliero |
~/.mercury/memory/short-term/ | File JSON per conversazione |
~/.mercury/memory/long-term/ | Fatti auto-estratti (JSONL) |
~/.mercury/memory/episodic/ | Log eventi con timestamp (JSONL) |
~/.mercury/memory/second-brain/ | Database di memoria strutturata (SQLite + FTS5) |
~/.mercury/daemon.pid | PID processo in background |
~/.mercury/daemon.log | Log modalità demone |
Fallback del Provider
Configura più provider LLM. Mercury li prova nell'ordine e ricade automaticamente:
| Provider | Modello Predefinito | Chiave API | Note |
|---|---|---|---|
| DeepSeek | deepseek-chat | DEEPSEEK_API_KEY | Predefinito, conveniente |
| OpenAI | gpt-4o-mini | OPENAI_API_KEY | GPT-4o, o3, ecc. |
| Anthropic | claude-sonnet-4 | ANTHROPIC_API_KEY | Claude Sonnet, Haiku, Opus |
| Grok (xAI) | grok-4 | GROK_API_KEY | Endpoint compatibile OpenAI |
| Ollama Cloud | gpt-oss:120b | OLLAMA_CLOUD_API_KEY | Ollama remoto via API |
| Ollama Local | gpt-oss:20b | Nessuna chiave necessaria | Istanza Ollama locale |
Quando un provider fallisce, Mercury prova automaticamente il successivo. Ricorda l'ultimo provider funzionante e ripartsce da lì alla richiesta successiva.
Altri provider in arrivo — Google Gemini, Mistral e altri sono nella roadmap. L'architettura compatibile OpenAI di Mercury supporta anche endpoint personalizzati tramite la configurazione dell'URL base.
Architettura
- TypeScript + Node.js 18+ — ESM, build tsup
- Vercel AI SDK v4 —
generateText+streamText, loop agentico a 10 passi, fallback provider - grammY — Bot Telegram con indicatori di digitazione, streaming modificabile e caricamento file
- SQLite + FTS5 — Second brain con ricerca full-text, risoluzione dei conflitti, consolidamento automatico
- JSONL — Memoria conversazionale a breve, lungo termine ed episodica
- Daemon manager — Avvio in background + file PID + recupero crash watchdog
- Servizi di sistema — macOS LaunchAgent, Linux systemd, Windows Task Scheduler
Licenza
MIT © Cosmic Stack
Disclaimer
Questo è AI - a volte può bloccarsi, si prega di usarlo a proprio rischio.
Contributi
Siamo aperti ai contributi! Mercury è costruito per evolvere e accogliamo con favore l'aiuto della community. Che si tratti di correggere un bug, aggiungere uno strumento, ...
Attività commit · ultime 26 settimane
stimaApprofondimenti AI
Chiedi al repo
AI · contesto README + issueFai una domanda sul progetto. L'AI legge README e issue recenti.
Hai bisogno di un server per far girare cosmicstack-labs/mercury-agent?
Abbiamo testato decine di provider e Hostinger VPS è il miglior rapporto qualità/prezzo per self-hostare le repo che trovi qui. Setup in 1 click, pannello semplice e supporto 24/7.
Integra cosmicstack-labs/mercury-agent in un progetto Lovable
Questa repo è compatibile con lo stack di Lovable. Importala in un nuovo progetto o aggiungila a uno esistente: Lovable si occupa di setup, deploy, backend e auth — tu chiedi in linguaggio naturale e l'AI scrive il codice.
Abbiamo rilevato segnali che indicano uno stack supportato da Lovable:
Questo progetto esiste grazie a voi
RepoRadar AI è gratis e senza pubblicità. Le donazioni coprono server, API e modelli AI.
Ogni analisi tradotta che leggi costa qualche centesimo di chiamate al modello. Se RepoRadar ti ha fatto risparmiare tempo, considera una piccola donazione cripto — anche pochi euro aiutano a mantenere il servizio libero per tutti.
0x86ECDF546d8dFc0739d44c066A6110F11cdB7773bc1qqe0wcmhnt78enk8ql0lxvey4z8hquxsxjtyz8rEtTK61Lz7kfdDM8543TMMiAUUTbFVpzX5tvPEcBtZ3ajGrazie di cuore — ogni contributo conta.