0xf69/viralevo/SKILL.md
Self-evolving viral content trend advisor. Monitors 11 platforms, predicts what to post and when, and improves its own accuracy every week automatically.
npx skillsauth add openclaw/skills viralevoInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Version: v0.6.4 | Languages: English / 中文
本 Skill 完整支持中文操作。安装完成后,你可以:
This skill fully supports both English and Chinese. During onboarding, the agent will ask which language you prefer.
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:
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
When the user reports post results (e.g. "got 80k views", "效果很好"), the agent should:
python3 {baseDir}/scripts/feedback.py --search "<keyword>"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:
When the user says:
When the user describes post results, always match to a recent topic, confirm before logging:
Use the /trend feedback command or natural language — both are accepted.
| Command | Action |
|---|---|
| node {baseDir}/scripts/onboarding.js | First-time setup wizard |
| node {baseDir}/scripts/collect.js | Fetch trend signals from all sources |
| python3 {baseDir}/scripts/report.py | Generate and output today's report |
| python3 {baseDir}/scripts/verify.py --hours 24 | Verify yesterday's predictions |
| python3 {baseDir}/scripts/verify.py --hours 72 | Verify 72h-old predictions |
| python3 {baseDir}/scripts/weekly_review.py | Run self-evolution (Mondays recommended) |
| python3 {baseDir}/scripts/keywords.py --show | View 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.py | Check all system requirements |
| python3 {baseDir}/scripts/feedback.py --list | List 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 80000 | Log post performance |
| python3 {baseDir}/db/init_db.py | Re-initialize database (use if DB is corrupted) |
| python3 {baseDir}/scripts/status.py | Quick health check — config, API key, DB, recent data |
| Requirement | Minimum | Role | |---|---|---| | Node.js | v18+ | Data collection, onboarding | | Python | 3.10+ | Scoring, reports, self-evolution | | OpenClaw | v2026.1+ | Agent runtime, scheduling | | Tavily API Key | Free tier | Indirect platform search |
Tavily free tier = 1,000 calls/month. Single niche daily usage ≈ 60–120/month.
| Platform | Method | Confidence Cap | |---|---|---| | HackerNews | Official Algolia API | 1.00 | | Dev.to | Official API | 1.00 | | Product Hunt | RSS | 1.00 | | Reddit | JSON API (public) | 0.90 | | YouTube | Tavily search | 0.70 | | Twitter / X | Tavily search | 0.70 | | Pinterest | Tavily search | 0.70 | | LinkedIn | Tavily search | 0.70 | | TikTok | Tavily search | 0.65 | | Instagram | Tavily search | 0.65 |
AI/Tech · E-commerce · Beauty/Skincare · Fitness/Health · Finance · Gaming · Fashion/Lifestyle · Education · Real Estate · Pets · Custom (11 niches)
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)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔥 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
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
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
Instead of using .env, you can configure your Tavily key via ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"viralevo": {
"enabled": true,
"apiKey": "tvly-your-key-here"
}
}
}
}
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):
reports/YYYY-MM-DD_weekly.md| Period | Expected Accuracy | |---|---| | Week 1–2 | 30–40% (cold start) | | Month 2 | 55–65% | | Month 3+ | 65–75% | | Month 6+ | 75%+ |
Accuracy = prediction within ±20% of actual topic lifecycle.
~/.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
All data is stored locally on your machine. The skill makes outbound network requests only to fetch public trend signals:
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.
# 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.
| Symptom | Fix |
|---|---|
| "Not configured" | Run node {baseDir}/scripts/onboarding.js |
| "TAVILY_API_KEY not set" | Add key to ~/.openclaw/workspace/.env |
| No topics in report | Run node {baseDir}/scripts/collect.js first |
| System check | Run python3 {baseDir}/setup.py |
| Accuracy dropping | Run python3 {baseDir}/scripts/weekly_review.py manually |
| Quick diagnosis | Run python3 {baseDir}/scripts/status.py |
tools
Use when the user wants to connect to, test, or use the McDonalds service at mcp.mcd.cn, including checking authentication, probing MCP endpoints, listing tools, or calling McDonalds MCP tools through a reusable local CLI.
development
Web scraping platform — Twitter/X data, Vinted marketplace, and general web scraping API
development
SlowMist AI Agent Security Review — comprehensive security framework for skills, repositories, URLs, on-chain addresses, and products (Claude Code version)
data-ai
去除中文文本中的 AI 写作痕迹,使其读起来自然。基于维基百科 AI 写作特征指南,检测 24 种 AI 模式。触发词:humanizer-cn、去除 AI 痕迹、去除 AI 写作痕迹、中文文本人性化。