Claw Shop
Back to marketplace
๐Ÿ“ˆ

Viralevo

Skill

Self-evolving viral content trend advisor. Monitors 11 platforms, predicts what to post and when, and improves its own accuracy every week automatically.

v0.1.0Mar 10, 2026
About

ViralEvo โ€” Viral Content Trend Advisor

Version: v0.6.4 | Languages: English / ไธญๆ–‡


่ฏญ่จ€่ฏดๆ˜Ž / Language Support

ๆœฌ Skill ๅฎŒๆ•ดๆ”ฏๆŒไธญๆ–‡ๆ“ไฝœใ€‚ๅฎ‰่ฃ…ๅฎŒๆˆๅŽ๏ผŒไฝ ๅฏไปฅ๏ผš

  • ็”จไธญๆ–‡ไธŽ Agent ๅฏน่ฏ๏ผˆ"ไปŠๅคฉ่ฏฅๅ‘ไป€ไนˆๅ†…ๅฎน๏ผŸ"๏ผ‰
  • ๆŽฅๆ”ถไธญๆ–‡็‰ˆๆฏๆ—ฅๆŠฅๅ‘Š
  • ็”จไธญๆ–‡ๅ…ณ้”ฎ่ฏ็›‘ๆŽงไธญๆ–‡ๅนณๅฐๅ†…ๅฎน
  • ๅœจๅผ•ๅฏผ่ฎพ็ฝฎๆ—ถ้€‰ๆ‹ฉ็•Œ้ข่ฏญ่จ€

This skill fully supports both English and Chinese. During onboarding, the agent will ask which language you prefer.


What This Skill Does

ViralEvo monitors content platforms, scores trending topics using a weighted formula, predicts lifecycle windows, and automatically adjusts its own prediction weights every week based on how accurate it was.

Three core advantages over manual research:

  1. Catches trends 12โ€“48h early โ€” monitors signal velocity across 11 platforms simultaneously
  2. Learns from your results โ€” when you report your post outcomes, those signals feed back into the model
  3. Self-corrects weekly โ€” every Monday the system reviews its prediction errors and updates its weights automatically

Quick Start

After installation, add your Tavily API key:

echo "TAVILY_API_KEY=tvly-xxxx" >> ~/.openclaw/workspace/.env

Then tell your agent:

"Start ViralEvo setup"
โ€” or in Chinese โ€”
"ๅผ€ๅง‹่ถ‹ๅŠฟ้›ท่พพ่ฎพ็ฝฎ"

Or run onboarding directly:

node {baseDir}/scripts/onboarding.js

Natural Language Triggers

When the user reports post results (e.g. "got 80k views", "ๆ•ˆๆžœๅพˆๅฅฝ"), the agent should:

  1. Search for the matching topic: python3 {baseDir}/scripts/feedback.py --search "<keyword>"
  2. Confirm the match with the user
  3. Log the result: python3 {baseDir}/scripts/feedback.py --topic-id <id> --platform <platform> --views <n>

When the user says any of the following, the agent should run collect โ†’ report:

  • "What should I post today?" / "ไปŠๅคฉ่ฏฅๅ‘ไป€ไนˆ๏ผŸ"
  • "Any trends?" / "ๆœ‰ไป€ไนˆ่ถ‹ๅŠฟ๏ผŸ"
  • "Show me the trend report" / "็ป™ๆˆ‘็œ‹่ถ‹ๅŠฟๆŠฅๅ‘Š"
  • "What's trending in my niche?" / "ๆˆ‘็š„่ต›้“ๆœ‰ไป€ไนˆ็ƒญ็‚น๏ผŸ"

When the user says:

  • "Run ViralEvo" / "่ฟ่กŒ่ถ‹ๅŠฟ้›ท่พพ" โ†’ run collect then report
  • "Collect trends" / "้‡‡้›†่ถ‹ๅŠฟ" โ†’ run collect only
  • "Generate report" / "็”ŸๆˆๆŠฅๅ‘Š" โ†’ run report only
  • "Weekly review" / "ๅ‘จๅบฆๅค็›˜" โ†’ run weekly_review
  • "Show keywords" / "ๆŸฅ็œ‹ๅ…ณ้”ฎ่ฏ" โ†’ run keywords --show

Feedback Intake

When the user describes post results, always match to a recent topic, confirm before logging:

  • "The hair clips video got 80k views on TikTok" โ†’ match topic, log: views=80000, platform=tiktok
  • "้‚ฃไธชAIๆ–‡็ซ ๆ•ˆๆžœๅพˆๅฅฝ๏ผŒๅฐ็บขไนฆ5000ๆ”ถ่—" โ†’ ๅŒน้…่ฏ้ข˜๏ผŒ่ฎฐๅฝ•๏ผšsaves=5000, platform=xiaohongshu

Use the /trend feedback command or natural language โ€” both are accepted.


Available Commands

CommandAction
node {baseDir}/scripts/onboarding.jsFirst-time setup wizard
node {baseDir}/scripts/collect.jsFetch trend signals from all sources
python3 {baseDir}/scripts/report.pyGenerate and output today's report
python3 {baseDir}/scripts/verify.py --hours 24Verify yesterday's predictions
python3 {baseDir}/scripts/verify.py --hours 72Verify 72h-old predictions
python3 {baseDir}/scripts/weekly_review.pyRun self-evolution (Mondays recommended)
python3 {baseDir}/scripts/keywords.py --showView your keyword index
python3 {baseDir}/scripts/keywords.py --add "term"Add a keyword manually
python3 {baseDir}/scripts/keywords.py --remove "term"Remove a keyword
python3 {baseDir}/setup.pyCheck all system requirements
python3 {baseDir}/scripts/feedback.py --listList recent topics to log feedback for
python3 {baseDir}/scripts/feedback.py --search "keyword"Find a topic by keyword
python3 {baseDir}/scripts/feedback.py --topic-id <id> --platform tiktok --views 80000Log post performance
python3 {baseDir}/db/init_db.pyRe-initialize database (use if DB is corrupted)
python3 {baseDir}/scripts/status.pyQuick health check โ€” config, API key, DB, recent data

System Requirements

RequirementMinimumRole
Node.jsv18+Data collection, onboarding
Python3.10+Scoring, reports, self-evolution
OpenClawv2026.1+Agent runtime, scheduling
Tavily API KeyFree tierIndirect platform search

Tavily free tier = 1,000 calls/month. Single niche daily usage โ‰ˆ 60โ€“120/month.


Supported Platforms

PlatformMethodConfidence Cap
HackerNewsOfficial Algolia API1.00
Dev.toOfficial API1.00
Product HuntRSS1.00
RedditJSON API (public)0.90
YouTubeTavily search0.70
Twitter / XTavily search0.70
PinterestTavily search0.70
LinkedInTavily search0.70
TikTokTavily search0.65
InstagramTavily search0.65

Supported Niches

AI/Tech ยท E-commerce ยท Beauty/Skincare ยท Fitness/Health ยท Finance ยท Gaming ยท Fashion/Lifestyle ยท Education ยท Real Estate ยท Pets ยท Custom (11 niches)


Scoring Formula

Total Score =
  (Platform Signal Strength)  ร— W1  [default 0.25]
+ (Engagement Velocity)       ร— W2  [default 0.25]
+ (Cross-Platform Spread)     ร— W3  [default 0.20]
+ (Niche Relevance Score)     ร— W4  [default 0.15]
+ (Goal Alignment Score)      ร— W5  [default 0.15]

Constraints: W1+W2+W3+W4+W5 = 1.0 exactly
Each weight: floor=0.08, ceiling=0.45
Max change per weekly review: ยฑ0.05 (ยฑ0.10 after algorithm change detection)

Report Output Format

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
๐Ÿ”ฅ ViralEvo | AI/Tech | 2026-03-09 08:15
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿ”ด ACT NOW (Score > 80)
1. OpenClaw Security Issue โ€” 135k instances exposed
   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 93% | Confidence: 0.85
   ๐Ÿ“… Detected 14h ago | Source: hackernews
   โฐ Estimated window: ~42h remaining
   ๐ŸŽฏ Post: TODAY

๐ŸŸก PREPARE (Score 60โ€“80)
2. OpenAI Government Surveillance Controversy
   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘ 78% | Confidence: 0.74
   ๐Ÿ“… Detected 6h ago | Source: dev.to
   โฐ Estimated window: ~68h remaining
   ๐ŸŽฏ Post: Tomorrow morning

๐ŸŸข EVERGREEN (Score < 60)
3. MCP Protocol Enterprise Adoption
   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ 44% | Confidence: 0.79
   ๐Ÿ“… Steady growth โ€” no spike
   โฐ Relevant: 30d+
   ๐ŸŽฏ Post: Any time this week

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
๐Ÿ“Š Model Health
  Accuracy     : 58% (44 predictions)
  Sources      : 6/6 โœ…
  Tavily usage : 112 / 1,000 this month
  Keyword index: 1,203 terms
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

Scheduling (Cron Setup)

ViralEvo runs automatically via OpenClaw's cron system. After onboarding, add these four jobs to your OpenClaw cron config.

How to add cron jobs in OpenClaw:

Tell your agent:

"Add a cron job to run ViralEvo daily at 8am"

Or add manually to ~/.openclaw/openclaw.json:

{
  "cron": {
    "jobs": [
      {
        "id": "viralevo-collect-report",
        "schedule": "0 8 * * *",
        "commands": [
          "node ~/.openclaw/workspace/viralevo/scripts/collect.js",
          "python3 ~/.openclaw/workspace/viralevo/scripts/report.py"
        ]
      },
      {
        "id": "viralevo-verify-24h",
        "schedule": "5 8 * * *",
        "commands": ["python3 ~/.openclaw/workspace/viralevo/scripts/verify.py --hours 24"]
      },
      {
        "id": "viralevo-verify-72h",
        "schedule": "10 8 * * *",
        "commands": ["python3 ~/.openclaw/workspace/viralevo/scripts/verify.py --hours 72"]
      },
      {
        "id": "viralevo-weekly-review",
        "schedule": "0 8 * * 1",
        "commands": ["python3 ~/.openclaw/workspace/viralevo/scripts/weekly_review.py"]
      }
    ]
  }
}

See OpenClaw docs: https://docs.openclaw.ai/automation/cron-jobs


OpenClaw Config (Alternative API Key Setup)

Instead of using .env, you can configure your Tavily key via ~/.openclaw/openclaw.json:

{
  "skills": {
    "entries": {
      "viralevo": {
        "enabled": true,
        "apiKey": "tvly-your-key-here"
      }
    }
  }
}

Self-Evolution Loop

Daily verification (5 min and 65 min after your report time): re-fetches topics predicted 24h ago, compares predicted lifecycle vs actual activity, records error.

Weekly review (every Monday at your report time):

  1. Aggregates all predictions from past 7 days
  2. Calculates accuracy per platform, per topic type
  3. Identifies top 3 sources of systematic error
  4. Proposes weight adjustments (max ยฑ0.05 per weight)
  5. Applies new weights to config.json
  6. Writes report to reports/YYYY-MM-DD_weekly.md
  7. Auto-rolls back if accuracy drops for 2 consecutive weeks

Accuracy Expectations

PeriodExpected Accuracy
Week 1โ€“230โ€“40% (cold start)
Month 255โ€“65%
Month 3+65โ€“75%
Month 6+75%+

Accuracy = prediction within ยฑ20% of actual topic lifecycle.


Data Location

~/.openclaw/workspace/viralevo/
โ”œโ”€โ”€ config.json              โ† niche, weights, schedule
โ”œโ”€โ”€ user_profile.json        โ† onboarding answers, language
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ trends.db            โ† SQLite database
โ”‚   โ””โ”€โ”€ backups/             โ† daily snapshots, 7-day retention
โ”œโ”€โ”€ reports/                 โ† daily + weekly markdown reports
โ””โ”€โ”€ logs/
    โ””โ”€โ”€ execution.log

Privacy

All data is stored locally on your machine. The skill makes outbound network requests only to fetch public trend signals:

  • HackerNews, Dev.to, Product Hunt, Reddit: public APIs, no auth required
  • Tavily API: receives only search query strings โ€” no personal data transmitted

โš ๏ธ Disclaimers

ViralEvo provides probabilistic estimates based on publicly available signals. It does not guarantee specific outcomes in views, impressions, followers, or revenue. All predictions are directional guidance โ€” not the sole basis for business decisions. Platform APIs change without notice.


Uninstall

# Step 1: Remove skill from OpenClaw
openclaw skills remove viralevo

# Step 2: Delete local data (optional)
rm -rf ~/.openclaw/workspace/viralevo/

# Step 3: Verify
openclaw skills list

If you reinstall later without deleting Step 2, ViralEvo will resume from your existing data.


Troubleshooting

SymptomFix
"Not configured"Run node {baseDir}/scripts/onboarding.js
"TAVILY_API_KEY not set"Add key to ~/.openclaw/workspace/.env
No topics in reportRun node {baseDir}/scripts/collect.js first
System checkRun python3 {baseDir}/setup.py
Accuracy droppingRun python3 {baseDir}/scripts/weekly_review.py manually
Quick diagnosisRun python3 {baseDir}/scripts/status.py
Free
Creator
Published Mar 10, 2026
Install
clawhub install viralevo