Course Guider Agent 全解析:基于 n8n 构建课程学习路线规划 AI Agent 的完整工作流实现

发布时间:2026/9/17 12:39:44
Course Guider Agent 全解析:基于 n8n 构建课程学习路线规划 AI Agent 的完整工作流实现 Course Guider Agent 全解析基于 n8n 构建课程学习路线规划 AI Agent 的完整工作流实现【免费下载链接】ottomator-agentsAll the open source AI Agents hosted on the oTTomator Live Agent Studio platform!项目地址: https://gitcode.com/GitHub_Trending/ot/ottomator-agents本篇技术指南围绕 oTTomator agents 仓库中的Course Guider Agent展开它是一款完全基于 n8n 构建的课程学习导航智能体用户只需提交一句想学什么、多长时间的自然语言请求它就会自动抽取课程名称与学习时长依次生成分阶段学习路线图、前置知识与工具清单、以及与课程匹配的职业角色映射并通过 Supabase 持久化每一轮会话。读完本文你将掌握该 Agent 从 Webhook 入口到多 Agent 串联再到消息落库的完整调用链设计理解其结构化输出解析、Prompt 工程与 Live Agent Studio 兼容的消息格式并能在自己的 n8n 实例中导入 Course_Guider_Agent.json 复现整套流程。一、Course Guider Agent 是什么根据 README.md 的定义Course Guider Agent 是你的终极学习伙伴ultimate learning companion核心能力是把任意课程/主题转化为清晰、可执行的学习路线图将复杂主题拆解为可管理的步骤、识别前置知识与工具、并把所学技能映射到真实世界的职业角色同时尊重用户给出的时间范围timeline。其输出采用丰富的 emoji 排版天然适合分享。平台n8nWorkflow Automation可直接把 JSON 文件导入自有 n8n 实例查看与运行作者Perumalla Venkata Naga Dhanush适用人群学习者规划自己的学习路径、教育者为学生生成结构化课程大纲、职业顾问将课程与就业岗位关联。从同目录的 Course_Guider_Agent.json 可以进一步确认这是一个纯 n8n 节点编排的 Agent 工作流不含任何自定义代码由 Webhook、Set、Supabase、Basic LLM Chain、Structured Output Parser、Agent、Anthropic Chat Model、Respond to Webhook 等 14 个节点组成模型统一使用 Anthropic 的claude-3-5-haiku-20241022。换句话说整个智能体完全由 n8n 的 LangChain 类节点与提示词工程实现这是理解该项目的关键视角。二、核心能力清单README 中列出的 Features 构成了本 Agent 的能力基线复杂主题拆解把复杂课程拆解为清晰、可管理的学习步骤前置知识与资源识别找出学习该主题所需的前置知识与工具资源技能→职业角色映射将所学技能映射到真实世界的岗位与行业富有吸引力的输出emoji 丰富的排版增强用户体验可分享的结构化格式输出结构规整、便于二次传播。工作流画布上的 Sticky NoteCourse_Guider_Agent.json 内Sticky Note节点对这四条能力做了同义复述Dynamic Roadmap Generation动态路线图生成、Prerequisites and Tools前置知识与工具、Job Role Mapping职业角色映射、Engaging and Visual Outputs富视觉输出可作为能力清单的交叉验证。三、端到端工作流程从 Webhook 到路线图README 的 How It Works 从功能视角给出了 5 个步骤分析用户选择的课程或主题识别核心概念、前置知识与相关工具生成与用户时间线对齐的分步路线图将每项技能映射到实际岗位与职业结果生成 emoji 丰富、易于分享的输出。而工作流 JSON 中的connections字段则揭示了这些功能步骤背后的真实节点调用链是一条串行管线Webhook (POST /invoke-course-guider) → Edit Fields提取 body.query → Add user message to DBSupabase 写入用户消息 → Basic LLM Chain抽取课程名时长⇄ Structured Output ParserJSON 结构化约束 → Add AI message to DBSupabase 写入提示性 AI 消息 → Roadmapper Agent生成路线图→ Supabase1落库 → Framework-Suggestor推荐前置知识/框架/工具→ Supabase2落库 → Avilable Roles职业角色映射→ Supabase3落库 → Edit Fields1successtrue → Respond to Webhook返回响应四个Anthropic Chat Model节点均配置claude-3-5-haiku-20241022分别作为 Basic LLM Chain、Roadmapper Agent、Framework-Suggestor、Avilable Roles 的ai_languageModel子节点被引用。整体上该工作流属于一个抽取节点 三个串行专业 Agent的流水线式设计三个阶段共享同一个上游抽取结果但顺序执行、各自落库最终汇总响应。下面按管线顺序逐节点拆解节点参数均引自 Course_Guider_Agent.json。四、节点级源码解析4.1 Webhook 入口与请求体约定Webhook节点n8n-nodes-base.webhooktypeVersion 2定义了接口契约HTTP 方法POST路径invoke-course-guider认证headerAuthHTTP Header Auth需要配置凭证响应模式responseNode由工作流中的 Respond to Webhook 节点接管响应。紧随其后的Edit Fieldsn8n-nodes-base.settypeVersion 3.4把请求体中的query字段取出{{ $json.body.query }}。同时后文多个 Supabase 节点都通过{{ $(Webhook).item.json.body.session_id }}读取session_id。因此可以推断调用方需要发送形如下面的 JSON 请求体{ query: I want to become a data scientist in 1 year, session_id: your-session-identifier }query是用户自然语言诉求session_id用于会话维度消息归档。从字段命名与消息落库方式看这遵循了 oTTomator Live Agent Studio 平台常见的 Agent 接入约定querysession_id双字段请求体具体以你部署时使用的调用端协议为准。4.2 意图抽取Basic LLM Chain Structured Output ParserBasic LLM Chainn8n/n8n-nodes-langchain.chainLlmtypeVersion 1.5负责从用户模糊的自然语言中抽取课程名 时长两个要素其用户提示词全文如下You are an intelligent assistant trained to identify course names and duration from user queries. Your primary goal is to extract the most relevant course name or topic based and duration on the users request andadd one emoji to the course name. Provide concise and accurate responses by interpreting the intent behind the user query. Ensure that the extracted course name and duration is clear and reflects standard course or subject terminology.If the user query is vague, extract the most probable course name based on common understanding.提示词内嵌了 5 组 Few-shot 示例明确了课程名 emoji的输出风格与时长缺省的处理策略用户查询抽取结果I want to learn about coding websites.Course: Web Development What should I study to become a data scientist in 1year?Course: Data Science Duration: 1yearHelp me find resources for cloud technologies.Course: Cloud Computing ☁️Duration: DefaultI need guidance for mastering AI tools in 6months.Course: Artificial Intelligence Duration: 6MonthsCan you recommend something for financial markets?Course: Finance Duration: Default为了让下游三个 Agent 拿到稳定可解析的结构化字段工作流为 Basic LLM Chain 接入了Structured Output Parsern8n/n8n-nodes-langchain.outputParserStructuredtypeVersion 1.2其 JSON Schema 示例为{ course: WebDevlopement, duration: 6months }连接方式为Structured Output Parser的ai_outputParser端口指向Basic LLM Chain。从源码结构看这意味着 LLM 的原始输出会被强制约束为{course, duration}形式的 JSON供后续节点通过{{ $(Basic LLM Chain).item.json.output.course }}、...output.duration表达式引用。这也解释了为什么抽取节点与下游 Agent 之间可以稳定传参——结构化输出是整条流水线的数据契约。4.3 Roadmapper Agent生成分阶段学习路线图Roadmapper Agentn8n/n8n-nodes-langchain.agenttypeVersion 1.7是核心产出节点其用户消息动态拼接上游结构化输出Give me the {{ $(Basic LLM Chain).item.json.output.duration }} roadmap for the course : {{ $(Basic LLM Chain).item.json.output.course }}系统提示词systemMessage定义了路线图生成的四条规则理解课程主题将主题拆解为关键学习模块或阶段切分时长把给定时间如 3 个月、6 个月、1 年切分为更小的、可管理的时间片月或周设置里程碑为每个时间片明确学习目标、实操任务与相关资源包含可执行产出路线图中必须包含动手任务或项目来巩固学习。同时明确输出约束Do not include any introductory or concluding text—just provide the roadmap directly并要求使用 emoji 让路线图视觉上更吸引人。提示词内置的 6 个月 Web 开发示例输出展示了目标格式——按 Month 1: Foundations → Month 2-3: Core Skills Development → Month 4: Advanced Concepts → Month 5: Practice and Projects → Month 6: Review and Mastery 组织每个月包含 目标行、emoji 任务列表与可交付物如构建 CRUD 应用、全栈项目、作品集网站、LeetCode 刷题、优化 LinkedIn 简历等。这个示例直接决定了最终路线图的排版模板。4.4 Framework-Suggestor推荐前置知识、框架与工具Framework-SuggestorAgent 的用户消息同样引用抽取结果Suggest the more frame works or tools to master the {{ $(Basic LLM Chain).item.json.output.course }}系统提示词要求按三部分输出List Prerequisites列出开始学习该主题所需的基础知识或技能Recommend Frameworks/Libraries列出该领域必备的框架、库或技术Suggest Tools提及开发、测试或部署中常用的工具软件。内置示例Web Development展示的层级为Prerequisites互联网原理、编程基础、HTML/CSS、JavaScript 基础→ Frameworks/LibrariesReact/Vue/Angular、Express/Django、Bootstrap/Tailwind、Next.js/Nuxt.js→ ToolsVS Code、Git/GitHub、npm/Yarn、Jest/Cypress、Docker、Netlify/Vercel/AWS。输出同样要求无引言、无结语、直接给清单并保持 emoji 风格。4.5 Avilable Roles技能到职业角色的映射Avilable RolesAgent节点名中的拼写沿用了原工作流接收Give me roles which will suit to the course : {{ $(Basic LLM Chain).item.json.output.course }}系统提示词定义了 5 条映射策略分析课程技能、映射岗位与行业、使用 emoji 增强可读性、用标题如Potential Job Roles、Industries与换行结构化排版、课程名称模糊时按最常见解释给出建议并要求结果反映最新的市场趋势与岗位需求。内置示例Web Development输出包括 10 个岗位Full Stack Developer、Front-end Developer、Back-end Developer、Web Designer、QA Engineer、UI/UX Designer、Webmaster、Junior Web Developer、Web Analyst、E-commerce Developer与 6 个行业Technology、Finance、Healthcare、E-commerce、Gaming、Media给出了课程→岗位→行业三层映射的完整样例。4.6 会话持久化Supabase messages 表工作流中一共出现 5 个n8n-nodes-base.supabase节点typeVersion 1全部指向messages表写入session_id与message两个字段。各节点写入内容如下节点写入内容Add user message to DB{type: human, content: $json.query, additional_kwargs: {}, response_metadata: {}}Add AI message to DB{type: ai, content: # Heres the guide to master ${...output.course}, ...}模板字符串Supabase1Roadmapper Agent 的$json.output完整路线图Supabase2Framework-Suggestor 的$json.output工具清单Supabase3Avilable Roles 的$json.output职业映射message字段统一采用带type: human/ai、content、data、additional_kwargs、response_metadata的 JSON 结构与 oTTomator/Live Agent Studio 生态中常见的消息表格式一致便于前端按角色渲染对话。注意Add AI message to DB写入的是一条引导性消息# Heres the guide to master 课程名随后才由 Roadmapper Agent 产出正式路线图并经由 Supabase1 落库因此用户端会依次收到引导标题 → 路线图 → 工具清单 → 职业映射四段内容。这一推断与节点连接顺序吻合Add AI message to DB → Roadmapper Agent → Supabase1 → Framework-Suggestor → Supabase2 → Avilable Roles → Supabase3。4.7 收尾success 标记与 Webhook 响应管线末端的Edit Fields1将success置为true随后Respond to Webhookn8n-nodes-base.respondToWebhooktypeVersion 1.1以allIncomingItems模式返回全部入站条目。也就是说调用方收到的响应会携带success: true及管线积累的数据便于前端判断调用成功与否。五、部署到自有 n8n 实例该 Agent 无需安装任何 Python 依赖部署 导入工作流 配置三类凭证 准备 Supabase 表结构。步骤如下导入工作流在 n8n 中新建工作流选择 Import from File导入 Course_Guider_Agent.json。导入后画布上会出现 14 个节点与完整连线Sticky Note 内含流程说明。配置 Anthropic 凭证工作流中 4 个Anthropic Chat Model节点共用anthropicApi类型凭证JSON 中的凭证名 Anthropic account 属于原实例需替换为你自己的 Anthropic API Key。模型固定为claude-3-5-haiku-20241022如需更换可在各模型节点中调整。配置 Supabase 凭证5 个 Supabase 节点使用supabaseApi类型凭证原凭证名 Studio Test。数据库需存在messages表至少包含session_id与message两个字段字段类型建议text/jsonb可按消息格式 JSON 存储。配置 Webhook 认证Webhook 节点使用httpHeaderAuth类型的 Header Auth account 凭证即调用时必须携带约定的 Header如X-Header-Auth: your-token。激活工作流JSON 中active: true表明原工作流处于激活状态。导入后点击 Active 开关n8n 会生成可访问的 Webhook URL路径invoke-course-guider。部署完成后向 Webhook URL 发送 POST 请求即可触发全流程请求体见 4.1 节。六、模型与凭证依赖说明从 Course_Guider_Agent.json 可直接确认以下依赖模型依赖4 个节点全部使用 Anthropic Claude 3.5 Haikuclaude-3-5-haiku-20241022需要有效的 Anthropic API 凭证请求量受你的账号配额约束数据库依赖依赖 Supabase 项目的messages表表名与字段在 4.6 节若目标 Supabase 无此表需先建表认证依赖Webhook 受 Header Auth 保护调用方需持有正确 Header 凭证时序依赖三个下游 Agent 为串行执行整体响应时间等于三次模型调用与三次写库之和抽取阶段由于接了 Structured Output Parser其输出格式稳定性对后续环节至关重要若更换模型建议先用少量样例验证 JSON Schema 仍能被满足。七、使用示例与输出效果结合 4.24.5 节的 Few-shot 示例可以预期如下交互效果输入{query: I need guidance for mastering AI tools in 6months, session_id: sess-001}处理链路抽取节点输出{course: Artificial Intelligence , duration: 6Months}时长按用户给定值取用若用户未给时长则按提示词规则回退为Default随后三个 Agent 分别基于course字段生成路线图、工具清单与岗位映射。输出特征每段回答均为 emoji 密集、无冗余引言/结语的结构化文本——路线图按时间片分段Month/Week每段含 目标与任务列表工具清单分为 Prerequisites / Frameworks / Tools 三块职业映射分为 Potential Job Roles 与 Industries 两块。这种无废话、可直贴的格式正是 README 强调的shareable and structured guidance。八、适用场景、扩展方向与注意事项适用场景学习者自助规划输入任意主题与时间预算得到可执行的分阶段计划教育者备课快速生成课程大纲、前置知识清单与配套工具栈职业顾问把课程内容与当前市场岗位、行业进行结构化关联辅助择业建议。可扩展方向基于现有架构的合理推断并行化改造当前 Roadmapper、Framework-Suggestor、Avilable Roles 串行执行若将三者在 n8n 中改为并行分支可显著缩短总耗时接入 RAG可仿照仓库内其他 RAG 类 Agent 的文档/向量检索模式例如 agentic-rag-knowledge-graph为路线图补充真实课程大纲、招聘 JD 等外部资料模型替换与提示词定制模型统一在 4 个 Chat Model 节点配置提示词全部集中在 3 个 Agent 节点的 systemMessage 中改动成本低。注意事项凭证与表结构是运行前提缺少 Anthropic、Supabase、Header Auth 任一凭证或messages表缺失工作流都会执行失败输出质量依赖提示词与结构化解析Structured Output Parser 的 JSON Schema 是下游传参的数据契约更换模型或大幅改写抽取提示词时需回归验证串行调用成本一次请求 4 次模型调用 5 次数据库写入请结合自身 API 配额评估使用规模。九、参考与进一步阅读项目文档course-guider-agent/README.md工作流定义全部节点、Prompt 与连线course-guider-agent/Course_Guider_Agent.json同仓库其他 n8n 驱动的 Agent 可作为对照参考indoor-farming-agent/README.md、youtube-video-summarizer/README.md、local-ai-expert/README.md它们展示了 n8n LangChain 节点在不同领域的编排范式RAG、多媒体总结、专家咨询等。总而言之Course Guider Agent 是一个纯 n8n、零代码的多 Agent 流水线范本以结构化输出解析为数据契约以三个各司其职的 LLM Agent 串行产出学习路线图、工具清单与职业映射再以 Supabase 完成会话持久化。对于想在 n8n 中快速搭建教育/咨询类对话 Agent 的开发者而言它的节点拓扑、提示词模板与消息落库约定都极具直接复用价值。【免费下载链接】ottomator-agentsAll the open source AI Agents hosted on the oTTomator Live Agent Studio platform!项目地址: https://gitcode.com/GitHub_Trending/ot/ottomator-agents创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考