AI Cold DM
Generates and sends AI-powered personalized Direct Messages from a user’s profile page.
What It Does
Section titled “What It Does”- Takes a screenshot of the profile (for logging)
- Extracts username, full name, and bio from the profile page
- Clicks the Message button on the profile
- Waits for the DM screen to load
- Sends profile context to an AI provider for personalized message generation
- Types the message with human-like simulation
- Sends the message
- Verifies delivery (input emptied + send button disappeared)
- Optionally returns to the profile page
- Logs the action for tracking
Supported AI Providers
Section titled “Supported AI Providers”| Provider | Models Available |
|---|---|
| OpenAI | GPT-4o, GPT-4o Mini, GPT-4 Turbo, GPT-4 Vision Preview |
| Claude (Anthropic) | Claude 3.5 Sonnet, Claude 3 Opus, Claude 3 Sonnet |
| DeepSeek | DeepSeek Chat, DeepSeek Reasoner |
| Gemini (Google) | Gemini 1.5 Pro, Gemini 1.5 Flash, Gemini Pro Vision |
| Groq | Llama 3.1 70B, Mixtral 8x7B |
| Custom | Any OpenAI-compatible endpoint |
Configuration Options
Section titled “Configuration Options”| Option | Type | Description |
|---|---|---|
| Account | Select | Account for logging and screenshot storage |
| Provider | Select | AI provider to use |
| API Key | Password | Your API key (stored securely in node) |
| Model | Select | AI model (options depend on provider) |
| Custom Model Name | Text | For custom model names (when “Custom” selected) |
| Custom Endpoint URL | Text | For custom providers (OpenAI-compatible format) |
| Prompt | Textarea | Instructions for AI message generation (up to 8000 chars) |
| Min Length | Number | Minimum message length in words (default: 3) |
| Max Length | Number | Maximum message length in words (default: 500) |
| Blacklist | Textarea | Words to avoid, one per line |
| Enable Typing Simulation | Checkbox | Type like a human (recommended) |
| Typing Preset | Select | Fast, Normal, Slow, Human, or Custom |
| Custom Typing Config | Object | Min/max delay, chars per word (for Custom preset) |
| Go Back After Sending | Checkbox | Return to profile page after sending (default: on) |
| Wait After | Number | Seconds to wait after sending (default: 1.0) |
Typing Presets
Section titled “Typing Presets”| Preset | Speed | Realism |
|---|---|---|
| Fast | Quick | Low |
| Normal | Moderate | Medium |
| Slow | Slow | High |
| Human | Variable | Very High |
| Custom | Configurable | Configurable |
Features
Section titled “Features”| Feature | Description |
|---|---|
| Profile Context | AI uses username, full name, and bio to personalize the DM |
| Text-Only Generation | No screenshot sent to AI — profile data extracted via XML for speed |
| Multi-Provider Support | 6 AI providers + custom endpoints |
| Human-Like Typing | Configurable typing simulation with natural delays |
| Auto-Retry | Automatic retry on API failures (3 attempts, exponential backoff) |
| Blacklist Filtering | Avoid specific words in generated messages |
| Length Validation | Ensures messages meet min/max word requirements |
| Send Verification | Confirms message was sent (input emptied + send button gone) |
| Go Back | Optionally returns to profile page after sending |
| Action Logging | Logs all DMs to JSONL file for tracking |
| Screenshot Storage | Saves profile screenshots for reference |
Data Storage
Section titled “Data Storage”| Data | Location |
|---|---|
| Profile Screenshots | Accounts/{account}/dms/cold/ |
| DM Log | Accounts/{account}/dms/dm_log.jsonl |
Log Entry Format
Section titled “Log Entry Format”{ "type": "cold_dm", "target_username": "john_doe", "dm_text": "Generated DM text", "provider": "openai", "model": "gpt-4o-mini", "success": true, "account": "your_account", "screenshot": "/path/to/screenshot.jpg", "timestamp": "2024-01-15T10:30:00Z"}Output
Section titled “Output”Returns:
- success: Whether the DM was sent
- provider: AI provider used
- model: Model used
- dm_text: The generated DM text
- target_username: Target user’s username
- screenshot: Path to saved profile screenshot
- duration: Execution time in seconds
Requirements
Section titled “Requirements”- API key for chosen provider
- Internet connection
- Must be on the target user’s profile page
- Target profile must have a “Message” button visible
When to Use
Section titled “When to Use”- Sending personalized outreach DMs at scale
- Cold outreach for business, networking, or collaborations
- Initiating conversations based on profile context
- Avoiding generic copy-paste DMs
Example Prompt
Section titled “Example Prompt”Write a short, friendly and personalized DM for this Instagram user.Keep it casual, 1-3 sentences max. Do not use hashtags or emojis excessively.Reference something from their bio if relevant. Be genuine.Return ONLY the message text.- Customize your prompt to match your outreach goal and tone
- Use blacklist to avoid words that might seem spammy
- Enable typing simulation for more human-like behavior
- Keep messages short (1-3 sentences) for higher response rates
- Start with GPT-4o Mini or DeepSeek Chat for cost efficiency
- Monitor logs to review what DMs are being sent
- Use “Go Back After Sending” to chain with other workflow modules