首页 / 全部技能 / 内容创作 / canghe-post-to-x
内容创作 · freestylefly/canghe-skills

canghe-post-to-x

Posts content and articles to X (Twitter). Supports regular posts with images/videos and X Articles (long-form Markdown). Uses real Chrome with CDP to bypass anti-automation. Use when user asks to "post to X", "tweet", "publish to Twitter", or "share on X".

风险提醒:红色 · 谨慎使用AI 侦查报告
作者 freestyleflyGitHub freestylefly/canghe-skills ↗许可 MIT(仓库根 LICENSE)commit dd0bf35595
agent 宿主通常会约束 skill 执行权限;风险提醒为 AI 侦查观点,不构成质量或安全保证。第三方 skill 仅作拆解与展示,安装使用风险自负,版权归原作者。

1实现原理 · 为什么它能做到

不用 Playwright/Puppeteer,而是驱动真实 Chrome(CDP)把内容填进 X 真实 UI,官方描述即声明目的是绕过反自动化检测。

skills/canghe-post-to-x/SKILL.md
Posts text, images, videos, and long-form articles to X via real Chrome browser (bypasses anti-bot detection).
注:这里在做什么:SKILL.md 首句把路线动机写死;实现是持久 profile 的真实 Chrome + CDP 会话。

四类内容(常规帖/视频帖/引用/长文)共用同一套 Chrome/CDP 基建与剪贴板子系统。

skills/canghe-post-to-x/SKILL.md
| `scripts/x-video.ts` | Video posts (text + video) |
注:这里在做什么:Script Reference 表列出各入口脚本;每个脚本各自拉真实 Chrome,参数模型一致。

关键绕过手段:不用 CDP 合成键事件,而用 osascript 发真实 Cmd+V,因为 X 会检测并忽略合成事件。

skills/canghe-post-to-x/references/regular-posts.md
Sends real Cmd+V keystroke to Chrome, bypassing CDP's synthetic events that X can detect
注:这里在做什么:Image Paste Mechanism 段落解释——CDP 合成键盘事件可被网站识别,故改用系统级真实键击。

启动参数主动关闭自动化特征标志。

skills/canghe-post-to-x/scripts/x-browser.ts
'--disable-blink-features=AutomationControlled',
注:这里在做什么:x-article/x-browser/x-quote/x-video 四个脚本均带该参数,抹掉 navigator.webdriver 类痕迹。

长文路径:md-to-html.ts 解析 frontmatter/封面并把正文图替换为 XIMGPH_n 占位符,x-article.ts 经 CDP 填编辑器后反向替换占位符插入图片。

skills/canghe-post-to-x/references/articles.md
"placeholder": "XIMGPH_1",
注:这里在做什么:占位符 + 逐个定位替换是 X Articles 编辑器不接受剪贴板贴图时的替代方案。

剪贴板/键击子系统跨平台:Linux 用 xdotool/ydotool,macOS 用 osascript,Windows 用 PowerShell SendKeys。

skills/canghe-post-to-x/scripts/paste-from-clipboard.ts
{ cmd: 'xdotool', args: ['key', 'ctrl+v'] },
注:这里在做什么:paste() 按 process.platform 分派;图片先经 copy-to-clipboard.ts(macOS 用内联 Swift)写入系统剪贴板。

默认只填充不发布:脚本把内容填好后停下等人工复核,长文仅 --submit 才真正发布。

skills/canghe-post-to-x/references/articles.md
10. **Publish**: Only with `--submit` flag
注:这里在做什么:Workflow 第 9-10 步明写浏览器停留预览,发布必须显式 --submit。

预检脚本检查 Chrome、profile 隔离、Bun、辅助功能、剪贴板、粘贴键与 Chrome 冲突。

skills/canghe-post-to-x/SKILL.md
Checks: Chrome, profile isolation, Bun, Accessibility, clipboard, paste keystroke, Chrome conflicts.
注:这里在做什么:check-paste-permissions.ts 为可选前置体检,失败给出逐项修复指引。

首次运行需人工登录,会话持久化到 profile。

skills/canghe-post-to-x/SKILL.md
- First run: log in to X manually (session saved)
注:这里在做什么:Prerequisites/Notes 说明用持久 profile 保存登录态,后续脚本复用。

2核心能力

01发常规帖(文字 + 最多 4 图)
02发视频帖(MP4/MOV/WebM)
03引用转发并附评论
04发布 X 长文(Markdown,需 X Premium)
05Markdown → HTML 转换(含封面与正文图片占位符)
06真实键击粘贴(绕开可被检测的 CDP 合成事件)
07多平台剪贴板/键击适配(macOS/Linux/Windows)
08环境预检(Chrome/权限/剪贴板/键击/冲突)与默认人工复核发布

3外部依赖

类型依赖
networkX 编辑器页面(浏览器端访问)
clibun(经 npx -y 即时拉取)
cliGoogle Chrome / Chromium(CDP)
cli真实键击工具:osascript / xdotool / ydotool / powershell.exe
packagemarked / highlight.js / front-matter / remark-*(md 转换)
mcpPlaywright MCP(可选的手工工作流示例调用)

4风险提醒 风险提醒:红色 · 谨慎使用

风险提醒:红色 · 谨慎使用
  • 以真实 Chrome + 真实键击并关闭自动化特征标志,属对 X 反自动化检测的技术性绕过。 — 命中范式红档反反爬/绕过;可能导致账号被风控或违反平台条款。
  • 复用共享 Chrome 登录态操作 X,--submit 会以用户账号发布不可逆内容。 — 凭证即 profile 会话;发布动作不可撤回。
  • 依赖系统辅助功能/剪贴板权限与真实键击,放大宿主进程的操作面。 — macOS 需授予终端 Accessibility 权限;Linux 依赖 xdotool/ydotool。
  • 主脚本(x-*.ts)正文未在 bundle 展开,DOM 操作细节未经代码级复核。 — 第二遍已标 unlocatable。
风险提醒:红色,谨慎使用(能力/策略级判定,非恶意植入)。红轴=反自动化侦测的技术性绕过:SKILL.md 明写 'bypasses anti-bot detection',regular-posts.md 解释为何改用真实 Cmd+V('bypassing CDP'\''s synthetic events that X can detect')并点名 'This approach bypasses X'\''s anti-automation detection that blocks Playwright/Puppeteer.';x-article/x-browser/x-quote/x-video 四脚本均带 --disable-blink-features=AutomationControlled。凭证面为共享 Chrome profile 的已登录 X 会话;--submit 会以用户账号发布不可逆内容。无凭证文件读取、无 TLS/沙箱降级、无混淆,故判红仅因绕过轴,与 baoyu-post-to-x 同族(先例 notebooklm-skill、baoyu-post-to-x)。

5第二遍独立确认

  • [ok] 反自动化绕过动机 — SKILL.md 描述、regular-posts.md 的 How It Works 与 paste-from-clipboard.ts 顶部注释三处一致声明绕过检测。
  • [ok] AutomationControlled 标志 — 风险扫描在 x-article.ts:117 / x-browser.ts:44 / x-quote.ts:48 / x-video.ts:48 四处定位同一参数,判红据成立。
  • [ok] 四条内容路径 — SKILL.md Script Reference 与各命令行示例互证 x-browser/x-video/x-quote/x-article 四个入口。
  • [ok] 剪贴板/键击跨平台适配 — paste-from-clipboard.ts 正文完整展开,pasteMac/pasteLinux/pasteWindows 分派逐字可核。
  • [ok] 长文占位符机制 — articles.md 的 images XIMGPH_n 与 Workflow 第 8 步『反向替换』描述自洽。
  • [ok] 凭证读取 — 「凭证/环境变量」39 条命中均为 ${SKILL_DIR}/$HOME/profile 参数与示例,未见密钥/cookie 文件读取;凭据即 profile 登录态,与结论一致。
  • [unlocatable] 主脚本的 CDP DOM 细节 — x-browser/x-video/x-quote/x-article.ts 全文未在 bundle 展开,文本注入与 DOM 操作细节以 SKILL.md/references 描述与扫描行为据,未代码级复核。
  • [ok] Playwright MCP 引用 — 仅出现在 regular-posts.md 的可选手工工作流示例,非脚本内置依赖,不改变档位。

6结论

  • 覆盖 X 的四类发布形态(常规帖/视频/引用/长文),一个 skill 内闭环。
  • 默认不自动发布:只填充内容并停留预览,发布需显式 --submit。
  • 剪贴板/键击子系统跨平台完备,并附环境预检与修复指引。
  • 适合:需要把文字/图片/视频/长文发布到 X 的内容创作者,且接受以真实浏览器登录态半自动操作。
    不适合:要求完全合规、不绕过平台自动化检测的场景;不愿复用真实 Chrome 登录态或授予辅助功能权限的环境。
    安装 agent 直装可复制
    ① 本站镜像 更新 2026-10-10
    方式 A · 人下载镜像包下载 canghe-post-to-x.tar.gz
    sha256: aa885729a2c33e40…
    方式 B · JSON 格式安装指南,复制给 agent
    安装指南
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② 上游 GitHub · 原始来源
    能访问 GitHub?直接去上游安装(实时版,可能已更新)GitHub 原始 ↗
    本页镜像锁定 commit dd0bf35595;上游为实时仓库。
    来源信息 GitHub 原始
    作者 / 仓库freestylefly / freestylefly/canghe-skills
    本 skill commitdd0bf35595
    许可MIT(仓库根 LICENSE)
    本站信息
    收录日期2026-09-06
    分类内容创作
    侦查报告AI 侦查 · 2 遍 · 2026-09-06
    本站镜像与 GitHub 原始是不同来源:本站锁定 commit 快照经 /r2 分发;GitHub 为实时上游,内容可能已更新。
    同分类邻近