mcpField
A
add-x-tweet

add-x-tweet

github.com/bklit营销与增长1.8k644 次安装今天更新
代码仓库

关于 add-x-tweet

add-x-tweet 是用于在首页网格中添加、替换或调整推文评价顺序的仓库技能。它获取推文元数据、更新评价数据,并运行 TypeScript 检查。

主要功能

  1. 01从 URL 获取推文元数据
  2. 02添加或替换评价条目
  3. 03按规则设置顺序和优先级
  4. 04规范化头像 URL
  5. 05运行 TypeScript 检查

适用场景

  1. 01添加作为社会证明的推文
  2. 02替换首页现有评价
  3. 03调整网格中的评价优先顺序

安装

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

$npx skills add https://github.com/bklit/bklit-ui --skill add-x-tweet

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

附带文件scripts/fetch-tweet.mjs

详细介绍

添加 X 推文推荐

在主页的推荐内容网格中添加社交证明推文。

使用场景

  • 用户提供一个或多个 https://x.com/.../status/... URL
  • 用户要求替换、优先展示或重新排列推荐内容
  • 用户说“添加推文”“新增推荐”或类似内容

工作流

1. 获取推文元数据

在仓库根目录运行获取脚本(需要网络连接):

node .agents/skills/add-x-tweet/scripts/fetch-tweet.mjs "https://x.com/user/status/123..."

如果有多个 URL,可传入每个 URL,也可以针对每个 URL 分别运行一次。

脚本会输出 JSON:

{
  "id": "123...",
  "url": "https://x.com/user/status/123...",
  "author": { "name": "...", "handle": "@user", "avatar": "https://pbs.twimg.com/...", "verified": true },
  "content": "tweet text without @uixmat prefix"
}

备用方案: 如果脚本失败,请使用 Twitter oEmbed:

curl -sL "https://publish.twitter.com/oembed?url=TWEET_URL&omit_script=1"

解析 author_name 和 HTML <p> 中的文本。头像仍需通过 fxtwitter 获取,或手动提供个人资料图片 URL。

2. 编辑 apps/web/lib/testimonials.ts
  • 使用状态 ID作为 id(URL 中的数字字符串)
  • 将 url 设为规范的推文 URL(不含查询参数)
  • 通过 twitterAvatarUrl() 处理头像(将任何尺寸后缀规范为 _bigger;头像为 73×73,显示尺寸为 40px)
  • 从内容开头移除 @uixmat;清除首尾空白
  • 如果很长的推文末尾带有推广链接,则适当缩短(保留赞扬内容,删除纯链接的结尾)
3. 排序规则

Masonry 使用 CSS 分栏(每列从上到下排列)。在 lg 屏幕上,索引 0–2 = 第 1 列顶部 3 项,3–5 = 第 2 列顶部 3 项,6–8 = 第 3 列顶部 3 项。

  • 用户要求优先展示时:在索引 0–8 中下一个空位放入该条目,且不得重复 ID
  • 用户要求替换时:添加新条目之前先移除旧条目(按用户名或旧 ID 匹配)
  • 根据脚本输出设置 author.verified(通过 FxTwitter 获取 author.verification.verified)
4. 折叠网格

主页在显示 查看更多之前会展示 testimonialCollapsedCount(6)张卡片。添加推文时无需更改,除非用户要求调整可见行数。

5. 验证
cd apps/web && npx tsc --noEmit -p tsconfig.json

打开主页——网格应为 3 列,并带有底部渐隐效果;点击查看更多后,最大高度会展开。

数据来源

主要来源:FxTwitter API https://api.fxtwitter.com/{user}/status/{id}——返回作者姓名、screen_name、avatar_url 和文本。

请勿提交 API 密钥;脚本仅在添加推文时使用公共端点。

示例条目

{
  id: "2056717453816729751",
  url: "https://x.com/jordienr/status/2056717453816729751",
  author: {
    name: "jordi",
    handle: "@jordienr",
    avatar: twitterAvatarUrl(
      "https://pbs.twimg.com/profile_images/2053541405121769475/TUDez6zL_200x200.jpg"
    ),
    verified: true,
  },
  content: "bklit saved my marriage",
},

评论

支持 Markdown