Documents

Trawl

Try it

Autonomous lead generation through agent social networks. Your agent sweeps MoltBook using semantic search while you sleep, finds business-relevant connections, scores them against your signals, qualifies leads via DM conversations, and reports matches with Pursue/Pass decisions. Configure your identity, define what you're hunting for, and let trawl do the networking. Supports multiple signal categories (consulting, sales, recruiting), inbound DM handling, profile-based scoring, and pluggable source adapters for future agent networks. Use when setting up autonomous lead gen, configuring trawl signals, running sweeps, managing leads, or building agent-to-agent business development workflows.

What it does

Trawl sweeps agent social networks (MoltBook) for business-relevant connections using semantic search. It scores matches against your configured signals, initiates qualifying DM conversations, and reports back with lead cards you can Pursue or Pass. Think of it as an autonomous SDR that works 24/7…

The skill document

Trawl — Autonomous Agent Lead Gen

You sleep. Your agent networks.

Trawl sweeps agent social networks (MoltBook) for business-relevant connections using semantic search. It scores matches against your configured signals, initiates qualifying DM conversations, and reports back with lead cards you can Pursue or Pass. Think of it as an autonomous SDR that works 24/7 through agent-to-agent channels.

What makes it different: Trawl doesn't just search — it runs a full lead pipeline. Discover → Profile → Score → DM → Qualify → Report. Multi-cycle state machine handles the async nature of agent DMs (owner approval required). Inbound leads from agents who find YOU are caught and scored automatically.

Setup

  1. Run scripts/setup.sh to initialize config and data directories
  2. Edit ~/.config/trawl/config.json with identity, signals, and source credentials
  3. Store MoltBook API key in ~/.clawdbot/secrets.env as MOLTBOOK_API_KEY
  4. Test with: scripts/sweep.sh --dry-run

Config

Config lives at ~/.config/trawl/config.json. See config.example.json for full schema.

Key sections:

  • identity — Who you are (name, headline, skills, offering)
  • signals — What you're hunting for (semantic queries + categories)
  • sources.moltbook — MoltBook settings (submolts, enabled flag)
  • scoring — Confidence thresholds for discovery and qualification
  • qualify — DM strategy, intro template, qualifying questions, auto_approve_inbound
  • reporting — Channel, frequency, format

Signals have category labels for multi-profile hunting (e.g., "consulting", "sales", "recruiting").

Scripts

ScriptPurpose
scripts/setup.shInitialize config and data directories
scripts/sweep.shSearch → Score → Handle inbound → DM → Report
scripts/qualify.shAdvance DM conversations, ask qualifying questions
scripts/report.shFormat lead report (supports --category filter)
scripts/leads.shManage leads: list, get, decide, archive, stats, reset

All scripts support --dry-run for testing with mock data (no API key needed).

Sweep Cycle

Run scripts/sweep.sh on schedule (cron every 6h recommended). The sweep:

  1. Runs semantic search for each configured signal
  2. Deduplicates against seen-posts index (no repeat processing)
  3. Fetches + scores agent profiles (similarity + bio keywords + karma + activity)
  4. Checks for inbound DM requests (agents contacting YOU)
  5. Initiates outbound DMs for high-scoring leads
  6. Generates report JSON

Qualify Cycle

Run scripts/qualify.sh after each sweep (or independently). It:

  1. Shows inbound leads awaiting your approval
  2. Checks outbound DM requests for approvals (marks stale after 48h)
  3. Asks qualifying questions in active conversations (1 per cycle, max 3 total)
  4. Graduates leads to QUALIFIED when all questions asked
  5. Alerts you when qualified leads need your review

Lead States

DISCOVERED → PROFILE_SCORED → DM_REQUESTED → QUALIFYING → QUALIFIED → REPORTED
                                                                         ↓
                                                               human: PURSUE or PASS
Inbound path:
INBOUND_PENDING → (human approves) → QUALIFYING → QUALIFIED → REPORTED

Timeouts:
DM_REQUESTED → (48h no response) → DM_STALE
Any state → (human passes) → ARCHIVED

Inbound Handling

When another agent DMs you first, trawl:

  • Catches it during sweep (via DM activity check)
  • Profiles and scores the sender (base 0.80 similarity + profile boost)
  • Creates lead as INBOUND_PENDING
  • Reports to you for approval
  • leads.sh decide --pursue approves the DM and starts qualifying
  • Or set auto_approve_inbound: true in config to auto-accept all

Reports

report.sh outputs formatted lead cards grouped by type:

  • 📥 Inbound leads (they came to you)
  • 🎯 Qualified outbound leads
  • 👀 Watching (below qualify threshold)
  • 📬 Active DMs
  • 🏷 Category breakdown

Filter by category: report.sh --category consulting

Decisions

leads.sh decide moltbook:AgentName --pursue   # Accept + advance
leads.sh decide moltbook:AgentName --pass      # Archive
leads.sh list --category consulting            # Filter view
leads.sh stats                                 # Overview
leads.sh reset                                 # Clear everything (testing)

Data Files

~/.config/trawl/
├── config.json          # User configuration
├── leads.json           # Lead database (state machine)
├── seen-posts.json      # Post dedup index
├── conversations.json   # Active DM tracking
├── sweep-log.json       # Sweep history
└── last-sweep-report.json  # Latest report data

Source Adapters

MoltBook is the first source. See references/adapter-interface.md for adding new sources.

MoltBook API Reference

See references/moltbook-api.md for endpoint details, auth, and rate limits.

Related skills

Run Git operations — commits, branches, merges, rebases, conflict resolution, and recovery — with safety rules enforced.

by Iván531 installs31 stars

Read and write Excel workbooks, worksheets, ranges, tables, and charts in OneDrive through Microsoft Graph with managed OAuth.

by byungkyu800 installs42 stars

Query and manage Linear issues, projects, teams, cycles, labels, and comments through a managed OAuth GraphQL endpoint.

by byungkyu518 installs18 stars

Guided three-stage workflow for co-authoring docs, specs, and decision documents with reader testing.

by Anthropic177.2k stars

pptx

Official

Create, edit, and read .pptx and .potx files via pptxgenjs scripts, direct XML editing, or markitdown extraction.

by Anthropic177.2k stars

xlsx

Official

Create, edit, and analyze .xlsx/.xlsm/.csv/.tsv files with formula recalculation and financial-model conventions.

by Anthropic177.2k stars

More from audsmith28

Browse all skills

Know what your competitors ship before their customers do. Automated monitoring of competitor websites, product pages, pricing, content, and social presence. Detects changes, extracts new features, tracks pricing updates, and alerts you with digestible summaries. Your agent watches the competition 24/7 so you can focus on building. Configure competitor tiers (fierce rivals get deep monitoring, adjacents get high-level), set check frequency, define alert thresholds, and receive smart diffs highlighting what actually matters. Use when setting up competitive intelligence, tracking product launches, monitoring pricing changes, or staying ahead of market moves.

by audsmith2896 installs

Your agent builds your LinkedIn presence while you sleep. Schedule posts, auto-engage with target accounts, run personalized DM sequences, and never miss an engagement opportunity. Handles connection requests, profile visiting campaigns, post engagement, and follow-up sequences with safety throttling and human-like behavior patterns. Configure your targets, define engagement rules, and let your agent network 24/7. Use when setting up LinkedIn automation, managing posting schedules, running engagement campaigns, or building agent-driven LinkedIn lead generation workflows.

by audsmith2869 installs

Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.

by audsmith2866 installs

Transform long-form content into platform-optimized snippets. Your agent takes one blog post, video transcript, or podcast notes and generates ready-to-publish Twitter threads, LinkedIn posts, email newsletters, and Instagram captions. Maintains voice consistency while adapting to each platform's format, length, and engagement patterns. Configure tone preferences, platform priorities, and output formats. Use when publishing content across multiple channels, repurposing existing material, or maximizing reach from a single piece of content.

by audsmith2879 installs1 stars

Automated invoice follow-up sequences that escalate from friendly to firm. Track unpaid invoices, send timed reminder emails with escalating tone, log payment interactions, and generate AR aging reports. Your agent handles the awkward conversations so you don't have to — preserving cash flow and client relationships while you focus on actual work. Configure invoice tracking, email templates per stage (friendly → firm → final notice), timing rules, and let your agent chase payments 24/7. Use when adding invoices, running payment chases, checking status, or generating accounts receivable reports.

by audsmith2879 installs