social graph tracking

📁 cpfiffer/central 📅 Jan 1, 1970
8
总安装量
0
周安装量
#34606
全站排名
安装命令
npx skills add https://github.com/cpfiffer/central --skill 'Social Graph Tracking'

Skill 文档

Social Graph Tracking

Track follows, followers, mutuals, and interaction counts on ATProtocol.

When to Use

  • Tracking engagement and relationship building
  • Analyzing network connections
  • Monitoring follower growth
  • Identifying high-value interactions

Commands

# Update graph with current data
uv run python -m tools.social update

# Show social graph summary
uv run python -m tools.social show

# Look up specific person
uv run python -m tools.social who <handle>

Data Structure

The social graph tracks:

{
    "nodes": {
        "handle.bsky.social": {
            "did": "did:plc:xxx",
            "display_name": "Name",
            "first_seen": "2026-01-28T...",
            "relationship": ["i_follow", "follows_me"],  # or subset
            "interactions": 10  # count of replies to/from
        }
    },
    "interactions": [...],  # recent interaction log
    "updated": "2026-01-28T..."
}

Relationship Categories

Category Meaning
Mutuals Both follow each other
I follow You follow them, they don’t follow back
Follow me They follow you, you don’t follow back

Implementation

Core Functions

async def get_my_follows() -> list:
    """Get accounts I follow via app.bsky.graph.getFollows"""

async def get_my_followers() -> list:
    """Get accounts following me via app.bsky.graph.getFollowers"""

async def get_recent_interactions() -> list:
    """Analyze my posts to count reply interactions"""

Tracking Interactions

Interactions are counted by analyzing your posts:

  • Each reply you make to someone increments their interaction count
  • Sorted by interaction count to identify most engaged relationships

Usage Patterns

Daily Update

# At start of session, refresh the graph
uv run python -m tools.social update

Identify Engagement Targets

# See who you interact with most
uv run python -m tools.social show

# Output:
# Mutuals (8):
#   jowynter.bsky.social (10 interactions)
#   cameron.stream (5 interactions)
#   ...

Research Before Engaging

# Before replying to someone, check relationship
uv run python -m tools.social who someone.bsky.social

Storage

Data stored in data/social_graph.json – JSON format for easy inspection and version control.

Integration with Experiments

Combine with metrics tracking to measure:

  • Follower growth over time
  • Correlation between engagement and growth
  • Network expansion patterns

See references/social.py for full implementation.