Node catalog
Every kind of node in a Loop: triggers, data sources, agents, human checkpoints, actions, and displays.
A node is the unit of a Loop. Every node belongs to a category, has typed input and output ports, and carries a small config form rendered from the shared registry.
Triggers
Triggers seed runs. Every Loop needs at least one.
trigger.manual— fires when you click Run. No payload.trigger.cron— fires on a five-field cron schedule. Theloops:tickCronJob scans every five minutes for due schedules.trigger.event— fires on a CRM event (lead.created,lead.statusChanged,lead.assigned,deal.stageChanged,deal.won,deal.lost,lead.stale). The payload carries the event entity ids.
Data
Data nodes gather rows.
data.leadSearch— pulls leads matching a filter from the org CRM.data.leadMatch— given incoming properties, finds CRM leads whose preferences fit.data.propertySearch.resales— queries Resales Online for properties matching a price / bedrooms / city filter.data.filter— passes items downstream that match a simple predicate.
Agents
Agent nodes wrap managed agents. Each one drafts proposals that flow into a
downstream human.approve node; no agent writes to the CRM directly.
agent.research— runs thefondaro-researchagent with web access.agent.brochureGenerator— produces a brochure PDF for input properties.agent.personalizedEmail— drafts personalised emails per input lead.agent.reengageStaleLead— drafts re-engagement emails for stale leads.agent.qualifyLead— proposes a status, tags, and a note for a new lead.
Human checkpoints
These pause the run.
human.review— renders inputs as tickable cards; resume produces the chosen subset.human.approve— queues each input as a proposal in the approval inbox; on approve the matching CRM mutation fires.
Actions
Terminal nodes that mutate the CRM through the same service path a user would call manually. Each one returns the executed entity for downstream chaining.
action.sendEmail— sends each draft email.action.changeStatus— sets a lead's CRM status.action.createTask— creates a follow-up task per lead.action.addTag— adds tags to leads.action.createNote— adds a note to leads.
Displays
Display nodes are dual-mode. Connected to an upstream output, they render that data; left unconnected, they fall back to a live React Query that mirrors the dashboard pane equivalent.
display.leadList— a filtered table of leads.display.powerDial— a calling queue.display.dealBoard— a kanban of deals.display.taskList— a bucketed list of tasks.display.email— a composer.display.inbox— the approval inbox.