Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Email Outreach Automation

v1.0.1

Cold email outreach pipeline with multi-step sequences, reply tracking, bounce handling, and campaign analytics. 4 production-ready n8n workflows with Google...

0· 507·4 current·4 all-time
byMuhammad H.M. Alvi@mhmalvi

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for mhmalvi/email-outreach-automation.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Email Outreach Automation" (mhmalvi/email-outreach-automation) from ClawHub.
Skill page: https://clawhub.ai/mhmalvi/email-outreach-automation
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: OUTREACH_SECRET, OUTREACH_ADMIN_EMAIL
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install email-outreach-automation

ClawHub CLI

Package manager switcher

npx clawhub@latest install email-outreach-automation
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
high confidence
Purpose & Capability
Name/description match the assets: four n8n workflow JSON files implement import, sequenced sends, reply tracking, and daily reports. Declared n8n credentials (Google Sheets + SMTP) are exactly what the workflows use.
!
Instruction Scope
Workflows instruct n8n to expose two public webhooks. The import webhook requires a _secret in the request body and compares it to $env.OUTREACH_SECRET (or a literal fallback). The reply webhook accepts POSTs with just an email and will mark prospects as replied with no authentication. This allows unauthenticated callers to spoof replies (affecting campaign state/metrics) and could be used to manipulate data. The import webhook places the secret in the request body (which may be logged) and relies on a simple equality check; if OUTREACH_SECRET is unset the comparison falls back to a literal placeholder, which could create accidental behavior. The SKILL.md is otherwise precise about required placeholders and credentials.
Install Mechanism
Instruction-only skill with no install steps and no code to write to disk. This minimizes supply-chain risk; the provided workflow JSON files are static and behave as described.
Credentials
Only two environment variables are required (OUTREACH_SECRET, OUTREACH_ADMIN_EMAIL) and they are used by the workflows. n8n credential references (Google Sheets and SMTP credential IDs) are present inside workflows and documented in SKILL.md. This is proportionate. Note: use of a fallback string ('YOUR_NOTIFICATION_EMAIL' / 'YOUR_OUTREACH_SECRET') in templates can cause accidental misrouting or unexpected behavior if env vars are not set.
Persistence & Privilege
Skill is not always-enabled and does not request persistent platform privileges or modify other skills. It only supplies workflows to be imported into n8n.
What to consider before installing
This package appears to be what it claims (n8n workflows for cold outreach) but you should not deploy it verbatim to production. Before installing or using: - Require authentication on both webhooks. At minimum add the same OUTREACH_SECRET check to the reply webhook or require a signature/header; avoid trusting unauthenticated POSTs. - Avoid placing secrets in request bodies; prefer an Authorization header or signed webhook. Ensure OUTREACH_SECRET is set in your environment (and not left as the example placeholder). - Use a dedicated sending domain and credentials for SMTP and monitor bounce handling to avoid deliverability and reputation issues. - Confirm Google Sheet IDs and credential IDs are private and that the Sheets permissions are limited. - Add rate-limiting / IP allowlist for webhooks if possible to reduce abuse. - Be aware of legal obligations for cold emailing (CAN-SPAM, GDPR, local rules) and get consent where required. If you want, I can suggest concrete code changes to add webhook authentication and safer secret handling in the workflows.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

📧 Clawdis
OSLinux · macOS · Windows
EnvOUTREACH_SECRET, OUTREACH_ADMIN_EMAIL
latestvk971ewtp37q4emwavhvhj2z7px826yz7
507downloads
0stars
2versions
Updated 11h ago
v1.0.1
MIT-0
Linux, macOS, Windows

Email Outreach Automation

A complete cold email outreach pipeline built on n8n and Google Sheets. Import prospects, run multi-step email sequences, track replies, and get daily campaign reports.

Problem

Cold email outreach requires consistent followup sequences, reply detection, and status tracking across hundreds of prospects. Most tools charge $50-200/month per seat and lock you into their platform.

This system provides a free, self-hosted outreach pipeline with full control over your data and sending.

What It Does

  1. Prospect Import — Webhook API to import prospects (single or batch) with validation and deduplication
  2. Email Sequences — 4-step automated outreach: initial, follow-up 1 (Day 3), follow-up 2 (Day 7), breakup (Day 14)
  3. Reply Tracking — Webhook to mark prospects as replied and notify your team
  4. Campaign Reports — Daily metrics: reply rates, bounce rates, step distribution, per-campaign breakdown

Included Workflows

#FilePurpose
0101-prospect-import.jsonWebhook import with validation, dedup, and Sheets storage
0202-outreach-sequence.jsonScheduled 4-step email sequence with timing logic
0303-reply-tracker.jsonWebhook to log replies and notify team
0404-campaign-report.jsonDaily campaign analytics email

Architecture

Prospect Import (webhook/CSV)
    |
    v
Workflow 01: Validate & Store
    +-> Deduplicate by email
    +-> Save to Google Sheets (status: new)

Scheduled (every 4 hours):
    |
    v
Workflow 02: Outreach Sequence
    +-> Read prospects with status != replied/bounced
    +-> Check timing (Day 0/3/7/14)
    +-> Send appropriate email template
    +-> Update step + next_send_at in Sheets

Reply received:
    |
    v
Workflow 03: Reply Tracker
    +-> Match email to prospect
    +-> Mark as replied in Sheets
    +-> Notify team via email

Daily Schedule:
    |
    v
Workflow 04: Campaign Report
    +-> Aggregate metrics by campaign
    +-> Reply rate, bounce rate, step distribution
    +-> Email report to admin

Email Sequence

StepTimingTemplate
1 - InitialDay 0Introduction + value proposition
2 - Follow-up 1Day 3Brief followup + case study mention
3 - Follow-up 2Day 7Different angle + call-to-action
4 - BreakupDay 14Polite closing, leaves door open

Required n8n Credentials

Credential TypeUsed ForPlaceholder in JSON
Google Sheets OAuth2Prospect storage and trackingYOUR_GOOGLE_SHEETS_CREDENTIAL_ID
SMTPSending outreach emails and reportsYOUR_SMTP_CREDENTIAL_ID

Environment Variables

# Required
OUTREACH_SECRET=your-webhook-auth-secret
OUTREACH_ADMIN_EMAIL=admin@yourbusiness.com

Configuration Placeholders

PlaceholderDescription
YOUR_OUTREACH_SHEET_IDGoogle Sheet ID for prospect data
YOUR_GOOGLE_SHEETS_CREDENTIAL_IDn8n Google Sheets credential ID
YOUR_SMTP_CREDENTIAL_IDn8n SMTP credential ID
YOUR_NOTIFICATION_EMAILFallback admin email (also set via OUTREACH_ADMIN_EMAIL env)

Google Sheets Schema (Prospects)

ColumnTypeDescription
emailtextPrimary key, prospect email
nametextProspect name
companytextCompany name
titletextJob title
campaigntextCampaign identifier
statustextnew / in_sequence / replied / bounced / completed
stepnumberCurrent sequence step (0-4)
last_sent_atdatetimeWhen last email was sent
next_send_atdatetimeWhen next email is due
repliedbooleanWhether prospect replied
replied_atdatetimeReply timestamp
bouncedbooleanWhether email bounced
imported_atdatetimeImport timestamp

Quick Start

1. Prerequisites

  • n8n v2.4+ (self-hosted)
  • Google Sheets OAuth2 credentials
  • SMTP credentials (dedicated outreach email recommended)

2. Create Prospect Sheet

Create a Google Sheet with the columns above. Name the tab "Prospects".

3. Import & Configure

Import all 4 JSON files into n8n. Replace all YOUR_* placeholders.

4. Import Prospects

curl -X POST https://your-n8n.com/webhook/outreach/import \
  -H "Content-Type: application/json" \
  -d '{
    "_secret": "your-outreach-secret",
    "prospects": [
      {"email": "john@company.com", "name": "John", "company": "Acme Inc", "campaign": "q1-2026"}
    ]
  }'

5. Track Replies

curl -X POST https://your-n8n.com/webhook/outreach/reply \
  -H "Content-Type: application/json" \
  -d '{"email": "john@company.com", "subject": "Re: Quick question", "message": "Sure, let us chat!"}'

Use Cases

  1. Freelancers — Automated client prospecting with professional followup
  2. Agencies — Multi-campaign outreach with per-campaign analytics
  3. SaaS founders — Early-stage customer development outreach
  4. Recruiters — Candidate outreach with sequenced followup
  5. Sales teams — Supplement CRM with lightweight, self-hosted sequences

Requirements

  • n8n v2.4+ (self-hosted recommended)
  • Google Sheets OAuth2 credentials
  • SMTP email credentials (use dedicated sending domain for deliverability)

Comments

Loading comments...