mcpField
X
x-research

x-research

github.com/trailofbits生产力52379 次安装15 周前更新
代码仓库

关于 x-research

x-research 是用于研究 X/Twitter 最新讨论的 Agent 技能。其命令行工具支持迭代搜索、跟进讨论串和链接内容,并整理带来源的简报,还提供筛选、关注列表和缓存。

主要功能

  1. 01按查询与互动指标筛选搜索
  2. 02获取用户资料、推文和讨论串
  3. 03通过关注列表跟踪账号
  4. 04缓存重复搜索结果
  5. 05导出 JSON 或 Markdown

适用场景

  1. 01了解某个主题的最新社区观点
  2. 02追踪技术讨论及其链接资源
  3. 03监控指定账号的发帖
  4. 04收集市场研究的带来源资料

安装

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

$npx skills add https://github.com/trailofbits/skills-curated --skill x-research

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

包含的文件

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

data/
watchlist.example.json
references/
x-api.md
scripts/
pyproject.toml
x_api.py
x_cache.py
x_format.py
x_search.py
x_xai.py

详细介绍

X 研究

在 X/Twitter 上开展 Agentic 研究。将研究问题拆解为有针对性的搜索, 反复优化、跟进讨论串、深入查看链接内容,并综合整理有来源依据的简报。

有关 X API 的详细信息(端点、运算符、响应格式),请阅读 {baseDir}/skills/x-research/references/x-api.md。

前提条件

  • X API Bearer Token —— 设置 X_BEARER_TOKEN(或 XAI_API_KEY)环境变量
  • Python 3.11+ 和 uv(pip install uv 或 https://docs.astral.sh/uv/)

CLI 工具

所有命令都使用 uv run 自动管理依赖项:

搜索
uv run {baseDir}/skills/x-research/scripts/x_search.py search "<query>" [options]

选项:

  • --sort likes|impressions|retweets|recent —— 排序方式(默认:likes)
  • --since 1h|3h|12h|1d|7d —— 时间筛选(默认:最近 7 天)
  • --min-likes N —— 按最低点赞数筛选
  • --min-impressions N —— 按最低展示次数筛选
  • --pages N —— 要获取的页数,1-5(默认:1,每页 100 条推文)
  • --limit N —— 最多显示的结果数(默认:15)
  • --quick —— 快速模式:1 页、最多 10 条结果、自动过滤噪声、缓存 1 小时
  • --from-user <username> —— 在查询中使用 from:username 的简写
  • --quality —— 过滤互动较少的推文(至少 10 个赞,事后筛选)
  • --no-replies —— 排除回复
  • --save —— 将结果保存到 ~/x-research-output/
  • --json —— 输出原始 JSON
  • --markdown —— 输出 Markdown,供研究文档使用

除非查询中已包含 -is:retweet,否则会自动添加。所有搜索都会显示预计 API 费用。

示例:

uv run {baseDir}/skills/x-research/scripts/x_search.py search "claude code" --sort likes --limit 10
uv run {baseDir}/skills/x-research/scripts/x_search.py search "from:anthropic" --sort recent
uv run {baseDir}/skills/x-research/scripts/x_search.py search "(cursor OR windsurf) AI editor" --pages 2 --save
uv run {baseDir}/skills/x-research/scripts/x_search.py search "AI agents" --quick
uv run {baseDir}/skills/x-research/scripts/x_search.py search "AI agents" --quality --quick
个人资料
uv run {baseDir}/skills/x-research/scripts/x_search.py profile <username> [--count N] [--replies] [--json]

获取特定用户的近期推文(默认排除回复)。

讨论串
uv run {baseDir}/skills/x-research/scripts/x_search.py thread <tweet_id> [--pages N]

根据根推文 ID 获取完整对话串。

单条推文
uv run {baseDir}/skills/x-research/scripts/x_search.py tweet <tweet_id> [--json]
关注列表
uv run {baseDir}/skills/x-research/scripts/x_search.py watchlist                        # Show all
uv run {baseDir}/skills/x-research/scripts/x_search.py watchlist add <user> [note]      # Add account
uv run {baseDir}/skills/x-research/scripts/x_search.py watchlist remove <user>           # Remove
uv run {baseDir}/skills/x-research/scripts/x_search.py watchlist check                   # Check recent

关注列表存储在 {baseDir}/skills/x-research/data/watchlist.json。

缓存
uv run {baseDir}/skills/x-research/scripts/x_search.py cache clear

有效期为 15 分钟。避免重复获取相同查询的结果。

研究循环(Agentic)

进行深入研究(而非仅快速搜索)时,请遵循以下循环:

1. 将问题拆解为查询

使用 X 搜索运算符,将研究问题转化为 3-5 个关键词查询:

  • 核心查询:针对主题的直接关键词
  • 专家声音:使用 from: 指定已知专家
  • 痛点:使用 (broken OR bug OR issue OR migration) 等关键词
  • 正面信号:使用 (shipped OR love OR fast OR benchmark) 等关键词
  • 链接:使用 url:github.com 或 url: 指定域名
  • 减少噪声:-is:retweet(自动添加),必要时添加 -is:reply
  • 垃圾信息过滤:针对加密货币相关主题,添加 -airdrop -giveaway -whitelist
2. 搜索并提取信息

通过 CLI 逐一运行每个查询。每次搜索后,评估:

  • 是有效信息还是噪声?调整运算符。
  • 是否有值得专门用 from: 搜索的关键人物?
  • 是否有值得通过 thread 命令跟进的讨论串?
  • 是否有值得用 WebFetch 深入查看的链接资源?
3. 跟进讨论串

当推文互动量很高或是讨论串的开篇推文时:

uv run {baseDir}/skills/x-research/scripts/x_search.py thread <tweet_id>
4. 深入查看链接内容

当推文链接到 GitHub 仓库、博文或文档时,使用 WebFetch 获取内容。优先处理以下链接:

  • 被多条推文引用
  • 来自高互动量推文
  • 指向与问题直接相关的技术资源
5. 综合整理

按主题而非查询对发现进行归类:

### [Theme/Finding Title]

[1-2 sentence summary]

- @username: "[key quote]" (NL, NI) [Tweet](url)
- @username2: "[another perspective]" (NL, NI) [Tweet](url)

Resources shared:
- [Resource title](url) -- [what it is]
6. 保存

使用 --save 标志,或手动保存。

优化启发式

  • 噪声太多? 添加 -is:reply,使用 --sort likes,缩小关键词范围
  • 结果太少? 使用 OR 扩大范围,移除限制性运算符
  • 结果中垃圾信息太多? 添加 -$ -airdrop -giveaway -whitelist
  • 只看专家观点? 使用 from: 或 --min-likes 50
  • 重视实质内容而非热门观点? 使用 has:links 搜索

适用场景

  • 研究开发者、专家或社区对某个主题的看法
  • 获取突发新闻或产品发布的实时观点
  • 查找关于库、框架或 API 的技术讨论
  • 监控关键账号发布的内容
  • 收集有来源的证据,用于竞争分析或市场调研
  • 在深入调查前快速了解某个主题的舆情

不适用场景

  • 发布推文、回复或管理 X 账号(只读工具)
  • 进行超过 7 天的历史研究(仅使用近期搜索端点)
  • 搜索非 X 平台(改用网络搜索工具)
  • 网络搜索能提供更佳结果的任务(X 最适合获取实时观点、讨论和突发新闻,而非参考文档)

成本注意事项

X API 按使用量计费(每读取一条帖子收费 $0.005,每次用户查询收费 $0.01)。快速模式下,每次搜索的费用低于约 $0.50。每次搜索后请务必查看费用显示。缓存可避免重复收费。完整定价请参阅 references/x-api.md。

文件结构

skills/x-research/
  SKILL.md           (this file)
  scripts/
    x_search.py      (CLI entry point, run with uv)
    x_api.py         (X API wrapper)
    x_cache.py       (file-based cache, 15min TTL)
    x_format.py      (terminal + markdown formatters)
  data/
    watchlist.json   (accounts to monitor)
    cache/           (auto-managed)
  references/
    x-api.md         (X API endpoint reference)

评论

支持 Markdown