Mindket

Telegram 简历和求职信机器人,AI 加 LaTeX

新上架第 1 版 · 更新于

概览

一个把 Telegram 机器人变成简历助手的 n8n 工作流。它在 Supabase 里保存每个人的档案,按职位描述量身调整,并发回用 LaTeX 生成的简历和求职信 PDF。

Telegram 简历和求职信机器人,AI 加 LaTeX 是一款 n8n 工作流,属于写作类,由 Mindket 上架。可免费获取。当前为第 1 版,最近更新于 。在本页下载,或复制它的 JSON,再导入 n8n 画布。在 n8n 里启用之前,它不会运行。

速览

用在
  • n8n Cloud:把文件导入那里的一个新工作流
  • 你自己的 n8n 服务器:同一个文件,同样的步骤
  • 你自己的模型:把两个凭据指向任何兼容 OpenAI 的地址,并改模型名
  • 另一种版式:改两个代码节点里的 LaTeX 模板

平台

连接 5 个应用

运行方式

触发

Telegram 消息

你的机器人收到一条消息或一次按钮点击时开始运行,带着:

  • 消息的文字,或作为 PDF 发来的简历
  • 发消息人的用户 ID,用于回复

动作

  1. 在 Supabase 里查发送者已保存的档案,并检查它是否完整
  2. 路由器把消息分给一个命令、一次 PDF 上传或一次聊天回答
  3. 读取 PDF,AI 模型把它整理成结构化的主档案
  4. 自由文字被分成提问或更新,然后据档案回答,或保存进档案
  5. 命令 /optimize 为一份职位描述写出量身定制的档案,/analyze 列出缺少的关键词
  6. 档案填进 LaTeX 模板,由你的服务器编译成 PDF,编译失败时 AI 修复一次
  7. 把 PDF 和它的 LaTeX 源文件,或一份求职信 PDF,发回聊天

结果

聊天里得到一份简历 PDF、一份量身定制的简历、一份关键词差距报告或一份求职信 PDF,档案存在 Supabase 里

集成

开始之前要准备好这些。

Telegram

聊天

把每条消息和每次按钮点击交给触发器,并把回复和文件发回去。

需要一个 BotFather 发的机器人令牌

Supabase

数据库

在 Profiles 表里保存每个人的主档案和量身定制的档案。

需要项目 URL 和 service role 密钥,以及 Profiles 表

Ollama

语言模型

通过它的云端运行主模型 gpt-oss:120b 和 gpt-oss:20b。

需要一个 Ollama API 密钥

Cerebras

语言模型

主模型失败时运行 gpt-oss-120b。

需要一个 Cerebras API 密钥

Your own server over SSH

LaTeX 编译器

对生成的 LaTeX 运行 pdflatex,并返回 PDF。

需要一台能用 SSH 密码登录、装了 TeX Live 的 Linux 服务器

工作流检查

由 Mindket 于 2026年11月13日检查

步骤
83 个步骤,由 Telegram 事件启动
AI
7 个步骤调用 AI 模型:AI Agent、Intent Classifier、Query Agent、AI Fix LaTeX Agent、AI JD Agent 等 7 个
登录
需要登录:Supabase、Telegram、OpenAI
API 密钥
文件里没有留下 API 密钥
步骤类型
Mindket 的检查器能读懂它 9 种步骤类型中的 8 种,读不懂的是:Ssh

以上内容读自工作流文件,并非实际运行的结果。

关于

它是什么

这个 n8n 工作流把一个 Telegram 机器人变成简历和求职信助手。一个人把简历作为 PDF 发来,或者直接打字写下自己的情况。AI 模型读完后,在 Supabase 里为这个人保存一份档案。随后用命令查看档案、按职位描述量身调整、对照职位的关键词检查,并写一封求职信。PDF 文件在你自己的服务器上用 LaTeX 编译,再发回聊天。整个流程由九十八个节点完成。

适合谁

想通过聊天保持简历更新的职业教练、训练营和求职者。它也适合想要一个大而真实的、带命令、记忆和数据库的 n8n 机器人例子的搭建者。运行它意味着要存别人的简历,所以它适合一个为同意这一点的人提供的服务。

谁在用,怎么用
行业谁在用怎么用例子
职业服务教练保存客户的主简历,并为每个职位量身调整一位教练让机器人按一个发布的职位调整客户的档案,并把 PDF 发回去。
教育训练营给毕业生一个能在聊天里用的简历工具一个训练营把机器人分享给一批学员,他们上传自己的简历。
招聘人力外包公司把杂乱的 PDF 变成追踪系统能读的整洁版式一位招聘人员上传候选人的简历,得到一份编译好的版本。
软件开发者研究一个带命令、记忆和 LaTeX 构建的机器人一位开发者把 Supabase 换成另一张表,其余不动。

这是个大型的设置:你需要 n8n、一张 Supabase 表、两个模型账号和一台装了 LaTeX 的服务器。文件里没有写设置要多久。

用在哪里

任何能访问 Telegram、Supabase、Ollama 云端、Cerebras 和你的服务器的 n8n 都能运行它。

  • n8n Cloud:把文件导入那里的一个新工作流
  • 你自己的 n8n 服务器:同一个文件,同样的步骤
  • 你自己的模型:把两个凭据指向任何兼容 OpenAI 的地址,并改模型名
  • 另一种版式:改两个代码节点里的 LaTeX 模板

设置

点“下载”会把一个压缩包存到你的下载文件夹,里面有 workflow.json 和 Mindket 写的设置说明。五个账号就覆盖所有步骤。

先准备好这些
需要说明
n8n在 n8n Cloud 上,或在你自己的服务器上
Telegram用 @BotFather 建的机器人
Supabase一张 Profiles 表,有 telegram_id、telegram_username、master_profile 和 tailored_profile,外加项目 URL 和 service role 密钥
Ollama 和 Cerebras各一个 API 密钥,用于主模型和备用模型
一台 Linux 服务器能用密码 SSH 登录,并装了带 pdflatex 的完整 TeX Live
  1. 在 n8n 里新建一个工作流,打开它的菜单,选 Import from File,选中 workflow.json。
  2. 添加一个填了机器人令牌的 Telegram 凭据,在 Telegram Trigger 和每个 Telegram 节点里选中它。
  3. 在 Supabase 里创建 Profiles 表。添加一个 Supabase 凭据,在七个 Supabase 节点里选中它。
  4. 添加一个 OpenAI 凭据,它的基础 URL 是 https://ollama.com/v1,密钥是你的 Ollama 密钥。在 Ollama、Ollama JD、Ollama Fix LaTeX Model、Ollama CL Model、Classifier Model、Classifier Model1 和 Ollama ATS Model 里选中它。
  5. 添加第二个 OpenAI 凭据,基础 URL 是 https://api.cerebras.ai/v1,密钥是你的 Cerebras 密钥。在名字以 Cerebras 开头的七个节点里选中它。
  6. 为你的服务器添加一个 SSH 凭据,在 Write LaTeX File、Write LaTeX File (Retry)、Read PDF Base64 和 Compile Cover Letter 里选中它。
  7. 发布工作流,打开你的机器人,发 /start,再把一份简历作为 PDF 发过去。
  8. 发 /view 和 /download,检查有一个 PDF 回来。

如何使用

发布工作流,打开你的机器人。把一份简历作为 PDF 发过去,然后用这些命令:/view、/download、/optimize 后面跟职位描述、/viewoptimized、/downloadoptimized、/coverletter、/analyze 后面跟职位描述,以及 /clear。

想要不同的效果,改这里
要改的在哪里改
简历的版式Generate LaTeX 里的模板
求职信的版式Generate LaTeX Cover Letter 里的模板
求职信的语气AI Cover Letter Agent 的系统消息
什么算完整的档案Assess Master Profile 里的检查
欢迎文字和命令列表Telegram Info Reply
模型七个主模型节点和它们的七个备用模型

示例

你发一份简历 PDF,再发 /optimize,后面粘贴一份职位描述。

机器人读 PDF 并保存你的主档案。量身调整这一步写出针对那个职位的第二份档案,并保存在第一份旁边。然后你发 /downloadoptimized,机器人回复一个编译好的 PDF 和它的 LaTeX 源文件。

新手与专家

新手:n8n 把工作流画成用线连起来的方框,每个方框是一个节点,只做一件事。路由器读每条消息,把它送上对的路径。LaTeX 是一种排版语言,一个叫 pdflatex 的程序把它变成 PDF,所以需要一台服务器。

专家:七个智能体共用一个模式。每个都有一个主模型、一个 Cerebras 备用模型和 3 次尝试。

值得细看的地方
节点做什么要知道的
Command Router一个有十六个输出的 Switch 节点,读消息文字或按钮数据没带职位描述的 /optimize 和 /analyze 会得到一条警告
Intent Classifier一个把自由文字分成提问或更新的智能体Parse Intent 先看开头几个词,只有它们定不下来时才信模型
AI Agent把 PDF 文字或聊天消息变成档案改动,配 Window Buffer Memory记忆以聊天 ID 为键
Supabase Fetch by ID按聊天 ID 查那一行,Supabase Fetch by Username 是第二次尝试Check Migration Needed 给只按用户名找到的行补上 ID
Write LaTeX File一个 SSH 节点,从 base64 写出源文件,并运行两次 pdflatex它输出 SUCCESS 或编译日志,If Compile Success 读这个
AI Fix LaTeX Agent编译失败后重写源文件重试一次,然后 Send Compile Error Msg

注意事项

它保存别人的简历,所以请谨慎对待。

  • 个人数据:每份简历都存在你的 Supabase 表里,它的文字会发给 Ollama 和 Cerebras。告诉你的用户,有人要求时删掉行
  • `/clear`:它会立刻删掉档案,没有确认这一步
  • 你的服务器:SSH 节点在上面运行 shell 命令。LaTeX 是以 base64 传的,所以模型写的东西不会被当作命令运行。请用一台什么别的都没有的服务器和用户账号
  • 文件:临时文件放在 /tmp,成功运行后会被删掉。失败的运行可能留下一些
  • 模型:原始副本用的是 qwen3-coder:480b、rnj-1:8b 和 Cerebras 模型 zai-glm-4.7。Ollama 的云端列表(2026 年 11 月 12 日查看)里没有前两个,Cerebras 在 2026 年 8 月 17 日弃用了第三个。Mindket 的副本用 gpt-oss:120b、gpt-oss:20b 和 gpt-oss-120b
  • 计费:每条消息在备用模型接手之前,最多可能在主模型上用 3 次尝试。编译用的是你自己的服务器
  • Telegram 文字:消息用 HTML 格式,工作流会先转义模型的文字
  • 没有运行:Mindket 没有运行这个工作流、Ollama 和 Cerebras 的调用或 SSH 这一步。它读的是 n8n 的源码和各家厂商的页面
  • 凭据:这个 JSON 里没有任何凭据

README 和文件

README

Telegram 简历和求职信机器人,AI 加 LaTeX

一个把 Telegram 机器人变成简历和求职信助手的 n8n 工作流。一个人把简历作为 PDF 发来,或者直接打字写下自己的情况。AI 模型读完后,在 Supabase 里为这个人保存一份档案。随后用命令查看档案、按职位描述量身调整、对照职位的关键词检查、写一封求职信,并发回编译好的 PDF 文件。九十八个节点完成全部工作。

里面有什么

  • workflow.json:n8n 导出的工作流,98 个节点,没有便签。里面没有任何凭据。
  • README.md:这份说明。

我们对原始副本做了哪些改动

Mindket 清理了这份副本,并换掉了停用的模型:

  • 七个主聊天模型用的是 Ollama 云端的 qwen3-coder:480b 和 rnj-1:8b。Ollama 的云端模型列表(2026 年 11 月 12 日查看)里两个都没有。四个较大的现在用 gpt-oss:120b,三个较小的用 gpt-oss:20b,两个都在那个列表上。
  • 七个备用模型用的是 Cerebras 模型 zai-glm-4.7,Cerebras 已于 2026 年 8 月 17 日弃用它。它们现在用 gpt-oss-120b,它在 Cerebras 当前的共享列表上。
  • 每个凭据都已去掉。Telegram、Supabase、SSH、Ollama 和 Cerebras 的凭据由你自己添加。
  • 文件原来没有设置。Mindket 的副本用当前的执行顺序 v1。
  • 文件里没有主机名、地址或密钥,所以没有别的需要替换。

开始之前

  • 一个 n8n 实例,n8n Cloud 或你自己的服务器都行。
  • 一个用 @BotFather 建的 Telegram 机器人。
  • 一个 Supabase 项目,里面有一张叫 Profiles 的表,有四列:telegram_id(bigint)、telegram_username(text)、master_profile(text)和 tailored_profile(text)。
  • 一个带 API 密钥的 Ollama 账号,用来调用它的云端模型。
  • 一个 Cerebras API 密钥,用于备用模型。
  • 一台能用密码 SSH 登录的 Linux 服务器,装了完整的 TeX Live。模板用到 cfr-lm、marvosym 和 tcolorbox 这样的包,而且那里必须能运行 pdflatex 和 base64 命令。

设置步骤

  1. 在 n8n 里新建一个工作流,打开它的菜单,选 Import from File,选中 workflow.json。
  2. 添加一个填了机器人令牌的 Telegram 凭据。在 Telegram Trigger 和每个 Telegram 节点里选中它。需要凭据的节点在 n8n 里会有标记。
  3. 在 Supabase 里创建上面说的 Profiles 表。添加一个 Supabase 凭据,填上项目 URL 和 service role 密钥,在七个 Supabase 节点里选中它。请让这张表不对公众开放,因为 service role 密钥会跳过行级安全。
  4. 添加一个 OpenAI 凭据,基础 URL 是 https://ollama.com/v1,密钥是你的 Ollama API 密钥。在 Ollama、Ollama JD、Ollama Fix LaTeX Model、Ollama CL Model、Classifier Model、Classifier Model1 和 Ollama ATS Model 里选中它。
  5. 添加第二个 OpenAI 凭据,基础 URL 是 https://api.cerebras.ai/v1,密钥是你的 Cerebras 密钥。在名字以 Cerebras 开头的七个节点里选中它。
  6. 为你的服务器添加一个 SSH 凭据,填上它的主机、端口、用户名和密码。在 Write LaTeX File、Write LaTeX File (Retry)、Read PDF Base64 和 Compile Cover Letter 里选中它。
  7. 发布工作流,这样 Telegram 触发器才会一直开着。
  8. 在 Telegram 里打开你的机器人,发 /start,再把一份简历作为 PDF 发过去。
  9. 发 /view,再发 /download,检查有一个 PDF 回来。

一次运行是怎么走的

  1. Telegram Trigger 接收每条消息和每次按钮点击。它会下载随消息而来的任何文件。
  2. Supabase Fetch by ID 和 Supabase Fetch by Username 查这个人的档案行。Check Migration Needed 给只按用户名找到的行补上这个人的数字 ID。
  3. Assess Master Profile 检查档案是否有姓名、联系方式、简介、技能、教育、工作经历和项目。在这之前,大多数命令只会回答缺了什么。
  4. Command Router 把消息送上十六条分支之一。它们包括问候、/start 和 /info、不完整的档案、机器人读不了的媒体(照片、贴纸或语音消息)、/view、/clear、PDF 上传、聊天、/download、/downloadoptimized、/optimize、/viewoptimized、/coverletter 和 /analyze。另外两条分支在 /optimize 或 /analyze 没带职位描述时发出警告。
  5. PDF 上传经过 Extract PDF Text 和 AI Agent。智能体填写档案,Parse JSON、Safe Profile Merge 和 Row Exists? 用 Supabase Update 或 Supabase Create 保存它。不是可读 PDF 的文件会得到一条错误消息。
  6. 自由文字交给 Intent Classifier,Parse Intent 还会检查消息的开头几个词。提问交给 Query Agent,它只依据保存的档案回答。其他的交给 AI Agent,它更新档案,Window Buffer Memory 保留那个聊天最近几轮。
  7. /optimize 后面跟职位描述,交给 AI JD Agent。它写出档案的一份量身定制版,Supabase Save Tailored 把它存下来。主档案保持原样。
  8. /analyze 后面跟职位描述,交给 ATS Gap Agent,它列出档案缺少的关键词。回复会被拆开,以适应 Telegram 的消息长度限制。
  9. /download 和 /downloadoptimized 运行 Generate LaTeX,它填一份简历模板,Write LaTeX File 把它发到你的服务器。服务器用 pdflatex 编译两次。成功时 Read PDF Base64 返回 PDF,Send PDF (Telegram) 和 Send LaTeX Source (Telegram) 把两个文件送出去。
  10. 编译失败时,AI Fix LaTeX Agent 重写源文件,Write LaTeX File (Retry) 再试一次,如果还是失败,Send Compile Error Msg 通知这个人。
  11. /coverletter 用 AI Cover Letter Agent,它依据量身定制的档案和它的职位描述写信,然后 Compile Cover Letter 用同样的办法生成 PDF。
  12. /clear 运行 Supabase Clear Profile,立刻删掉那一行。

想改样子,改这里

  • 简历的版式:Generate LaTeX 里的模板。
  • 求职信的版式:Generate LaTeX Cover Letter 里的模板。
  • 求职信的语气:AI Cover Letter Agent 的系统消息。
  • 什么算完整的档案:Assess Master Profile 里的检查。
  • 欢迎文字和命令列表:Telegram Info Reply。
  • 模型:七个聊天模型节点和它们的七个备用模型。

要知道的

  • 简历是个人数据。每一份都存在你的 Supabase 表里,它的文字会发给 Ollama 和 Cerebras。告诉你的用户,有人要求时删掉行。
  • /clear 没有确认这一步。按一下就会删掉档案。
  • SSH 节点在你的服务器上运行 shell 命令。LaTeX 文字是以 base64 传的,所以模型写的东西不会被当作命令运行。请用一台什么别的都没有的服务器和用户账号。
  • 文件写在 /tmp 里,名字带运行编号,成功运行后会被删掉。失败的运行可能留下一些文件。
  • Telegram 消息用 HTML 格式,工作流在发送前会转义模型的文字。
  • 每个 AI 节点最多重试 3 次,然后改用它的 Cerebras 模型。
  • Mindket 没有运行这个工作流、Ollama 和 Cerebras 的调用或 SSH 这一步。它读的是 n8n 的源码和各家厂商的页面,所以请手动测试每个命令一次。
  • 这个 JSON 里没有任何凭据。
文件
NOTICE.md  529 B
README.md  7 KB
workflow.json  177 KB

3 个文件,共 185 KB,以 zip 压缩包下载。

更新内容

  • 第 1 版 · 2026-11-12

评价

还没有评分

写评价

还没有评价。

Mindket 的更多商品

查看 Mindket 的全部商品

anaksor-ocr

Sokheng · 工具包

这个模型从文档、收据和路牌照片里读取高棉语和英语文字,用一个检测器找文本行,再用识别器读每一行。适合需要在 Python 里做高棉语 OCR 的开发者。

新上架

Qwen2.5-7B-Instruct-GGUF

Qwen · 工具包

Qwen2.5-7B-Instruct 的 GGUF 文件,提供八种量化大小,可通过 llama.cpp 在本地聊天。适合想在自己电脑上用 7.6B 强力模型、又不想搭 Python 环境的人。

新上架

ACE-Step 1.5 XL SFT

ACE-Step · 工具包

用 4B 扩散解码器根据文字生成音乐,50 步并带引导控制,音频质量高于基础版。适合拥有 12 GB 或更多显存 GPU 的创作者。

新上架

写作类的相似商品

查看写作类的全部商品

t5-base-grammar-correction

vennify · 工具包

用在 JFLEG 数据集上训练的 T5 模型改写英文文本,减少语法错误。由 vennify 制作,适合想在 Python 里加入语法修正步骤的写作者、学生和开发者。

新上架

Hy-MT2-1.8B-1.25Bit-GGUF

tencent · 工具包

在你自己的设备上用压缩到 1.25 比特的 1.8B 模型进行 33 种语言之间的翻译,GGUF 文件约 440 MB,适用于 llama.cpp。适合给应用加入离线翻译的开发者。

新上架

Qwen3.8-27B-Longbook27-v2

summerAIO · 工具包

用经过微调、采用 Gated DeltaNet 层的 27B 模型,对整本书长度的文字做摘要、问答和续写,支持英语和日语。适合处理长文档的人。

新上架