KI-Agent für GitHub

Experte

Dies ist ein Internal Wiki, AI RAG-Bereich Automatisierungsworkflow mit 19 Nodes. Hauptsächlich werden Set, Github, HttpRequest, ManualTrigger, Agent und andere Nodes verwendet. Erstellen Sie einen Code-Assistenten, der aus GitHub-Repositories mit OpenAI lernt

Voraussetzungen
  • GitHub Personal Access Token
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
  • OpenAI API Key
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "id": "HJdHRULAa3bhcCMR",
  "meta": {
    "instanceId": "a0e41110bf9f611e96e18e0663d80d746aeedc58368940bfe471a8d577a5069b",
    "templateCredsSetupCompleted": true
  },
  "name": "AI Agent For Github",
  "tags": [],
  "nodes": [
    {
      "id": "21ce2f08-255b-49e7-8a28-c7755593e574",
      "name": "Standard-Datenlader",
      "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "position": [
        1152,
        208
      ],
      "parameters": {
        "options": {},
        "dataType": "binary"
      },
      "typeVersion": 1
    },
    {
      "id": "af656ce7-169b-4c91-a770-8c488f68911a",
      "name": "Rekursiver Zeichentext-Splitter",
      "type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
      "position": [
        1232,
        416
      ],
      "parameters": {
        "options": {},
        "chunkOverlap": 100
      },
      "typeVersion": 1
    },
    {
      "id": "6493e13d-3e1e-42c0-abef-290a2a236868",
      "name": "KI-Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        400,
        736
      ],
      "parameters": {
        "options": {
          "systemMessage": "You are a helpful technical assistant designed to answer developer questions based on the project’s source code and technical documentation. \n\nWhen a developer asks a question, use the tool `project_source_tool` to retrieve relevant information from the available codebase and documentation."
        }
      },
      "typeVersion": 1.7
    },
    {
      "id": "2f05cc89-7dcf-40bc-a5c2-fd2c5c7cc57c",
      "name": "Vektor-Speicher-Werkzeug",
      "type": "@n8n/n8n-nodes-langchain.toolVectorStore",
      "position": [
        608,
        960
      ],
      "parameters": {
        "name": "project_source_tool",
        "topK": "=5",
        "description": "Retrieve information from any source code"
      },
      "typeVersion": 1
    },
    {
      "id": "0edbd03e-e2fa-41b2-9fdb-c935dd44148d",
      "name": "Fensterpuffer-Speicher",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        480,
        960
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "38b9511b-c5bf-47be-abe1-3d6b156e2b50",
      "name": "Bei Empfang einer Chat-Nachricht",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        128,
        736
      ],
      "webhookId": "5f1c0c82-0ff9-40c7-9e2e-b1a96ffe24cd",
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "eda1081e-97b8-441e-b726-ea6a0dec9141",
      "name": "Haftnotiz1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -528,
        112
      ],
      "parameters": {
        "width": 340,
        "height": 560,
        "content": "## Setup Guilde\n\n### 1. Update the `Config` Node\nAdd or edit the following parameters:\n- `repo_owner`\n- `repo_name`\n- `repo_path`\n- `sub_path`\n\n### 2. Add GitHub Account\nConnect your GitHub account to enable repository access.\n\n### 3. Trigger “Sync Data”\nRun the workflow or trigger the node to start syncing data from GitHub to your vectorstore.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "073d715d-1432-40b8-ba62-63b586ff3900",
      "name": "Konfiguration",
      "type": "n8n-nodes-base.set",
      "position": [
        352,
        -16
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "03f51f9c-4681-4423-91d2-d32f4c18d6bc",
              "name": "repo_owner",
              "type": "string",
              "value": "cphuong20202009"
            },
            {
              "id": "0c9b521a-b698-4b43-9eb0-bbf744760158",
              "name": "repo_name",
              "type": "string",
              "value": "share-n8n-workflow"
            },
            {
              "id": "91627e70-a71a-4be0-a6f6-b04d5c8469d8",
              "name": "repo_path",
              "type": "string",
              "value": "share-n8n-workflow"
            },
            {
              "id": "983a2c87-9d69-4d64-ab88-ec1b1117c6e6",
              "name": "sub_path",
              "type": "string",
              "value": "workflows"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "24767c37-190a-4039-84c3-23207299eecc",
      "name": "Dateien auflisten",
      "type": "n8n-nodes-base.github",
      "position": [
        576,
        -16
      ],
      "webhookId": "1ff4096c-91c9-4500-9fda-2d3ef1586d2f",
      "parameters": {
        "owner": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $json.repo_owner }}"
        },
        "filePath": "={{ $json.sub_path }}",
        "resource": "file",
        "operation": "list",
        "repository": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $json.repo_name }}"
        }
      },
      "credentials": {
        "githubApi": {
          "id": "tk70N65ddQrYqN4t",
          "name": "GitHub account 3"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "97c7184a-685b-4940-b3af-6de8bbf9c7dd",
      "name": "Datei abrufen",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        800,
        -16
      ],
      "parameters": {
        "url": "={{ $json.download_url }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "c98cb6aa-e460-4c97-ba1d-d9fd9da561d3",
      "name": "Einbettungen OpenAI",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        1024,
        208
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "2TBvwobWbbHlIjKT",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "e6eba4d9-4770-46e7-af58-233763b12bcc",
      "name": "Einbettungen OpenAI1",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        576,
        1376
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "2TBvwobWbbHlIjKT",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "06cc6964-01bc-496f-895f-c3277c3cb10e",
      "name": "OpenAI Chat-Modell",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        784,
        1168
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "2TBvwobWbbHlIjKT",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "e4d2d5e8-318d-4a63-9777-76225842fd88",
      "name": "OpenAI Chat-Modell1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        352,
        960
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "2TBvwobWbbHlIjKT",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "b5c0e689-aaa1-4d69-993e-7bb6b04937db",
      "name": "Einfacher Vektor-Speicher",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory",
      "position": [
        496,
        1168
      ],
      "parameters": {
        "memoryKey": {
          "__rl": true,
          "mode": "list",
          "value": "source-code",
          "cachedResultName": "source-code"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "a41eac9f-9556-48dd-abf3-511a2b430c67",
      "name": "Einfacher Vektor-Speicher1",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory",
      "position": [
        1056,
        -16
      ],
      "parameters": {
        "mode": "insert",
        "memoryKey": {
          "__rl": true,
          "mode": "list",
          "value": "source-code"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "fb9ecc78-60b5-4eb0-912b-654bf3dbc5ca",
      "name": "Haftnotiz",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        128,
        -128
      ],
      "parameters": {
        "width": 384,
        "height": 80,
        "content": "Pull your source files and update the knowledge base (vectorstore) for the AI Agent"
      },
      "typeVersion": 1
    },
    {
      "id": "ccea3fc1-94e3-4582-bfb5-ef4cc2546a61",
      "name": "Haftnotiz2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        128,
        640
      ],
      "parameters": {
        "width": 560,
        "height": 80,
        "content": "Ask questions to the AI Agent — it will respond using your repository knowledge."
      },
      "typeVersion": 1
    },
    {
      "id": "c14b04e5-7f2c-42c3-ac89-f5a256ee2ead",
      "name": "Daten synchronisieren",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        128,
        -16
      ],
      "parameters": {},
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "6a88fedb-ad7d-4258-ac59-afb17408e6c4",
  "connections": {
    "073d715d-1432-40b8-ba62-63b586ff3900": {
      "main": [
        [
          {
            "node": "24767c37-190a-4039-84c3-23207299eecc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "97c7184a-685b-4940-b3af-6de8bbf9c7dd": {
      "main": [
        [
          {
            "node": "a41eac9f-9556-48dd-abf3-511a2b430c67",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c14b04e5-7f2c-42c3-ac89-f5a256ee2ead": {
      "main": [
        [
          {
            "node": "073d715d-1432-40b8-ba62-63b586ff3900",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "24767c37-190a-4039-84c3-23207299eecc": {
      "main": [
        [
          {
            "node": "97c7184a-685b-4940-b3af-6de8bbf9c7dd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI": {
      "ai_embedding": [
        [
          {
            "node": "a41eac9f-9556-48dd-abf3-511a2b430c67",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "06cc6964-01bc-496f-895f-c3277c3cb10e": {
      "ai_languageModel": [
        [
          {
            "node": "2f05cc89-7dcf-40bc-a5c2-fd2c5c7cc57c",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "2f05cc89-7dcf-40bc-a5c2-fd2c5c7cc57c": {
      "ai_tool": [
        [
          {
            "node": "6493e13d-3e1e-42c0-abef-290a2a236868",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI1": {
      "ai_embedding": [
        [
          {
            "node": "b5c0e689-aaa1-4d69-993e-7bb6b04937db",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "e4d2d5e8-318d-4a63-9777-76225842fd88": {
      "ai_languageModel": [
        [
          {
            "node": "6493e13d-3e1e-42c0-abef-290a2a236868",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "21ce2f08-255b-49e7-8a28-c7755593e574": {
      "ai_document": [
        [
          {
            "node": "a41eac9f-9556-48dd-abf3-511a2b430c67",
            "type": "ai_document",
            "index": 0
          }
        ]
      ]
    },
    "b5c0e689-aaa1-4d69-993e-7bb6b04937db": {
      "ai_vectorStore": [
        [
          {
            "node": "2f05cc89-7dcf-40bc-a5c2-fd2c5c7cc57c",
            "type": "ai_vectorStore",
            "index": 0
          }
        ]
      ]
    },
    "0edbd03e-e2fa-41b2-9fdb-c935dd44148d": {
      "ai_memory": [
        [
          {
            "node": "6493e13d-3e1e-42c0-abef-290a2a236868",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "38b9511b-c5bf-47be-abe1-3d6b156e2b50": {
      "main": [
        [
          {
            "node": "6493e13d-3e1e-42c0-abef-290a2a236868",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "af656ce7-169b-4c91-a770-8c488f68911a": {
      "ai_textSplitter": [
        [
          {
            "node": "21ce2f08-255b-49e7-8a28-c7755593e574",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte - Internes Wiki, KI RAG

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes19
Kategorie2
Node-Typen14
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
Nghia Nguyen

Nghia Nguyen

@nghiaaidev

I am Nguyen Trung Nghia, a Software Engineer passionate about AI Automation. I build intelligent automation systems that help businesses reduce costs, increase productivity, and scale faster with the power of AI technology.

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34