x-tracker

同步并归档 X 数据(关注列表、书签、个人推文),支持内容聚合、改写和 Notion 同步。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "x-tracker" with this command: npx skills add deletexiumu/agentskills-hub/deletexiumu-agentskills-hub-x-tracker

X Tracker

同步并归档 X 数据(关注列表、书签、个人推文),支持内容聚合、改写和 Notion 同步。

路径约定:

  • {SKILL_DIR} — skill 目录(含 scripts/、references/)

  • {PROJECT_ROOT} — skill 父目录(含 config.json、data/、digests/)

首次设置

  • 配置 OAuth 2.0:参考 references/oauth-setup.md

  • 初始化:cd {SKILL_DIR} && bun scripts/auth.ts init

  • 登录:cd {SKILL_DIR} && bun scripts/auth.ts login

所需 scope:tweet.read , users.read , follows.read , bookmark.read , offline.access

数据同步

重要:不要主动运行 sync-following.ts 。关注列表由定时任务或用户手动同步,新增关注需用户确认后才纳入跟踪。

cd {SKILL_DIR}

bun scripts/sync-following.ts # ⚠️ 仅限用户明确要求时运行

bun scripts/sync-bookmarks.ts # 书签 → data/bookmarks/ bun scripts/fetch-my-tweets.ts # 个人推文 → data/my-tweets/ bun scripts/fetch-following-tweets.ts # 关注者推文 → data/following-tweets/

日常同步(不含关注列表):bun scripts/sync-bookmarks.ts && bun scripts/fetch-my-tweets.ts && bun scripts/fetch-following-tweets.ts

每日精选(Digest)

cd {SKILL_DIR} && bun scripts/analyze.ts digest [--date YYYY-MM-DD]

零 API 调用,基于本地 following-tweets

  • bookmarks 。按 score = like + retweet×3 + bookmark×2 排序取 Top 20。输出 digests/{date}/digest.json 。

触发流程("每日精选"/"今日精选"):

  • 运行 digest 命令,生成 digests/{date}/digest.json

  • 读取 JSON,确认 date_distribution 日期分布

  • 按分类生成中文精选,每条格式:

  • 作者 | 类型 | 来源标签 | 互动数据

  • 英文原文(保留原始内容)

  • 中文翻译/摘要(不超过 2 句话概括核心)

  • 来源标签:🔖 书签 / 📌 双来源 / 无标签=关注

  • 根据 tweet_date 标注发布日期,非当日内容标注 [MM-DD]

  • 写入 {PROJECT_ROOT}/digests/{date}/digest.md

内容改写(Rewrite)

cd {SKILL_DIR} && bun scripts/analyze.ts rewrite [--date YYYY-MM-DD] [--top 10]

按分数取 Top N,输出 digests/{date}/rewrite.json (含 is_link_only 、expanded_url )。

触发流程("推文改写"/"内容改写"/"rewrite"):

  • 运行 rewrite 命令

  • 读取 JSON,确认日期:查看 date_distribution 中各日期占比,若当日(tweet_date = 今天)不足半数则展示分布并让用户确认是否继续

  • 纯链接处理(is_link_only: true ):列出这些推文的 expanded_url ,提示用户手动转存网页内容后再改写,跳过这些条目先处理其余内容

  • 并行 sub-agent(Task, general-purpose, model=sonnet),每条一个(跳过纯链接)

  • 改写风格见下方「改写风格指南」

  • 合并写入 digests/{date}/rewrite.md

改写风格指南(sub-agent prompt 必须包含):

  • 人称:第一人称,站在用户视角写,像发推/写公众号,不是写新闻稿

  • 语气:口语化、短句为主,可以自嘲、可以直接,不端着、不用"值得关注的是"之类的套话

  • 结构:标题(一句话抓眼球)+ 正文(200-400字),不要小标题堆叠

  • 内容:先说事实(一两句话讲清楚发生了什么),再说自己的看法/体感,可以联系自身使用经验

  • 禁止:AI 腔("值得注意的是"、"本质上"、"标志着"反复出现)、过度总结、三段式排比、空泛的"未来可期"

  • 参考调性:data/my-tweets/all.json 中的原创推文风格——中英混用、网络用语自然、技术人视角

风格分析(Style)

cd {SKILL_DIR} && bun scripts/analyze.ts style

分析个人推文风格,输出 data/my-style/style-profile.json 。

单条推文获取

cd {SKILL_DIR} && bun scripts/fetch-tweet.ts <tweet_id>

通过 X API v2 获取单条推文全文(含 note_tweet),JSON 输出到 stdout。

Notion 同步

cd {SKILL_DIR} && bun scripts/notion-sync.ts <following|bookmarks|all>

增量推送到 Notion 数据库。详见 references/notion-schema.md 。

配置

{PROJECT_ROOT}/config.json (gitignored):

{ "client_id": "...", "client_secret": "...", "access_token": "...", "refresh_token": "...", "user_id": "...", "data_dir": "./data", "notion": { "following_db_id": "...", "bookmarks_db_id": "..." } }

参考文档

  • references/x-api-endpoints.md — API 端点参考

  • references/oauth-setup.md — OAuth 2.0 配置指南

  • references/notion-schema.md — Notion 数据库 schema

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

ai-news-digest

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

x-ai-digest

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

wechat-daily-report

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

smart-data-query

No summary provided by upstream source.

Repository SourceNeeds Review