Skip to content

Latest commit

Β 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

XFactor - Autonomous X Growth Engine for Hermes Agent

XFactor Logo

XFactor is a complete, autonomous X (Twitter) growth system built for Hermes Agent. It handles your entire X growth loop - research, content creation, engagement, and analytics - without manual effort.

πŸš€ One-Command Install

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

Or via Hermes Skill Tap:

hermes skills tap add hamzaashergill/xfactor
hermes skills install xfactor

What It Does

Time Action Description
8:00 AM 🧡 Research + Thread Searches X for trending AI topics, generates a 6-tweet educational thread
10:00 AM πŸ’¬ Research + Post Searches X, posts a single value-add insight
2:00 PM ❀️ Engagement Run Likes 20-30 posts, follows 5 productive accounts, replies to mentions
6:00 PM πŸŒ™ Research + Evening Post Searches X, posts a hot take or reflection
Every 30m πŸ“Š Dashboard Refresh Fetches latest follower count, post metrics, engagement data

Features

  • Research-first content: Every post starts with X search to find what's trending in your niche
  • 3 posts/day: Thread + single + evening post with 2-hour gaps
  • Auto engagement: 20-30 likes per run on curated productive accounts
  • Smart follows: Max 5/day, only verified AI/tech builders
  • Mention reply automation: Every mention gets a thoughtful, topic-matched reply
  • Live dashboard: 5-view analytics at localhost:3000
  • Growth tracking: Follower chart, posting heatmap, engagement timeline

Requirements

  • Hermes Agent (for cron scheduling)
  • X Developer Account (free tier works)
  • macOS or Linux
  • xurl CLI (installed automatically)

Setup

1. Install xurl & Authenticate with X API

curl -fsSL https://raw.githubusercontent.com/xdevplatform/xurl/main/install.sh | bash

# Register your X API app
xurl auth apps add xfactor --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET

# Authenticate (opens browser)
xurl auth oauth2 --app xfactor YOUR_HANDLE
xurl auth default xfactor

# Verify
xurl whoami

Need credentials? Go to https://developer.x.com/en/portal/dashboard β†’ Create an app β†’ OAuth 2.0 β†’ Get Client ID + Client Secret. Set callback URI to http://localhost:8080/callback.

2. Start the Dashboard

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

3. Set Up Cron Jobs

In Hermes Agent, create these cron jobs:

Job Script Schedule
Morning Thread x-daily-poster.py morning 0 8 * * *
Afternoon Post x-daily-poster.py afternoon 0 10 * * *
Engagement x-engagement.py 0 14 * * *
Evening Post x-daily-poster.py evening 0 18 * * *
Dashboard Refresh x-dashboard-collector.py */30 * * * *

4. Test It

python3 ~/.hermes/scripts/x-daily-poster.py afternoon

Dashboard

XFactor Dashboard

Open http://localhost:3000 to see:

  • Dashboard: KPIs, follower growth chart, top post, post table, activity feed, growth calendar
  • Analytics: Total likes/RTs/engagement, posting heatmap, engagement breakdown
  • Content: Tracked posts, lifetime stats, recent content list with View links
  • Schedule: All cron jobs visualized on cards with descriptions
  • Engagement: Engagement count, timeline of all likes/follows/replies

Customizing for Your Niche

Edit these sections in ~/.hermes/skills/social-media/xfactor/scripts/:

Change search queries (what topics to research)

In x-daily-poster.py:

SEARCH_QUERIES = ["your niche topic", "related topic", "another topic"]

Change who to like/follow

In x-engagement.py:

PRODUCTIVE_ACCOUNTS = ["influencer1", "builder2", "expert3"]

Change content

In x-daily-poster.py, the content generation functions:

  • generate_morning_thread() - 6-tweet threads
  • generate_single_post() - afternoon singles
  • generate_evening_post() - evening posts
  • VALUABLE_REPLIES in x-engagement.py - reply templates

Change posting times

Adjust cron job schedules in Hermes to match your audience's timezone.

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                      XFactor Engine                         β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Content (3x)   β”‚  Engagement (1x)  β”‚  Analytics (30min)   β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ xurl search      β”‚ xurl like        β”‚ xurl whoami           β”‚
β”‚ xurl post        β”‚ xurl follow      β”‚ xurl user timeline    β”‚
β”‚ xurl reply       β”‚ xurl reply       β”‚ xurl mentions         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         ↕                    ↕                    ↕
    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
    β”‚              Hermes Agent (cron jobs)                β”‚
    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

File Structure

~/.hermes/
β”œβ”€β”€ skills/social-media/xfactor/
β”‚   β”œβ”€β”€ SKILL.md
β”‚   └── scripts/
β”‚       β”œβ”€β”€ x-daily-poster.py          # Research + post (3 modes)
β”‚       β”œβ”€β”€ x-engagement.py            # Likes, follows, replies
β”‚       └── x-dashboard-collector.py   # Data fetcher
β”œβ”€β”€ x-dashboard/
β”‚   └── index.html                     # Analytics dashboard
β”œβ”€β”€ scripts/                           # Symlinked for cron
β”‚   β”œβ”€β”€ x-daily-poster.py -> ..
β”‚   β”œβ”€β”€ x-engagement.py -> ..
β”‚   └── x-dashboard-collector.py -> ..
β”œβ”€β”€ x-posts.log                        # Post history
β”œβ”€β”€ x-engagement.log                   # Engagement history
└── x-research.log                     # Research findings

X API Limitations

βœ… Works ❌ Blocked
Post original content Reply to strangers
Reply to mentions Quote-post strangers
Reply in your threads
Like any post
Follow any account
Search & research

License

MIT - use freely, modify, share.

Built With

  • xurl - Official X API CLI
  • Hermes Agent - AI Agent framework
  • Python 3 - Scripting
  • Vanilla HTML/CSS/JS - Dashboard

About

XFactor - Autonomous X Growth Engine for Hermes Agent. Research-first posting, auto-engagement (likes/follows/replies), live analytics dashboard. Install with one command.

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages