/direct-messages
Sends, manages, and automates direct messages on X/Twitter. Supports personalized bulk DMs with templates, conversation management, message request filtering, and DM export. The agent uses this skill when a user needs to send DMs, manage conversations, or automate direct
$ npx -y skills add nirholas/XActions --skill direct-messages --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/direct-messages
Context preview
The summary Claude sees to decide when to auto-load this skill.
Sends, manages, and automates direct messages on X/Twitter. Supports personalized bulk DMs with templates, conversation management, message request filtering, and DM export. The agent uses this skill when a user needs to send DMs, manage conversations, or automate direct
SKILL.md
direct-messages.SKILL.mdname: direct-messages
description: Sends, manages, and automates direct messages on X/Twitter. Supports personalized bulk DMs with templates, conversation management, message request filtering, and DM export. The agent uses this skill when a user needs to send DMs, manage conversations, or automate direct messaging workflows.
license: Apache-2.0
metadata:
author: nichxbt
version: "3.0"
Direct Messages
Browser console scripts for sending, managing, and exporting X/Twitter DMs.
Available Scripts
| Script | File | Purpose | |--------|------|---------| | Send Direct Messages | `src/sendDirectMessage.js` | Send personalized DMs to a list of users | | DM Manager | `src/dmManager.js` | Core DM management (read, filter, organize, export) |
Send Direct Messages
**File:** `src/sendDirectMessage.js`
Send personalized DMs to multiple users with message templates and rate limiting.
Configuration
const CONFIG = {
targetUsers: ['user1', 'user2'],
messageTemplate: 'Hey {username}! ๐ Just wanted to connect.',
limits: {
messagesPerSession: 10,
delayBetweenMessages: 30000,
},
skipIfAlreadyMessaged: true,
dryRun: true,
};How to use
1. Navigate to `x.com/messages` 2. Edit CONFIG with target users and message template 3. Set `dryRun: false` when ready 4. Open DevTools (F12) โ Console 5. Paste the script โ Enter
Safety features
- Tracks sent messages in `localStorage` to avoid duplicates
- Configurable delay between messages (30s default)
- Session limit prevents over-messaging
- Dry-run mode previews actions without sending
**Warning:** Mass DMing can get your account restricted. Only message users who have open DMs or follow you.
DM Manager
**File:** `src/dmManager.js`
Core module for reading, filtering, organizing, and exporting DM conversations. Supports message requests, conversation search, and DM privacy settings.
How to use
1. Navigate to `x.com/messages` 2. Open DevTools (F12) โ Console 3. Paste the script โ Enter
Key Selectors
| Element | Selector | |---------|----------| | New message button | `[data-testid="NewDM_Button"]` | | Search people | `[data-testid="searchPeople"]` | | Message input | `[data-testid="dmComposerTextInput"]` | | Send button | `[data-testid="dmComposerSendButton"]` | | Conversation list | `[data-testid="conversation"]` | | Message bubble | `[data-testid="messageEntry"]` | | Message requests | `[data-testid="messageRequests"]` | | Back button | `[data-testid="app-bar-back"]` |
Notes
- DM scripts require being on the Messages page (`x.com/messages`)
- Group chats support up to 50 participants
- Message requests from non-followers must be approved before replying
- Add delays (30s+) between bulk DMs to avoid rate limits
- `{username}` placeholder in templates is replaced with the recipient's handle
- Sent history is persisted in `localStorage` across sessions
Read more
name: direct-messages description: Sends, manages, and automates direct messages on X/Twitter. Supports personalized bulk DMs with templates, conversation management, message request filtering, and DM export. The agent uses this skill when a user needs to send DMs, manage conversations, or automate direct messaging workflows. license: Apache-2.0 metadata: author: nichxbt version: "3.0"
Direct Messages
Browser console scripts for sending, managing, and exporting X/Twitter DMs.
Available Scripts
| Script | File | Purpose | |--------|------|---------| | Send Direct Messages | `src/sendDirectMessage.js` | Send personalized DMs to a list of users | | DM Manager | `src/dmManager.js` | Core DM management (read, filter, organize, export) |
Send Direct Messages
**File:** `src/sendDirectMessage.js`
Send personalized DMs to multiple users with message templates and rate limiting.
Configuration
const CONFIG = {
targetUsers: ['user1', 'user2'],
messageTemplate: 'Hey {username}! ๐ Just wanted to connect.',
limits: {
messagesPerSession: 10,
delayBetweenMessages: 30000,
},
skipIfAlreadyMessaged: true,
dryRun: true,
};How to use
1. Navigate to `x.com/messages` 2. Edit CONFIG with target users and message template 3. Set `dryRun: false` when ready 4. Open DevTools (F12) โ Console 5. Paste the script โ Enter
Safety features
- Tracks sent messages in `localStorage` to avoid duplicates
- Configurable delay between messages (30s default)
- Session limit prevents over-messaging
- Dry-run mode previews actions without sending
**Warning:** Mass DMing can get your account restricted. Only message users who have open DMs or follow you.
DM Manager
**File:** `src/dmManager.js`
Core module for reading, filtering, organizing, and exporting DM conversations. Supports message requests, conversation search, and DM privacy settings.
How to use
1. Navigate to `x.com/messages` 2. Open DevTools (F12) โ Console 3. Paste the script โ Enter
Key Selectors
| Element | Selector | |---------|----------| | New message button | `[data-testid="NewDM_Button"]` | | Search people | `[data-testid="searchPeople"]` | | Message input | `[data-testid="dmComposerTextInput"]` | | Send button | `[data-testid="dmComposerSendButton"]` | | Conversation list | `[data-testid="conversation"]` | | Message bubble | `[data-testid="messageEntry"]` | | Message requests | `[data-testid="messageRequests"]` | | Back button | `[data-testid="app-bar-back"]` |
Notes
- DM scripts require being on the Messages page (`x.com/messages`)
- Group chats support up to 50 participants
- Message requests from non-followers must be approved before replying
- Add delays (30s+) between bulk DMs to avoid rate limits
- `{username}` placeholder in templates is replaced with the recipient's handle
- Sent history is persisted in `localStorage` across sessions
โก The Complete X/Twitter Automation Toolkit โ Scrapers, MCP server for AI agents (Claude/GPT), CLI, browser scripts. No API fees. Open source. Unfollow people who don't follow back. Monitor real-time analytics. Auto follow, like, comment, scrape, without API. Follow Bot. Like bot. Grow your account automatically.
Repo: nirholas/XActions
Other skills on xactions.
- /a2a-multi-agent
Turn XActions into an A2A-compatible agent that can discover, communicate with, and delegate tasks to other AI agents using Google's Agent-to-Agent protocol.
Open skill - /account-backup
Export and backup your X/Twitter account data โ tweets, likes, bookmarks, followers, and following โ as downloadable JSON. Also triggers X's official data archive download. Use when users want to backup, export, or archive their X account data.
Open skill - /account-tools
Miscellaneous account utilities โ view join date, login history, connected accounts, appeal suspension, QR code sharing, share/embed tweets, upload contacts, and calculate account age. Use when users need account info tools not covered by other skills.
Open skill - /algorithm-cultivation
Trains an X/Twitter account's algorithmic feed to surface niche-relevant content and positions the account as a thought leader. Browser scripts for manual operation, Persona Engine for identity management, and 24/7 Algorithm Builder with LLM-powered engagement via Puppeteer. Use
Open skill - /analytics-insights
Analyze X/Twitter engagement, hashtags, competitors, best posting times, follower demographics, tweet performance, viral detection, content calendar gaps, A/B testing, and engagement leaderboards. Browser console scripts for data-driven X optimization. Use when users want
Open skill - /articles-longform
Compose, preview, publish, and manage long-form Articles on X/Twitter. Premium+ feature. Includes article creation, formatting, media insertion, and performance tracking. Use when users want to write, publish, manage, or analyze X Articles.
Open skill

