cosmicstack-labs
cosmicstack-labs

mercury-agent

Soul-driven AI agent with permission-hardened tools, token budgets, and multi-channel access. Runs 24/7 from CLI or Telegram.

327fork
3.0kwatcher
63issue
TypeScript

Analisi AI · Italiano

openai · gpt-4o-mini

Sintesi

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

Mercury Agent Pro (Cloud Hosted)

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.

Mercury Skill Marketplace & Creator

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.

Mercury Team Orchestrator

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.

Target utenti
Sviluppatori, ricercatori AI, professionisti IT, e utenti avanzati che desiderano un assistente AI altamente personalizzabile, autonomo e con un forte controllo sulla privacy e sui permessi. Ideale anche per chi cerca un agente AI che operi localmente con memoria persistente e costi controllati.
Categoria
TypeScript, Node.js 18+, Vercel AI SDK v4
Monetizzazione
Il progetto di base è open-source (MIT). La monetizzazione potrebbe avvenire tramite servizi cloud (SaaS), un marketplace di skill, supporto e consulenza professionale, o una versione enterprise con funzionalità avanzate.
Licenza
MIT License
Trend: Gli agenti AI autonomi, la gestione fine dei permessi e la memoria contestuale persistente sono al centro delle tendenze attuali nell'IA.

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 /budget per 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
PiattaformaMetodoRichiede Admin
macOSLaunchAgent (~/Library/LaunchAgents/)No
Linuxsystemd user unit (~/.config/systemd/user/)No (linger per l'avvio)
WindowsTask 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

ComandoDescrizione
mercury upRaccomandato. Installa il servizio + avvia il demone + assicura l'esecuzione
mercuryAvvia l'agente (stesso di mercury start)
mercury startAvvia in primo piano
mercury start -dAvvia in background (modalità demone)
mercury restartRiavvia il processo in background
mercury stopFerma un processo in background
mercury logsVisualizza i log recenti del demone
mercury doctorRiconfigura l'installazione (nome, provider, canali, permessi predefiniti)
mercury doctor --platformMostra diagnostica di compatibilità terminale/demone multipiattaforma
mercury setupRiesegui l'assistente di configurazione
mercury statusMostra configurazione e stato del demone
mercury helpMostra il manuale completo
mercury upgradeAggiorna all'ultima versione
mercury telegram listElenca gli utenti Telegram approvati e in sospeso
`mercury telegram approve <codeid>`
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 resetCancella tutti gli accessi Telegram e ricomincia da capo
mercury service installInstalla come servizio di sistema (avvio automatico all'accensione)
mercury service uninstallDisinstalla il servizio di sistema
mercury service statusMostra lo stato del servizio di sistema
mercury --verboseAvvia con log di debug

Comandi in Chat

Digita questi comandi durante una conversazione — non consumano token API. Funzionano sia su CLI che su Telegram.

ComandoDescrizione
/helpMostra il manuale completo
/statusMostra configurazione agente, budget e utilizzo
/toolsElenca tutti gli strumenti caricati
/skillsElenca le skill installate
/streamAttiva/disattiva lo streaming di testo Telegram
/stream offDisabilita lo streaming (messaggio singolo)
/budgetMostra lo stato del budget dei token
/budget overrideIgnora il budget per una richiesta
/budget resetResetta l'utilizzo a zero
/budget set <n>Cambia il budget giornaliero dei token
/permissionsCambia la modalità di permesso (Chiedimi / Consenti Tutto)
/viewAttiva/disattiva la vista progressi (bilanciata/dettagliata)
/view balancedImposta la vista progressi compatta
/view detailedImposta la vista progressi completa
/code agent <task>Delega un'attività di codifica a un sub-agente in background
/ws exitEsci dalla modalità IDE dello spazio di lavoro e torna alla chat generale
/tasksElenca le attività pianificate
/memoryVisualizza e gestisci la memoria "second brain"
/unpairTelegram: resetta tutti gli accessi

Strumenti Integrati

CategoriaStrumenti
Filesystemread_file, write_file, create_file, edit_file, list_dir, delete_file, send_file, approve_scope
Shellrun_command, cd, approve_command
Messaggisticasend_message
Gitgit_status, git_diff, git_log, git_add, git_commit, git_push
Webfetch_url
Skillinstall_skill, list_skills, use_skill
Schedulerschedule_task, list_scheduled_tasks, cancel_scheduled_task
Sistemabudget_status

Canali

CanaleFunzionalità
CLIInk 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
TelegramFormattazione 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à Piano
  • Ctrl+X → passa alla modalità Esegui
  • Esc o Ctrl+Q → esci dallo workspace e torna alla chat generale
  • Ctrl+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: N successivo, P precedente, +/- volume, Z in 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

Accesso Telegram

Mercury utilizza un modello di accesso basato sull'organizzazione con amministratori e membri.

  • Configurazione iniziale: Invia /start al tuo bot, ricevi un codice di accoppiamento, inseriscilo nella CLI con mercury telegram approve <code>. Diventi il primo amministratore.
  • Utenti aggiuntivi: Invia /start per 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 /unpair in Telegram o eseguire mercury telegram reset nella 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_task con espressioni cron (0 9 * * * per ogni giorno alle 9 del mattino)
  • Singola esecuzione: schedule_task con delay_seconds (es. 15 secondi)
  • Le attività persistono in ~/.mercury/schedules.yaml e 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/memory per panoramica, ricerca, pausa, ripristino e cancellazione
  • Disabilita — variabile d'ambiente SECOND_BRAIN_ENABLED=false o memory.secondBrain.enabled: false nella 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.

PercorsoScopo
~/.mercury/mercury.yamlConfigurazione principale (provider, canali, budget)
~/.mercury/.envChiavi e token API (caricati insieme a .env del progetto)
~/.mercury/soul/*.mdPersonalità dell'agente (anima, persona, gusti, battito cardiaco)
~/.mercury/permissions.yamlCapacità e regole di approvazione
~/.mercury/skills/Skill installate
~/.mercury/schedules.yamlAttività pianificate
~/.mercury/token-usage.jsonMonitoraggio 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.pidPID processo in background
~/.mercury/daemon.logLog modalità demone

Fallback del Provider

Configura più provider LLM. Mercury li prova nell'ordine e ricade automaticamente:

ProviderModello PredefinitoChiave APINote
DeepSeekdeepseek-chatDEEPSEEK_API_KEYPredefinito, conveniente
OpenAIgpt-4o-miniOPENAI_API_KEYGPT-4o, o3, ecc.
Anthropicclaude-sonnet-4ANTHROPIC_API_KEYClaude Sonnet, Haiku, Opus
Grok (xAI)grok-4GROK_API_KEYEndpoint compatibile OpenAI
Ollama Cloudgpt-oss:120bOLLAMA_CLOUD_API_KEYOllama remoto via API
Ollama Localgpt-oss:20bNessuna chiave necessariaIstanza 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 v4generateText + 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

stima

Approfondimenti AI

L'AI sta preparando gli approfondimenti…

Chiedi al repo

AI · contesto README + issue

Fai una domanda sul progetto. L'AI legge README e issue recenti.

Sponsor · Sconto esclusivo RepoRadar AI

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.

Deploy in 1 click
2 vCPU · 8 GB RAM · NVMe
Backup + DDoS inclusi
Attiva sconto Hostinger VPSLink affiliato — supporti RepoRadar senza costi extra per te.
Compatibile con Lovable · Invito esclusivo

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.

Setup zero-config
Backend + Auth inclusi
Deploy con 1 click
Motivo compatibilità

Abbiamo rilevato segnali che indicano uno stack supportato da Lovable:

langTypeScripttopicllm
Registrati gratis su LovableLink invito — bonus crediti per chi si registra da RepoRadar.

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.

Ethereum
ETH
0x86ECDF546d8dFc0739d44c066A6110F11cdB7773
Bitcoin
BTC
bc1qqe0wcmhnt78enk8ql0lxvey4z8hquxsxjtyz8r
Solana
SOL
EtTK61Lz7kfdDM8543TMMiAUUTbFVpzX5tvPEcBtZ3aj

Grazie di cuore — ogni contributo conta.