Il tuo vault, dal terminale
taskforge è un piccolo strumento a riga di comando che legge e scrive le attività nel tuo vault Obsidian. Usa lo stesso parser dell'app, quindi le attività ricorrenti avanzano, gli archivi finiscono nel posto giusto e le tue righe di attività restano nel tuo formato. Affidalo a uno script di shell o a un agente e modifica file markdown reali, nulla è ospitato altrove.
In arrivo con TaskForge 3.0
La CLI di TaskForge e il server MCP arriveranno con il rilascio di TaskForge 3.0. Tutto quello che trovi in questa pagina descrive come funzioneranno al lancio. L'app TaskForge, invece, è già disponibile oggi.
La CLI o il server MCP?
Usa la CLI da contesti di shell senza connessione MCP: script, cron, CI, o un agente di coding che lavora in una copia locale di un repository. Se il tuo agente ha già una connessione MCP a TaskForge, preferisci gli strumenti MCP; sono tipizzati, restituiscono errori strutturati su cui l'agente può autocorreggersi, e non richiedono nulla nel tuo PATH. Entrambi guidano lo stesso motore con semantica identica, scegli quindi quello già collegato nel tuo ambiente. Modificare i file del vault a mano resta l'ultima risorsa.
Installazione
Su macOS e Linux, tramite Homebrew:
brew install azhard/tap/taskforge Preferisci npm? Lo stesso binario è disponibile anche come pacchetto:
npm install -g taskforge Una copia integrata nell'app che si installa da sola quando apri un vault è in arrivo. Fino ad allora, il tap qui sopra è la via d'accesso.
Avvio rapido
Punta taskforge su un vault con --vault, oppure imposta una volta TASKFORGE_VAULT. Ogni comando di lettura accetta --json per un output leggibile da una macchina che un agente può interpretare.
taskforge schema Stampa il dialetto delle attività del vault: simboli di stato, formato delle date, campi personalizzati, dove finiscono le nuove attività. È la prima cosa che legge un agente.
taskforge add "call the plumber" --due 2026-07-10 --priority high Aggiunge un'attività alla destinazione predefinita del vault per le nuove attività, formattata come il tuo vault scrive le attività.
taskforge query 'prop:priority_label=urgent' --sort priority --count Conta le attività che portano il campo personalizzato priority_label:: urgent, le più urgenti per prime. Ometti --count per elencarle.
taskforge query 'desc:"invoice" text:acme' --json Trova le attività la cui descrizione menziona una fattura e il cui titolo menziona acme, in formato JSON. Accenti e maiuscole/minuscole vengono ignorati, quindi cafe corrisponde a café.
taskforge done <task-id> Completa un'attività. Se è ricorrente, la prossima occorrenza viene riscritta nel file, esattamente come farebbe l'app.
taskforge show <task-id> --json Legge un'attività con il suo hash del contenuto, così una modifica successiva può passare --if-hash e rifiutarsi di sovrascrivere una copia obsoleta.
Grammatica delle query
L'argomento query è un insieme di token separati da spazi, che devono corrispondere tutti. I più comuni:
| text:word | Il titolo contiene la parola (senza distinzione di accenti o maiuscole/minuscole). | text:groceries |
| desc:"phrase" | La descrizione dell'attività contiene la frase. | desc:"send invoice" |
| tag:name | L'attività porta il tag #name. | tag:work |
| prop:key=value | Il campo personalizzato key è uguale a value. | prop:area=home |
| prop:key | Il campo personalizzato key esiste, con qualsiasi valore. | prop:estimate |
| --sort due|priority|created | Ordina i risultati. Il valore predefinito è la data di scadenza, dalla più vicina. | --sort priority |
| --count | Restituisce il numero di corrispondenze invece delle attività. | --count |
Le chiavi dei campi personalizzati possono includere lettere, cifre e trattini bassi, quindi sia priority_label sia area_2 funzionano.
Un solo requisito: il contratto del vault
taskforge legge un piccolo file di contratto, taskforge/schema.json, che TaskForge scrive nel tuo vault. Descrive il formato esatto delle tue attività, così la CLI modifica le attività a modo tuo invece di indovinare. Apri il vault in TaskForge 3.0 o versioni successive almeno una volta, vai su Settings, AI & Agents, e lascia attivo "Generate agent files". Questo scrive il contratto.
Se taskforge non riesce a trovare un vault, ti indica i tre modi per indicarglielo:
- Passa --vault /path/to/vault al comando.
- Imposta la variabile d'ambiente TASKFORGE_VAULT.
- Apri il vault una volta in TaskForge 3.0+ in modo che taskforge/schema.json esista, poi esegui il comando dall'interno della cartella del vault.
Solo in locale
taskforge viene eseguito sul tuo computer e tocca solo i file markdown nel vault che gli indichi. Nessun account, nessuna chiave API, nessuna chiamata di rete. Qualunque cosa sincronizzi già il tuo vault, iCloud, Dropbox o Obsidian Sync, porta le modifiche sugli altri tuoi dispositivi.
Vuoi farlo guidare da un agente?
La CLI è pensata per terminali e script. Se vuoi che Claude Desktop o un altro client MCP aggiunga e completi attività attraverso un'interfaccia a strumenti, configura invece il server MCP. Stesso vault, stesse regole. In entrambi i casi è lo stesso binario taskforge: basta taskforge mcp --stdio per trasformarlo in un server MCP.
Configura il server MCP →La CLI modifica le attività. L'app le tiene in vita.
taskforge scrive nel tuo vault da qualsiasi terminale; TaskForge trasforma quegli stessi file in liste, widget e promemoria sul tuo telefono e desktop. Gratuito da scaricare su iPhone, iPad, Mac e Android.