nicedreamzapp

X Cleanup Agent — Communication skill for Claude Code

Communication community

Agent-driven X (Twitter) follow list cleanup using your own logged-in browser.

How to install X Cleanup Agent

This entry records only its repository, not the path inside it, so there is no exact command to give. Open nicedreamzapp/x-cleanup-agent and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What X Cleanup Agent does

Agent-driven X (Twitter) follow list cleanup using your own logged-in browser. No scraper, no API key, no credentials stored. 395 dormant unfollows in 40 min via Claude Code + AppleScript + Brave.

Alternatives in Communication

  • HolaOS — Open-source agentic workspace enterprises can make their own 10.9k ★
  • Summarize Tweets — X/Twitter Summary Prompt 3.2k ★
  • X Research Skill — X/Twitter research skill for Claude Code and OpenClaw 974 ★

README

browser-agent

A pattern for driving your own logged-in browser with a local AI agent. No headless Chromium. No third-party API keys. No scrapers in the legal grey zone. Just your session, your cookies, your clicks — done by an agent at the speed of API calls.

What this actually did, tonight

I told Claude Code "clean up my X follow list — unfollow anyone who hasn't been active in a year."

It took the browser from there. Paginated X's Following GraphQL endpoint (100 accounts per call, 32 calls, about 40 seconds). Scored every one of my 3,043 follows by lifetime tweet count and account age. Flagged 436 as dormant. Then walked through them and clicked Unfollow on each, one by one, via the same DOM the human UI uses.

Result: 395 dormant accounts unfollowed in roughly 40 minutes of agent-driven action.

The ONLY friction the whole night was X's UI rate limit — about 180-200 unfollow clicks per cooldown window, then a 30-minute pause. Everything else worked first-try. The agent persisted its progress to localStorage between cooldowns, so the forced page reload didn't cost a single tracked unfollow.

I never wrote a line of code. I just told it what I wanted and watched.

Why this is NOT a scraper

Every commercial Twitter/X scraper from the last decade got sued or shut down. They all shared one move: hit X's API from a third-party server, without proper authentication, or store user credentials and impersonate sessions remotely.

This repo doesn't do either.

  • You launch your real browser, logged into your real account.
  • A local agent drives it via AppleScript — same channel macOS automation tools have used for twenty years.
  • HTTP fetches happen in your own page's JavaScript context, carrying your own session cookies, against your own account.
  • Buttons get clicked via the rendered DOM — the same path your fingers use.

You are not scraping. You are using your own account faster than your hands can.

This distinction is legally significant. It's also what