关于 tuzi-post-to-x
tuzi-post-to-x 是通过 Chrome 在 X 中准备帖子和长文的技能,支持文本、图片、视频、引用帖子及 Markdown 文章。内容会填入浏览器,供用户检查并手动发布。
主要功能
- 01准备带最多 4 张图片的文本帖子
- 02准备视频帖子
- 03撰写带评论的引用帖子
- 04发布带封面的 Markdown 文章
- 05检查环境和粘贴权限
适用场景
- 01为 X 起草图片帖子
- 02准备视频帖子并进行检查
- 03将 Markdown 文档整理为 X 文章
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ tuziapi/ tuzi-skills --skill tuzi-post-to-x安装后在 Claude Code 中输入/tuzi-post-to-x确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/articles.mdregular-posts.mdscripts/check-paste-permissions.tscopy-to-clipboard.tsmd-to-html.tspackage.jsonpaste-from-clipboard.tsx-article.tsx-browser.tsx-quote.tsx-utils.tsx-video.ts详细介绍
发布到 X(Twitter)
通过真实的 Chrome 浏览器向 X 发布文本、图片、视频和长文(可绕过反机器人检测)。
脚本目录
重要提示:所有脚本都位于此技能的 scripts/ 子目录中。
Agent 执行说明:
- 确定此 SKILL.md 文件所在的目录路径,并将其设为
SKILL_DIR - 脚本路径 =
${SKILL_DIR}/scripts/<script-name>.ts - 将本文档中的所有
${SKILL_DIR}替换为实际路径
脚本参考:
| 脚本 | 用途 |
|---|---|
scripts/x-browser.ts | 常规帖子(文本 + 图片) |
scripts/x-video.ts | 视频帖子(文本 + 视频) |
scripts/x-quote.ts | 带评论的引用推文 |
scripts/x-article.ts | 发布长文(Markdown) |
scripts/md-to-html.ts | Markdown → HTML 转换 |
scripts/copy-to-clipboard.ts | 将内容复制到剪贴板 |
scripts/paste-from-clipboard.ts | 发送真实粘贴按键 |
scripts/check-paste-permissions.ts | 验证环境和权限 |
偏好设置(EXTEND.md)
使用 Bash 按优先级顺序检查 EXTEND.md 是否存在:
# Check project-level first
test -f .tuzi-skills/tuzi-post-to-x/EXTEND.md && echo "project"
# Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.tuzi-skills/tuzi-post-to-x/EXTEND.md" && echo "user"
┌──────────────────────────────────────────────────┬───────────────────┐ │ 路径 │ 位置 │ ├──────────────────────────────────────────────────┼───────────────────┤ │ .tuzi-skills/tuzi-post-to-x/EXTEND.md │ 项目目录 │ ├──────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.tuzi-skills/tuzi-post-to-x/EXTEND.md │ 用户主目录 │ └──────────────────────────────────────────────────┴───────────────────┘
┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ 结果 │ 操作 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 找到 │ 读取、解析并应用设置 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 未找到 │ 使用默认设置 │ └───────────┴───────────────────────────────────────────────────────────────────────────┘
EXTEND.md 支持:默认 Chrome 配置文件
前提条件
- Google Chrome 或 Chromium
bun运行时- 首次运行:手动登录 X(会保存会话)
使用前检查(可选)
首次使用前,建议运行环境检查。用户也可以选择跳过。
npx -y bun ${SKILL_DIR}/scripts/check-paste-permissions.ts
检查项目:Chrome、配置文件隔离、Bun、辅助功能、剪贴板、粘贴按键、Chrome 冲突。
如果任何检查未通过,请针对相应项目提供修复指南:
| 检查项 | 修复方法 |
|---|---|
| Chrome | 安装 Chrome,或设置 X_BROWSER_CHROME_PATH 环境变量 |
| 配置文件目录 | 确保 ~/.local/share/x-browser-profile 可写 |
| Bun 运行时 | curl -fsSL https://bun.sh/install | bash |
| 辅助功能(macOS) | 系统设置 → 隐私与安全性 → 辅助功能 → 启用终端应用 |
| 复制到剪贴板 | 确保 Swift/AppKit 可用(macOS Xcode 命令行工具:xcode-select --install) |
| 粘贴按键(macOS) | 同上,按照上述辅助功能修复方法操作 |
| 粘贴按键(Linux) | 安装 xdotool(X11)或 ydotool(Wayland) |
参考资料
- 常规帖子:查看
references/regular-posts.md,了解手动工作流、故障排除和技术详情 - X 长文:查看
references/articles.md,了解发布长文的指南
常规帖子
文本 + 最多 4 张图片。
npx -y bun ${SKILL_DIR}/scripts/x-browser.ts "Hello!" --image ./photo.png
参数:
| 参数 | 描述 |
|---|---|
<text> | 帖子内容(位置参数) |
--image <path> | 图片文件(可重复指定,最多 4 张) |
--profile <dir> | 自定义 Chrome 配置文件 |
注意:脚本会打开浏览器并填入内容。用户检查后手动发布。
视频帖子
文本 + 视频文件。
npx -y bun ${SKILL_DIR}/scripts/x-video.ts "Check this out!" --video ./clip.mp4
参数:
| 参数 | 描述 |
|---|---|
<text> | 帖子内容(位置参数) |
--video <path> | 视频文件(MP4、MOV、WebM) |
--profile <dir> | 自定义 Chrome 配置文件 |
注意:脚本会打开浏览器并填入内容。用户检查后手动发布。
限制:普通用户最长 140 秒,Premium 用户最长 60 分钟。处理时间:30-60 秒。
引用推文
引用现有推文并添加评论。
npx -y bun ${SKILL_DIR}/scripts/x-quote.ts https://x.com/user/status/123 "Great insight!"
参数:
| 参数 | 描述 |
|---|---|
<tweet-url> | 要引用的 URL(位置参数) |
<comment> | 评论文本(位置参数,可选) |
--profile <dir> | 自定义 Chrome 配置文件 |
注意:脚本会打开浏览器并填入内容。用户检查后手动发布。
X 文章
长篇 Markdown 文章(需要 X Premium)。
npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md
npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md --cover ./cover.jpg
参数:
| 参数 | 描述 |
|---|---|
<markdown> | Markdown 文件(位置参数) |
--cover <path> | 封面图片 |
--title <text> | 覆盖标题 |
Frontmatter:支持 YAML front matter 中的 title、cover_image。
注意:脚本会打开浏览器并填入文章。用户检查后手动发布。
发布前检查:所有图片插入后,脚本会自动检查:
- 编辑器内容中剩余的
XIMGPH_占位符 - 预期图片数量与实际图片数量
如果检查失败(输出中出现警告),请在用户发布前告知具体问题。
故障排除
Chrome 调试端口未就绪
如果脚本失败并提示 Chrome debug port not ready 或 Unable to connect,请先终止现有 Chrome CDP 实例,然后重试:
pkill -f "Chrome.*remote-debugging-port" 2>/dev/null; pkill -f "Chromium.*remote-debugging-port" 2>/dev/null; sleep 2
重要:应自动执行此操作——遇到此错误时,终止 Chrome CDP 实例并重试命令,无需询问用户。
注意事项
- 首次运行:需要手动登录(会话会持续保留)
- 所有脚本都只会将内容填入浏览器,用户必须检查并手动发布
- 跨平台:macOS、Linux、Windows
扩展支持
通过 EXTEND.md 使用自定义配置。路径和支持的选项请参阅 Preferences 部分。