Agente de IA - Currículum - Sistema automatizado de filtrado, clasificación, puntuación y seguimiento
Este es unHR, AIflujo de automatización del dominio deautomatización que contiene 20 nodos.Utiliza principalmente nodos como GmailTool, GoogleDocs, GoogleDrive, Agent, ExtractFromFile, combinando tecnología de inteligencia artificial para lograr automatización inteligente. Filtrado y clasificación automatizados de currículums con Llama 4 AI y Google Workspace
- •Cuenta de Google y credenciales de API de Gmail
- •Credenciales de API de Google Drive
- •Credenciales de API de Google Sheets
Nodos utilizados (20)
{
"id": "2ddwHvuidKc6lZia",
"meta": {
"instanceId": "5b12f258e7b8845a7e4d948aaf2096c942ee796fa3f6edf443a06fe951a6e6e2",
"templateCredsSetupCompleted": true
},
"name": "AI Agent - Cv Resume - Automated Screening , Sorting , Rating and Tracker System",
"tags": [],
"nodes": [
{
"id": "92b75a8f-da03-4545-91ef-da29b88f1cef",
"name": "GDocs - Obtener Descripción del Puesto",
"type": "n8n-nodes-base.googleDocs",
"position": [
220,
120
],
"parameters": {
"operation": "get",
"documentURL": "https://docs.google.com/document/d/12dv1AXaotpJ3ST1nUI-QgCoi5SJjM52zeHmjhwZUtvs/edit?usp=sharing"
},
"credentials": {
"googleDocsOAuth2Api": {
"id": "k7j5KUAvAzARmxTu",
"name": "Google Docs account"
}
},
"typeVersion": 2
},
{
"id": "213712d5-f7ef-4c49-bfa6-da02be76a213",
"name": "Google Drive - Archivo de CV Creado",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
-540,
120
],
"parameters": {
"event": "fileCreated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyHour"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "17g2HGxLieONy6EWfsPADvA9IXDp5nJ8p",
"cachedResultUrl": "https://drive.google.com/drive/folders/17g2HGxLieONy6EWfsPADvA9IXDp5nJ8p",
"cachedResultName": "Unfiltered"
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "i0k4QgJ8YgVPNgF7",
"name": "Google Drive account"
}
},
"typeVersion": 1
},
{
"id": "31075389-e8c5-431a-b5e1-807422dbcd5f",
"name": "Descargar Archivo de CV desde Gdrive",
"type": "n8n-nodes-base.googleDrive",
"position": [
-220,
120
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {
"fileName": "={{ $json.name }}"
},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "i0k4QgJ8YgVPNgF7",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"name": "Agente de IA",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
720,
-400
],
"parameters": {
"text": "=You are expert backend principal engineer specialize in python. You will compare job description and candidate profile.\n\nThen you will response with decision [REJECTED/KIV/SHORTLISTED].\n, provide a reason and give a score rating\n{ decision, reason , score}\n\nAfter you identify a decision, used the tool in sequence.\n1. Use the relevant tool to move the candidate resume file accordingly to the right folder GoogleDrive:MoveFileToReject or GoogleDrive:MoveFileToShortlisted or GoogleDrive:MoveFileToKIV\n2. Use the Gsheet:UpdateTracker tool to update the tracker status.\n3. Use the Gmail:NotificationTool to infor the candidate name, role, decision and reason\n\n==[JOB-DESC]===\n{{ $json.content }}\n==[/JOB-DESC]===\n\n==[CANDIDATE-DESC]===\n{{ $('Extract from File').item.json.text }}\n \n==[/CANDIDATE-DESC]===\n\n",
"options": {
"systemMessage": "You are expert backend principal engineer specialize in python. You will compare job description and candidate profile.\n\nThen you will response with decision [REJECTED/KIV/SHORTLISTED].\nand provide a reason.\n{ decision, reason}\n\nAfter you identify a decision, used the tool \n1. Use the relevant tool to move the candidate resume file accordingly to the right folder GoogleDrive:MoveFileToReject or GoogleDrive:MoveFileToShortlisted or GoogleDrive:MoveFileToKIV\n2. Use the Gsheet-UpdateTracker tool to update the tracker status.\n"
},
"promptType": "define"
},
"typeVersion": 1.9
},
{
"id": "f2a16cf3-0404-4791-b7d4-64f1909e02c2",
"name": "Extraer del Archivo",
"type": "n8n-nodes-base.extractFromFile",
"position": [
-40,
120
],
"parameters": {
"options": {},
"operation": "pdf"
},
"typeVersion": 1
},
{
"id": "98af749e-d4ee-4f9b-bacc-f78a47525077",
"name": "Gmail: Notificación",
"type": "n8n-nodes-base.gmailTool",
"position": [
1760,
120
],
"webhookId": "ed0f09b9-4b16-4bf1-af47-208f1e8e3761",
"parameters": {
"sendTo": "aiix.space.noreply@gmail.com",
"message": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}",
"options": {},
"subject": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}",
"descriptionType": "manual",
"toolDescription": "Gmail:NotificationTool - This tool will notify the candidate name, job role, and status of [shortlisted/kiv/rejected]"
},
"credentials": {
"gmailOAuth2": {
"id": "1cn2wligOf77izLL",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "343f7f0f-d505-448f-a95d-0fc7d3c14730",
"name": "Nota Adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
500,
-60
],
"parameters": {
"color": 4,
"width": 660,
"height": 400,
"content": "## 1. Move candidate cv to folder\n "
},
"typeVersion": 1
},
{
"id": "9941231e-7cfb-442e-9593-aed21fe86cf8",
"name": "Nota Adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
1220,
-60
],
"parameters": {
"color": 4,
"width": 320,
"height": 400,
"content": "## 2. Update tracker\n "
},
"typeVersion": 1
},
{
"id": "bfd181ec-cf79-4320-9acd-f3e35fb499c5",
"name": "Nota Adhesiva2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1640,
-60
],
"parameters": {
"color": 4,
"width": 320,
"height": 400,
"content": "## 3. Send email notification\n "
},
"typeVersion": 1
},
{
"id": "60fd65e7-6e8a-4092-9fce-2dd97e35b236",
"name": "Nota Adhesiva3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-280,
-60
],
"parameters": {
"color": 2,
"width": 380,
"height": 400,
"content": "## Download and read candidate CV Resume\n "
},
"typeVersion": 1
},
{
"id": "d5d3cf16-d84d-4e7d-af75-f5341af20f59",
"name": "Nota Adhesiva4",
"type": "n8n-nodes-base.stickyNote",
"position": [
100,
-60
],
"parameters": {
"color": 2,
"width": 380,
"height": 400,
"content": "## Read Job Description\n "
},
"typeVersion": 1
},
{
"id": "0ee07985-b24b-492b-a394-2f7097254911",
"name": "Nota Adhesiva5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2040,
-80
],
"parameters": {
"color": 6,
"width": 620,
"height": 1040,
"content": "# AI-Agent : Automated CV Resume Screening Evaluate Rating System\n\n## What is this for?\n### Let AI agent intelligently analyze and rate your Candidate's cv resumes based on your job description. This will help ensure a fast and accurate screening process.\n\n### The Screening AI automatically organizes resumes into appropriate folders, updates statuses and scores in your tracking system, and sends timely notifications—saving you valuable time and effort. \n\n\n### Let AI Agent and automation handle the heavy lifting while you focus on making the best hiring decisions!\n\n\n```\n```\n\n## Prerequisite\n\n### Please follow official n8n integration document on how setup your gdrive,gmail,gdoc,gsheet credentials. \n\n \n```\n```\n\n## How it works?\n\n### Each time you place a new pdf resume in the 'Unfiltered' folder , you will automatically get screening results in the tracker for the candidate. \n\nThe AI agent will help notify email and do CV sorting into appropriate folder.\n\n "
},
"typeVersion": 1
},
{
"id": "aa43af12-fae1-4a98-9cad-7859051baf48",
"name": "Nota Adhesiva6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-620,
-60
],
"parameters": {
"color": 2,
"width": 260,
"height": 400,
"content": "## Add candidate CV Resume into folder\n "
},
"typeVersion": 1
},
{
"id": "7ad2b8a9-3720-4713-a8dd-af8f6745f95d",
"name": "Gdrive: Mover a Carpeta de Rechazados",
"type": "n8n-nodes-base.googleDriveTool",
"position": [
580,
120
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Google Drive - Resume CV File Created').item.json.id }}"
},
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"folderId": {
"__rl": true,
"mode": "list",
"value": "16BR7dhzd4-6i_kHYRStJd5UdqNWhpXKA",
"cachedResultUrl": "https://drive.google.com/drive/folders/16BR7dhzd4-6i_kHYRStJd5UdqNWhpXKA",
"cachedResultName": "REJECTED"
},
"operation": "move",
"descriptionType": "manual",
"toolDescription": "GoogleDrive:MoveFileToReject\nUse this tool to move rejected candidate profile to reject folder\n "
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "i0k4QgJ8YgVPNgF7",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "921a0561-9733-47fe-a6ee-191abf30ac37",
"name": "Gdrive: Mover a Carpeta de Pendientes (KIV)",
"type": "n8n-nodes-base.googleDriveTool",
"position": [
800,
120
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Google Drive - Resume CV File Created').item.json.id }}"
},
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1KLfykacUhwtO0-wgYs6WsrcxbCHHKJ7o",
"cachedResultUrl": "https://drive.google.com/drive/folders/1KLfykacUhwtO0-wgYs6WsrcxbCHHKJ7o",
"cachedResultName": "KIV"
},
"operation": "move",
"descriptionType": "manual",
"toolDescription": "GoogleDrive:MoveFileToKIV\nUse this tool to move KIV candidate profile to KIV folder"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "i0k4QgJ8YgVPNgF7",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "0b32131c-3811-406f-a50d-875750781906",
"name": "Gdrive: Mover a Carpeta de Preseleccionados",
"type": "n8n-nodes-base.googleDriveTool",
"position": [
1000,
120
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Google Drive - Resume CV File Created').item.json.id }}"
},
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1m8vrejmyPWpGsjJc6amnWfSXBRESlpfO",
"cachedResultUrl": "https://drive.google.com/drive/folders/1m8vrejmyPWpGsjJc6amnWfSXBRESlpfO",
"cachedResultName": "SHORTLISTED"
},
"operation": "move",
"descriptionType": "manual",
"toolDescription": "GoogleDrive:MoveFileToShortlisted\nUse this tool to move Shortlisted candidate profile to Shortlisted folder"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "i0k4QgJ8YgVPNgF7",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "98a656c7-bb17-4808-abf8-ef4e23716b60",
"name": "Gsheet: Actualizar Seguimiento de Candidatos",
"type": "n8n-nodes-base.googleSheetsTool",
"position": [
1340,
120
],
"parameters": {
"columns": {
"value": {
"AI Score": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('AI_Score', ``, 'string') }}",
"AI Reason": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('AI_Reason', ``, 'string') }}",
"AI Verdict": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('AI_Verdict', ``, 'string') }}",
"Candidate Name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Candidate_Name__using_to_match_', ``, 'string') }}"
},
"schema": [
{
"id": "Candidate Name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Candidate Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Current Role",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Current Role",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Role Scope",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Role Scope",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "AI Score",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "AI Score",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "AI Verdict",
"type": "string",
"display": true,
"required": false,
"displayName": "AI Verdict",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "AI Reason",
"type": "string",
"display": true,
"required": false,
"displayName": "AI Reason",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Referral",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Referral",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Due date",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Due date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Notes",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Notes",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Human verdict",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Human verdict",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Candidate Name"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 843593464,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1SwnbH_dnqPMho7SqX1LKAjFMc0YvLBGok4I1AdgrJjE/edit#gid=843593464",
"cachedResultName": "main"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1SwnbH_dnqPMho7SqX1LKAjFMc0YvLBGok4I1AdgrJjE",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1SwnbH_dnqPMho7SqX1LKAjFMc0YvLBGok4I1AdgrJjE/edit?usp=drivesdk",
"cachedResultName": "ResumeScreening- Candidate Tracker"
},
"descriptionType": "manual",
"toolDescription": "Gsheet:UpdateTracker\nThis tool help update relevant candidate status"
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "fqYZ5O9pQ89v3SAp",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "c9eb92a0-f3bc-4226-835e-602a2f808e4c",
"name": "Nota Adhesiva7",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1340,
-80
],
"parameters": {
"color": 6,
"width": 600,
"height": 1300,
"content": "\n## Folder & File Setup\n### 1. Create a google-drive folder like this\n \n[View directory example](https://drive.google.com/drive/folders/1Uh7VdJORE03YBJkCmvr1TXg_esbiNnTV?dmr=1&ec=wgc-drive-hero-goto)\n\n\n\n### 2. Create a job description like this\n \n[View file example](https://docs.google.com/document/d/12dv1AXaotpJ3ST1nUI-QgCoi5SJjM52zeHmjhwZUtvs/edit?usp=drive_link)\n\n\n\n\n### 3. Configure a tracker like this\n \n[View file example](https://docs.google.com/spreadsheets/d/1SwnbH_dnqPMho7SqX1LKAjFMc0YvLBGok4I1AdgrJjE/edit?gid=843593464#gid=843593464)\n\n"
},
"typeVersion": 1
},
{
"id": "e0d419d7-dcc1-40c5-afb1-5bda110e681c",
"name": "Nota Adhesiva8",
"type": "n8n-nodes-base.stickyNote",
"position": [
-560,
20
],
"parameters": {
"color": 7,
"width": 150,
"height": 80,
"content": "UNFILTERED FOLDER"
},
"typeVersion": 1
},
{
"id": "d9034b09-41f9-4f27-8d9d-e40f8603e1ea",
"name": "Groq - Modelo de IA llama 4",
"type": "@n8n/n8n-nodes-langchain.lmChatGroq",
"position": [
680,
-200
],
"parameters": {
"model": "meta-llama/llama-4-maverick-17b-128e-instruct",
"options": {}
},
"credentials": {
"groqApi": {
"id": "RBCtAUywXbI6hFmr",
"name": "Groq account -bbflight"
}
},
"typeVersion": 1
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "adba9994-2c2e-40f2-9a73-8a57b48b3bc4",
"connections": {
"367d4e61-a73c-4e47-bd73-690b2a63e0ae": {
"main": [
[]
]
},
"f2a16cf3-0404-4791-b7d4-64f1909e02c2": {
"main": [
[
{
"node": "92b75a8f-da03-4545-91ef-da29b88f1cef",
"type": "main",
"index": 0
}
]
]
},
"98af749e-d4ee-4f9b-bacc-f78a47525077": {
"ai_tool": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "ai_tool",
"index": 0
}
]
]
},
"92b75a8f-da03-4545-91ef-da29b88f1cef": {
"main": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "main",
"index": 0
}
]
]
},
"d9034b09-41f9-4f27-8d9d-e40f8603e1ea": {
"ai_languageModel": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"921a0561-9733-47fe-a6ee-191abf30ac37": {
"ai_tool": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "ai_tool",
"index": 0
}
]
]
},
"7ad2b8a9-3720-4713-a8dd-af8f6745f95d": {
"ai_tool": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "ai_tool",
"index": 0
}
]
]
},
"31075389-e8c5-431a-b5e1-807422dbcd5f": {
"main": [
[
{
"node": "f2a16cf3-0404-4791-b7d4-64f1909e02c2",
"type": "main",
"index": 0
}
]
]
},
"98a656c7-bb17-4808-abf8-ef4e23716b60": {
"ai_tool": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "ai_tool",
"index": 0
}
]
]
},
"0b32131c-3811-406f-a50d-875750781906": {
"ai_tool": [
[
{
"node": "367d4e61-a73c-4e47-bd73-690b2a63e0ae",
"type": "ai_tool",
"index": 0
}
]
]
},
"213712d5-f7ef-4c49-bfa6-da02be76a213": {
"main": [
[
{
"node": "31075389-e8c5-431a-b5e1-807422dbcd5f",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Avanzado - Recursos Humanos, Inteligencia Artificial
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Sean Lon
@seanlonI embarked on my coding journey at the age of 13, driven by a deep passion for AI, automation, and engineering. Over the years, I've taken on various roles including Developer, Engineer, Senior Engineer, Architect, Principal Engineer, Freelance Consultant, and Head of Engineering.
Compartir este flujo de trabajo