DeltaTask

Una potente aplicación de gestión de tareas alojada localmente con integración con Obsidian y soporte de base de datos SQLite.

Documentación

DeltaTask - Sistema Avanzado de Gestión de Tareas

Una potente aplicación de gestión de tareas alojada localmente con integración con Obsidian y un servidor de Model Context Protocol (MCP).

Características

  • Gestión Inteligente de Tareas: Crea tareas con niveles de urgencia y estimaciones de esfuerzo
  • Motor de Priorización: Ordena automáticamente las tareas por urgencia y esfuerzo
  • Descomposición de Tareas: Divide tareas más grandes en subtareas manejables
  • Sistema de Etiquetado: Organiza tareas con etiquetas personalizadas
  • Almacenamiento Local: Todos los datos se almacenan localmente en una base de datos SQLite
  • Integración con Obsidian: Sincronización bidireccional con archivos markdown de Obsidian
  • Servidor MCP: Acceso completo a la API a través de Model Context Protocol

Detalles Técnicos

Modelo de Datos

  • Tareas: Entidad central de tareas con propiedades:
    • Título y descripción
    • Urgencia (escala 1-5, siendo 5 la más alta)
    • Esfuerzo (escala 1-21, siguiendo la secuencia de Fibonacci)
    • Estado de finalización
    • Relaciones padre-hijo para subtareas
    • Etiquetas para categorización

Esquema de Base de Datos

La aplicación utiliza SQLite con las siguientes tablas:

  • todos: Almacena todos los elementos de tarea y sus propiedades
  • tags: Almacena nombres de etiquetas únicos
  • todo_tags: Tabla de unión para la relación muchos a muchos entre tareas y etiquetas

Integración con Obsidian

DeltaTask crea y mantiene una bóveda de Obsidian estructurada:

  • Archivos de tareas con metadatos frontmatter
  • Vistas basadas en etiquetas para filtrar tareas
  • Panel de estadísticas
  • Sincronización bidireccional entre markdown de Obsidian y la base de datos SQLite

Puntos de Acceso de la API MCP

El servidor MCP expone las siguientes operaciones:

  • get_task_by_id: Obtener una tarea específica por ID
  • search_tasks: Buscar tareas por título, descripción o etiquetas
  • create_task: Crear una nueva tarea
  • update_task: Actualizar las propiedades de una tarea
  • delete_task: Eliminar una tarea
  • sync_tasks: Sincronizar tareas desde markdown de Obsidian a SQLite
  • list_tasks: Listar todas las tareas
  • get_statistics: Obtener métricas sobre las tareas
  • create_subtasks: Dividir una tarea en múltiples subtareas
  • get_all_tags: Obtener todos los nombres de etiquetas únicos
  • get_subtasks: Obtener subtareas para una tarea padre dada
  • finish_task: Marcar una tarea como completada

Comenzando

Requisitos previos

  • Python 3.10+
  • SQLite3
  • Obsidian (opcional, para integración con markdown)

Instalación

  1. Clona este repositorio

  2. Configura el entorno de Python usando uv:

    # Create and activate the virtual environment
    uv venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    
    # Install dependencies
    uv pip install -r requirements.txt
    

Ejecutando el Servidor MCP

El servidor MCP de DeltaTask se puede usar con Claude for Desktop:

  1. Configura Claude for Desktop:

    • Abre o crea ~/Library/Application Support/Claude/claude_desktop_config.json
    • Añade la configuración del servidor DeltaTask:
    {
      "mcpServers": {
        "deltatask": {
          "command": "uv",
          "args": [
            "--directory",
            "/ABSOLUTE/PATH/TO/DeltaTask",
            "run",
            "server.py"
          ]
        }
      }
    }
    
    • Reinicia Claude for Desktop

Si tienes problemas o quieres más detalles, consulta la Documentación del MCP.

Por ejemplo, de la documentación:

Puede que necesites poner la ruta completa al ejecutable uv en el campo command. Puedes obtener esto ejecutando which uv en MacOS/Linux o where uv en Windows.

  1. Usa las herramientas de DeltaTask en Claude for Desktop haciendo clic en el icono de martillo

Model Context Protocol (MCP)

Esta aplicación implementa un enfoque de Model Context Protocol para la gestión de tareas:

  1. Modelo de Datos Estructurado: Esquema claramente definido para tareas con relaciones
  2. Cálculo de Prioridad: Ordenamiento inteligente basado en múltiples factores
  3. Organización Jerárquica: Relaciones padre-hijo para la descomposición de tareas
  4. Sistema de Etiquetado: Categorización flexible para un mejor contexto
  5. Estadísticas y Perspectivas: Agregación de datos para comprender patrones de tareas
  6. Integración con Obsidian: Visualización y edición basadas en Markdown

Licencia

Licencia MIT