Clay loops toolkit skill

Clay Loops GTM toolkit — recurring signal monitors, trigger-to-action loops, LeadMagic enrichment waterfalls on signal rows, funding/job-change/hiring routing, and sequencer handoff.

by LeadMagic·MIT license·★ 62 Stars on the repo·GitHub ↗

Use now

Inside this skill

SKILL.md · the author's own words
# Clay Loops Toolkit

**Location:** `tools/clay-loops-toolkit` · **Skill name:** `clay-loops-toolkit`

## Overview

Clay Loops are the GTM **tool** for recurring signal automation — funding,
job changes, hiring spikes, stale opps, champion moves. They run on cadence and
fire when source data changes. The mistake: a loop that enriches every row and
routes nothing — an expensive Slack feed.

Every production loop follows **monitor cheap → enrich on signal → LeadMagic
verify → score → route**. LeadMagic is the default email/waterfall provider
in the enrich table (find → verify → person enrich). Load `leadmagic-toolkit`
for API/credit details.

Word-for-word excerpt, not a result. Read the full SKILL.md ↓

Files of Clay loops toolkit

LeadMagic/main1 file shown
SKILL.md
Show the full text216 lines

Clay Loops Toolkit

Location: tools/clay-loops-toolkit · Skill name: clay-loops-toolkit

Overview

Clay Loops are the GTM tool for recurring signal automation — funding, job changes, hiring spikes, stale opps, champion moves. They run on cadence and fire when source data changes. The mistake: a loop that enriches every row and routes nothing — an expensive Slack feed.

Every production loop follows monitor cheap → enrich on signal → LeadMagic verify → score → route. LeadMagic is the default email/waterfall provider in the enrich table (find → verify → person enrich). Load leadmagic-toolkit for API/credit details.

Not this skill:

  • One-time table builds → clay-toolkit (tools/clay-toolkit)
  • Automation process / when to use Clay → clay-automation (automation/)
  • Complex multi-system branching → n8n-toolkit

When to Use

  • "Build a Clay Loop for funding / job change / hiring"
  • "Monitor accounts for signals in Clay"
  • "Route Clay loop output to HubSpot / Smartlead"
  • "LeadMagic waterfall in a Clay Loop"
  • "Weekly stale opp refresh loop"
  • "Champion move detection loop"

Authoritative Foundations

  • Clay Loops. Recurring: SOURCE → MONITOR → ENRICH (conditional) → ACTION. Re-runs on schedule or when monitor column detects change.
  • LeadMagic on Clay. Default waterfall for loops: Find Email (1 cr) → Verify (1 cr) → Enrich Person (2 cr) on signal_detected = true only. Job Change detection column for SIG-02 loops (leadmagic-job-change).
  • ColdIQ Signal-to-Action. One signal → one play → one template. Never mix funding and job change in one loop.
  • Winning by Design SPICED. Signal = Critical Event. Required on every routed row: why_now, source_url, signal_type, signal_date.
  • GTME Pulse. Separate monitor table from enrich/action tables — credit control.

Clay Tool Stack

Skill Path Role
clay-toolkit tools/clay-toolkit Tables, waterfalls, formulas, CRM push
clay-loops-toolkit tools/clay-loops-toolkit Recurring signal loops (this skill)
clay-automation automation/ Process: when to build, data quality, rollout

Step-by-Step: Build a Loop

Phase 1 — Pick Loop Type
Loop Monitor Source Cadence Play Skill LeadMagic Columns
Funding Funding enrich / news Daily funding-signal-play Find → Verify → Person
Job change LeadMagic Job Change / LI Daily job-change-play Job Change → Find → Verify
Hiring Job postings enrich Weekly hiring-signal-play Find → Verify (contacts)
Stale opp CRM last_activity Weekly pipeline-management Re-verify email only
Champion move Job change + open opp Daily job-change-play Job Change → Verify
ICP net-new Firmographic filter Weekly lead-finding Full waterfall
Post-meeting CRM meeting, no task Daily meeting-prep Verify only

Full specs: references/loop-catalog.md.

Rule: One signal per loop.

Phase 2 — 4-Table Architecture
[1. SOURCE]     CRM export, watchlist, or Clay source — raw accounts/contacts
[2. MONITOR]    Cheap columns only — signal_detected boolean + signal_date
[3. ENRICH]     LeadMagic waterfall ONLY IF signal_detected = true
[4. ACTION]     Score → route → CRM / sequencer / Slack / stop

Credit rule: Monitor first. Enrich conditionally. Cap 5 credits/row on signal=true rows. See references/leadmagic-waterfall.md.

Phase 3 — LeadMagic Enrich Table (Standard)

Run only when signal_detected = true:

Column A: LeadMagic Find Email (first + last + domain)     — 1 credit
Column B: LeadMagic Verify Email (email from A)            — 1 credit
  → IF invalid: stop row, flag email_invalid, no sequencer
Column C: LeadMagic Enrich Person (verified email)         — 2 credits
Column D: Formula — email_valid = (verify status = valid)

Job change loops add before Find Email:

Column 0: LeadMagic Job Change (linkedin_url or email)     — see leadmagic-job-change
  → Sets previous_company, new_company, title_changed
Phase 4 — Signal Score
Score Meaning Action
80–100 Tier-1 ICP + strong signal + LeadMagic valid Sequencer or AE queue
50–79 Good signal, partial data Human review queue
20–49 Weak signal / poor ICP Log only
0–19 Suppressed, customer, invalid email Stop

Inputs: icp_tier, signal_strength, email_valid, suppression_flag. Template: templates/routing-matrix.md.

Phase 5 — Action Routing
Destination When Required Fields
HubSpot/SF task Score 50+ why_now, source_url, SPICED-lite
Sequencer Score 80+, email_valid, approved Email, play ID, personalization
Slack Tier-1 any signal Account, signal, owner
CRM properties All processed last_signal, signal_type, signal_date
n8n webhook Complex branch clay-loops-toolkit → n8n-toolkit OUT-02

Gates before sequencer: LeadMagic verify = valid, suppression check, source_url on every personalization claim, human_approved if auto-enroll.

Phase 6 — Cadence & Maintenance
Loop Cadence Signal stale after
Funding / job change Daily 14 days
Hiring Weekly 30 days
Stale CRM Weekly by activity date
Account refresh Monthly 90 days enrichment TTL

Weekly review: credit burn, signal→meeting %, false positives.

Output Format

Clay Loop blueprint using templates/loop-blueprint.md:

  • Loop type + GTM play skill
  • 4-table column map with LeadMagic waterfall
  • Monitor formula + signal age filter
  • Score bands + routing matrix
  • Credit budget (per row + monthly cap)
  • Integration endpoints (CRM, sequencer, n8n)

Run scripts/check-output.py before delivery.

Quality Check

  • One signal type per loop
  • Monitor columns are cheap; enrich only on signal_detected = true
  • LeadMagic Verify gate before sequencer or CRM outbound
  • why_now, source_url, signal_date on every routed row
  • Suppression check before any send action
  • Signal age filter (14d funding/job change)
  • Matching play skill referenced for message template
  • Credit cap documented per row and monthly

Common Pitfalls

  1. Enrich all rows. Burns credits. Fix: conditional enrich on monitor.
  2. Skip LeadMagic verify. Bounces destroy domain rep. Fix: verify gate.
  3. Mixed signals. One loop for funding + hiring. Fix: separate loops.
  4. Stale triggers. 6-month-old funding. Fix: signal_date < 14 days.
  5. Claygent for email in loops. Expensive + risky. Fix: LeadMagic waterfall; Claygent only for why_now copy via ai-prompts-toolkit P03/P04.
  6. No action routing. Alerts pile up. Fix: score → CRM task → owner.

Execution Artifacts

  • references/framework-notes.md — SPICED + signal-to-action mapping
  • templates/output-template.md — Primary deliverable shell
  • scripts/check-output.py — Blueprint validator
  • references/loop-catalog.md — Loop types, cadences, LeadMagic columns
  • references/leadmagic-waterfall.md — Find → verify → enrich for loops
  • templates/loop-blueprint.md — Loop design doc
  • templates/routing-matrix.md — Score → action table
  • clay-toolkit — tools/clay-toolkit — table architecture, static waterfalls
  • leadmagic-toolkit — LeadMagic API, credits, Clay column setup
  • leadmagic-job-change — Job change column for SIG loops
  • ai-prompts-toolkit — P03/P04 for why_now and email draft columns
  • clay-automation — Rollout process, data quality (not tool config)
  • sequencing-toolkit — Enroll from action table
  • n8n-toolkit — When loop output needs complex routing
1---
2name: clay-loops-toolkit
3description: >-
4 Clay Loops GTM toolkit — recurring signal monitors, trigger-to-action
5 loops, LeadMagic enrichment waterfalls on signal rows, funding/job-change/hiring
6 routing, and sequencer handoff. Use when building Clay Loops for outbound triggers,
7 signal prospecting, or account monitoring. Not for one-time tables (clay-toolkit)
8 or process design (clay-automation). Triggers on: "Clay Loops", "Clay loop",
9 "signal loop", "funding loop Clay", "job change loop", "account monitor Clay",
10 "GTM loops", "Clay signal routing".
11license: MIT
12compatibility: Claude Code, Codex, GitHub Copilot, Cursor, Gemini CLI, OpenCode, Goose, Hermes, Windsurf, Zed
13metadata:
14 version: "2.0.0"
15 author: LeadMagic
16 category: tools
17 tool_group: clay
18 tool_path: tools/clay-loops-toolkit
19 tags: [clay, clay-loops, signals, gtm, tools, leadmagic, enrichment, triggers, outbound]
20 related_skills: [clay-toolkit, leadmagic-toolkit, leadmagic-job-change, ai-prompts-toolkit, clay-automation, signal-scoring, funding-signal-play, job-change-play, hiring-signal-play, sequencing-toolkit, n8n-toolkit]
21 frameworks:
22 - "Clay — Loops recurring GTM automation"
23 - "LeadMagic — Email find, verify, job change, person enrich on Clay"
24 - "ColdIQ — Signal-to-Action Routing"
25 - "Winning by Design — SPICED Critical Event"
26 - "GTME Pulse — Production Clay signal templates"
27---
28 
29# Clay Loops Toolkit
30 
31**Location:** `tools/clay-loops-toolkit` · **Skill name:** `clay-loops-toolkit`
32 
33## Overview
34 
35Clay Loops are the GTM **tool** for recurring signal automation — funding,
36job changes, hiring spikes, stale opps, champion moves. They run on cadence and
37fire when source data changes. The mistake: a loop that enriches every row and
38routes nothing — an expensive Slack feed.
39 
40Every production loop follows **monitor cheap → enrich on signal → LeadMagic
41verify → score → route**. LeadMagic is the default email/waterfall provider
42in the enrich table (find → verify → person enrich). Load `leadmagic-toolkit`
43for API/credit details.
44 
45**Not this skill:**
46- One-time table builds → `clay-toolkit` (`tools/clay-toolkit`)
47- Automation process / when to use Clay → `clay-automation` (`automation/`)
48- Complex multi-system branching → `n8n-toolkit`
49 
50## When to Use
51 
52- "Build a Clay Loop for funding / job change / hiring"
53- "Monitor accounts for signals in Clay"
54- "Route Clay loop output to HubSpot / Smartlead"
55- "LeadMagic waterfall in a Clay Loop"
56- "Weekly stale opp refresh loop"
57- "Champion move detection loop"
58 
59## Authoritative Foundations
60 
61- **Clay Loops.** Recurring: SOURCE → MONITOR → ENRICH (conditional) → ACTION.
62 Re-runs on schedule or when monitor column detects change.
63- **LeadMagic on Clay.** Default waterfall for loops: Find Email (1 cr) → Verify
64 (1 cr) → Enrich Person (2 cr) on `signal_detected = true` only. Job Change
65 detection column for `SIG-02` loops (`leadmagic-job-change`).
66- **ColdIQ Signal-to-Action.** One signal → one play → one template. Never mix
67 funding and job change in one loop.
68- **Winning by Design SPICED.** Signal = Critical Event. Required on every routed
69 row: `why_now`, `source_url`, `signal_type`, `signal_date`.
70- **GTME Pulse.** Separate monitor table from enrich/action tables — credit control.
71 
72## Clay Tool Stack
73 
74| Skill | Path | Role |
75|---|---|---|
76| `clay-toolkit` | `tools/clay-toolkit` | Tables, waterfalls, formulas, CRM push |
77| `clay-loops-toolkit` | `tools/clay-loops-toolkit` | Recurring signal loops (this skill) |
78| `clay-automation` | `automation/` | Process: when to build, data quality, rollout |
79 
80## Step-by-Step: Build a Loop
81 
82### Phase 1 — Pick Loop Type
83 
84| Loop | Monitor Source | Cadence | Play Skill | LeadMagic Columns |
85|---|---|---|---|---|
86| Funding | Funding enrich / news | Daily | `funding-signal-play` | Find → Verify → Person |
87| Job change | LeadMagic Job Change / LI | Daily | `job-change-play` | Job Change → Find → Verify |
88| Hiring | Job postings enrich | Weekly | `hiring-signal-play` | Find → Verify (contacts) |
89| Stale opp | CRM last_activity | Weekly | `pipeline-management` | Re-verify email only |
90| Champion move | Job change + open opp | Daily | `job-change-play` | Job Change → Verify |
91| ICP net-new | Firmographic filter | Weekly | `lead-finding` | Full waterfall |
92| Post-meeting | CRM meeting, no task | Daily | `meeting-prep` | Verify only |
93 
94Full specs: `references/loop-catalog.md`.
95 
96**Rule:** One signal per loop.
97 
98### Phase 2 — 4-Table Architecture
99 
100```
101[1. SOURCE] CRM export, watchlist, or Clay source — raw accounts/contacts
102[2. MONITOR] Cheap columns only — signal_detected boolean + signal_date
103[3. ENRICH] LeadMagic waterfall ONLY IF signal_detected = true
104[4. ACTION] Score → route → CRM / sequencer / Slack / stop
105```
106 
107**Credit rule:** Monitor first. Enrich conditionally. Cap 5 credits/row on
108signal=true rows. See `references/leadmagic-waterfall.md`.
109 
110### Phase 3 — LeadMagic Enrich Table (Standard)
111 
112Run only when `signal_detected = true`:
113 
114```
115Column A: LeadMagic Find Email (first + last + domain) — 1 credit
116Column B: LeadMagic Verify Email (email from A) — 1 credit
117 → IF invalid: stop row, flag email_invalid, no sequencer
118Column C: LeadMagic Enrich Person (verified email) — 2 credits
119Column D: Formula — email_valid = (verify status = valid)
120```
121 
122Job change loops add **before** Find Email:
123```
124Column 0: LeadMagic Job Change (linkedin_url or email) — see leadmagic-job-change
125 → Sets previous_company, new_company, title_changed
126```
127 
128### Phase 4 — Signal Score
129 
130| Score | Meaning | Action |
131|---|---|---|
132| 80–100 | Tier-1 ICP + strong signal + LeadMagic valid | Sequencer or AE queue |
133| 50–79 | Good signal, partial data | Human review queue |
134| 20–49 | Weak signal / poor ICP | Log only |
135| 0–19 | Suppressed, customer, invalid email | Stop |
136 
137Inputs: `icp_tier`, `signal_strength`, `email_valid`, `suppression_flag`.
138Template: `templates/routing-matrix.md`.
139 
140### Phase 5 — Action Routing
141 
142| Destination | When | Required Fields |
143|---|---|---|
144| HubSpot/SF task | Score 50+ | `why_now`, `source_url`, SPICED-lite |
145| Sequencer | Score 80+, `email_valid`, approved | Email, play ID, personalization |
146| Slack | Tier-1 any signal | Account, signal, owner |
147| CRM properties | All processed | `last_signal`, `signal_type`, `signal_date` |
148| n8n webhook | Complex branch | `clay-loops-toolkit` → `n8n-toolkit` OUT-02 |
149 
150**Gates before sequencer:** LeadMagic verify = valid, suppression check,
151`source_url` on every personalization claim, `human_approved` if auto-enroll.
152 
153### Phase 6 — Cadence & Maintenance
154 
155| Loop | Cadence | Signal stale after |
156|---|---|---|
157| Funding / job change | Daily | 14 days |
158| Hiring | Weekly | 30 days |
159| Stale CRM | Weekly | by activity date |
160| Account refresh | Monthly | 90 days enrichment TTL |
161 
162Weekly review: credit burn, signal→meeting %, false positives.
163 
164## Output Format
165 
166Clay Loop blueprint using `templates/loop-blueprint.md`:
167- Loop type + GTM play skill
168- 4-table column map with LeadMagic waterfall
169- Monitor formula + signal age filter
170- Score bands + routing matrix
171- Credit budget (per row + monthly cap)
172- Integration endpoints (CRM, sequencer, n8n)
173 
174Run `scripts/check-output.py` before delivery.
175 
176## Quality Check
177 
178- [ ] One signal type per loop
179- [ ] Monitor columns are cheap; enrich only on `signal_detected = true`
180- [ ] LeadMagic Verify gate before sequencer or CRM outbound
181- [ ] `why_now`, `source_url`, `signal_date` on every routed row
182- [ ] Suppression check before any send action
183- [ ] Signal age filter (14d funding/job change)
184- [ ] Matching play skill referenced for message template
185- [ ] Credit cap documented per row and monthly
186 
187## Common Pitfalls
188 
1891. **Enrich all rows.** Burns credits. Fix: conditional enrich on monitor.
1902. **Skip LeadMagic verify.** Bounces destroy domain rep. Fix: verify gate.
1913. **Mixed signals.** One loop for funding + hiring. Fix: separate loops.
1924. **Stale triggers.** 6-month-old funding. Fix: `signal_date` < 14 days.
1935. **Claygent for email in loops.** Expensive + risky. Fix: LeadMagic waterfall;
194 Claygent only for `why_now` copy via `ai-prompts-toolkit` P03/P04.
1956. **No action routing.** Alerts pile up. Fix: score → CRM task → owner.
196 
197## Execution Artifacts
198 
199- `references/framework-notes.md` — SPICED + signal-to-action mapping
200- `templates/output-template.md` — Primary deliverable shell
201- `scripts/check-output.py` — Blueprint validator
202- `references/loop-catalog.md` — Loop types, cadences, LeadMagic columns
203- `references/leadmagic-waterfall.md` — Find → verify → enrich for loops
204- `templates/loop-blueprint.md` — Loop design doc
205- `templates/routing-matrix.md` — Score → action table
206 
207## Related Skills
208 
209- `clay-toolkit` — `tools/clay-toolkit` — table architecture, static waterfalls
210- `leadmagic-toolkit` — LeadMagic API, credits, Clay column setup
211- `leadmagic-job-change` — Job change column for SIG loops
212- `ai-prompts-toolkit` — P03/P04 for `why_now` and email draft columns
213- `clay-automation` — Rollout process, data quality (not tool config)
214- `sequencing-toolkit` — Enroll from action table
215- `n8n-toolkit` — When loop output needs complex routing
216 

Discussion

Alternatives

Browser Automation SkillWeb browser automation with AI-optimized snapshots for claude-flow agentsCoding · MITDeepevalDeepEval evaluation workflow for AI agents and LLM applications. TRIGGER when the user wants to evaluate or improve an AI agent, tool-using workflow, multi-turn chatbot, RAG pipeline, or LLM app; add evals; generate datasets or goldens; use deepeval generate; use deepeval test run; send results to Confident AI; monitor production; run online evals; inspect traces; or iterate on prompts, tools, retrieval, or agent behavior from eval failures. AI agents are the primary use case. Covers Python SDK, pytest eval suites, CLI generation, traced evals, Confident AI reporting, and agent-driven improvement loops. DO NOT TRIGGER for unrelated generic pytest, non-AI test setup, or non-DeepEval observability work unless the user asks to compare or migrate to DeepEval; for instrumenting an app with DeepEval tracing, @observe, or framework integrations (use the `deepeval-tracing` skill); or for raw OpenTelemetry / OTLP export without the deepeval package (use the `deepeval-otel` skill).Business & ops · Apache-2.0Dev browserBrowser automation with persistent named pages via the dev-browser CLI. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, log into sites, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", "open the browser", or any browser interaction request.Business & ops · MITTurn into appTurn visible project context, a proven thread, skill, or workflow into a runnable Agent-Native app with simple buttons, visible agent steps, preview, and deployment handoff. Use when a user invokes `/turn-into-app` or asks to make a workflow into an app, including from Claude or ChatGPT on the web, including when the source is a spreadsheet link or upload.Business & ops · MIT