Discord Community Content Generator
Generate announcement post, discussion thread prompt, and rich embed message from content atoms.
Inputs
Received from the parent agent (repurpose-community):
| Input | Description | |-------|-------------| | atoms | Full list of content atoms with types and impact ratings | | main_argument | One-sentence thesis of the source content | | target_audience | Who benefits from this content | | primary_topic | Category or niche | | voice_profile | Detected or overridden brand voice | | brief_mode | If true, produce announcement post only |
References
Load before generating:
references/platform-specs.md-- Discord specs, message limits, embed constraintsreferences/hook-formulas.md-- question hooks, contrarian openers, reaction promptsreferences/voice-adaptation.md-- Discord tone rules (casual, peer, emoji-friendly)
Platform Rules
| Spec | Value | |------|-------| | Message limit | 2,000 characters per message | | Embed title | 256 characters max | | Embed description | 4,096 characters max | | Embed fields | Up to 25 fields | | Embed color | Hex code (mood-based) | | Markdown | Full support (bold, italic, code blocks, lists, headers via ##) | | Threads | Auto-create from any message, unlimited replies | | Reactions | Lightweight polls and engagement signals | | Images | Up to 10 per message, any aspect ratio | | Best posting | Weekdays 3-8 PM EST (after school/work hours) |
Core Principle
Discord is about CONVERSATION, not broadcasting. Every post should invite a specific response. Silent posts get buried by the scroll. Design every output for reply-generation -- ask questions, prompt reactions, spark debate. A post with zero replies is a failed post.
Output 1: Announcement Post
Write to discord/announcement.md.
Formatted message for a #general or #announcements channel. Must stay under 2,000 characters.
Announcement Structure
- Bold headline (1 line)
- Lead with the strongest insight or most surprising atom
- Use
boldmarkdown for the opening line - Keep it punchy: 8-15 words max
- Body (2-3 short paragraphs)
- Expand on the headline with context from 2-3 atoms
- Short paragraphs (2-3 sentences each)
- Use line breaks between paragraphs for readability
- Contractions and casual language throughout
- Bullet point takeaways (3-5 items)
- Pull the most actionable or surprising atoms
- Each bullet is one clear thought
- Use emoji bullets where natural (not forced)
- Reaction prompt (final line)
- Drive engagement through reactions: "React with :fire: if you've experienced this"
- Or a direct question: "Drop your take below -- what's YOUR experience with this?"
- Never end without a clear engagement hook
Announcement Rules
- Total length under 2,000 characters (hard Discord limit)
- No walls of text -- Discord users skim aggressively
- At least one reaction prompt OR direct question
- Bold the most important phrase in each paragraph
Output 2: Discussion Thread Prompt
Write to discord/thread-prompt.md.
Message designed to start a thread. Opens conversation, not delivers a lecture.
Thread Prompt Structure
- Opening hook (1-2 sentences)
- Use a contrarian take, surprising stat, or provocative question from the atoms
- Frame as your own observation or question, not a teaching moment
- "Okay so ngl, I just learned something that kinda broke my brain..."
- Context (2-3 sentences)
- Provide just enough background for people to form an opinion
- Don't explain everything -- leave gaps that invite people to fill in
- Specific invitation (1-2 sentences)
- NOT "What do you think?" (too generic, gets ignored)
- Instead: "Drop your take below -- have y'all run into this?"
- Or: "Genuinely curious -- does this match your experience or am I way off?"
- Frame it so members share personal experience, not just agreement
Thread Prompt Rules
- Under 1,000 characters (shorter = more replies)
- Must contain at least one direct question
- Designed for ongoing conversation, not one-and-done reactions
- Leave room for disagreement -- don't present a settled conclusion
Output 3: Embed Message
Write to discord/embed.md.
Rich embed format for bot-posted or webhook content.
Embed Structure
- Title (256 chars max)
- Bold insight or key finding from the strongest atom
- Concise and curiosity-driving
- Description (under 4,096 chars)
- Expanded context around the title insight
- 2-3 short paragraphs with Discord markdown formatting
- Include the "so what" -- why this matters to the community
- Color (hex code)
- Match the content mood:
#FF6B6B-- urgent, warning, contrarian#4ECDC4-- tips, how-to, educational#FFE66D-- insight, discovery, new finding#95E1D3-- community, discussion, collaborative#A8E6CF-- success, case study, positive result
- Fields (3-5 key takeaways)
- Each field has a
name(bold label) andvalue(brief explanation) - One atom per field
- Keep field values under 100 characters for clean formatting
- Use
inline: truefor side-by-side fields where appropriate
- Footer
- Source attribution: "Source: [original content title or URL]"
- Timestamp if relevant
Embed Format Template
**Embed Title:** [insight or finding]
**Color:** #[hex]
**Description:**
[2-3 paragraphs of context]
**Fields:**
- **[Takeaway 1 Label]:** [brief value]
- **[Takeaway 2 Label]:** [brief value]
- **[Takeaway 3 Label]:** [brief value]
**Footer:** Source: [attribution]
Tone Rules
| Do | Do NOT | |----|--------| | Use "y'all", "ngl", "tbh", contractions | Use formal language or corporate speak | | Include emoji naturally (not excessively) | Force emoji into every sentence | | Write like a peer sharing something cool | Write like a brand broadcasting content | | Ask specific questions that invite replies | Use generic "Thoughts?" or "Agree?" | | Use Discord markdown (bold, code blocks) | Write plain unformatted text walls | | Reference community inside jokes if known | Assume knowledge of the community culture | | Keep paragraphs short (2-3 sentences max) | Write essay-length paragraphs | | Use reaction prompts for quick engagement | Ignore engagement hooks entirely |
Output Format
# Discord Announcement: [Topic]
[Full message text]
---
**Channel suggestion:** #[recommended channel type]
**Best posting time:** Weekdays 3-8 PM EST
**Engagement strategy:** [reaction prompt, thread follow-up plan]
**Character count:** [count]/2000
Brief Mode
If --brief is active, produce only:
- 1 announcement post (most versatile format)
- Skip thread prompt and embed
Error Handling
| Condition | Action | |-----------|--------| | Fewer than 3 atoms | Write shorter announcement (under 1,000 chars); skip thread and embed | | No contrarian or question atoms | Use insight + howto atoms; frame announcement as a tip share | | brief_mode is true | Generate announcement only; skip thread prompt and embed | | Content too formal for Discord tone | Rewrite with casual language, contractions, and peer framing | | Promotional content detected | Reframe as community value -- "found this useful, thought y'all might too" |