关于 reddit-sentiment-analysis
用于分析 Reddit 上产品、品牌、游戏等主题讨论的工作流技能。它指导 Agent 收集帖子和评论、分类情绪、提取讨论方面,并生成支持产品与市场决策的证据型报告。
主要功能
- 01收集热门帖和高赞帖及评论
- 02分类正面、负面、中性和愿望倾向
- 03提取产品方面与反复出现的主题
- 04跨时间段或产品比较情绪
- 05生成含引文和计数的结构化报告
适用场景
- 01评估用户对产品或游戏的反应
- 02发现常见问题和功能诉求
- 03比较社区对竞品的看法
- 04跟踪主题情绪随时间的变化
MCP 相关
需要配置 Reddit MCP 服务,并使用其工具获取 subreddit 帖子及包含评论的帖子内容。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ natea/ fitfinder --skill reddit-sentiment-analysis安装后在 Claude Code 中输入/reddit-sentiment-analysis确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
DEMO-RESULTS.mdexamples.mdREADME.md详细介绍
Reddit 情感分析技能
目的
此技能可对 Reddit 讨论进行系统的情感分析,以了解社区对产品、品牌、游戏、公司或任何主题的看法、偏好和需求。它会提供可执行的洞察,帮助了解人们喜欢什么、批评什么,以及希望改进什么。
何时使用此技能
在以下情况下使用此技能:
- 分析社区对游戏、产品或品牌的情感
- 了解用户欣赏哪些功能/方面
- 找出常见的投诉和痛点
- 发现用户希望进行哪些改进或变更
- 从社区讨论中获取竞争情报
- 跟踪某个主题随时间推移的情感趋势
- 根据用户反馈制定数据驱动的产品决策
先决条件
此技能要求在 .mcp.json 中配置 Reddit MCP 服务:
{
"mcpServers": {
"reddit": {
"command": "uvx",
"args": ["mcp-server-reddit"]
}
}
}
核心工作流
阶段 1:确定目标并收集数据
1. 定义分析目标
- 确定要分析的产品/品牌/游戏/主题
- 确定相关的 subreddit(例如,r/gaming、r/Games、特定产品的 subreddit)
- 设置时间范围(近期帖子、当月/当年的热门帖子)
- 定义范围(要分析多少帖子/评论)
2. 收集 Reddit 数据
- 使用
mcp__reddit__get_subreddit_hot_posts获取热门讨论 - 使用
mcp__reddit__get_subreddit_top_posts获取高评分内容 - 使用
mcp__reddit__get_post_content获取详细帖子和评论 - 至少收集 10-20 篇帖子,确保分析有意义
- 同时纳入帖子和顶级评论
阶段 2:情感分类
3. 分析每条讨论
对每篇帖子和每条评论,将情感分类为:
积极信号:
- 明确赞扬:“我喜欢……”“太棒了”“最好”“太精彩了”
- 推荐:“强烈推荐”“必试”“值得一试”
- 积极情绪:“有趣”“令人愉快”“令人满足”“让人上瘾”
- 问题解决:“终于修好了”“现在运行得很好”
- 对比式赞扬:“比 X 好”“优于……”
消极信号:
- 明确批评:“讨厌”“糟糕”“最差”“很差”
- 失望:“令人失望”“本以为会更好”“被过度炒作”
- 问题:“坏了”“无法运行”“漏洞百出”“崩溃”
- 沮丧:“恼人”“令人沮丧”“荒谬”
- 后悔:“浪费钱”“不值得”“已退款”
中性信号:
- 不带情绪的提问
- 事实陈述
- 技术讨论
- 信息请求
愿望/需求信号:
- “我希望……”“他们应该……”“如果……就更好了”
- “需要更多……”“缺少……”“没有……”
- “希望他们能添加……”“正在等待……”
- 功能请求和建议
阶段 3:实体和方面提取
4. 识别提及的具体方面
提取正在讨论的具体内容:
- 功能:游戏机制、UI/UX、特定能力
- 性能:速度、稳定性、优化、漏洞
- 内容:故事、关卡、多样性、深度
- 价值:定价、变现、成本效益
- 支持:客户服务、更新、社区互动
- 比较:与竞争对手、之前版本的比较
阶段 4:汇总和总结
5. 创建结构化摘要
按以下格式生成输出:
# Sentiment Analysis: [Topic/Product Name]
**Analysis Period**: [Date Range]
**Subreddits Analyzed**: [List]
**Posts Analyzed**: [Number]
**Comments Analyzed**: [Number]
## Overall Sentiment Score
- Positive: X%
- Negative: Y%
- Neutral: Z%
- Mixed: W%
## What People LIKE
1. **[Aspect/Feature Name]** (mentioned X times, Y% positive)
- Representative quotes: "[quote 1]", "[quote 2]"
- Common themes: [summary]
2. **[Another Aspect]** (...)
- Representative quotes: ...
- Common themes: ...
[Continue for top 5-7 positive aspects]
## What People DISLIKE
1. **[Problem/Issue Name]** (mentioned X times, Y% negative)
- Representative quotes: "[quote 1]", "[quote 2]"
- Common complaints: [summary]
- Severity: [Low/Medium/High based on frequency and intensity]
2. **[Another Issue]** (...)
- Representative quotes: ...
- Common complaints: ...
- Severity: ...
[Continue for top 5-7 negative aspects]
## What People WISH FOR
1. **[Feature/Improvement Request]** (mentioned X times)
- Representative quotes: "[quote 1]", "[quote 2]"
- Common requests: [summary]
- Urgency: [Low/Medium/High based on frequency and intensity]
2. **[Another Request]** (...)
- Representative quotes: ...
- Common requests: ...
- Urgency: ...
[Continue for top 5-7 requests]
## Key Insights
- [Insight 1: Major finding about sentiment patterns]
- [Insight 2: Surprising or notable trend]
- [Insight 3: Competitive advantages/disadvantages]
- [Insight 4: Recommended actions based on sentiment]
## Trending Topics
- [Topic 1]: [Brief description of emerging discussion]
- [Topic 2]: [Brief description]
## Competitor Mentions
- [Competitor 1]: [Sentiment when mentioned, context]
- [Competitor 2]: [Sentiment when mentioned, context]
实施流程
步骤 1:创建待办事项列表
TodoWrite([
"Identify target subreddits for analysis",
"Collect hot posts from subreddit(s)",
"Collect top posts from time period",
"Fetch detailed post content and comments",
"Classify sentiment for each post/comment",
"Extract aspects and entities mentioned",
"Aggregate positive sentiment patterns",
"Aggregate negative sentiment patterns",
"Aggregate wish/desire patterns",
"Calculate sentiment percentages",
"Generate structured summary report"
])
步骤 2:并行收集数据
重要:在一条消息中批量执行所有 Reddit API 调用:
[Single Message - All Data Collection]:
mcp__reddit__get_subreddit_hot_posts({subreddit_name: "gaming", limit: 20})
mcp__reddit__get_subreddit_top_posts({subreddit_name: "gaming", time: "month", limit: 20})
mcp__reddit__get_subreddit_hot_posts({subreddit_name: "Games", limit: 20})
mcp__reddit__get_subreddit_top_posts({subreddit_name: "Games", time: "month", limit: 20})
步骤 3:并行分析评论
针对每个相关的帖子 ID,并行获取详细信息:
[Single Message - All Post Details]:
mcp__reddit__get_post_content({post_id: "abc123", comment_depth: 3, comment_limit: 20})
mcp__reddit__get_post_content({post_id: "def456", comment_depth: 3, comment_limit: 20})
mcp__reddit__get_post_content({post_id: "ghi789", comment_depth: 3, comment_limit: 20})
// ... up to 10-20 posts in parallel
步骤 4:情感分析引擎
针对每段内容(帖子标题、帖子正文、评论):
-
对文本进行分词和规范化
- 转换为小写
- 移除 URL 和特殊字符
- 识别关键短语
-
应用情感评分
function analyzeSentiment(text) { const positive_score = countMatches(text, POSITIVE_KEYWORDS); const negative_score = countMatches(text, NEGATIVE_KEYWORDS); const wish_score = countMatches(text, WISH_KEYWORDS); return { sentiment: determineOverallSentiment(positive_score, negative_score), confidence: calculateConfidence(positive_score, negative_score), wishes: wish_score > 0, aspects: extractAspects(text) }; } -
提取上下文和方面
- 正在讨论什么名词/功能?
- 用哪些形容词描述它?
- 哪些动词表示行动/愿望?
步骤 5:生成报告
将结构化摘要保存到 /docs/reddit-sentiment-analysis-[topic]-[date].md
配置选项
基础分析(快速)
- 子版块:1-2 个
- 帖子:10-20 篇
- 每篇帖子的评论:10-15 条
- 时间:约 5 分钟
全面分析(深入)
- 子版块:3-5 个
- 帖子:40-60 篇
- 每篇帖子的评论:20-30 条
- 时间:约 15 分钟
竞品分析(广泛)
- 子版块:5-10 个(包括竞品子版块)
- 帖子:60-100 篇
- 每篇帖子的评论:15-20 条
- 时间:约 20 分钟
使用示例
示例 1:游戏情绪分析
User: "Analyze Reddit sentiment about Elden Ring"
Agent workflow:
1. Create todos for analysis pipeline
2. Identify subreddits: r/Eldenring, r/gaming, r/Games
3. Collect hot + top posts (parallel): 60 posts total
4. Fetch post details (parallel): 30 most relevant posts
5. Analyze ~500 comments for sentiment
6. Extract aspects: combat, difficulty, exploration, story, performance
7. Generate summary showing:
- LIKES: Combat system (95%), exploration (92%), art direction (88%)
- DISLIKES: Performance issues (67%), unclear quest objectives (54%)
- WISHES: Better quest tracking, PC optimization, more checkpoints
8. Save report to docs/reddit-sentiment-analysis-eldenring-2025-01-26.md
示例 2:产品品牌分析
User: "What do people think about Tesla on Reddit?"
Agent workflow:
1. Create todos for brand analysis
2. Identify subreddits: r/teslamotors, r/electricvehicles, r/cars
3. Collect discussions mentioning "Tesla" (100 posts)
4. Analyze sentiment across aspects: quality, service, pricing, features
5. Generate brand perception summary:
- LIKES: Autopilot, acceleration, software updates
- DISLIKES: Build quality, service wait times, pricing
- WISHES: Better quality control, more service centers, lower prices
- Competitive position vs. other EVs
最佳实践
应该:
- ✅ 分析多个子版块,获得平衡的视角
- ✅ 同时包含热门和高赞帖子,兼顾时效性和质量
- ✅ 阅读评论,而不只是帖子标题(评论蕴含丰富的情绪信息)
- ✅ 提供直接引语作为证据
- ✅ 用百分比和数量量化情绪
- ✅ 按方面/功能整理,而不只是分为正面/负面
- ✅ 将报告保存到
/docs/目录 - ✅ 在单条消息中批量发送所有 API 调用
不应该:
- ❌ 只分析一个子版块(存在偏差风险)
- ❌ 忽略评论中的情绪(仅分析帖子是不够的)
- ❌ 在没有引语证据的情况下下结论
- ❌ 在一次分析中混合多个产品(容易造成混淆)
- ❌ 将报告保存到根目录
- ❌ 按顺序逐个发送 API 调用(应使用并行批处理)
高级功能
情绪的时间追踪
比较不同时间段的情绪:
[Parallel Time-Based Analysis]:
get_subreddit_top_posts({time: "week"})
get_subreddit_top_posts({time: "month"})
get_subreddit_top_posts({time: "year"})
生成展示情绪变化趋势的报告。
竞品基准分析
同时分析多个产品:
[Parallel Competitive Analysis]:
// Collect data for Product A
// Collect data for Product B
// Collect data for Product C
生成情绪对比矩阵。
特定方面的深入分析
聚焦于所有提及中的某项功能/方面:
// Filter all content mentioning "multiplayer" or "co-op"
// Analyze sentiment specifically about that aspect
// Generate aspect-focused report
输出文件
所有分析报告均保存到:
/docs/reddit-sentiment-analysis-[topic]-[date].md- 主报告/docs/reddit-raw-data-[topic]-[date].json- 原始数据(可选)
与其他技能集成
此技能适用于:
- competitive-analysis:使用情绪数据进行市场定位
- product-roadmap:根据用户期望确定功能优先级
- market-research:结合其他数据源
- trend-analysis:追踪情绪随时间的变化
故障排除
问题:找到的帖子不够多
- 解决方案:扩展到更多子版块,扩大时间范围
问题:情绪过于两极化(全部正面或负面)
- 解决方案:检查子版块的偏向(粉丝子版块与综合子版块)
问题:分析中缺少关键方面
- 解决方案:增加评论深度和数量上限
问题:分析耗时过长
- 解决方案:减少帖子数量,只关注高赞帖子
总结
此技能通过以下方式,将非结构化的 Reddit 讨论转化为可采取行动的情绪洞察:
- 系统地收集相关帖子和评论
- 结合上下文和证据对情绪进行分类
- 提取讨论中的具体方面和功能
- 将各种模式汇总为结构化摘要
- 通过直接引语提供量化洞察
- 找出用户喜欢、不喜欢和期待的内容
- 交付可用于制定产品/业务决策的报告
输出内容将全面、基于证据地呈现社区情绪,助力产品开发、营销策略和竞争定位。