AutomationFlowsAI & RAG › Chat → AI → Vikunja Task Creator

Chat → AI → Vikunja Task Creator

Chat → AI → Vikunja Task Creator. Uses chatTrigger, agent, lmChatOllama, outputParserStructured. Chat trigger; 6 nodes.

Chat trigger trigger★★☆☆☆ complexityAI-powered6 nodesChat TriggerAgentOllama ChatOutput Parser StructuredHTTP RequestRespond To Chat
AI & RAG Trigger: Chat trigger Nodes: 6 Complexity: ★★☆☆☆ AI nodes: yes Added:

This workflow follows the Agent → Chat Trigger recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Chat \u2192 AI \u2192 Vikunja Task Creator",
  "nodes": [
    {
      "parameters": {},
      "id": "a1b2c3d4-e5f6-4a1b-8c9d-0e1f2a3b4c5d",
      "name": "Chat Trigger",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "typeVersion": 1,
      "position": [
        240,
        300
      ]
    },
    {
      "parameters": {
        "text": "={{ $json.chatInput }}",
        "hasOutputParser": true,
        "options": {
          "systemMessage": "Du bist ein hilfreicher Assistent, der nat\u00fcrliche Spracheingaben in strukturierte Aufgabendaten umwandelt.\n\nWenn der Benutzer eine Aufgabe erstellen m\u00f6chte, extrahiere die folgenden Informationen:\n- task_title: Der Titel der Aufgabe\n- due_date: Das F\u00e4lligkeitsdatum im ISO 8601 Format (YYYY-MM-DDTHH:mm:ssZ). Heutiges Datum ist 2026-02-16. Relative Angaben wie 'morgen', 'n\u00e4chste Woche', 'in 3 Tagen' m\u00fcssen in absolute Datumsangaben umgerechnet werden.\n- project_id: Die Projekt-ID (standardm\u00e4\u00dfig 6 f\u00fcr die Inbox. Verf\u00fcgbare Projekte: 6=Inbox, 7=\u00d6IF, 8=Home Lab, 9=IBM, 10=Cardomat)\n- priority: Priorit\u00e4t als Zahl (1=sehr niedrig, 2=niedrig, 3=mittel, 4=hoch, 5=sehr hoch, Standard ist 3)\n\nBeispiele:\n- \"Erinnere mich morgen an Einkaufen\" \u2192 title: \"Einkaufen\", due_date: \"2026-02-17T12:00:00Z\", project_id: 6, priority: 3\n- \"Wichtig: Projekt-Pr\u00e4sentation in 3 Tagen vorbereiten\" \u2192 title: \"Projekt-Pr\u00e4sentation vorbereiten\", due_date: \"2026-02-19T12:00:00Z\", project_id: 6, priority: 4\n\nGib IMMER ein g\u00fcltiges JSON-Objekt zur\u00fcck mit den extrahierten Feldern."
        }
      },
      "id": "b2c3d4e5-f6a7-4b2c-9d0e-1f2a3b4c5d6e",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 1.7,
      "position": [
        460,
        300
      ]
    },
    {
      "parameters": {
        "model": "llama3.1:8b-instruct-q4_0",
        "options": {}
      },
      "id": "c3d4e5f6-a7b8-4c3d-0e1f-2a3b4c5d6e7f",
      "name": "Ollama Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOllama",
      "typeVersion": 1,
      "position": [
        480,
        520
      ],
      "credentials": {
        "ollamaApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "jsonSchemaExample": "{\n  \"task_title\": \"string\",\n  \"due_date\": \"string\",\n  \"project_id\": \"number\",\n  \"priority\": \"number\"\n}"
      },
      "id": "d4e5f6a7-b8c9-4d4e-1f2a-3b4c5d6e7f8a",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "typeVersion": 1,
      "position": [
        480,
        100
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "=http://vikunja.vikunja.svc.cluster.local:3456/api/v1/projects/{{ $json.project_id }}/tasks",
        "authentication": "none",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "<redacted-credential>"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "title",
              "value": "={{ $json.task_title }}"
            },
            {
              "name": "due_date",
              "value": "={{ $json.due_date }}"
            },
            {
              "name": "priority",
              "value": "={{ $json.priority }}"
            }
          ]
        },
        "options": {}
      },
      "id": "e5f6a7b8-c9d0-4e5f-2a3b-4c5d6e7f8a9b",
      "name": "Create Vikunja Task",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        680,
        300
      ]
    },
    {
      "parameters": {
        "respondWith": "text",
        "responseBody": "=Aufgabe erstellt: {{ $json.title }} (F\u00e4llig: {{ $json.due_date }})"
      },
      "id": "f6a7b8c9-d0e1-4f6a-3b4c-5d6e7f8a9b0c",
      "name": "Respond to Chat",
      "type": "@n8n/n8n-nodes-langchain.respondToChat",
      "typeVersion": 1,
      "position": [
        900,
        300
      ]
    }
  ],
  "connections": {
    "Chat Trigger": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Create Vikunja Task",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Ollama Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "AI Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Create Vikunja Task": {
      "main": [
        [
          {
            "node": "Respond to Chat",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "workflow-v1-vikunja-chat",
  "id": "workflow-chat-ai-vikunja",
  "tags": []
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Chat → AI → Vikunja Task Creator. Uses chatTrigger, agent, lmChatOllama, outputParserStructured. Chat trigger; 6 nodes.

Source: https://github.com/Petar-Jorgic/cluster/blob/19e7071c25d5072c5961c701dc831520fc35de17/workflow-1-chat-ai-vikunja.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This n8n workflow template creates an intelligent data analysis system that converts natural language questions into Google Sheets SQL queries using OpenAI's GPT-4o model. The system generates proper

Agent, Google Sheets Tool, Memory Buffer Window +4
AI & RAG

playwright_docker. Uses agent, chatTrigger, lmChatAzureOpenAi, memoryBufferWindow. Chat trigger; 10 nodes.

Agent, Chat Trigger, Lm Chat Azure Open Ai +3
AI & RAG

💰 Beginner Investor – Learn the market faster with AI-powered insights guiding your decisions. 📈 Retail Trader – Optimize your trading strategy with in-depth analysis typically reserved for profession

HTTP Request, Output Parser Structured, OpenAI Chat +4
AI & RAG

This comprehensive workflow automates the complete financial document processing pipeline using AI. Upload invoices via chat, drop expense receipts into a folder, or add bank statements - the system a

Chat Trigger, HTTP Request, Google Sheets +8
AI & RAG

This template attempts to create an AI-powered content assistant for WordPress sites using Mistral AI, enabling article recommendations, content summarization, and contextual Q&A capabilities.

Chat Trigger, Output Parser Structured, Agent +10