claw-tracker

SKILL.md

Claw Tracker

持续监测 X 账号对特定关键词的态度,自动抓取、分析、记录、对比。

功能

功能 说明
时间线抓取 通过 Camofox + Nitter 抓取用户最新推文
AI 态度分析 兼容任意 OpenAI 格式 API(OpenAI/DeepSeek/Moonshot/本地模型等)
增量追踪 通过 tweet_id 去重,只分析新推文
态度记录 JSON 存储完整态度历史
变化检测 自动检测态度变化并输出提示

态度标签

  • 未提及 — 推文完全没有提到该关键词
  • 已知悉(中立) — 提到但态度中立
  • 否认/澄清 — 明确否认关系或澄清误解
  • 反对/敌意 — 负面态度、批评、警告
  • 观察/好奇 — 表达兴趣、正在了解
  • 正式认领/绑定 — 宣布正式关系

使用方法

环境变量(推荐)

export AI_BASE_URL="https://api.openai.com/v1"   # 或任意兼容端点
export AI_API_KEY="sk-..."
export AI_MODEL="gpt-4o-mini"                     # 可选,默认 gpt-4o-mini

命令行

# 基本用法:监测 @elonmusk 对 "DOGE" 的态度
python -m scripts.tracker --user elonmusk --keyword DOGE

# 自定义参数
python -m scripts.tracker \
  --user elonmusk \
  --keyword DOGE \
  --limit 50 \
  --base-url "https://api.deepseek.com/v1" \
  --api-key "sk-..." \
  --model "deepseek-chat" \
  --pretty

从代码调用

from scripts.tracker import run_tracker

result = run_tracker(
    username="elonmusk",
    keyword="DOGE",
    limit=20,
    base_url="https://api.openai.com/v1",
    api_key="sk-...",
    model="gpt-4o-mini",
)

print(result["latest_attitude"])       # 当前最新态度
print(result.get("attitude_changes"))  # 态度变化列表(如有)

参数说明

参数 说明 默认值
--user X 用户名(不含@) 必填
--keyword 监测关键词 必填
--limit 抓取推文数量 20
--port Camofox 端口 9377
--nitter Nitter 实例域名 nitter.net
--data-dir 数据存储目录 ./data
--base-url AI API base URL 环境变量 AI_BASE_URL
--api-key AI API key 环境变量 AI_API_KEY
--model AI 模型名 环境变量 AI_MODEL
--pretty 美化 JSON 输出 false

输出格式

{
  "username": "elonmusk",
  "keyword": "DOGE",
  "new_tweets_found": 5,
  "new_records": 2,
  "total_records": 10,
  "latest_attitude": "观察/好奇",
  "attitude_changes": [
    {
      "from": "未提及",
      "to": "观察/好奇",
      "tweet_id": "123456789",
      "text_preview": "Just heard about this interesting project...",
      "reason": "推文表达了对该项目的好奇和关注"
    }
  ]
}

数据存储

态度记录保存在 data/ 目录下,文件名格式:{username}_{keyword}.json

{
  "username": "elonmusk",
  "keyword": "DOGE",
  "latest_attitude": "观察/好奇",
  "seen_tweet_ids": ["123", "456"],
  "records": [
    {
      "tweet_id": "123456789",
      "author": "@elonmusk",
      "text": "推文内容...",
      "time_ago": "2h",
      "attitude": "观察/好奇",
      "reason": "表达了好奇",
      "tracked_at": "2026-02-25 12:00:00"
    }
  ]
}

依赖

  • Python 3.7+(无第三方包)
  • Camofox 运行在 localhost:9377
  • 任意 OpenAI 兼容 AI API

文件结构

claw-tracker/
├── SKILL.md                    # 本文件
├── scripts/
│   ├── __init__.py
│   ├── camofox_client.py       # Camofox REST API 客户端
│   ├── timeline_fetcher.py     # 时间线抓取 + Nitter 快照解析
│   ├── attitude_analyzer.py    # AI 态度分析(兼容 OpenAI 格式)
│   └── tracker.py              # 主入口:追踪、记录、增量更新
└── data/                       # 运行时生成的态度记录
Weekly Installs
2
GitHub Stars
1
First Seen
Feb 25, 2026
Installed on
openclaw2
gemini-cli2
github-copilot2
codex2
kimi-cli2
cursor2