| name | weekly-sentiment-summary |
| description | Weekly sentiment summary of your product's social mentions with week-over-week comparison using Octolens. Produces a markdown report with sentiment score, highlights, lowlights, notable patterns, and competitor context. Use when the user asks for a weekly sentiment report, weekly social summary, or "how did mentions look this week".
|
Weekly Sentiment Summary
Bigger-picture view for growth, product, and devex teams. Typically run Monday morning covering the prior week.
Uses the Octolens MCP server.
Workflow
Step 1: Determine date ranges
- This week: the most recent completed Mon–Sun (or the user-specified range)
- Prior week: the 7 days immediately before this week
Step 2: Fetch mentions for both weeks
- Call
list_mentions_context to get available keyword IDs and filter syntax.
- Identify your product's keywords (look for keywords matching your product name, domain, and any known brand handles).
Setup required: Configure your product's keyword identifiers in Octolens before using this skill.
- For each week, query
list_mentions with those keyword IDs, relevance=[0], and the week's date range. Set endDate to the day after Sunday to ensure full coverage.
- Set
includeAll: false and limit: 100.
- Paginate with
cursor until exhausted or 500 mentions per week.
Step 3: Aggregate both weeks
For each week, count:
pos, neu, neg by sentiment
total = pos + neu + neg
- Tag distribution (bug_report, user_feedback, competitor_mention, buy_intent, product_question, etc.)
Step 4: Compute sentiment scores
For each week:
sentiment_score = ((pos - neg) / total) * 100
Range: -100 to +100. Round to nearest integer.
Compute deltas:
Δ volume = this_week_total - prior_week_total
Δ score = this_week_score - prior_week_score
Use + prefix for positive deltas, - for negative. Show as absolute numbers, not percentages.
Step 5: Identify patterns by sentiment (this week only)
Before analyzing, filter out:
- Employee posts (replies from your company's team members to users)
- Spam / reseller posts (e.g. discounted subscription sellers, engagement bait)
- Cross-post duplicates (same content on Twitter and Bluesky — count once, prefer higher-reach version)
For each sentiment category (Positive, Neutral, Negative), identify 3-5 key themes or patterns from this week. Focus on:
- What are users saying? What themes emerge?
- Are there patterns across multiple mentions?
- What's strategically meaningful vs. noise?
Writing style: same as daily skill — lead with pattern/theme, include mention count, provide 1-2 representative links.
For Positive section only: After pattern summaries, include 1-3 direct quotes that work as testimonials. Pick the most specific, enthusiastic quotes that show clear value. Format as:
_"[exact quote]"_ — <url|@username or source>
Step 6: Identify notable patterns
Compare this week vs prior week. Look for:
- Recurring themes: topics/features/complaints that appeared multiple times this week
- Trending tags: tags with significant volume changes vs prior week
- New signals: topics that appeared this week but not last week
Max 5 patterns. Each should include a delta or comparison when possible (e.g. "AI agent mentions up from 3 → 12 this week").
Step 7: Product feedback patterns
Scan this week's mentions tagged user_feedback, bug_report, product_question for recurring product feedback themes. Focus on specific features, workflows, or pain points mentioned multiple times.
Look for:
- Feature requests that appeared multiple times
- Specific bugs or technical issues with volume
- Pricing/credit feedback patterns
- UI/UX feedback themes
Summarize in 2–4 bullets with mention counts. Example: "Feature requests for BYOK on free plan (5 mentions)" or "UI lag complaints when long threads open (3 mentions)".
Step 8: Write markdown report and create PR
- Format the report as a markdown file (~500 words max) using the template below.
- Save it to
reports/weekly_sentiment_analysis/weekly_sentiment_report_<end_date>.md where <end_date> is the Sunday of the covered week in YYYY-MM-DD format.
- Create a new branch, commit the report, push, and open a PR.
Markdown template:
# Weekly Sentiment Summary — <start_date> → <end_date>
**<total>** mentions (**<Δ>** vs last week) | 🟢 <pos> · ⚪ <neu> · 🔴 <neg> | Score: **<score>** (**<Δ>**)
## Positive
- <pattern summary with count> — [link](url), [link](url)
- <pattern summary with count> — [link](url)
...
### Testimonials
> "<exact quote>" — [@username](url)
> "<exact quote>" — [@username](url)
## Neutral
- <pattern summary with count> — [link](url), [link](url)
- <pattern summary with count> — [link](url)
...
## Negative
- <pattern summary with count> — [link](url), [link](url)
- <pattern summary with count> — [link](url)
...
## Notable Patterns
- <pattern with week-over-week Δ>
- <pattern with week-over-week Δ>
...
## Product Feedback Patterns
- <specific product feedback theme with count>
- <specific product feedback theme with count>
...
Omit any section that has no meaningful content.
Edge Cases
- Low volume week (<50 mentions): Still produce the report but note the low volume. Reduce highlight/lowlight counts proportionally.
- First run (no prior week data): Skip deltas and comparisons — just report this week's absolute numbers and note that week-over-week comparison will be available next week.
- Non-English mentions: Include if noteworthy, with language/region context in the takeaway.