ghl-clickup-task-builder

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

GHL ClickUp Task Builder

GHL ClickUp 任务构建器

Transforma workflows de GHL en tareas estructuradas en ClickUp. Cada workflow se convierte en una tarea padre con contexto completo + subtareas atómicas donde cada subtarea = un nodo en el builder de GHL.

将GHL工作流转换为ClickUp中结构化的任务。每个工作流都会转换为包含完整上下文的父任务 + 原子化子任务,其中每个子任务对应GHL构建器中的一个节点。

Modos de operación — verificación vs. from-scratch

操作模式——验证模式 vs 从零构建模式

La skill opera en dos modos según el contexto. Detectar el modo antes de empezar.
本Skill根据上下文以两种模式运行。开始前需先检测模式。

Modo A — Cliente existente / Adición a cuenta viva

模式A — 现有客户 / 新增至活跃账户

Cuando se generan tareas para una cuenta GHL ya implementada y la tarea menciona pipelines, campos, asesores o calendarios que se asume que ya existen.
Pre-flight check obligatorio:
  1. Leer
    references/ghl-api-capabilities.md
    — saber qué se puede crear vía API/MCP y qué requiere implementación manual.
  2. Pullear el snapshot vivo (ver
    references/ghl-live-context-template.md
    ):
    • mcp__ghl__opportunities_get-pipelines
    • mcp__ghl__locations_get-custom-fields
    • mcp__ghl__locations_get-location
    • GET /users/?locationId=...
      (REST)
    • GET /calendars/?locationId=...
      (REST)
  3. Validar cada referencia por nombre contra el snapshot. Si el input menciona "Pipeline Residencial" o "campo Tipo de Cliente" o "asignar a Carlos", confirmá que existe antes de escribir la subtarea. Si no existe:
    • Avisar al usuario y ofrecer: (A) crear el recurso ahora, (B) corregir el nombre, (C) marcarlo como
      ⚠️ DEPENDENCIA FALTANTE
      .
为已实施的GHL账户生成任务,且任务中提及的管道、字段、顾问或日历默认已存在
必做预检查:
  1. 阅读
    references/ghl-api-capabilities.md
    ——了解哪些内容可通过API/MCP创建,哪些需要手动实施。
  2. 拉取实时快照(参见
    references/ghl-live-context-template.md
    ):
    • mcp__ghl__opportunities_get-pipelines
    • mcp__ghl__locations_get-custom-fields
    • mcp__ghl__locations_get-location
    • GET /users/?locationId=...
      (REST)
    • GET /calendars/?locationId=...
      (REST)
  3. 对照快照验证每个引用的名称。如果输入中提及“住宅管道”“客户类型字段”或“分配给Carlos”,请在编写子任务前确认其是否存在。若不存在:
    • 告知用户并提供选项:(A) 立即创建该资源,(B) 修正名称,(C) 标记为
      ⚠️ 缺失依赖项

Modo B — Cliente nuevo / Implementación desde cero

模式B — 新客户 / 从零开始实施

Cuando se está armando un cliente desde cero, o cuando el usuario pasa un mapeo previo de implementación, o cuando explicita "es un cliente nuevo / desde cero / cliente testeo".
No hace falta validar que las cosas existan — se crean como parte de la implementación.
  1. Sí leer
    references/ghl-api-capabilities.md
    — para saber cuáles tareas son ejecutables vía API y cuáles son manuales (workflows, funnels, etc.).
  2. No es necesario pullear el snapshot completo. Como mucho, leer el
    locations_get-location
    para confirmar timezone si la implementación incluye calendarios o mensajería con horarios.
  3. Pipelines, custom fields, calendarios, stages, tags se crean como parte de las tareas de implementación. Marcar con
    🔧 SETUP
    las que se ejecutan vía API antes que el WF.
当为新客户搭建账户,或用户提供了预先制定的实施映射,或明确说明“是新客户 / 从零开始 / 测试客户”时使用。
无需验证内容是否存在——它们会作为实施的一部分被创建。
  1. 务必阅读
    references/ghl-api-capabilities.md
    ——了解哪些任务可通过API执行,哪些需手动完成(工作流、漏斗等)。
  2. 无需拉取完整快照。最多只需读取
    locations_get-location
    以确认时区(若实施包含日历或定时消息)。
  3. 管道、自定义字段、日历、阶段、标签会作为实施任务的一部分被创建。将那些需在工作流前通过API执行的任务标记为
    🔧 设置

Cómo detectar el modo

如何检测模式

SeñalModo
Usuario dice "cliente nuevo", "desde cero", "cliente testeo", "primera implementación", "snapshot inicial"B
Usuario pasa un mapeo o roadmap pre-armado (ej: output de
ghl-onboarding-mapper
)
B
Usuario menciona dependencias por nombre y asume que existenA
Usuario dice "agregar al WF existente", "modificar X", "este cliente ya tiene Y"A
Si hay duda → preguntar al usuario antes de empezar
信号模式
用户提及“新客户”“从零开始”“测试客户”“首次实施”“初始快照”B
用户提供预先制定的映射或路线图(例如:
ghl-onboarding-mapper
的输出)
B
用户按名称提及依赖项并默认其已存在A
用户提及“添加至现有工作流”“修改X”“该客户已有Y”A
若有疑问 → 开始前询问用户

Clasificación de operaciones (en cualquier modo)

操作分类(任意模式适用)

Por cada operación que la tarea propone:
  • Automatizable vía API/MCP → puede ejecutarse desde la skill (ahora o en Fase 2)
  • 🔧 SETUP previo → recursos a crear antes del WF (pipelines, fields, calendarios) — automatizables
  • ⚠️ MANUAL → workflows, funnels, forms, configuraciones de Conversation AI, integraciones OAuth — el implementador lo arma a mano siguiendo la subtarea

对于任务提出的每项操作:
  • 可通过API/MCP自动化 → 可通过本Skill执行(当前或第二阶段)
  • 🔧 预先设置 → 工作流前需创建的资源(管道、字段、日历)——可自动化
  • ⚠️ 手动操作 → 工作流、漏斗、表单、Conversation AI配置、OAuth集成——实施者需按照子任务手动搭建

Principio central: 1 subtarea = 1 acción atómica

核心原则:1个子任务 = 1个原子化操作

El nombre de la subtarea ES la instrucción. La descripción tiene dos secciones fijas y obligatorias:
  • ## Acción en GHL
    → qué configurar exactamente (tabla de campos y valores). Esto es lo que el implementador ejecuta.
  • ## Contexto
    → por qué existe ese nodo, cómo se conecta con otros workflows, qué pasa antes y después. Esto es referencia, no instrucción.
❌ MAL — subtarea agrupada o sin estructura:
Nombre: ⚡ Acciones
Descripción: ACCIÓN 1 - Update Canal... ACCIÓN 2 - Update Área... ACCIÓN 3 - If/Else...
Nombre: Guard IF: Fecha de primer contacto está vacía
Descripción: Nodo IF. Si está vacío continúa, si no salta.
(sin separar qué hacer de por qué hacerlo)
✅ BIEN — subtarea atómica con secciones:
Nombre: Guard IF: Fecha de primer contacto está vacía
子任务的名称即为操作指令。描述包含两个固定且必填的部分
  • ## GHL操作
    → 具体需配置的内容(字段与值表格)。这是实施者需执行的操作。
  • ## 上下文
    → 该节点存在的原因、与其他工作流的关联、前后流程。这是参考信息,而非操作指令。
❌ 错误示例——子任务合并或无结构:
名称:⚡ 操作
描述:操作1 - 更新渠道... 操作2 - 更新区域... 操作3 - 条件判断...
名称:Guard IF:首次联系日期为空
描述:IF节点。若为空则继续,否则跳转。
(未区分操作内容与原因)
✅ 正确示例——原子化子任务带结构:
名称:Guard IF:首次联系日期为空

Acción en GHL

GHL操作

Campo GHLValor
Action typeIF / Else
Condition objectContact
FieldFecha de primer contacto
Operatoris empty
Rama TRUEContinúa → nodo siguiente
Rama FALSESalta al nodo Crear oportunidad
GHL字段
Action typeIF / Else
Condition objectContact
Field首次联系日期
Operatoris empty
真分支继续 → 下一个节点
假分支跳转至创建商机节点

Contexto

上下文

Protege contra re-entradas. Si el contacto ya existe en el CRM y vuelve a escribir, este Guard evita pisar su fecha original de primer contacto. Sin este nodo, los reportes de tiempo de conversión quedan contaminados con fechas incorrectas.

**Regla sobre qué va en cada sección:**

| ¿Qué tipo de contenido? | Sección |
|---|---|
| Tabla de configuración GHL (campos, valores, opciones) | `## Acción en GHL` |
| Paso a paso para encontrar el nodo en la UI | `## Acción en GHL` |
| Por qué existe este nodo | `## Contexto` |
| Qué workflow lo precede o lo sigue | `## Contexto` |
| Qué pasa si no se configura | `## Contexto` |
| Relación con otros WF (SP01, WF08, etc.) | `## Contexto` |
| Diagrama visual del flujo (rama TRUE/FALSE) | `## Contexto` |

---
防止重复录入。如果联系人已存在于CRM中并再次发起沟通,此Guard可避免覆盖其原始的首次联系日期。若无此节点,转化时长报告将被错误日期污染。

**各部分内容规则:**

| 内容类型? | 部分 |
|---|---|
| GHL配置表格(字段、值、选项) | `## GHL操作` |
| 在UI中找到节点的步骤 | `## GHL操作` |
| 该节点存在的原因 | `## 上下文` |
| 前置或后续工作流 | `## 上下文` |
| 未配置该节点的后果 | `## 上下文` |
| 与其他WF的关联(SP01、WF08等) | `## 上下文` |
| 流程可视化图(真/假分支) | `## 上下文` |

---

Flujo de trabajo

工作流程

Paso 1: Recibir el input

步骤1:接收输入

  • Output de
    ghl-onboarding-mapper
    , descripción manual, o tarea existente a reescribir
  • Si hay ambigüedad, preguntar antes de crear
  • ghl-onboarding-mapper
    的输出、手动描述或需重写的现有任务
  • 若存在歧义,创建前先询问用户

Paso 2: Confirmar List ID

步骤2:确认List ID

Si no se conoce: "¿List ID de ClickUp? Es el número al final de la URL de la lista."
若未知:“ClickUp的List ID是什么?它是列表URL末尾的数字。”

Paso 3: Construir la tarea padre

步骤3:构建父任务

Nombre:
[LS01] Nombre
o
WF-001 · NOMBRE_CAPS
Descripción de la tarea padre con estas secciones:
Descripción — qué hace, por qué existe
Trigger — nombre exacto + canal/pipeline/etapa
Guards de entrada — IF de detención antes de cualquier acción (si aplica)
Lógica / Branches — resumen de If/Else (si aplica)
Dependencias — qué debe existir antes de activar
Orden de activación — si depende de otro WF activo primero
名称:
[LS01] 名称
WF-001 · 大写名称
父任务描述包含以下部分:
描述——功能与核心业务逻辑
触发条件——精确名称 + 渠道/管道/阶段
输入Guard——任何操作前的终止条件判断(如适用)
逻辑/分支——条件判断摘要(如适用)
依赖项——激活前需存在的内容
激活顺序——是否依赖其他已激活的WF

Paso 4: Descomponer en subtareas atómicas

步骤4:分解为原子化子任务

Un nodo en GHL = una subtarea en ClickUp:
Nodo GHL→ Subtarea
Trigger
Trigger: [nombre] ([canal/etapa])
Guard IF de detención
Guard IF: [condición] → STOP
Update Contact/Opportunity Field
Update Field: [campo] = [valor]
If/Else con branches
IF: [condición] → [rama TRUE] / [rama FALSE]
Send Message
Send [WhatsApp/SMS/Email]: "[primeras palabras del mensaje]"
Wait
Wait: [duración] / Wait Until: [campo fecha]
Add/Remove Tag
Add Tag: [nombre-tag]
Create Opportunity
Crear oportunidad → [etapa]
Webhook → n8n
Webhook → n8n: [nombre_accion]
Assign to User
Assign to User: [Round Robin / Owner / nombre]
End Workflow
End Workflow
(solo si hay múltiples salidas)

GHL中的一个节点 = ClickUp中的一个子任务:
GHL节点→ 子任务
Trigger
Trigger: [名称] ([渠道/阶段])
终止Guard IF
Guard IF: [条件] → STOP
更新联系人/商机字段
Update Field: [字段] = [值]
带分支的条件判断
IF: [条件] → [真分支] / [假分支]
发送消息
Send [WhatsApp/SMS/Email]: "[消息开头内容]"
等待
Wait: [时长] / Wait Until: [日期字段]
添加/移除标签
Add Tag: [标签名称]
创建商机
创建商机 → [阶段]
Webhook → n8n
Webhook → n8n: [操作名称]
分配给用户
Assign to User: [轮询 / 所有者 / 姓名]
结束工作流
End Workflow
(仅当存在多个输出时)

Guía de UI — Valores exactos por tipo de nodo

UI指南——按节点类型的精确值

Interfaz de GHL en español. Usar estos términos exactos.
GHL界面为西班牙语。请使用以下精确术语。

Update Contact Field

更新联系人字段

Tipo de acción: "Actualizar datos de campo"
→ Clickeá "Añadir Campo"
→ Dropdown campos: Standard Fields (arriba) / Custom fields (hacer scroll abajo)
→ Seleccionar: [nombre exacto del campo]
→ Valor:
   Dropdown → seleccionar: [valor exacto]
   Text     → escribir: [valor]
   Date     → ícono 🏷️ → Contact Created At (para "now")
操作类型: "Actualizar datos de campo"
→ 点击"Añadir Campo"
→ 字段下拉框: Standard Fields(上方)/ Custom fields(向下滚动)
→ 选择: [字段精确名称]
→ 值:
   下拉框 → 选择: [精确值]
   文本 → 输入: [值]
   日期 → 图标🏷️ → Contact Created At(代表“当前时间”)

If / Else

条件判断(If / Else)

→ Clickeá "Añadir filtros"
→ Tipo: Contacto / Oportunidad
→ Campo: [nombre]
→ Condición: está vacío / es igual a / contiene / no está vacío
→ Valor: [si aplica]
Branch SÍ = condición cumplida
Branch NONE = no cumplida (equivale al Else)
→ 点击"Añadir filtros"
→ 类型: Contacto / Oportunidad
→ 字段: [名称]
→ 条件: está vacío / es igual a / contiene / no está vacío
→ 值: [如适用]
Branch SÍ = 条件满足
Branch NONE = 条件不满足(对应Else)

Crear oportunidad (nueva — NO la deprecada)

创建商机(新版——非旧版)

⚠️ "Crear O Actualizar Oportunidad" está DEPRECADA (banner naranja). Usar "Crear oportunidad".
→ IN SECUENCIA → [pipeline]
→ IN SECUENCIA PASO → [etapa exacta]
→ Nombre → ícono 🏷️ → First Name + Last Name
→ Fuente → texto libre: "Widget Web" / "WhatsApp" / "Instagram"
⚠️ "Crear O Actualizar Oportunidad"已废弃(橙色横幅)。请使用"Crear oportunidad"。
→ IN SECUENCIA → [管道]
→ IN SECUENCIA PASO → [精确阶段]
→ 名称 → 图标🏷️ → First Name + Last Name
→ 来源 → 自由文本: "Widget Web" / "WhatsApp" / "Instagram"

Send Message

发送消息

→ Canal: WhatsApp / SMS / Email
→ Tipo: Template aprobado / Mensaje libre
→ Texto: [mensaje exacto]
→ Usar ícono 🏷️ para insertar nombre: First Name
→ 渠道: WhatsApp / SMS / Email
→ 类型: 已审批模板 / 自由消息
→ 文本: [精确消息内容]
→ 使用图标🏷️插入姓名: First Name

Wait

等待

Wait fijo: duración en días/horas desde ejecución del paso
Wait Until Date: ícono 🏷️ → campo de fecha → + offset si aplica
固定等待: 自步骤执行起的天数/小时数
等待至日期: 图标🏷️ → 日期字段 → 如适用添加偏移量

Add/Remove Tag

添加/移除标签

→ Tag: [nombre exacto, sensible a mayúsculas/minúsculas]
→ 标签: [精确名称,区分大小写]

Webhook → n8n

Webhook → n8n

→ Acción: Webhook
→ URL: Custom Value con la URL del webhook de n8n
→ Método: POST
→ Body: incluir {{contact.id}} + campos necesarios
→ 操作: Webhook
→ URL: 自定义值,填入n8n的Webhook URL
→ 方法: POST
→ Body: 包含{{contact.id}} + 所需字段

Variables con ícono 🏷️

带🏷️图标的变量

ValorVariable
Fecha/hora actual
Contact Created At
Nombre
First Name
Apellido
Last Name
Teléfono
Phone
Email
Email
UTM Source
utm_source
(puede no existir en widget)
UTM Medium
utm_medium
UTM Campaign
utm_campaign
⚠️ Círculo naranja en un bloque = campos incompletos. El WF no se puede publicar hasta resolverlos.

变量
当前日期/时间
Contact Created At
名字
First Name
姓氏
Last Name
电话
Phone
邮箱
Email
UTM来源
utm_source
(可能不存在于组件中)
UTM媒介
utm_medium
UTM活动
utm_campaign
⚠️ 模块上的橙色圆圈表示字段不完整。需解决后才能发布WF。

Referencias GHL

GHL参考资料

Lectura obligatoria al inicio de cualquier sesión (Pre-flight Check):
  • references/ghl-api-capabilities.md
    — qué se puede crear/leer/actualizar vía API/MCP, schemas verificados, gotchas. Distingue automatizable (✅) vs manual (❌).
  • references/ghl-live-context-template.md
    — qué snapshot pullear de la cuenta antes de proceder.
Lectura por tipo de tarea (capa workflow / UI builder):
Si vas a generar...Leer
Triggers (Contact Created, Opportunity Stage Changed, Customer Replied, etc.)
references/ghl-triggers-reference.md
Acciones (Update Field, IF/Else, Send Message, Webhook, Wait, etc.)
references/ghl-actions-reference.md
Tareas de Conversation AI / Aurora bot
references/ghl-conversation-ai-reference.md
Limitaciones del builder (variables que no existen, aritmética, días hábiles, etc.)
references/ghl-limitations.md
Para workflows que mezclan triggers + acciones, leer ambos archivos de referencia antes de empezar.
Distinción importante entre los dos archivos de limitaciones:
  • ghl-api-capabilities.md
    → "¿se puede hacer vía API/MCP?" (capa de automatización)
  • ghl-limitations.md
    → "¿GHL lo soporta en absoluto, ni siquiera manualmente?" (capa de producto)
Cuando una funcionalidad no existe en GHL nativamente, usar el formato
⚠️ REVISAR
de
ghl-limitations.md
. Cuando una funcionalidad existe pero no es automatizable vía API/MCP, usar
⚠️ MANUAL
con la justificación de
ghl-api-capabilities.md
.

任何会话开始时的必读内容(预检查):
  • references/ghl-api-capabilities.md
    ——哪些内容可通过API/MCP创建/读取/更新、已验证的模式、注意事项。区分可自动化(✅)与手动(❌)操作。
  • references/ghl-live-context-template.md
    ——操作前需从账户拉取的快照内容。
按任务类型阅读(工作流层 / UI构建器层):
若要生成...阅读
触发器(Contact Created、Opportunity Stage Changed、Customer Replied等)
references/ghl-triggers-reference.md
操作(Update Field、IF/Else、Send Message、Webhook、Wait等)
references/ghl-actions-reference.md
Conversation AI / Aurora机器人任务
references/ghl-conversation-ai-reference.md
构建器限制(不存在的变量、算术运算、工作日等)
references/ghl-limitations.md
对于混合触发器+操作的工作流,开始前需阅读两份参考文档。
两份限制文档的重要区别:
  • ghl-api-capabilities.md
    → “是否可通过API/MCP实现?”(自动化层)
  • ghl-limitations.md
    → “GHL本身是否支持,甚至手动操作也不行?”(产品层)
当某项功能GHL原生不支持时,使用
ghl-limitations.md
中的
⚠️ 请检查
格式。 当某项功能存在但无法通过API/MCP自动化时,使用
⚠️ 手动操作
并附上
ghl-api-capabilities.md
中的理由。

Estructura visual en ClickUp

ClickUp中的可视化结构

Tarea padre — formato de descripción

父任务——描述格式

markdown
undefined
markdown
undefined

Descripción

描述

[Qué hace el workflow y la lógica de negocio central. 2-4 líneas.]
[工作流的功能与核心业务逻辑。2-4行。]

Trigger

触发条件

[Nombre exacto del trigger + pipeline/canal/etapa si aplica.]
[触发器的精确名称 + 管道/渠道/阶段(如适用)。]

Pipelines involucrados (si el WF mueve entre pipelines)

涉及的管道(若WF在管道间移动数据)

PipelineRol
Nombre pipeline
Origen / Destino / Temporal
管道角色
管道名称
来源 / 目标 / 临时

Dependencias

依赖项

  • [Qué debe existir creado antes de activar este WF]
  • [Otros workflows que deben estar activos primero]
  • [激活前需已创建的内容]
  • [需先激活的其他工作流]

Estructura de nodos

节点结构

#Tipo de nodoNombre de subtarea
1TriggerTrigger: ...
2Guard IFGuard IF: ...
3Update FieldUpdate Field: ...
undefined
#节点类型子任务名称
1TriggerTrigger: ...
2Guard IFGuard IF: ...
3Update FieldUpdate Field: ...
undefined

Subtarea — formato de descripción

子任务——描述格式

Cada subtarea tiene dos secciones fijas. Siempre en este orden:
markdown
undefined
每个子任务包含两个固定部分。请始终按此顺序:
markdown
undefined

Acción en GHL

GHL操作

Campo GHLValor
Action type[nombre exacto del nodo en GHL]
[campo 1][valor 1]
[campo 2][valor 2]
Rama TRUE[qué pasa si se cumple]
Rama FALSE[qué pasa si no se cumple]
GHL字段
Action type[GHL中节点的精确名称]
[字段1][值1]
[字段2][值2]
真分支[满足条件时的操作]
假分支[不满足条件时的操作]

Contexto

上下文

[Por qué existe este nodo. Qué workflow lo precede o lo sigue. Qué pasa si no se configura. Relación con otros WFs. 2-5 líneas.]

**Para nodos IF/Else con dos caminos, agregar diagrama visual al final del Contexto:**
¿[condición]? ├── SÍ → [acción rama TRUE] └── NO → [acción rama FALSE / STOP]

---
[该节点存在的原因。前置或后续工作流。未配置的后果。与其他WF的关联。2-5行。]

**对于带有两个分支的IF/Else节点,在上下文末尾添加可视化流程图:**
[条件]? ├── 是 → [真分支操作] └── 否 → [假分支操作 / 终止]

---

Ejemplo completo — [LS01] Widget Chat + UTM Capture

完整示例——[LS01] 聊天组件 + UTM捕获

Tarea padre:
markdown
undefined
父任务:
markdown
undefined

Descripción

描述

Captura contactos nuevos desde Widget Chat web. Extrae UTMs, clasifica la fuente y crea la oportunidad inicial en el pipeline.
从网页聊天组件捕获新联系人。提取UTM参数,分类来源并在管道中创建初始商机。

Trigger

触发条件

Contact Created. Sin filtros. Allow re-enrollment: OFF.
Contact Created。无筛选。Allow re-enrollment: OFF。

Dependencias

依赖项

  • Pipeline Residencial B2C creado con etapa Contactos Recibidos
  • Custom fields: Canal de primer contacto, Área de origen, Fecha de primer contacto, UTMs, Tipo de cliente
  • 已创建带有“已接收联系人”阶段的住宅B2C管道
  • 自定义字段:首次联系渠道、来源区域、首次联系日期、UTM参数、客户类型

Estructura de nodos

节点结构

#TipoSubtarea
1TriggerTrigger: Contact Created
2Update FieldsUpdate Fields: Canal + Área
3Update FieldsUpdate Fields: UTM Source + Medium + Campaign + Content + Term
4Guard IFGuard IF: Fecha de primer contacto está vacía
5Update FieldUpdate Field: Fecha de primer contacto = now (rama TRUE)
6Create OpportunityCrear oportunidad → Contactos Recibidos
7Update FieldUpdate Field: Tipo de cliente = cliente_final
8AssignAssign to User: Round Robin asesores

**Subtareas (ejemplos con el formato correcto):**

```markdown
── Subtarea: Guard IF: Fecha de primer contacto está vacía
#类型子任务
1TriggerTrigger: Contact Created
2Update FieldsUpdate Fields: 渠道 + 区域
3Update FieldsUpdate Fields: UTM来源 + 媒介 + 活动 + 内容 + 术语
4Guard IFGuard IF: 首次联系日期为空
5Update FieldUpdate Field: 首次联系日期 = now(真分支)
6Create Opportunity创建商机 → 已接收联系人
7Update FieldUpdate Field: 客户类型 = 最终客户
8AssignAssign to User: 顾问轮询

**子任务(格式正确的示例):**

```markdown
── 子任务:Guard IF:首次联系日期为空

Acción en GHL

GHL操作

Campo GHLValor
Action typeIF / Else
Condition objectContact
FieldFecha de primer contacto
Operatoris empty
Rama TRUEContinúa → nodo 5 (setear fecha)
Rama FALSESalta → nodo 6 (Crear oportunidad)
GHL字段
Action typeIF / Else
Condition objectContact
Field首次联系日期
Operatoris empty
真分支继续 → 节点5(设置日期)
假分支跳转 → 节点6(创建商机)

Contexto

上下文

Protege contra re-entradas. Si el contacto ya existe en el CRM y vuelve a escribir por el widget, sin este Guard IF se pisaría la fecha original de primer contacto con la del re-ingreso, contaminando los reportes de tiempo de conversión.

```markdown
── Subtarea: Update Field: Tipo de cliente = cliente_final
防止重复录入。如果联系人已存在于CRM中并再次通过组件发起沟通,若无此Guard IF,首次联系日期将被重新录入的日期覆盖,导致转化时长报告被污染。

```markdown
── 子任务:Update Field:客户类型 = 最终客户

Acción en GHL

GHL操作

Campo GHLValor
Action typeActualizar datos de campo (Update Contact Field)
FieldTipo de cliente
Valuecliente_final
GHL字段
Action typeActualizar datos de campo (Update Contact Field)
Field客户类型
Value最终客户

Contexto

上下文

Este campo es el trigger de SP01. Cuando GHL detecta que Tipo de cliente pasó de vacío a tener un valor, SP01 arranca y asigna el asesor. Sin este nodo SP01 nunca dispara.
⚠️ Tipo de cliente es un campo de Contacto, no de Oportunidad. Usar "Actualizar datos de campo" (Update Contact Field), no "Update Opportunity Field".
undefined
该字段是SP01的触发条件。当GHL检测到客户类型从空变为有值时,SP01将启动并分配顾问。若无此节点,SP01将永远不会触发。
⚠️ 客户类型是联系人字段,而非商机字段。请使用“Actualizar datos de campo”(Update Contact Field),而非“Update Opportunity Field”。
undefined