Back to skills
SkillHub ClubWrite Technical DocsFull StackTech Writer

reddit-commenter

A skill for writing natural and valuable comments on Reddit communities. Includes the complete workflow from subreddit exploration, comment writing, review, posting, to tracking.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
543
Hot score
99
Updated
March 20, 2026
Overall rating
C5.0
Composite score
5.0
Best-practice grade
C65.6

Install command

npx @skill-hub/cli install rokpiy-reddit-commenter

Repository

rokpiy/auto-commenter

Skill path: .claude/skills/reddit-commenter

A skill for writing natural and valuable comments on Reddit communities. Includes the complete workflow from subreddit exploration, comment writing, review, posting, to tracking.

Open repository

Best for

Primary workflow: Write Technical Docs.

Technical facets: Full Stack, Tech Writer.

Target audience: everyone.

License: MIT.

Original source

Catalog source: SkillHub Club.

Repository owner: rokpiy.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install reddit-commenter into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/rokpiy/auto-commenter before adding reddit-commenter to shared team environments
  • Use reddit-commenter for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: reddit-commenter
description: A skill for writing natural and valuable comments on Reddit communities. Includes the complete workflow from subreddit exploration, comment writing, review, posting, to tracking.
license: MIT
---

# Reddit Commenter Skill

> Reddit Comment Automation - From Exploration to Posting and Tracking

---

## Required Tool: Playwright MCP

This skill uses **Playwright MCP** to interact with Reddit.

### Main MCP Tools
| MCP Tool | Purpose |
|----------|---------|
| `browser_navigate` | Navigate to Reddit pages |
| `browser_snapshot` | Capture page structure (accessibility tree) |
| `browser_click` | Click elements (comment box, buttons, etc.) |
| `browser_type` | Input text (comment content) |
| `browser_wait_for` | Wait for page loading |

### ⚠️ Important Notes When Using Playwright MCP
- **Minimize tokens**: When calling MCP, don't pass entire conversation context—only concisely summarize the essential information needed for that action
- **Direct navigation**: Navigate directly to URLs with `browser_navigate` rather than clicking elements (prevents click errors, saves tokens)
- **Concise instructions**: Pass only minimal instructions like "Navigate to [URL]", "Click [element]", "Type: [text]"
- **⚠️ No screenshots**: Do NOT use `browser_take_screenshot`. Always use only `browser_snapshot` for page verification (accessibility tree is sufficient and doesn't save files)

---

## Execution Workflow

### Step 1: Check Activity Status and Select Subreddit

```
1. Check today's date file in tracking/reddit/ folder
   → File name: YYYY-MM-DD.md (e.g., 2026-01-12.md)
   → If file doesn't exist, create new one referencing template.md

2. Check activity status table by subreddit:
   - How many comments posted in each subreddit today
   - Check subreddits under daily limit (3)
   - Check last comment time (minimum 5-10 minute intervals)

3. Select next subreddit for commenting:
   - Prioritize subreddits with no activity today or under limit
   - Prioritize subreddits with oldest last activity time

4. Check subreddit specifics in resources/subreddits.md:
   - Core community rules
   - Community nature
   - Good topics to answer
   → Reflect this information when selecting posts
```

### Step 2: Access Reddit and Explore Posts

```
1. Access Reddit with Playwright MCP
   → browser_navigate("https://www.reddit.com/r/{selected_subreddit}/new/")
   or
   → browser_navigate("https://www.reddit.com/r/{selected_subreddit}/rising/")

2. Page snapshot
   → browser_snapshot()

3. Criteria for selecting posts to comment on:
   • Posts where you can share insights or provide feedback
   • ⚠️ CRITICAL: Posts you haven't commented on today
     - Check activity log in tracking/reddit/today's-date.md file
     - Extract list of post URLs from today's comments
     - Verify selected post URL is NOT in that list
     - Absolutely NO duplicate comments on same post
   • OK even if not related to your service/field
   • Relevance to "good topics to answer" from Step 1
   • Avoid posts with already hundreds of comments

4. Secure URL of selected post
   → Check and record post link in snapshot
   → Navigate directly to this URL in next Step
```

### Step 3: Deep Analysis of Post Content and Existing Comments

```
⚠️ CRITICAL: Must perform this step before writing comment

0. Navigate directly to post
   → browser_navigate(post URL secured in Step 2)
   → Navigate directly to URL, don't click on post (prevents click errors)
   → browser_snapshot()

1. Read post content accurately:
   - Understand what OP is actually asking
   - Don't react only to keywords—understand full context
   - Distinguish between hypothetical questions and actual problem complaints

2. Understand OP's intent:
   - Seeking specific help? (problem solving)
   - Seeking opinions/discussion? (hypothetical scenario)
   - Information sharing? (experience story)

3. Analyze existing comments:
   - Check how others interpreted
   - Understand how community is receiving this post
   - Check tone and answering style

4. Decide comment direction:
   - Is this post worth answering?
   - From what angle should I answer?
   - Can I naturally answer in my style?

5. ⚠️ CRITICAL: Determine if site/link verification needed:
   - Did OP provide website/app link?
   - Are there expressions like "feedback requested", "honest feedback", "looking for feedback"?
   - Is feedback requested on UX, design, performance that requires actual verification?

   → If YES:
     • Visit actual site with browser_navigate(provided link)
     • Check UI/UX with browser_snapshot()
     • Write feedback based ONLY on what you actually saw
     • Absolutely NO speculative feedback on things you didn't see

   → If NO:
     • Can answer from post content alone
     • General advice or experience sharing

⚠️ Proceed to Step 4 only after clearly verifying analysis results
```

### Step 4: Write Comment

```
1. Draft comment based on Step 3 analysis results:
   - Answer matching OP's actual question
   - Practically helpful content
   - Match subreddit tone
   - Focus on 1-2 points (don't try to explain everything)
```

### Step 5: Personalization Review (Loop)

```
1. Check resources/personalization_reddit.md file
   → Sequentially check 16 personalization checklist items based on actual comment style
   → Especially important: #4 personal experience, #13 experience pattern, #15 question intent understanding, #16 site verification

2. Check style patterns:
   • Which pattern (1-8) is it closest to?
   • Does it capture that pattern's characteristics well?
   • Does it look like you wrote it?

3. Review process:
   • All items PASS → Proceed to Step 6
   • Any violation → Revise comment and re-review from Step 5 beginning

```

**Detailed personalization guide**: See `resources/personalization_reddit.md`

### Step 6: Post Comment

```
1. Click comment input box
   → Check comment input element after browser_snapshot()
   → browser_click(comment box ref)

2. Input comment content
   → browser_type(reviewed comment)

3. Click post button
   → browser_click(post button ref)

4. Secure comment URL
   → Copy comment permalink after posting
```

### Step 7: Judge Potential Customer (Optional)

```
⚠️ CRITICAL: Judge accurately by referring to Step 3 analysis again

→ Refer to "Lead Selection Criteria" in leads/reddit.md
→ Classify as lead only users with actual problems (not hypothetical questions)

When lead discovered, update leads/reddit.md:
  - Username, subreddit, post URL
  - Post summary, selection reason, relevance
```

### Step 8: Update Tracking

```
Update tracking/reddit/[today's-date].md file:

1. Activity status table by subreddit:
   - Increment comment count for that subreddit by +1
   - Update last comment time

2. Add to activity log:
   ### [HH:MM] r/subreddit
   - **Post**: [Title](URL)
   - **Topic Summary**: One-line summary of post content
   - **Comment Link**: [Comment URL]
   - **Comment Content**:
   ```
   Full comment written
   ```

3. When potential customer discovered:
   - Update 'leads/reddit.md' when potential customer discovered
```

---

## File Reference Rules (Token Savings)

| File | Reference Timing |
|------|------------------|
| `resources/subreddits.md` | Step 1 (subreddit selection) |
| `resources/personalization_reddit.md` | Step 5 (review) |
| `resources/product.md` | Step 7 (potential customer judgment) |
| `leads/reddit.md` | Step 7 (lead criteria check) |

→ Reference only at relevant Step, don't read in advance

---

## Cautions

1. **Login Required**: Check Reddit account login status
2. **Rate Limiting**: Too fast activity risks account restrictions
3. **Community Rules**: Must follow each subreddit's rules
4. **Spam Prevention**: Absolutely NO copy-pasting same content
5. **Review Required**: Rewrite if any checklist item violated
6. **⚠️ Step 3 Required**: NEVER write comment without analyzing post content. Judging only by keywords can cause serious errors
7. **⚠️ Minimize Playwright MCP tokens**:
   - Don't pass entire context when calling Playwright MCP
   - Concisely summarize only essential information needed for each MCP call
   - E.g.: Only minimal instructions like "Navigate to [URL]", "Click comment box", "Type: [text]"
   - Prevent errors from excessive input tokens
8. **⚠️ Post Navigation**: Use browser_navigate directly with URL instead of clicking post (prevents click errors)


---

## Referenced Files

> The following files are referenced in this skill and included for context.

### resources/personalization_reddit.md

```markdown
# Personalization Guide Template

> This file should contain YOUR actual Reddit commenting style, learned from 8-10 of your real comments.
> See README.md for instructions on how to generate this file using AI.

---

## Core Characteristics

- Direct, concise, no unnecessary greetings
- Analytical and critical but constructive
- Short comments preferred (1-3 sentences), but longer comments are natural
- Use phrases like "I think", "I see", "Can't we...", "Do people..."
- Occasional emojis (:))

---

## Post Type Classification (CRITICAL - Check First)

> **Must identify post nature before commenting**

| Post Type | Characteristics | Correct Response | Wrong Response |
|-----------|----------------|------------------|----------------|
| **Humor/Meme** | Fun, light sharing, memes, jokes | Short and light, humor back, 1-2 sentences | Serious technical analysis, explanation mode |
| **Show Off/Share** | "Look what I made", achievement, screenshot | Simple reaction, show interest, brief question | Lengthy feedback, improvement analysis |
| **Question/Help** | Specific problem, How-to, stuck point | Direct solution, experience sharing | Philosophical analysis, unrelated explanation |
| **Discussion/Opinion** | What do you think, Is X better than Y | State opinion, brief reasoning | Textbook explanation, neutral listing |
| **News/Info** | Article link, product launch, update | Opinion/reaction, related experience | Repeat article summary |

---

## Comment Variety Rules (CRITICAL)

> **Your profile's recent 10 comments should look natural when viewed together**

### Length Distribution (Required)

For daily activity (e.g., 24 comments):
- **Short (1-2 sentences)**: Minimum 30% = 7-8
- **Medium (3-5 sentences)**: About 50% = 12
- **Long (6+ sentences)**: Maximum 20% = 4-5

### When Short Comments Are Appropriate

- Humor/meme posts
- Simple agreement/empathy
- Single short tip
- When other comments already explained well
- Light-hearted posts from OP

---

## Avoid Repetitive Structure (CRITICAL)

> **Don't use "intro-analysis-solution-question" template every time**

### Patterns to Avoid

Repeating this structure makes it look AI-generated:
1. [experience/empathy] → [analysis] → [solution] → [question]
2. [experience/empathy] → [analysis] → [solution] → [question]
3. [experience/empathy] → [analysis] → [solution] → [question]

### Structure Mix Strategy

| Structure | Example | Frequency |
|-----------|---------|-----------|
| Core only | "just do X" | Often |
| Opinion only | "i think Y is better because Z" | Often |
| Question only | "curious how you handle X?" | Sometimes |
| Experience only | "had this issue, ended up doing X" | Sometimes |
| Analysis+opinion | Explanation then opinion | Sometimes |
| Full structure | Empathy+analysis+solution+question | **Rarely** |

---

## Personalization Checklist (16 Items)

| # | Item | Criteria |
|---|------|----------|
| 1 | Directness | Straight to point, no euphemisms |
| 2 | Greetings | Remove "Hi!", "Thanks!" etc. |
| 3 | Sentence length | Short or naturally long |
| 4 | Personal experience | Only what you'd realistically experience |
| 5 | Critical attitude | Honestly point out problems |
| 6 | Constructive suggestions | "Can't we...", "What if..." |
| 7 | Analytical approach | Add depth if superficial |
| 8 | Closing | No cliché "Hope this helps!" |
| 9 | Em-dash | Don't use, replace with `,` |
| 10 | Bullet points | Only for complex explanations |
| 11 | Technical accuracy | No wrong information |
| 12 | Context appropriateness | Answers match post topic |
| 13 | Experience pattern | Don't overuse "me too" |
| 14 | AI detection prevention | See section below |
| 15 | Question intent understanding | **See section below (CRITICAL)** |
| 16 | Site verification | **See section below (CRITICAL)** |

---

## AI-Like Comment Prevention (CRITICAL)

### Patterns to Avoid

| Pattern | Bad Example | Good Example |
|---------|-------------|--------------|
| Perfect 3-part structure | Empathy→Feedback→Question | Mix order, combine in one paragraph |
| Business jargon | "pain points", "leverage" | "problems", "use" |
| Perfect grammar | Always capitalized, perfect punctuation | Lowercase OK, "tbh", "kinda" |
| Excessive positivity | "Great question!" | Neutral: "not bad", "seems like" |
| Deliberate idiom use | "hit the nail on the head" | Natural everyday expressions |
| **Consistent length** | All comments 4-5 paragraphs | 1 sentence~7 sentences varied |
| **Always ends with question** | "curious about X?" repeated | More than half without questions |
| **Serious about humor** | Technical analysis on memes | Match the tone |

---

## 8 Style Patterns

### 1. Short and Direct (Most Preferred - Use Often)
```
First, specify the purpose and the data type for which you are creating the RAG pipeline.
```
→ 1-2 sentences, core only, no personal experience

### 2. Ultra-Short Reaction (For humor/empathy)
```
lol same
```
→ 1 sentence or less, suitable for light posts

### 3. Problem Pointing + Solution
```
The country dropdown just shows a random country whenever I try to type the country ID. Ended up manually scrolling the list.
```
→ Calm tone, actual action taken

### 4. Honest Criticism + Constructive Suggestion
```
It does have a bit of a promotional vibe, but it's still a good example. Can't we solve the quality problem by specifying the code architecture in an md file beforehand?
```
→ Criticism first, suggest with "Can't we..."

### 5. Analytical Explanation (Long comment - Rare)
```
The biggest advantage I see is 'expanding my thinking.' When you go down a vertical structure, you often forget whether you even had that knowledge. But with horizontal linking, I can connect concepts to enable knowledge discovery.
```
→ Personal perspective ("I see", "I can"), comparative explanation
→ **Only 2-3 per day**

### 6. Structured Technical Explanation
```
You can basically think of it like this:
• Point 1...
• Point 2...
So in practical terms, regular users shouldn't worry.
You don't have to worry if you are just a normal user :)
```
→ Bullet points OK, summary, friendly closing

### 7. Question + Opinion
```
Do people use X a lot for workflow tracking? I think Y might be in higher demand.
```
→ Start with question, state opinion with "I think"

### 8. Natural Promotion
```
Glad to meet someone who is very interested in this topic. If you are interested, you can check more information at [URL]! Also love to hear some feedback!!
```
→ Empathy first, "If you are interested", ask for feedback

---

## Expressions to Avoid

- "Great question!", "Absolutely!", "Definitely!"
- "Hope this helps!", "Here's what you need to know:"
- "pain points", "leverage", "utilize", "facilitate"
- "In conclusion,", "That being said,"

## Expressions to Use

- "I think", "I see", "It seems"
- "Can't we...", "What if...", "Do people..."
- "In other words", "So in practical terms"
- "Ended up [doing something]"
- "You don't have to worry"
- "lol", "tbh", "yeah", "honestly"

---

## Question Intent Understanding (CRITICAL)

> Understand **exactly what OP is asking** and respond accordingly

### Question Type Classification

| Question Type | Question Example | Correct Answer | Wrong Answer |
|--------------|------------------|----------------|--------------|
| **Experience sharing request** | "Do you track X?", "How much do you track Y?", "Do people use Z?" | Share actual experience (what you do/don't do) | Propose solutions/tools |
| **Method request** | "How do you do X?", "What tools do you use?", "How can I solve Y?" | Specific methods, tools, process suggestions OK | Only vague experiences |
| **Opinion request** | "What do you think about X?", "Is Y a good approach?" | Personal opinion, pros/cons analysis | Only state facts |
| **Problem solving** | "X is not working", "I'm stuck with Y" | Direct solution method, troubleshooting | Only anecdotes |
| **Light sharing** | meme, "lol look at this", screenshot | Short reaction, humor | Serious analysis |

---

## Site Verification (CRITICAL)

> When a link is provided and feedback is requested, **you must actually visit the site and verify content** before commenting

---

## Review Process

```
1. Identify post nature (humor? question? discussion? sharing?)
2. Choose tone and length matching post nature
3. Check all 16 checklist items (especially #4, #13, #14, #15, #16)
4. Which of 8 patterns does it match?
5. Compare with other comments today - structure/length repetition?
6. Does it look like you wrote it?

PASS → Post / FAIL → Revise and re-review
```

---

## Profile Simulation Check

> Final check before posting: "When I look at my recent 10 comments side by side..."

- [ ] Are lengths varied? (1 sentence~7 sentences mixed)
- [ ] Not starting with same structure every time?
- [ ] Not ending with questions every time?
- [ ] Are light comments mixed in?
- [ ] Does it overall look like one person wrote it?

**If any is NO, adjust variety**

```

### resources/subreddits.md

```markdown
# Target Subreddit Guide

> When writing Reddit comments, reflect each subreddit's characteristics.

---

## Target Subreddit List

| Subreddit | Subscribers | Daily Limit |
|-----------|-------------|-------------|
| r/WebDev | ~2.8M | 3 |
| r/ClaudeAI | ~180K | 3 |
| r/Cursor | ~30K | 3 |
| r/LocalLLaMA | ~450K | 3 |
| r/ChatGPT | ~6.9M | 3 |
| r/SideProject | ~330K | 3 |
| r/Obsidian | ~190K | 3 |
| r/Rag | ~15K | 3 |

---

## Subreddit-Specific Guides

### r/WebDev

| Item | Content |
|------|---------|
| **Core Community Rules** | • No spam/self-promotion<br>• Professional tone<br>• "Showoff Saturday" only for project sharing |
| **Community Nature** | • Professional developer-focused<br>• Technical discussion, best practices sharing<br>• Technical, Professional |
| **Good Topics to Answer** | • AI integration in web apps<br>• Developer productivity tools<br>• Context management in development |

---

### r/ClaudeAI

| Item | Content |
|------|---------|
| **Core Community Rules** | • Claude-related content only<br>• No excessive self-promotion<br>• Share technical insights |
| **Community Nature** | • Claude power users<br>• High understanding of MCP<br>• Open to new use cases |
| **Good Topics to Answer** | • MCP implementation<br>• Context/memory management<br>• Multi-agent workflows<br>• Notion/Obsidian integration |

---

### r/Cursor

| Item | Content |
|------|---------|
| **Core Community Rules** | • Cursor-related content only<br>• Share tips and workflows<br>• Be helpful to newcomers |
| **Community Nature** | • AI coding tool early adopters<br>• Interested in workflow optimization<br>• Active practical tips sharing |
| **Good Topics to Answer** | • Context switching between tools<br>• Maintaining project context<br>• AI coding workflow optimization |

---

### r/LocalLLaMA

| Item | Content |
|------|---------|
| **Core Community Rules** | • **No commercial spam (very strict)**<br>• Technical depth required<br>• Open source preferred |
| **Community Nature** | • Most demanding technical community<br>• Very negative toward commercial promotion<br>• Values open source contribution |
| **Good Topics to Answer** | • Memory architecture for LLMs<br>• Context window optimization<br>• RAG vs semantic memory<br>• **Pure technical discussion only** |

---

### r/ChatGPT

| Item | Content |
|------|---------|
| **Core Community Rules** | • ChatGPT related content<br>• No excessive promotion<br>• Share useful tips |
| **Community Nature** | • Largest AI community (6.9M+)<br>• Mix of technical users + general public<br>• Practical use case sharing |
| **Good Topics to Answer** | • Repeating context every conversation<br>• ChatGPT + other tools workflow<br>• Memory limitations<br>• **Language understandable to general public** |

---

### r/SideProject

| Item | Content |
|------|---------|
| **Core Community Rules** | • Share with context and story<br>• "Show and Tell" welcomed<br>• Engage with other builders |
| **Community Nature** | • Most promotion-friendly<br>• Culture of builders supporting each other<br>• Values sharing development process/lessons learned |
| **Good Topics to Answer** | • Building with MCP<br>• Hackathon to product journey<br>• Early stage startup challenges<br>• **Beta tester recruitment possible** |

---

### r/Obsidian

| Item | Content |
|------|---------|
| **Core Community Rules** | • Obsidian-related content only<br>• "Community Showcase" for tools<br>• No spam, useful tools welcomed |
| **Community Nature** | • Serious about building Second Brain<br>• Active in adopting plugins/tools<br>• High willingness to pay for useful tools |
| **Good Topics to Answer** | • Obsidian + AI integration<br>• Vault as AI context source<br>• PKM workflow optimization<br>• MCP server for Obsidian |

---

### r/Rag

| Item | Content |
|------|---------|
| **Core Community Rules** | • RAG technical content only<br>• Research papers welcome<br>• Quality over quantity |
| **Community Nature** | • RAG specialist community<br>• Architecture discussion, paper reviews<br>• Values implementation experience sharing |
| **Good Topics to Answer** | • Hybrid RAG architecture (Graph + Vector)<br>• Personal context vs enterprise RAG<br>• Multi-hop retrieval<br>• Semantic cache implementation |

---

```

### resources/product.md

```markdown
# Product Information Template

> Replace this template with your actual product information

---

## Core Value

**"Your Product's Value Proposition"**
- Key feature 1
- Key feature 2
- Key feature 3

---

## Target Customer Pain Points

1. "Pain point 1"
2. "Pain point 2"
3. "Pain point 3"

---

## Competitor Comparison

| Competitor | Your Differentiation |
|------------|---------------------|
| **Competitor A** | How you're different |
| **Competitor B** | How you're different |
| **Competitor C** | How you're different |

---

## Roadmap

1. Phase 1: Current features
2. Phase 2: Upcoming features
3. Future considerations

---

## Reddit-Friendly Descriptions

### Product Description
> "Short, clear description of your product for Reddit audience"

### Pain Point Empathy
> "Relatable statement showing you understand the problem"

### Origin Story
> "How and why you built this (hackathon, personal need, etc.)"

### Competitor Comparisons
> "How to naturally compare your product to competitors"

---

## Basic Information

- **Website**: https://yourproduct.com
- **Company**: Your Company
- **Status**: Beta/Private Beta/Public

```