HomeBrowseUpload
← Back to registry
// Skill profile

X Brand Operator

name: x-brand-operator

by caoqi · published 2026-03-22

日历管理社交媒体加密货币
Total installs
0
Stars
★ 0
Last updated
2026-03
// Install command
$ claw add gh:caoqi/caoqi-x-brand-operator
View on GitHub
// Full documentation

---

name: x-brand-operator

description: Automate X/Twitter brand account operations using OpenClaw native tools (xurl + browser fallback + cron). Use when setting up or managing automated posting, keyword engagement, weekly reporting, or Substack content generation for a brand account. Triggers on: "set up X posting for [brand]", "automate my Twitter account", "schedule tweets", "keyword engagement on X", "brand social media automation".

---

# X Brand Operator

End-to-end X/Twitter brand account automation using xurl (X API v2) with browser fallback. No extra API keys beyond xurl app config.

Core Tools

  • `xurl --app <app>` — Post, reply, like, follow, search via X API v2
  • `browser` — Fallback for posting/replying when xurl fails (profile: user)
  • `cron` — Schedule recurring tasks (post, engage, report)
  • `message` — Send Telegram alerts on failures or completions
  • Posting a Tweet

    **Primary (xurl):**

    xurl --app <app> post "<tweet text>"

    **Fallback (browser, only if xurl fails):**

    1. `browser open` → `https://x.com/compose/post` (profile: user)

    2. Wait 4 seconds

    3. `browser snapshot` → find text input ref

    4. `browser act` → click input, type tweet

    5. `browser snapshot` → find Post button ref

    6. `browser act` → click Post

    7. `browser snapshot` → confirm success

    **Rule:** Try each method once only. On failure → notify via Telegram, include draft text, then exit. Never loop.

    Replying to a Tweet

    **Primary:** `xurl --app <app> reply <tweet_id> "<reply text>"`

    **Fallback:** Open tweet URL in browser → snapshot → click Reply → type → submit.

    Content Quality Standard (score before posting)

    | Criterion | Weight |

    |-----------|--------|

    | Hook strength | 25 pts |

    | Value density | 25 pts |

    | Platform fit | 20 pts |

    | CTA clarity | 15 pts |

    | Conciseness | 15 pts |

    **Minimum score: 70/100.** Rewrite once if below threshold; do not post if still failing.

    **Format rules:** Single paragraph, no line breaks, ≤ 280 chars, 1–2 hashtags, end with brand URL.

    Content Pillar Rotation (daily posting)

    Rotate through pillars by day of week. See `references/content-strategy.md` for pillar definitions, templates, and tone guide. Adapt pillars to the brand's positioning.

    Keyword Engagement (weekly)

    Search target keywords → filter genuine posts (skip bots/ads) → like + reply + follow author.

    **Reply quality rules:**

  • Acknowledge the person's pain point first
  • Add 2–4 sentences of genuine value
  • Naturally mention the brand (no hard sell)
  • Never use "Great post!" / "So true!" filler
  • See `references/engagement-playbook.md` for keyword lists and reply templates.

    Cron Job Setup

    See `references/cron-config.md` for recommended schedules and full agentTurn prompt templates for:

  • Morning post (UTC 14:00 daily)
  • Evening post (UTC 20:00 daily)
  • Weekly keyword engagement (Monday UTC 10:00)
  • Weekly Substack draft (Wednesday UTC 13:00)
  • Weekly report (Sunday UTC 21:00)
  • Failure Handling

    | Situation | Action |

    |-----------|--------|

    | xurl fails | Switch to browser fallback immediately |

    | Browser also fails | Send Telegram alert with draft text, exit |

    | Any step in engagement fails | Skip that item, continue to next |

    | Always | Send Telegram summary at end of engagement/report runs |

    Never retry more than once per method. Never loop.

    // Comments
    Sign in with GitHub to leave a comment.
    // Related skills

    More tools from the same signal band