Aller au contenu principal

Votre coffre, depuis le terminal

taskforge est un petit outil en ligne de commande qui lit et écrit les tâches de votre coffre Obsidian. Il utilise le même analyseur que l'application, donc les tâches récurrentes avancent, les archives atterrissent au bon endroit, et vos lignes de tâches gardent votre format. Donnez-le à un script shell ou à un agent, et il modifie de vrais fichiers markdown, rien d'hébergé.

Bientôt avec TaskForge 3.0

La CLI TaskForge et le serveur MCP arrivent avec la sortie de TaskForge 3.0. Tout ce qui figure sur cette page décrit leur fonctionnement au lancement. L'application TaskForge, elle, est disponible dès aujourd'hui.

La CLI ou le serveur MCP ?

Utilisez la CLI depuis des contextes shell sans connexion MCP : scripts, cron, CI, ou un agent de code qui travaille dans une copie locale d'un dépôt. Si votre agent dispose déjà d'une connexion MCP à TaskForge, préférez les outils MCP ; ils sont typés, renvoient des erreurs structurées que l'agent peut utiliser pour se corriger, et n'exigent rien dans votre PATH. Les deux pilotent le même moteur avec une sémantique identique, choisissez donc celui déjà branché dans votre environnement. Modifier les fichiers du coffre à la main reste le dernier recours.

Installation

macOS et Linux, via Homebrew :

Disponible au lancement
brew install azhard/tap/taskforge

Vous préférez npm ? Le même binaire est aussi publié comme package :

Disponible au lancement
npm install -g taskforge

Une copie intégrée à l'application qui s'installe elle-même à l'ouverture d'un coffre arrive bientôt. En attendant, le tap ci-dessus est la voie d'accès.

Démarrage rapide

Pointez taskforge vers un coffre avec --vault, ou définissez TASKFORGE_VAULT une bonne fois pour toutes. Chaque commande de lecture accepte --json pour une sortie exploitable par une machine, qu'un agent peut analyser.

taskforge schema

Affiche le dialecte de tâches du coffre : symboles de statut, format de date, champs personnalisés, où vont les nouvelles tâches. C'est ce qu'un agent lit en premier.

taskforge add "call the plumber" --due 2026-07-10 --priority high

Ajoute une tâche à la cible par défaut du coffre pour les nouvelles tâches, formatée comme votre coffre écrit ses tâches.

taskforge query 'prop:priority_label=urgent' --sort priority --count

Compte les tâches qui portent le champ personnalisé priority_label:: urgent, les plus urgentes en premier. Enlevez --count pour les lister.

taskforge query 'desc:"invoice" text:acme' --json

Trouve les tâches dont la description mentionne une facture et dont le titre mentionne acme, en JSON. L'accent et la casse sont ignorés, donc cafe correspond à café.

taskforge done <task-id>

Termine une tâche. Si elle est récurrente, la prochaine occurrence est réécrite dans le fichier, exactement comme le ferait l'application.

taskforge show <task-id> --json

Lit une tâche avec son hash de contenu, pour qu'une modification ultérieure puisse passer --if-hash et refuser d'écraser une copie périmée.

Grammaire de requête

L'argument de requête est un ensemble de jetons séparés par des espaces, qui doivent tous correspondre. Les plus courants :

text:word Le titre contient le mot (insensible aux accents et à la casse). text:groceries
desc:"phrase" La description de la tâche contient la phrase. desc:"send invoice"
tag:name La tâche porte le tag #name. tag:work
prop:key=value Le champ personnalisé key est égal à value. prop:area=home
prop:key Le champ personnalisé key existe, quelle que soit sa valeur. prop:estimate
--sort due|priority|created Ordonne les résultats. Par défaut, date d'échéance, la plus proche en premier. --sort priority
--count Renvoie le nombre de correspondances plutôt que les tâches. --count

Les clés de champ personnalisé peuvent inclure des lettres, des chiffres et des underscores, donc priority_label et area_2 fonctionnent tous les deux.

Une seule exigence : le contrat de coffre

taskforge lit un petit fichier de contrat, taskforge/schema.json, que TaskForge écrit dans votre coffre. Il décrit votre format de tâches exact, pour que la CLI modifie les tâches à votre façon plutôt que de deviner. Ouvrez le coffre dans TaskForge 3.0 ou une version ultérieure au moins une fois, allez dans Settings, AI & Agents, et laissez "Generate agent files" activé. Cela écrit le contrat.

Si taskforge ne trouve pas de coffre, il indique les trois façons de l'y diriger :

  1. Passez --vault /path/to/vault sur la commande.
  2. Définissez la variable d'environnement TASKFORGE_VAULT.
  3. Ouvrez le coffre une fois dans TaskForge 3.0+ pour que taskforge/schema.json existe, puis lancez la commande depuis le dossier du coffre.

Local uniquement

taskforge s'exécute sur votre machine et ne touche que les fichiers markdown du coffre que vous lui indiquez. Aucun compte, aucune clé API, aucun appel réseau. Ce qui synchronise déjà votre coffre, iCloud, Dropbox ou Obsidian Sync, transporte les modifications vers vos autres appareils.

Vous voulez qu'un agent le pilote ?

La CLI est faite pour les terminaux et les scripts. Si vous voulez que Claude Desktop ou un autre client MCP ajoute et termine des tâches via une interface d'outils, configurez plutôt le serveur MCP. Même coffre, mêmes règles. C'est de toute façon le même binaire taskforge : taskforge mcp --stdio suffit à le transformer en serveur MCP.

Configurer le serveur MCP →

La CLI modifie les tâches. L'application les garde en vie.

taskforge écrit dans votre coffre depuis n'importe quel terminal ; TaskForge transforme ces mêmes fichiers en listes, widgets et rappels sur votre téléphone et votre ordinateur. Gratuit à télécharger sur iPhone, iPad, Mac et Android.