# Italian tool descriptions
#
# Each key under [tools] matches the tool's name() return value.
# Values are the human-readable descriptions shown in system prompts.

[tools]
backup = "Creare, elencare, verificare e ripristinare backup del workspace"
browser = "Automazione web/browser con backend pluggable (agent-browser, rust-native, computer_use). Supporta azioni DOM oltre ad azioni opzionali a livello OS (mouse_move, mouse_click, mouse_drag, key_type, key_press, screen_capture) tramite un sidecar computer-use. Usa 'snapshot' per mappare elementi interattivi a ref (@e1, @e2). Applica browser.allowed_domains per le azioni open."
browser_delegate = "Delegare attività basate su browser a un CLI con capacità browser per interagire con applicazioni web come Teams, Outlook, Jira, Confluence"
browser_open = "Aprire un URL HTTPS approvato nel browser di sistema. Vincoli di sicurezza: domini solo da allowlist, nessun host locale/privato, nessun scraping."
cloud_ops = "Strumento consultivo di trasformazione cloud. Analizza piani IaC, valuta percorsi di migrazione, revisiona costi e verifica l'architettura rispetto ai pilastri del Well-Architected Framework. Solo lettura: non crea né modifica risorse cloud."
cloud_patterns = "Libreria di pattern cloud. Data una descrizione del workload, suggerisce pattern architetturali cloud-native applicabili (containerizzazione, serverless, modernizzazione database, ecc.)."
composio = "Eseguire azioni su oltre 1000 app tramite Composio (Gmail, Notion, GitHub, Slack, ecc.). Usa action='list' per vedere le azioni disponibili (include nomi dei parametri). action='execute' con action_name/tool_slug e params per eseguire un'azione. Se non sei sicuro dei params esatti, passa 'text' con una descrizione in linguaggio naturale di ciò che vuoi (Composio risolverà i parametri corretti via NLP). action='list_accounts' o action='connected_accounts' per elencare gli account OAuth collegati. action='connect' con app/auth_config_id per ottenere l'URL OAuth. connected_account_id viene risolto automaticamente se omesso."
content_search = "Cercare contenuti di file tramite pattern regex all'interno del workspace. Supporta ripgrep (rg) con fallback su grep. Modalità di output: 'content' (righe corrispondenti con contesto), 'files_with_matches' (solo percorsi file), 'count' (conteggio corrispondenze per file). Esempio: pattern='fn main', include='*.rs', output_mode='content'."
cron_add = """Creare un cron job pianificato (shell o agent) con pianificazioni cron/at/every. Usa job_type='agent' con un prompt per eseguire l'agente AI secondo la pianificazione. Per consegnare l'output a un canale (Discord, Telegram, Slack, Mattermost, Matrix), imposta delivery={"mode":"announce","channel":"discord","to":"<channel_id_or_chat_id>"}. Questo è lo strumento preferito per inviare messaggi pianificati/ritardati agli utenti tramite canali."""
cron_list = "Elencare tutti i cron job pianificati"
cron_remove = "Rimuovere un cron job per id"
cron_run = "Forzare l'esecuzione immediata di un cron job e registrare la cronologia delle esecuzioni"
cron_runs = "Elencare la cronologia recente delle esecuzioni di un cron job"
cron_update = "Aggiornare un cron job esistente (schedule, command, prompt, enabled, delivery, model, ecc.)"
data_management = "Conservazione dati del workspace, eliminazione e statistiche di archiviazione"
delegate = "Delegare una sotto-attività a un agente specializzato. Usa quando: un'attività beneficia di un modello diverso (es. riassunto rapido, ragionamento profondo, generazione di codice). Il sub-agente esegue un singolo prompt per default; con agentic=true può iterare con un loop di chiamate a strumenti filtrato."
file_edit = "Modificare un file sostituendo una corrispondenza esatta di stringa con nuovo contenuto"
file_read = "Leggere il contenuto di un file con numeri di riga. Supporta lettura parziale tramite offset e limit. Estrae testo da PDF; altri file binari vengono letti con conversione UTF-8 lossy."
file_write = "Scrivere contenuto in un file nel workspace"
git_operations = "Eseguire operazioni Git strutturate (status, diff, log, branch, commit, add, checkout, stash). Fornisce output JSON strutturato e si integra con la policy di sicurezza per i controlli di autonomia."
glob_search = "Cercare file corrispondenti a un pattern glob all'interno del workspace. Restituisce un elenco ordinato di percorsi file relativi alla radice del workspace. Esempi: '**/*.rs' (tutti i file Rust), 'src/**/mod.rs' (tutti i mod.rs in src)."
google_workspace = "Interagire con i servizi Google Workspace (Drive, Gmail, Calendar, Sheets, Docs, ecc.) tramite CLI gws. Richiede gws installato e autenticato."
hardware_board_info = "Restituire informazioni complete sulla scheda (chip, architettura, mappa di memoria) per l'hardware collegato. Usa quando: l'utente chiede 'board info', 'che scheda ho', 'hardware collegato', 'chip info', 'quale hardware', o 'mappa di memoria'."
hardware_memory_map = "Restituire la mappa di memoria (intervalli di indirizzi flash e RAM) per l'hardware collegato. Usa quando: l'utente chiede 'indirizzi di memoria superiori e inferiori', 'mappa di memoria', 'spazio di indirizzamento', o 'indirizzi leggibili'. Restituisce intervalli flash/RAM dai datasheet."
hardware_memory_read = "Leggere valori reali di memoria/registri dal Nucleo via USB. Usa quando: l'utente chiede di 'leggere valori dei registri', 'leggere memoria all'indirizzo', 'dump della memoria', 'memoria inferiore 0-126', o 'dare indirizzo e valore'. Restituisce dump esadecimale. Richiede Nucleo collegato via USB e feature probe. Params: address (hex, es. 0x20000000 per inizio RAM), length (bytes, default 128)."
http_request = "Effettuare richieste HTTP verso API esterne. Supporta metodi GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS. Vincoli di sicurezza: domini solo da allowlist, nessun host locale/privato, timeout e limiti di dimensione risposta configurabili."
image_info = "Leggere metadati di file immagine (formato, dimensioni, peso) e opzionalmente restituire dati codificati in base64."
jira = "Interagire con Jira: ottenere ticket con livello di dettaglio configurabile, cercare issue con JQL e aggiungere commenti con supporto menzioni e formattazione."
knowledge = "Gestire un grafo di conoscenza di decisioni architetturali, pattern di soluzione, lezioni apprese ed esperti. Azioni: capture, search, relate, suggest, expert_find, lessons_extract, graph_stats."
linkedin = "Gestire LinkedIn: creare post, elencare i propri post, commentare, reagire, eliminare post, visualizzare engagement, ottenere info profilo e leggere la strategia di contenuti configurata. Richiede credenziali LINKEDIN_* nel file .env."
discord_search = "Cercare nella cronologia messaggi Discord archiviata in discord.db. Usa per trovare messaggi passati, riassumere l'attività di un canale o cercare ciò che gli utenti hanno detto. Supporta ricerca per parole chiave e filtri opzionali: channel_id, since, until."
microsoft365 = "Integrazione Microsoft 365: gestire posta Outlook, messaggi Teams, eventi Calendar, file OneDrive e ricerca SharePoint tramite Microsoft Graph API"
model_routing_config = "Gestire impostazioni di modello predefinite, route provider/modello basate su scenario, regole di classificazione e profili di sub-agenti delegate"
notion = "Interagire con Notion: interrogare database, leggere/creare/aggiornare pagine e cercare nel workspace."
pdf_read = "Estrarre testo semplice da un file PDF nel workspace. Restituisce tutto il testo leggibile. PDF solo immagine o crittografati restituiscono risultato vuoto. Richiede la build feature 'rag-pdf'."
project_intel = "Intelligence di consegna progetto: generare report di stato, rilevare rischi, redigere aggiornamenti per i clienti, riassumere sprint e stimare lo sforzo. Strumento di analisi in sola lettura."
proxy_config = "Gestire le impostazioni proxy di Construct (scope: environment | construct | services), inclusa l'applicazione a runtime e alle variabili di ambiente del processo"
pushover = "Inviare una notifica Pushover al proprio dispositivo. Richiede PUSHOVER_TOKEN e PUSHOVER_USER_KEY nel file .env."
schedule = """Gestire attività pianificate solo shell. Azioni: create/add/once/list/get/cancel/remove/pause/resume. ATTENZIONE: Questo strumento crea job shell il cui output viene solo registrato nei log, NON consegnato ad alcun canale. Per inviare un messaggio pianificato su Discord/Telegram/Slack/Matrix, usa lo strumento cron_add con job_type='agent' e una configurazione delivery come {"mode":"announce","channel":"discord","to":"<channel_id>"}."""
screenshot = "Catturare uno screenshot dello schermo corrente. Restituisce il percorso del file e dati PNG codificati in base64."
security_ops = "Strumento per operazioni di sicurezza per servizi gestiti di cybersecurity. Azioni: triage_alert (classificare/prioritizzare alert), run_playbook (eseguire passi di risposta agli incidenti), parse_vulnerability (analizzare risultati di scan), generate_report (creare report sulla postura di sicurezza), list_playbooks (elencare playbook disponibili), alert_stats (riassumere metriche degli alert)."
shell = "Eseguire un comando shell nella directory del workspace"
sop_advance = "Riportare il risultato del passo SOP corrente e avanzare al passo successivo. Fornire il run_id, se il passo è riuscito o fallito, e un breve riepilogo dell'output."
sop_approve = "Approvare un passo SOP in attesa di approvazione dell'operatore. Restituisce l'istruzione del passo da eseguire. Usa sop_status per vedere quali esecuzioni sono in attesa."
sop_execute = "Attivare manualmente una Standard Operating Procedure (SOP) per nome. Restituisce il run ID e l'istruzione del primo passo. Usa sop_list per vedere le SOP disponibili."
sop_list = "Elencare tutte le Standard Operating Procedures (SOP) caricate con i relativi trigger, priorità, conteggio passi e conteggio esecuzioni attive. Opzionalmente filtrare per nome o priorità."
sop_status = "Interrogare lo stato di esecuzione SOP. Fornire run_id per un'esecuzione specifica, o sop_name per elencare le esecuzioni di quella SOP. Senza argomenti, mostra tutte le esecuzioni attive."
swarm = "Orchestrare uno sciame di agenti per gestire collaborativamente un'attività. Supporta strategie sequenziale (pipeline), parallela (fan-out/fan-in) e router (selezione tramite LLM)."
tool_search = """Ottenere definizioni complete di schema per strumenti MCP differiti così da poterli chiamare. Usa "select:name1,name2" per corrispondenza esatta o parole chiave per cercare."""
web_fetch = "Recuperare una pagina web e restituirne il contenuto come testo semplice pulito. Le pagine HTML vengono automaticamente convertite in testo leggibile. Le risposte JSON e testo semplice vengono restituite così come sono. Solo richieste GET; segue i reindirizzamenti. Sicurezza: domini solo da allowlist, nessun host locale/privato."
web_search_tool = "Cercare informazioni sul web. Restituisce risultati di ricerca rilevanti con titoli, URL e descrizioni. Usa per trovare informazioni attuali, notizie o ricercare argomenti."
workspace = "Gestire workspace multi-cliente. Sottocomandi: list, switch, create, info, export. Ogni workspace fornisce memoria, audit, segreti e restrizioni di strumenti isolati."
weather = "Ottenere condizioni meteorologiche attuali e previsioni per qualsiasi località nel mondo. Supporta nomi di città (in qualsiasi lingua o scrittura), codici aeroporto IATA (es. 'LAX'), coordinate GPS (es. '51.5,-0.1'), codici postali e geolocalizzazione basata su dominio. Restituisce temperatura, temperatura percepita, umidità, velocità/direzione del vento, precipitazioni, visibilità, pressione, indice UV e copertura nuvolosa. Previsione opzionale da 0 a 3 giorni con dettaglio orario. Unità predefinite in metrico (°C, km/h, mm) ma configurabili in imperiale (°F, mph, pollici) per richiesta. Nessuna API key richiesta."
