用于GitHub的AI代理
高级
这是一个Internal Wiki, AI RAG领域的自动化工作流,包含 19 个节点。主要使用 Set, Github, HttpRequest, ManualTrigger, Agent 等节点。 使用OpenAI创建从GitHub仓库学习的代码助手
前置要求
- •GitHub Personal Access Token
- •可能需要目标 API 的认证凭证
- •OpenAI API Key
使用的节点 (19)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "HJdHRULAa3bhcCMR",
"meta": {
"instanceId": "a0e41110bf9f611e96e18e0663d80d746aeedc58368940bfe471a8d577a5069b",
"templateCredsSetupCompleted": true
},
"name": "用于 Github 的 AI Agent",
"tags": [],
"nodes": [
{
"id": "21ce2f08-255b-49e7-8a28-c7755593e574",
"name": "默认数据加载器",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"position": [
1152,
208
],
"parameters": {
"options": {},
"dataType": "binary"
},
"typeVersion": 1
},
{
"id": "af656ce7-169b-4c91-a770-8c488f68911a",
"name": "递归字符文本分割器",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"position": [
1232,
416
],
"parameters": {
"options": {},
"chunkOverlap": 100
},
"typeVersion": 1
},
{
"id": "6493e13d-3e1e-42c0-abef-290a2a236868",
"name": "AI 代理",
"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": "向量存储工具",
"type": "@n8n/n8n-nodes-langchain.toolVectorStore",
"position": [
608,
960
],
"parameters": {
"name": "project_source_tool",
"topK": "=5",
"description": "从任何源代码检索信息"
},
"typeVersion": 1
},
{
"id": "0edbd03e-e2fa-41b2-9fdb-c935dd44148d",
"name": "窗口缓冲内存",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
480,
960
],
"parameters": {},
"typeVersion": 1.3
},
{
"id": "38b9511b-c5bf-47be-abe1-3d6b156e2b50",
"name": "当收到聊天消息时",
"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": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-528,
112
],
"parameters": {
"width": 340,
"height": 560,
"content": "## 设置指南"
},
"typeVersion": 1
},
{
"id": "073d715d-1432-40b8-ba62-63b586ff3900",
"name": "配置",
"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": "列出文件",
"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": "获取文件",
"type": "n8n-nodes-base.httpRequest",
"position": [
800,
-16
],
"parameters": {
"url": "={{ $json.download_url }}",
"options": {}
},
"typeVersion": 4.2
},
{
"id": "c98cb6aa-e460-4c97-ba1d-d9fd9da561d3",
"name": "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": "OpenAI 嵌入1",
"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 聊天模型",
"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 聊天模型1",
"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": "简单向量存储",
"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": "简单向量存储1",
"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": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
128,
-128
],
"parameters": {
"width": 384,
"height": 80,
"content": "拉取您的源文件并更新 AI Agent 的知识库(向量存储)"
},
"typeVersion": 1
},
{
"id": "ccea3fc1-94e3-4582-bfb5-ef4cc2546a61",
"name": "便签2",
"type": "n8n-nodes-base.stickyNote",
"position": [
128,
640
],
"parameters": {
"width": 560,
"height": 80,
"content": "向 AI Agent 提问——它将使用您的仓库知识进行回应。"
},
"typeVersion": 1
},
{
"id": "c14b04e5-7f2c-42c3-ac89-f5a256ee2ead",
"name": "同步数据",
"type": "n8n-nodes-base.manualTrigger",
"position": [
128,
-16
],
"parameters": {},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "6a88fedb-ad7d-4258-ac59-afb17408e6c4",
"connections": {
"Config": {
"main": [
[
{
"node": "List files",
"type": "main",
"index": 0
}
]
]
},
"Get File": {
"main": [
[
{
"node": "Simple Vector Store1",
"type": "main",
"index": 0
}
]
]
},
"Sync Data": {
"main": [
[
{
"node": "Config",
"type": "main",
"index": 0
}
]
]
},
"List files": {
"main": [
[
{
"node": "Get File",
"type": "main",
"index": 0
}
]
]
},
"Embeddings OpenAI": {
"ai_embedding": [
[
{
"node": "Simple Vector Store1",
"type": "ai_embedding",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Vector Store Tool",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Vector Store Tool": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Embeddings OpenAI1": {
"ai_embedding": [
[
{
"node": "Simple Vector Store",
"type": "ai_embedding",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Default Data Loader": {
"ai_document": [
[
{
"node": "Simple Vector Store1",
"type": "ai_document",
"index": 0
}
]
]
},
"Simple Vector Store": {
"ai_vectorStore": [
[
{
"node": "Vector Store Tool",
"type": "ai_vectorStore",
"index": 0
}
]
]
},
"Window Buffer Memory": {
"ai_memory": [
[
{
"node": "AI Agent",
"type": "ai_memory",
"index": 0
}
]
]
},
"When chat message received": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"Recursive Character Text Splitter": {
"ai_textSplitter": [
[
{
"node": "Default Data Loader",
"type": "ai_textSplitter",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 内部知识库, AI RAG 检索增强
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
🤖 使用Gemini RAG流水线构建文档专家聊天机器人
使用OpenAI RAG流水线构建n8n文档专家聊天机器人
Set
Html
Filter
+16
46 节点Ayham
内部知识库
使用Gemini RAG管道构建文档专家聊天机器人
使用Gemini RAG管道构建文档专家聊天机器人
Set
Html
Filter
+16
48 节点Lucas Peyrin
内部知识库
基于 Webhook、Pinecone + OpenAI + n8n 的智能文档问答系统
基于OpenAI GPT、Pinecone向量数据库和Google Drive集成的文档问答系统
Webhook
Google Drive
Manual Trigger
+11
30 节点Mohan Gopal
内部知识库
文档 RAG 和聊天代理:Google Drive 到 Qdrant 与 Mistral OCR
文档 RAG 和聊天代理:Google Drive 到 Qdrant 与 Mistral OCR
If
Set
Code
+16
40 节点DIGITAL BIZ TECH
内部知识库
我的工作流
使用Google Drive和GPT-4o通过向量搜索创建知识库聊天机器人
Set
Code
Webhook
+12
26 节点Gofive
客服机器人
基于网站内容和Airtable数据构建用于RAG应用的聊天机器人
基于Pinecone、Airtable和OpenAI的网站内容聊天机器人(RAG应用)
Set
Code
Markdown
+15
27 节点Alok Kumar
AI RAG 检索增强
工作流信息
难度等级
高级
节点数量19
分类2
节点类型14
作者
Nghia Nguyen
@nghiaaidevI 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.
外部链接
在 n8n.io 查看 →
分享此工作流