algo-social-virality
Model viral spread dynamics using SIR/SIS/SEIR compartmental models. Use this skill when the user needs to predict content spread patterns, estimate viral thresholds, or model information cascades in social networks — even if they say 'will this go viral', 'epidemic model for content', or 'spread prediction'.
pinned to #4e7f4f8updated last month
Ask your AI client: “install skills/algo-social-virality”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/algo-social-viralitymetahub onboarded this repo on the author's behalf.
If you own github.com/asgard-ai-platform/skills on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
225
Last commit
last month
Latest release
published
- #ai-agent
- #anthropic
- #claude
- #claude-agent-skills
- #claude-code
- #coding-agent
- #knowledge-base
- #mcp
- #methodology
- #open-source
- #prompt-engineering
- #skills
- #taiwan
Automated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.4e7f4f8· last month
Documentation
8 passed1 warningHomepage or repository declaredwarn
No homepage or repository declared.
Add a "homepage" or "repository" field to SKILL.md.
Description quality
46 words · 310 chars — "Model viral spread dynamics using SIR/SIS/SEIR compartmental models. Use this sk…"
README is present and substantial
33,936 chars · 20 sections · 3 code blocks
Tags / topics declared
13 total — ai-agent, anthropic, claude, claude-agent-skills, claude-code, coding-agent (+7)
README has usage / example sections
no labeled section but 3 code blocks document usage
Homepage / docs URL declared
https://vault.asgard-ai.com/skills/
Description is substantive
Description is 46 words.
Documentation present and substantive
Documentation present (SKILL.md, 605 words).
Documentation shows usage
Documentation includes 2 code examples.
Release history
1- releasecurrent4e7f4f8warnlast month
Contents
Viral Spread Models
Overview
Compartmental models (SIR, SIS, SEIR) model how content/information spreads through populations. Susceptible → Infected → Recovered mirrors unaware → sharing → stopped sharing. Key metric: R0 (basic reproduction number). Solves as ODEs in O(T × N) for T timesteps, N compartments.
When to Use
Trigger conditions:
- Modeling how content spreads through a social network
- Estimating whether a campaign will achieve viral threshold
- Analyzing post-hoc spread dynamics of viral events
When NOT to use:
- When predicting individual user behavior (use influence scoring)
- When measuring engagement metrics (use engagement rate calculator)
Algorithm
IRON LAW: Viral Spread Occurs ONLY When R0 > 1
R0 = transmission rate (β) / recovery rate (γ).
Below R0 = 1, content dies out regardless of initial seed size.
Above R0 = 1, exponential growth phase begins before saturation.
Design interventions (seeding, incentives) to push R0 above threshold.
Phase 1: Input Validation
Define: population size (N), initial seed size (I₀), transmission rate (β — probability of sharing upon exposure), recovery rate (γ — rate of losing interest). Gate: Parameters non-negative, β and γ estimated from historical data or assumed.
Phase 2: Core Algorithm
SIR Model: dS/dt = -βSI/N, dI/dt = βSI/N - γI, dR/dt = γI
- Initialize: S=N-I₀, I=I₀, R=0
- Iterate using Euler method or RK4 at discrete timesteps
- Track peak infected (maximum simultaneous sharers) and total ever-infected
SIS variant: No recovery to immune state — recovered become susceptible again (recurring content).
Phase 3: Verification
Check: S+I+R = N at all timesteps (conservation). Peak and final sizes plausible for given R0. Gate: Population conserved, dynamics consistent with R0.
Phase 4: Output
Return time series of compartments and summary metrics.
Output Format
{
"time_series": [{"t": 0, "S": 9900, "I": 100, "R": 0}],
"summary": {"R0": 2.5, "peak_infected": 3200, "peak_day": 12, "total_infected": 8500},
"metadata": {"model": "SIR", "beta": 0.5, "gamma": 0.2, "population": 10000}
}
Examples
Sample I/O
Input: N=10000, I₀=10, β=0.3, γ=0.1 (R0=3.0) Expected: Exponential growth, peak ~4000 at day ~15, total infected ~9500
Edge Cases
| Input | Expected | Why |
|---|---|---|
| R0 = 0.8 | Rapid decay | Below threshold, dies out |
| I₀ = 1 | Slower start but same eventual dynamics | Single seed takes longer to ignite |
| β = γ (R0=1) | Linear, no growth | Critical threshold, endemic equilibrium |
Gotchas
- Homogeneous mixing assumption: SIR assumes everyone interacts equally. Real networks have hubs, clusters, and weak ties. Use network-based models for realistic spread.
- Parameter estimation: β and γ are hard to estimate for social content. Use early spread data to fit parameters, then project.
- Content ≠ disease: Unlike diseases, content sharing is voluntary and influenced by content quality, platform algorithms, and trends. Models give rough dynamics, not precise predictions.
- Platform algorithms: Social media algorithms amplify or suppress content. The "transmission rate" is partly determined by the platform, not just user behavior.
- Temporal dynamics: Content virality often has a much shorter lifecycle than disease (hours-days vs weeks-months). Adjust timescales accordingly.
References
- For network-based epidemic models, see
references/network-sir.md - For parameter estimation from early data, see
references/parameter-fitting.md
Reviews
No reviews yet. Be the first.
Related
Verification Before Completion
Evidence before assertions, always
Writing Plans
Turn specs into phased implementation plans
Test-Driven Development
Red → green → refactor discipline for any feature or bugfix
mh install skills/algo-social-virality