mcpField
T
tweet-replicate

tweet-replicate

github.com/jpcaparas创意与媒体5694 次安装1 天前更新
代码仓库

关于 tweet-replicate

Tweet Replicate 可将一条公开 X/Twitter 帖子转换为可重新渲染的本地项目,并输出 MP4 主视频和 GIF 预览。它将帖子数据与媒体冻结在快照中,再于本地重建帖子布局,而非录制 X 的实时界面。

主要功能

  1. 01将公开帖子冻结到 snapshot.json
  2. 02在本地下载头像和主要媒体
  3. 03用本地 HTML 与 CSS 重建帖子布局
  4. 04使用 Playwright 录制副本
  5. 05导出 MP4 主视频和 GIF 预览

适用场景

  1. 01将公开帖子转换为视频素材
  2. 02从已保存的快照重新渲染帖子
  3. 03以可播放视频检查帖子布局

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jpcaparas/skills --skill tweet-replicate

安装后在 Claude Code 中输入/tweet-replicate确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

AGENTS.md
metadata.json
README.md
skill-card.prompt.md
agents/
openai.yaml
assets/
.gitkeep
evals/
evals.json
references/
gotchas.md
layout.md
workflow.md
scripts/
fetch_tweet_snapshot.py
probe_tweet_replica.py
record_tweet_replica.py
render_tweet_replica.py
test_skill.py
validate.py
templates/
tweet_replica.html

详细介绍

推文复刻

将公开的 X/Twitter 帖子冻结为可重新渲染的本地构建,始终生成高质量的 tweet-replica.mp4 主文件和配套的 tweet-replica.gif 预览,其中仅 GIF 大小需低于 24 MB。

已于 2026 年 4 月 9 日针对实时公开状态验证。

先打破幻想

不要承诺能制作浏览器级或永久稳定的 X 克隆。X 可能会更改布局,指标会发生变化,媒体 URL 会过期;而本地渲染器有意采用确定性方式,并非重放 X 的私有渲染器。

此工具擅长:

  • 将公开状态捕获到冻结的 snapshot.json
  • 以最高可用画质在本地下载头像和主要媒体
  • 使用确定性的本地 HTML/CSS 重建推文界面
  • 使用 Playwright 录制推文视口,不在推文周围创建更大的填充画布
  • 在同一目录中导出高质量 MP4 主文件和配套 GIF

决策树

  1. 如果用户想将一条公开的 X/Twitter 帖子重建为本地视频资源,请运行 scripts/render_tweet_replica.py。
  2. 如果他们只需要推文文本、指标或媒体 URL,请改用文本/媒体提取工作流。
  3. 如果他们只需要原始媒体文件,请改用媒体下载器。
  4. 如果他们想录制 X 本身的实时浏览器画面,请停止操作并说明,此工具用于制作确定性的本地复刻,而非录制真实 X 界面。
  5. 如果他们需要完整推文串、深层引用链、轮播内容或已验证身份的状态,请说明此版本仅支持一条公开状态及一张嵌套的引用帖子卡片。

默认保存路径规则

如果用户未指定目标路径,请优先建议 ./pieces/。如果用户同意或不介意,请使用 --save-root ./pieces 运行,或让脚本默认将文件保存到当前工作目录下的 pieces/ 文件夹。

生成的构建目录结构保持不变:

<save-root>/tweet-replicate-status-<id>-<timestamp>/
  assets/
  snapshot.json
  tweet-replica.html
  capture.webm
  tweet-replica.mp4
  tweet-replica.gif

快速参考

任务命令原因
从状态 URL 渲染并保存到默认指定的根目录python3 scripts/render_tweet_replica.py 'https://x.com/.../status/...' --save-root ./pieces在 ./pieces/ 下创建可重新渲染的构建文件夹,并生成高质量 MP4 主文件
稍后重新渲染同一条冻结的帖子python3 scripts/render_tweet_replica.py ./tweet-build/snapshot.json保存到快照旁边,避免计数发生变化
将所有内容保存在一个命名的构建文件夹中python3 scripts/render_tweet_replica.py '<url>' --workdir ./tweet-build将快照、本地高质量资源、HTML、WebM、MP4 和 GIF 保存在一起
仅检查提取的快照python3 scripts/fetch_tweet_snapshot.py '<url>' --output ./tweet-build/snapshot.json --asset-dir ./tweet-build/assets适用于调整布局前的检查
仅录制已准备好的 HTML 复刻python3 scripts/record_tweet_replica.py ./tweet-build/tweet-replica.html ./tweet-build/capture.webm适用于调整 CSS,而无需重新获取数据
使用实时推文 URL 运行真实流水线检查python3 scripts/probe_tweet_replica.py 'https://x.com/.../status/...' --save-root ./tmp-tests --cleanup验证 MP4、GIF、时长、GIF 大小上限和输出帧尺寸

适用范围

正向触发词
  • “复刻这条推文”
  • “复刻这条 X 帖子”
  • “把这条推文转成 mp4 和 gif”
  • “把这条推文冻结成视频”
  • “让这条状态看起来像 X”
  • “可播放的推文截图”
  • “保留文案、计数、播放效果和可重新渲染的构建”
负向触发词
  • 仅简单阅读或提取推文
  • 仅下载原始媒体
  • 调试实时嵌入内容
  • 信息流、搜索页面、私信、Spaces
  • 多条帖子组成的电影式推文串
  • 声称输出是 X 的精确浏览器级克隆

工作规则

以快照为准,而非实时推文页面。只获取一次数据,然后冻结数据,以完整画质保留下载到本地的媒体,接着从 snapshot.json 开始在本地迭代。

阅读指南

需求阅读
端到端工作流、保存根目录的行为和产物布局references/workflow.md
布局启发式、尺寸规则和可调参数references/layout.md
失败模式、GIF 尺寸、偏差和不支持的情况references/gotchas.md

注意事项

  1. 计数很快就会发生变化。如果用户关心某个特定时刻的点赞数、转发数或浏览量,请根据 snapshot.json 重新渲染。
  2. GIF 是预览素材,不是第二个主视频。渲染器会将 MP4 保留为高质量主文件,并仅在必要时降低 GIF 的分辨率、帧率和调色板深度,使其不超过 24 MB。
  3. 此渲染器会在本地重建推文界面,不保证与 X 自带的渲染器逐字节或逐像素一致。
  4. X 的公开媒体 URL 可能会过期。如果之后可能需要重新生成输出,请将下载的本地媒体保存在工作目录中。
  5. Playwright 的视口录制仅用于视觉呈现。最终 MP4 会以高质量保留录制的视觉主文件;如果本地视频文件包含音轨,还会混入原始媒体音频。GIF 不包含音频。
  6. 支持一条嵌套引用的帖子,包括播放被引用帖子中的视频;但不支持更深层的引用链,也不支持完整重建帖子串。
  7. 渲染后的 WebM 和 MP4 应与推文画布宽度及测量得到的推文高度一致。如果帖子卡在左上角,周围出现多余的灰色或空白区域,请先修正捕获几何参数,再重新调整推文 CSS。

评论

支持 Markdown