Tu vault, desde la terminal
taskforge es una pequeña herramienta de línea de comandos que lee y escribe las tareas de tu vault de Obsidian. Usa el mismo analizador que la app, así que las tareas recurrentes avanzan, los archivados van al lugar correcto y tus líneas de tarea mantienen tu formato. Dásela a un script de shell o a un agente, y edita archivos markdown reales, nada alojado en la nube.
Próximamente en TaskForge 3.0
La CLI y el servidor MCP de TaskForge llegan con el lanzamiento de TaskForge 3.0. Todo lo que aparece en esta página describe cómo funcionarán cuando estén disponibles. La app de TaskForge ya se puede descargar hoy mismo.
¿La CLI o el servidor MCP?
Usa la CLI en contextos de shell sin conexión MCP: scripts, cron, CI, o un agente de código que trabaja en una copia local de un repositorio. Si tu agente ya tiene una conexión MCP con TaskForge, prefiere las herramientas MCP; están tipadas, devuelven errores estructurados con los que el agente puede autocorregirse, y no necesitan nada en tu PATH. Ambas mueven el mismo motor con semántica idéntica, así que elige la que ya tengas conectada en tu entorno. Editar los archivos del vault a mano es el último recurso.
Instalación
macOS y Linux, mediante Homebrew:
brew install azhard/tap/taskforge ¿Prefieres npm? El mismo binario se distribuye como paquete:
npm install -g taskforge Está en camino una copia integrada en la app que se instala sola al abrir un vault. Hasta entonces, el tap de arriba es la vía de entrada.
Inicio rápido
Apunta taskforge a un vault con --vault, o define TASKFORGE_VAULT una sola vez. Todos los comandos de lectura aceptan --json para obtener una salida legible por máquina que un agente pueda analizar.
taskforge schema Imprime el dialecto de tareas del vault: símbolos de estado, formato de fecha, campos personalizados, dónde van las tareas nuevas. Esto es lo primero que lee un agente.
taskforge add "call the plumber" --due 2026-07-10 --priority high Añade una tarea al destino predeterminado de tareas nuevas del vault, con el formato con el que tu vault escribe las tareas.
taskforge query 'prop:priority_label=urgent' --sort priority --count Cuenta las tareas que llevan el campo personalizado priority_label:: urgent, empezando por las más urgentes. Quita --count para listarlas.
taskforge query 'desc:"invoice" text:acme' --json Encuentra tareas cuya descripción mencione una factura y cuyo título mencione acme, en formato JSON. Se ignoran los acentos y las mayúsculas, así que cafe coincide con café.
taskforge done <task-id> Completa una tarea. Si es recurrente, la siguiente aparición se escribe de vuelta en el archivo, exactamente como lo haría la app.
taskforge show <task-id> --json Lee una tarea junto con su hash de contenido, para que una edición posterior pueda pasar --if-hash y rechazar escribir sobre una copia desactualizada.
Gramática de consultas
El argumento de consulta es un conjunto de tokens separados por espacios, todos los cuales deben coincidir. Los más habituales:
| text:word | El título contiene la palabra (sin distinguir acentos ni mayúsculas). | text:groceries |
| desc:"phrase" | La descripción de la tarea contiene la frase. | desc:"send invoice" |
| tag:name | La tarea lleva la etiqueta #name. | tag:work |
| prop:key=value | El campo personalizado key es igual a value. | prop:area=home |
| prop:key | El campo personalizado key existe, con cualquier valor. | prop:estimate |
| --sort due|priority|created | Ordena los resultados. Por defecto, por fecha de vencimiento, de la más próxima a la más lejana. | --sort priority |
| --count | Devuelve el número de coincidencias en lugar de las tareas. | --count |
Las claves de campo personalizado pueden incluir letras, dígitos y guiones bajos, así que tanto priority_label como area_2 funcionan.
Un solo requisito: el contrato del vault
taskforge lee un pequeño archivo de contrato, taskforge/schema.json, que TaskForge escribe en tu vault. Describe el formato exacto de tus tareas, para que la CLI las edite a tu manera en lugar de adivinar. Abre el vault en TaskForge 3.0 o posterior al menos una vez, ve a Ajustes, IA y Agentes, y deja activado "Generar archivos para agentes". Eso escribe el contrato.
Si taskforge no encuentra un vault, te indica las tres formas de señalarle uno:
- Pasa --vault /path/to/vault en el comando.
- Define la variable de entorno TASKFORGE_VAULT.
- Abre el vault una vez en TaskForge 3.0+ para que exista taskforge/schema.json, y luego ejecuta el comando desde dentro de la carpeta del vault.
Solo local
taskforge se ejecuta en tu ordenador y solo toca los archivos markdown del vault al que lo apuntas. Sin cuenta, sin clave de API, sin llamadas de red. Lo que ya sincroniza tu vault, iCloud, Dropbox u Obsidian Sync, lleva las ediciones a tus demás dispositivos.
¿Quieres que lo maneje un agente?
La CLI es para terminales y scripts. Si quieres que Claude Desktop u otro cliente MCP añada y complete tareas a través de una interfaz de herramientas, configura en su lugar el servidor MCP. Mismo vault, mismas reglas. Es el mismo binario taskforge en ambos casos, así que basta con taskforge mcp --stdio para convertirlo en un servidor MCP.
Configura el servidor MCP →La CLI edita las tareas. La app las mantiene vivas.
taskforge escribe en tu vault desde cualquier terminal; TaskForge convierte esos mismos archivos en listas, widgets y recordatorios en tu teléfono y tu escritorio. Gratis para descargar en iPhone, iPad, Mac y Android.