Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/nirholas/xactions/post-editingnpx skills add nirholas/XActions --skill post-editinggit clone --depth 1 https://github.com/nirholas/XActionsWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00049 | $0.00614 |
| Opus 5 | $0.00024 | $0.00307 |
| Sonnet 5 | $0.00010 | $0.00123 |
| Haiku 4.5 | $0.00005 | $0.00061 |
Grade A, and why
post-editing scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Post Editing & Undo
Browser console script for editing existing posts or undoing a recently posted tweet.
⚠️ X Premium required — Post editing and undo are Premium-only features.
Script Selection
| Goal | File | Navigate to |
|---|---|---|
| Edit an existing post | src/editPost.js |
x.com |
| Undo a post within 30 seconds of posting | src/editPost.js |
x.com |
Quick Start
Edit a post
- Go to
x.com - Open DevTools (F12) → Console
- Set
mode: 'edit',postUrl, andnewTextin CONFIG - Paste
src/editPost.js→ Enter
Undo a post (must run within 30 seconds of posting)
- Post your tweet
- Immediately open DevTools (F12) → Console
- Set
mode: 'undo'in CONFIG - Paste
src/editPost.js→ Enter
Configuration
const CONFIG = {
mode: 'edit', // 'edit' or 'undo'
// Edit mode:
postUrl: 'https://x.com/nichxbt/status/123456789', // Post to edit
newText: 'Updated tweet content here', // New text
// Timing:
minDelay: 1000,
maxDelay: 2000,
navigationDelay: 3000, // Wait for page/modal to load
};
Selectors Used
| Element | Selector |
|---|---|
| Post options (⋯) | [data-testid="caret"] |
| Edit tweet option | [data-testid="editTweet"] |
| Tweet textarea | [data-testid="tweetTextarea_0"] |
| Submit button | [data-testid="tweetButton"] |
| Undo banner | [data-testid="undoTweet"] |
Notes
- Edit window: X allows unlimited edits on Premium (unlike Bluesky's 5-minute limit)
- Undo window: The undo banner only appears for ~30 seconds after posting
- Edit history is publicly visible — a small edit badge appears on edited posts
- Script navigates to the post URL automatically when
postUrlis set
Related Skills
- content-posting — Post new tweets and threads
- content-cleanup — Delete tweets entirely
- premium-subscriptions — Manage X Premium features
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 78 lines · 49 tokens per session scan A 524b755ace22
post-editing is a skill published in the GitHub repository nirholas/XActions (496 stars, last pushed 5d ago), licensed Apache-2.0. It adds 49 tokens to every session and 614 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
peekaboo
Capture and automate macOS UI with the Peekaboo CLI.
browser-test
Validate a feature works by driving a real browser with Playwright MCP. No test files — just interactive verification.
drive-the-ui
Drive the page the user has open through live UI actions. List the actions a page accepts, call them with typed payloads, and read the live state including unsaved edits. Use when the user is looking at a page you can operate, such as the evaluations workbench, and a change should happen in front of them rather than…
browser-pair
Collaborative headed browser session for UI work. Launch Playwright Chromium visible to the user, handle auth, then interactively drive the browser while the user watches and gives real-time visual feedback. Edit code and refresh to verify fixes live. Use when the user says 'browser pair', 'paired browser', 'let's…
debug-frontend-with-browser
Frontend diagnosis extension for the acceptance skill. Use for intermittent rendering, ordering, stale-state, navigation, virtual-list, React/Zustand, optimistic-update, refresh-dependent, or browser-only failures where the first broken boundary may be DOM, component input, derived state, client cache, network data…
design-prototype
Produce an interactive single-file HTML design prototype using the REAL LobeHub design system (@lobehub/ui + antd + antd-style tokens) with production-style React — no build step, opens directly in a browser. Use when asked for a design prototype / interactive mockup / 交互原型 / 出个原型 / 设计稿 HTML for a page or flow, or to…