generalizingai

xfactor

"Use when the user wants to grow their X account with AI-powered content, engagement, and analytics. Full X growth engine: research-first posting, automated likes/follows, and live dashboard."

generalizingai 6 Updated 3mo ago

Resources

7
GitHub

Install

npx skillscat add generalizingai/xfactorforhermes

Install via the SkillsCat registry.

SKILL.md

XFactor - X Growth Engine

XFactor Logo

XFactor is a complete autonomous X (Twitter) growth engine. It posts research-driven content, engages with your niche, and provides a live analytics dashboard - all automated through Hermes Agent.

How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                      XFactor Engine                         โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  Content (3x)   โ”‚  Engagement (1x)  โ”‚  Analytics (every 30m)โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ 8AM Research X  โ”‚ Like 20-30 posts  โ”‚ Fetch followers       โ”‚
โ”‚   โ†’ Write threadโ”‚ Reply to mentions โ”‚ Track post metrics    โ”‚
โ”‚ 10AM Research X โ”‚ Reply in threads  โ”‚ Log engagement        โ”‚
โ”‚   โ†’ Write post  โ”‚ Follow 5 max/day  โ”‚ Update dashboard      โ”‚
โ”‚ 6PM Research X  โ”‚ (productive only) โ”‚                       โ”‚
โ”‚   โ†’ Write post  โ”‚                   โ”‚                       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Installation

One-Command Install

curl -fsSL https://raw.githubusercontent.com/hamzaashergill/xfactor/main/setup.sh | bash

Via Hermes Skill Tap

hermes skills tap add hamzaashergill/xfactor
hermes skills install xfactor

Manual Setup

  1. Install xurl:

    curl -fsSL https://raw.githubusercontent.com/xdevplatform/xurl/main/install.sh | bash
  2. Set up X API auth:

    xurl auth apps add xfactor --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET
    xurl auth oauth2 --app xfactor YOUR_HANDLE
    xurl auth default xfactor
  3. Install skill files into:

    ~/.hermes/skills/social-media/xfactor/
    โ”œโ”€โ”€ SKILL.md
    โ””โ”€โ”€ scripts/
        โ”œโ”€โ”€ x-daily-poster.py
        โ”œโ”€โ”€ x-engagement.py
        โ””โ”€โ”€ x-dashboard-collector.py
  4. Dashboard:

    ~/.hermes/x-dashboard/index.html

Configuration

X API Authentication

XFactor uses the official X API via the xurl CLI. You need:

  1. X Developer Account: https://developer.x.com/en/portal/dashboard
  2. OAuth 2.0 credentials: Client ID + Client Secret
  3. App setup: Callback URI = http://localhost:8080/callback, app type = "Web App, Automated App or Bot"

Complete auth:

xurl auth apps add xfactor --client-id YOUR_ID --client-secret YOUR_SECRET
xurl auth oauth2 --app xfactor YOUR_HANDLE
xurl auth default xfactor
xurl whoami  # Verify

Content Customization

Edit ~/.hermes/skills/social-media/xfactor/scripts/x-daily-poster.py:

Section What to Change
SEARCH_QUERIES Topics to research before posting (line ~70)
Thread content The 6 blocks in generate_morning_thread()
Single posts The lists in generate_single_post() and generate_evening_post()
Reply templates The REPLIES list in engagement script
Target accounts The PRODUCTIVE_ACCOUNTS list for likes/follows

Cron Job Setup

Create these cron jobs in Hermes:

# Morning thread (8 AM your time)
schedule: "0 8 * * *"
script: x-daily-poster.py morning

# Afternoon post (10 AM - 2h gap)
schedule: "0 10 * * *"
script: x-daily-poster.py afternoon

# Engagement run (2 PM)
schedule: "0 14 * * *"
script: x-engagement.py

# Evening post (6 PM)
schedule: "0 18 * * *"
script: x-daily-poster.py evening

# Dashboard refresh (every 30 min)
schedule: "*/30 * * * *"
script: x-dashboard-collector.py

Usage

Starting the Dashboard

cd ~/.hermes/x-dashboard && python3 -m http.server 3000

Then open http://localhost:3000

Manual Posting

# Post a research-driven thread
python3 ~/.hermes/scripts/x-daily-poster.py morning

# Post a single value-add post
python3 ~/.hermes/scripts/x-daily-poster.py afternoon

# Post an evening hot take
python3 ~/.hermes/scripts/x-daily-poster.py evening

Manual Engagement Run

python3 ~/.hermes/scripts/x-engagement.py

Check Dashboard Data

python3 ~/.hermes/scripts/x-dashboard-collector.py

What XFactor Does Well

Feature Status Detail
Research-driven posting โœ… Searches X for trending topics before writing
3 posts/day โœ… Thread (8AM) + Single (10AM) + Evening (6PM)
Auto likes (20-30/run) โœ… Likes from curated productive accounts
Selective follows (max 5) โœ… Only real AI/tech builders
Reply to mentions โœ… Every mention gets a thoughtful response
Reply in threads โœ… Every thread reply gets a response
Live analytics dashboard โœ… 5 views: Dashboard, Analytics, Content, Schedule, Engagement
Post history tracking โœ… View Post links on every post
Follower growth chart โœ… Live-updating chart
Posting heatmap โœ… 28-day activity heatmap
Scheduling overview โœ… Shows all cron jobs and timings

Limitations (X API Restrictions)

Feature Status Why
Reply to strangers โŒ X API blocks replying to accounts that haven't engaged with you
Quote-post strangers โŒ Same X API restriction
Auto-DM new followers โŒ X API requires opt-in for DMs

Architecture

xurl CLI (X API) โ†โ†’ Hermes Agent โ†โ†’ Scripts โ†โ†’ Dashboard
                      โ†•
                 Cron Jobs (schedule)
  • xurl: Official X CLI for API calls (post, reply, like, follow, search)
  • Hermes Agent: Runs scripts, manages cron, loads skill
  • Scripts: Python that orchestrates research โ†’ generate โ†’ post cycle
  • Dashboard: Static HTML/JS served locally, fetches JSON data files

Customization for Your Niche

XFactor is niche-agnostic. To adapt for a different niche:

  1. Change search queries in x-daily-poster.py:

    SEARCH_QUERIES = ["your niche topic 1", "topic 2", "topic 3"]
  2. Change target accounts in x-engagement.py:

    PRODUCTIVE_ACCOUNTS = ["handle1", "handle2", "handle3"]
  3. Rewrite thread content in generate_morning_thread() for your niche's pain points

  4. Adjust posting times via cron jobs to match your audience's active hours

Troubleshooting

Problem Fix
xurl: command not found Add ~/.local/bin to PATH or reinstall xurl
OAuth errors Re-run xurl auth oauth2 --app xfactor YOUR_HANDLE
Dashboard shows "No data" Run python3 ~/.hermes/scripts/x-dashboard-collector.py
Scripts fail in cron Scripts auto-set PATH to include ~/.local/bin
Rate limited X API free tier has limits; wait 15 min between runs
Posts not appearing Check ~/.hermes/x-posts.log for errors

Files Reference

File Purpose
~/.hermes/skills/social-media/xfactor/SKILL.md This skill definition
~/.hermes/skills/social-media/xfactor/scripts/x-daily-poster.py Research + post (morning/afternoon/evening)
~/.hermes/skills/social-media/xfactor/scripts/x-engagement.py Likes, follows, mention replies
~/.hermes/skills/social-media/xfactor/scripts/x-dashboard-collector.py Data fetcher for dashboard
~/.hermes/x-dashboard/index.html XFactor analytics dashboard
~/.hermes/x-posts.log Log of all posts
~/.hermes/x-engagement.log Log of all engagement actions
~/.hermes/x-research.log Log of research findings
~/.hermes/x-dashboard/*.json Dashboard data files
~/.xurl X API credentials (DO NOT SHARE)

Updates

To update XFactor:

curl -fsSL https://raw.githubusercontent.com/hamzaashergill/xfactor/main/setup.sh | bash

Or via Hermes tap:

hermes skills tap sync hamzaashergill/xfactor
hermes skills install xfactor --force