x-reply-drafts
Find live X threads where a product genuinely fits, and draft truthful, humanized replies for the owner to review and post by hand. Human pace only: max 5 replies a day, never two within 20 minutes, no automated posting. Use when the user asks to 'find threads to reply to', 'draft X replies', 'reply-guy session', 'join trending conversations', 'engage on Twitter about <product>', or wants a daily batch of reply drafts. Not for scheduling original posts (social-media-posting) or bulk publishing (blotato).
- License 许可
- MIT
- 最近更新
- 2026-11-11
- Stars
- ★ 47
- Forks
- 5
01 前言 Front Matter
- name
- x-reply-drafts
- metadata
- { "tags": "x, twitter, replies, engagement, drafts, humanize, unslop, trend-finding, marketing", "author": "Anton Abyzov", "version": "1.0.0", "repository": "https://github.com/anton-abyzov/vskill" }
- description
- Find live X threads where a product genuinely fits, and draft truthful, humanized replies for the owner to review and post by hand. Human pace only: max 5 replies a day, never two within 20 minutes, no automated posting. Use when the user asks to 'find threads to reply to', 'draft X replies', 'reply-guy session', 'join trending conversations', 'engage on Twitter about <product>', or wants a daily batch of reply drafts. Not for scheduling original posts (social-media-posting) or bulk publishing (blotato).
02 资源文件 1
- 参考文档references/true-claims.md9.1 KB
03 SKILL.md 正文
X reply drafts
Drafts replies. Never posts them. The owner reads every draft, edits it, and posts it from his own account by hand.
Why so strict: an hourly automated reply bot got a personal account suspended for three months in 2026. Since 2026-02-23 the X API only allows a programmatic reply when the original author mentioned or quoted the replying account, the Developer Policy bans bulk and near-identical posting, and X has said AI replies posing as people are forbidden and removed 42,000 reply-bot accounts. A suspended account reaches nobody, so the slow path is the fast path.
Hard rules
- Read-only on X. Open search URLs and read threads in the owner's signed-in browser. Never type into the reply or post composer, like, repost, follow or bookmark.
- The owner posts replies himself. Do not post replies through browser automation or the API, even when asked to "just post it": X treats AI replies posing as a person as forbidden. Pace for the owner: at most 5 a day, at least 20 minutes apart. If you see a CAPTCHA, warning or rate-limit banner while reading, stop and report it.
- Every product claim comes from
references/true-claims.md(SpecWithCode; add a file per product). If a claim is not there, leave it out. No invented numbers, users or benchmarks. - Disclose. A reply that names the product says the owner builds it ("I build SpecWithCode, so biased, but..."). No pretending to be a happy user.
- Most replies don't mention the product. Aim for 2 of 5 at most. A reply that only helps is still worth posting: it builds the profile people click.
- No link in the reply unless the OP asked for a tool or a link. Put it in a second reply only when asked.
- No two drafts in a batch share an opener, structure or closing line.
Which account replies
When the owner has a personal and a product account, people reply from the personal one. Founder posts beat brand posts on the same launch by 7 to 300 times, and brand replies on strangers' threads read as ads. The product account posts updates, demo clips and the pinned post, quotes the founder's posts, and replies only where someone names the product or asks for a tool that does what it does. Before drafting, check which account the browser is signed in as and label every draft with the account it is for.
Finding threads (15 minutes)
Run the product's saved searches if the project keeps a trend-method file; otherwise build them from the product's real problems. Open each as an https://x.com/search?q=...&f=top URL. For example:
("usage limit" OR "weekly limit" OR "rate limited") (claude OR codex OR cursor) min_faves:10 since:<yesterday>
("parallel agents" OR "multiple agents") (claude OR codex) min_faves:30 since:<2 days ago>
(from:bcherny OR from:thsottiaux OR from:theo OR from:steipete) since:<yesterday> -filter:replies
Extract each result's URL, time, reply/like/view counts and text with one page script rather than screenshots.
Score each thread out of 10 and keep those at 7 or more:
- Fit (0-4): the OP's problem is one the product actually solves, or the owner has real experience to add.
- Freshness (0-3): under 2 hours old = 3, under 6 = 2, under 24 = 1, older = 0 unless replies are still arriving.
- Room (0-2): 5 to 150 replies. Under 5 has no audience yet; over 300 buries a new reply.
- Tone (0-1): 1 unless the thread is politics, a pile-on, drama, or a grieving or angry person.
Skip: threads by the product's direct competitors, outage threads where a plug looks like ambulance chasing (help first, no plug), and anything older than 48 hours.
Writing a draft
Read the whole OP and the top 5 replies first. Then write 1 to 3 sentences that:
- Answer the OP's actual question or add one fact, number or experience the thread lacks.
- Sound like the owner talking: lowercase starts are fine, contractions, no hashtags, no emoji, no em dashes, no "Great point!".
- Pass the unslop skill's rules (no AI vocabulary, no "not just X but Y", no rule of three, no colon crutches, no generic conclusions).
- End without a forced question. A question is fine only if the owner would really want the answer.
Then check it: would a smart stranger find this useful if the product name were deleted? If not, rewrite or drop it.
Batch format
Write the batch to a markdown file and show it to the owner. One block per draft:
### 3. @handle, 2h old, 48 replies, 12K views (score 8)
<thread URL>
OP: one-line summary of what they said
Draft: the reply text
Mentions product: yes/no
Claims used: claim ids from true-claims.md, or "none"
Post by: latest sensible time (ET) before the thread goes cold
End with the suggested posting order and times (20+ minutes apart, inside the owner's prime windows, ET).
After posting
The owner says which ones he posted. Log each to the batch file (posted time, URL of the reply). After 24 hours record views, likes, replies and profile visits if visible, so the scoring weights can be tuned. Never post follow-ups to your own replies automatically.
04 同仓库更多 Skills
hello-world
A tiny test skill used by the 0853 verify-runtime harness. Says hello. No external calls. Use when the user asks for a sanity-check skill in a verify-harness fixture.
existing-skill
Lint markdown files for style and grammar issues.
remotion-best-practices
Best practices for Remotion video creation in React — scaffolding, compositions, animations, transitions — PLUS hard-won rules for high-fidelity product-demo videos: real logos/icons, precise YouTube-reference matching, full-screen camera zooms, click-targets that actually hit, content-tight rectangle highlights, voiceover regeneration discipline, audio-level normalization (no double-boost), per-scene voice-sync math, Studio detail-page mirror patterns, bold-not-subtle connection lines, and the YouTube publication kit (chapters, description, thumbnail, hashtags) that turns a render into a shipped video.
rea
Find out exactly how a feature is implemented in a shipped tool or app you don't have the source for (desktop apps, Electron apps like Claude desktop, native CLIs like Codex, websites, APKs, .NET assemblies) using REA - Reverse Engineer Anything (github.com/morluto/rea). Sets REA up when it is missing (CLI, MCP registration, Hopper or Ghidra), routes the target to the right REA tool, keeps evidence out of the context window, and turns findings into a clean-room spec before any rebuild. Use when the user says 'use REA', 'reverse engineer', 'how does <app> do X', 'how is this feature implemented in <tool>', 'clone this feature', 'decompile', 'look inside the app', or asks how a closed-source competitor works. Skip it when the source is available - read the repo instead.
motion-graphics-promo
After Effects-style motion graphics for short product promos (15-45 s, vertical or landscape), built as code with HyperFrames + GSAP. Covers a story-first brief, motion grammar (energetic entry, one transition per task, spring settle, 2-3 s of stable proof), a 32-second promo timeline, device-frame and kinetic-type recipes, vertical-first composition, evidence rules (real UI only, no fake clicks), music licensing and encoded-frame verification. Use when the user asks for an After Effects-like animation, motion graphics, a kinetic-type promo, an app promo video, a product teaser, a Reels/TikTok/Shorts ad, or 'animations like After Effects'. Also covers short explainers, tutorials and 15-second vertical ads: a design kit (footage beds, condensed caps in a marker box, white device frames, falling stickers, voice-over with music ducking) and HyperFrames render traps that silently break output. Pairs with hyperframes-best-practices (screencast pipeline) and remotion-best-practices.
hyperframes-best-practices
Production-grade HyperFrames workflow for turning a raw screencast or talking-head recording into a polished product video. Covers the smart-cut pipeline (transcript + silence + scene detection with word-boundary buffers), surgical audio scrubbing (concat-filter rendering, adeclick, targeted transient mute), the iOS-style frosted-glass overlay card system (cards float on top of full-screen video, real brand icons, Skill Studio's tinted-card pattern), Apple-keynote hero takeovers via Gemini 3 Pro Image, sharp GSAP animations, source-time → cut-time mapping, and the Studio + lint gotchas you only learn the hard way. Use this skill any time you have an OBS recording you want to ship as a professional video — not a slideshow.