Use this skill to keep up to date with specific Discord channels by fetching recent messages. Requires DISCORD_TOKEN.
Scanned 9/7/2026
Install to Claude Code
npx -y skills add modbender/skill-library-mcp --skill discord-watcher --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Discord Watcher?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/modbender-discord-watcher)More formats (shields.io, HTML) on the badges page.
---
name: discord-watcher
description: Use this skill to keep up to date with specific Discord channels by fetching recent messages. Requires DISCORD_TOKEN.
---
# Discord Watcher
This skill uses `DiscordChatExporter` to fetch recent messages from **ALL** accessible Discord channels.
## Prerequisites
- **DISCORD_TOKEN**: Must be set in the environment or passed to the script.
- **DiscordChatExporter (CLI)**: Must be installed in a `dce` subdirectory.
## Installation
1. Download the **CLI version** of DiscordChatExporter from GitHub:
[https://github.com/Tyrrrz/DiscordChatExporter/releases](https://github.com/Tyrrrz/DiscordChatExporter/releases)
*(Look for `DiscordChatExporter.Cli.linux-x64.zip` or your OS equivalent)*
2. Extract it to a `dce` folder inside this skill's directory:
```bash
mkdir -p skills/discord-watcher/dce
unzip DiscordChatExporter.Cli.linux-x64.zip -d skills/discord-watcher/dce
chmod +x skills/discord-watcher/dce/DiscordChatExporter.Cli
```
## Usage
Run the update script to fetch messages from the last 24 hours across all channels:
```bash
./skills/discord-watcher/update.sh [TOKEN]
```
The script can be run from any directory (it auto-detects its location).
This will:
1. Create a timestamped directory in `exports/updates/`.
2. Export all new messages (last 24h) from every channel you can see.
3. Save them as plain text files organized by server and category.
## Token retrieval (browser method)
If you need help obtaining DISCORD_TOKEN from a logged-in browser session, the following in-page technique (run from a page context where script evaluation is allowed) reliably extracts the token from localStorage using an injected iframe. Treat the token as a secret once retrieved.
JavaScript snippet (run in the page context via an automation tool that can evaluate page scripts):
```js
// Inject a hidden iframe and read its localStorage 'token' key
(() => {
try {
const iframe = document.createElement('iframe');
iframe.style.display = 'none';
document.documentElement.appendChild(iframe);
const token = iframe.contentWindow.localStorage.getItem('token');
iframe.remove();
return {ok: !!token, method: 'iframe', token};
} catch (e) {
return {ok: false, error: e.toString()};
}
})();
```
Notes and alternatives:
- Some automation contexts cannot access page localStorage directly; the iframe technique often bypasses that limitation.
- An alternative is the "webpack chunk" method to locate Discord's internal token getter; use with care.
- Never commit tokens to source control. Store them in a .env file or environment variable instead.
## Automation
To keep updated automatically, you can add a `HEARTBEAT.md` entry:
```markdown
- [ ] Every 6 hours: Run `skills/discord-watcher/update.sh` and summarize any new important discussions in `memory/discord-news.md`.
```
## Search & Indexing (Recommended)
The exported text files are perfect for indexing with `qmd`.
1. **Create a collection:**
```bash
qmd collection add exports/updates --name discord-logs --mask "**/*.txt"
```
*Note: Ensure you use the `--mask "**/*.txt"` flag as the exporter saves plain text files.*
2. **Update index:**
```bash
qmd update
```
3. **Search:**
```bash
qmd search "query"
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!