← ClaudeAtlas

discord-digestlisted

Scan Alex's friend group Discord server for events, plans, and activity. Summarizes what happened and what's coming up. Used by daily briefing for the Discord recap section, and can be run standalone. Use when the user asks about Discord, the friend group, "what are my friends up to", "anything on Discord", "check the group chat", "what did I miss", "any plans with friends", "what's the group doing", or when triggered by the daily briefing.
BaesTheorem/exobrain-harness · ★ 1 · AI & Automation · score 64
Install: claude install-skill BaesTheorem/exobrain-harness
# Discord Digest Scans Alex's friend group Discord server and summarizes activity so nothing falls through the cracks. ## Friend Group Server -- Username Mapping The username-to-real-name mapping lives in `discord/discord-digest-fetch.py` (gitignored -- contains real names). At runtime: 1. Read the `USERNAME_MAP` dict from `discord/discord-digest-fetch.py` 2. **For each message**: if the username is in the map, replace with the real name. Otherwise use the Discord display name from the API response and append a `⚠ unresolved: <username>` line at the end of the digest so Alex can map them. 3. Skip messages from Alex's own username. 4. Cross-reference resolved names with People/ notes in the Obsidian vault -- every friend group member should have one. ## Channels Monitored (read-only) Read channel IDs from `.env` in the harness root: - **General**: `DISCORD_CHANNEL_GENERAL` - **Musings and advice**: `DISCORD_CHANNEL_MUSINGS` - **Hangouts**: `DISCORD_CHANNEL_HANGOUTS` All channels are set to `requireMention: true` with empty `allowFrom` -- the bot reads but never responds. ## How to Scan 1. Read `discord/discord-digest.json` -- this is populated by `discord-digest-fetch.py` every 4 hours via launchd. It contains recent messages from all channels with metadata. 2. Filter to messages from the past 24 hours (for daily briefing) or past 7 days (for weekly/standalone) 3. Apply the username-mapping rule above (real name if mapped, otherwise display name + flag unresolved at d