{
  "schemaVersion": "1.0",
  "item": {
    "slug": "x-smart-read",
    "name": "X Smart Read",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/nevaaron/x-smart-read",
    "canonicalUrl": "https://clawhub.ai/nevaaron/x-smart-read",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/x-smart-read",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=x-smart-read",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "AGENTS.md",
      "CONTRIBUTING.md",
      "README.md",
      "SETUP.md",
      "SKILL.md",
      "references/x-api-quickref.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/x-smart-read"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/x-smart-read",
    "agentPageUrl": "https://openagent3.xyz/skills/x-smart-read/agent",
    "manifestUrl": "https://openagent3.xyz/skills/x-smart-read/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/x-smart-read/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "X (Twitter) Personal Analytics",
        "body": "Monitor your X account — posts, engagement, mentions, followers. Read any tweet. Built for daily briefings and accountability."
      },
      {
        "title": "Triggers",
        "body": "Use this skill when the user asks about:\n\nTheir X / Twitter posts, timeline, or engagement\nMentions, replies, or who's talking about them on X\nFollower count, profile stats, follower growth\n\"What's happening on my X?\" / \"How are my posts doing?\"\n\"Check my Twitter mentions\" / \"Any new replies?\"\nMorning briefing / daily social media summary\n\"Am I on X too much?\" / accountability check\nReading a specific tweet or thread (user sends a tweet URL)\n\"What did @someone say?\" / reading other people's tweets\nBookmarking or saving tweets for later\nX/Twitter analytics or performance"
      },
      {
        "title": "Prerequisites",
        "body": "Run setup first (imports credentials from ~/.openclaw/.env or prompts interactively):\n\nuv run scripts/x_setup.py"
      },
      {
        "title": "Briefing — combined morning summary",
        "body": "# Full briefing: your posts + mentions + profile (last 24h, ~$0.02)\nuv run scripts/x_briefing.py\n\n# Custom lookback period\nuv run scripts/x_briefing.py --hours 48\n\n# Preview cost\nuv run scripts/x_briefing.py --dry-run"
      },
      {
        "title": "Timeline — your posts + engagement",
        "body": "# Recent posts with engagement metrics\nuv run scripts/x_timeline.py recent\n\n# Last 5 posts\nuv run scripts/x_timeline.py recent --max 5\n\n# Posts from last 24 hours\nuv run scripts/x_timeline.py recent --hours 24\n\n# Top posts by engagement (from local store, no API call)\nuv run scripts/x_timeline.py top --days 7\n\n# Refresh metrics for a specific tweet\nuv run scripts/x_timeline.py refresh TWEET_ID\n\n# Accountability check — are they on X right now?\nuv run scripts/x_timeline.py activity"
      },
      {
        "title": "Mentions — who's talking to/about you",
        "body": "# Recent mentions\nuv run scripts/x_mentions.py recent\n\n# Mentions from last 24 hours\nuv run scripts/x_mentions.py recent --hours 24\n\n# Mentions with context (shows what they replied to — costs extra)\nuv run scripts/x_mentions.py recent --context"
      },
      {
        "title": "Read — fetch any tweet or thread",
        "body": "# Read a tweet by URL\nuv run scripts/x_read.py https://x.com/user/status/123456\n\n# Read by bare ID\nuv run scripts/x_read.py 123456\n\n# Fetch full thread\nuv run scripts/x_read.py 123456 --thread\n\n# Preview cost\nuv run scripts/x_read.py --dry-run https://x.com/user/status/123456"
      },
      {
        "title": "Bookmarks — save and manage",
        "body": "# List your bookmarks\nuv run scripts/x_bookmarks.py list\n\n# Bookmark a post\nuv run scripts/x_bookmarks.py add TWEET_ID\n\n# Remove a bookmark\nuv run scripts/x_bookmarks.py remove TWEET_ID"
      },
      {
        "title": "User Profile — stats + follower tracking",
        "body": "# Your profile stats\nuv run scripts/x_user.py me\n\n# Track follower changes over time\nuv run scripts/x_user.py me --track\n\n# Look up another user\nuv run scripts/x_user.py lookup someuser"
      },
      {
        "title": "Setup & Spend",
        "body": "# Validate credentials\nuv run scripts/x_setup.py --check\n\n# Show config (secrets redacted)\nuv run scripts/x_setup.py --show\n\n# Weekly spend summary\nuv run scripts/x_setup.py --spend-report\n\n# 30-day spend report\nuv run scripts/x_setup.py --spend-report --days 30\n\n# Set budget mode\nuv run scripts/x_setup.py --budget-mode relaxed\n\n# Print version\nuv run scripts/x_setup.py --version"
      },
      {
        "title": "Cost Control Flags (all scripts)",
        "body": "# Preview cost without making the API call\nuv run scripts/x_timeline.py --dry-run recent\n\n# Override budget guard\nuv run scripts/x_timeline.py --force recent\n\n# Skip all budget checks and warnings\nuv run scripts/x_timeline.py --no-budget recent"
      },
      {
        "title": "Morning Brief",
        "body": "uv run scripts/x_briefing.py\n\nSingle command replaces running timeline + mentions + user separately. Costs ~$0.02."
      },
      {
        "title": "Accountability Check",
        "body": "uv run scripts/x_timeline.py activity\n\nUse this when the user should be working — it shows when they last posted and how active they've been. Nudge them if they're spending too much time on X."
      },
      {
        "title": "Weekly Review",
        "body": "uv run scripts/x_timeline.py top --days 7\nuv run scripts/x_user.py me --track"
      },
      {
        "title": "Agent Guidelines — READ THIS BEFORE CALLING ANY COMMAND",
        "body": "Every command costs real money. The X API charges per request. Follow these rules to minimize spend:"
      },
      {
        "title": "Rules",
        "body": "Never call the same command twice in one conversation unless the user explicitly asks for fresh data. The scripts cache locally — if you already ran recent this session, just reference those results.\nPrefer top over recent for repeat questions. top reads from the local store for free ($0). recent hits the API ($0.005).\nDon't use --context on mentions by default. It costs an extra $0.005 per reply thread it fetches. Only add it if the user specifically asks \"what were they replying to?\"\nUse --max 5 for quick checks. Default is 10-20. If the user just wants a summary, pull fewer.\nUse --hours 24 for briefings. Don't pull the full timeline when they just want \"what happened today.\"\nNever run all scripts unprompted. If the user asks \"what's happening on my X?\", use x_briefing.py instead of running 3 separate commands.\nFor accountability checks, use activity only. It's a single API call. Don't also pull mentions and profile — that triples the cost.\ntop and refresh are your friends. top is free (local data). refresh TWEET_ID updates just one tweet ($0.005) — use it when they ask \"how's my last post doing?\" instead of re-pulling the whole timeline.\nWatch the daily spend total. Every command output shows \"Today's spend: $X.XXX\". If it's approaching the budget limit, tell the user before making more calls.\nNever loop or retry on your own. If a command fails (402, rate limit, etc.), report the error. Don't retry automatically.\nx_read.py caches tweets — if the user asks about the same tweet again, it's already in the local store. No need to re-fetch.\nUse x_briefing.py for morning briefings instead of running timeline + mentions + user separately. It's cheaper ($0.02 vs $0.02 for 3 separate commands) and cleaner output."
      },
      {
        "title": "Cost Reference",
        "body": "ActionCostWhen to usex_briefing.py$0.02Morning briefing — one command does it allrecent$0.005Once per briefing, or when user asks for new poststop$0Anytime — serves from local storeactivity$0.005Accountability check, once per session maxrefresh ID$0.005User asks about a specific post's performancementions recent$0.005Once per briefing, or user asks about repliesmentions --context$0.005-0.03Only when user explicitly wants reply contextx_read.py URL$0.005User sends a tweet URL or asks to read a postx_read.py --thread$0.005-0.01User asks for full threadx_bookmarks.py list$0.005User wants to see saved bookmarksx_bookmarks.py add/remove$0Write actions are freeuser me$0.01Profile check, once per day is plentyuser me --track$0.01Morning brief only — saves follower deltauser lookup$0.01Only when user asks about another account--spend-report$0Check spending anytime--dry-run$0Preview cost before any command"
      },
      {
        "title": "Budget Modes",
        "body": "The user can set a budget enforcement mode via x_setup.py --budget-mode:\n\nguarded (default): Warn at 50/80/100%, block at limit\nrelaxed: Warn at 50/80/100%, never block\nunlimited: No warnings, no blocks"
      },
      {
        "title": "Budget Tiers",
        "body": "The user set a daily budget during setup. The scripts will warn and block when the limit is hit:\n\nlite: $0.03/day (~1 briefing)\nstandard: $0.10/day (~3-5 checks)\nintense: $0.25/day (~10+ checks)\n\nIf blocked, tell the user: \"Daily X API budget reached. Use --force to override, or wait until tomorrow.\""
      },
      {
        "title": "What NOT to do",
        "body": "Don't run commands \"just to have fresh data\" — only fetch when the user needs it\nDon't use --no-cache unless debugging\nDon't call user lookup on multiple accounts in a loop\nDon't refresh every tweet's metrics — only refresh specific ones the user asks about\nDon't combine recent + mentions + user in one response — use x_briefing.py instead"
      }
    ],
    "body": "X (Twitter) Personal Analytics\n\nMonitor your X account — posts, engagement, mentions, followers. Read any tweet. Built for daily briefings and accountability.\n\nTriggers\n\nUse this skill when the user asks about:\n\nTheir X / Twitter posts, timeline, or engagement\nMentions, replies, or who's talking about them on X\nFollower count, profile stats, follower growth\n\"What's happening on my X?\" / \"How are my posts doing?\"\n\"Check my Twitter mentions\" / \"Any new replies?\"\nMorning briefing / daily social media summary\n\"Am I on X too much?\" / accountability check\nReading a specific tweet or thread (user sends a tweet URL)\n\"What did @someone say?\" / reading other people's tweets\nBookmarking or saving tweets for later\nX/Twitter analytics or performance\nPrerequisites\n\nRun setup first (imports credentials from ~/.openclaw/.env or prompts interactively):\n\nuv run scripts/x_setup.py\n\nCommands\nBriefing — combined morning summary\n# Full briefing: your posts + mentions + profile (last 24h, ~$0.02)\nuv run scripts/x_briefing.py\n\n# Custom lookback period\nuv run scripts/x_briefing.py --hours 48\n\n# Preview cost\nuv run scripts/x_briefing.py --dry-run\n\nTimeline — your posts + engagement\n# Recent posts with engagement metrics\nuv run scripts/x_timeline.py recent\n\n# Last 5 posts\nuv run scripts/x_timeline.py recent --max 5\n\n# Posts from last 24 hours\nuv run scripts/x_timeline.py recent --hours 24\n\n# Top posts by engagement (from local store, no API call)\nuv run scripts/x_timeline.py top --days 7\n\n# Refresh metrics for a specific tweet\nuv run scripts/x_timeline.py refresh TWEET_ID\n\n# Accountability check — are they on X right now?\nuv run scripts/x_timeline.py activity\n\nMentions — who's talking to/about you\n# Recent mentions\nuv run scripts/x_mentions.py recent\n\n# Mentions from last 24 hours\nuv run scripts/x_mentions.py recent --hours 24\n\n# Mentions with context (shows what they replied to — costs extra)\nuv run scripts/x_mentions.py recent --context\n\nRead — fetch any tweet or thread\n# Read a tweet by URL\nuv run scripts/x_read.py https://x.com/user/status/123456\n\n# Read by bare ID\nuv run scripts/x_read.py 123456\n\n# Fetch full thread\nuv run scripts/x_read.py 123456 --thread\n\n# Preview cost\nuv run scripts/x_read.py --dry-run https://x.com/user/status/123456\n\nBookmarks — save and manage\n# List your bookmarks\nuv run scripts/x_bookmarks.py list\n\n# Bookmark a post\nuv run scripts/x_bookmarks.py add TWEET_ID\n\n# Remove a bookmark\nuv run scripts/x_bookmarks.py remove TWEET_ID\n\nUser Profile — stats + follower tracking\n# Your profile stats\nuv run scripts/x_user.py me\n\n# Track follower changes over time\nuv run scripts/x_user.py me --track\n\n# Look up another user\nuv run scripts/x_user.py lookup someuser\n\nSetup & Spend\n# Validate credentials\nuv run scripts/x_setup.py --check\n\n# Show config (secrets redacted)\nuv run scripts/x_setup.py --show\n\n# Weekly spend summary\nuv run scripts/x_setup.py --spend-report\n\n# 30-day spend report\nuv run scripts/x_setup.py --spend-report --days 30\n\n# Set budget mode\nuv run scripts/x_setup.py --budget-mode relaxed\n\n# Print version\nuv run scripts/x_setup.py --version\n\nCost Control Flags (all scripts)\n# Preview cost without making the API call\nuv run scripts/x_timeline.py --dry-run recent\n\n# Override budget guard\nuv run scripts/x_timeline.py --force recent\n\n# Skip all budget checks and warnings\nuv run scripts/x_timeline.py --no-budget recent\n\nWorkflows\nMorning Brief\nuv run scripts/x_briefing.py\n\n\nSingle command replaces running timeline + mentions + user separately. Costs ~$0.02.\n\nAccountability Check\nuv run scripts/x_timeline.py activity\n\n\nUse this when the user should be working — it shows when they last posted and how active they've been. Nudge them if they're spending too much time on X.\n\nWeekly Review\nuv run scripts/x_timeline.py top --days 7\nuv run scripts/x_user.py me --track\n\nAgent Guidelines — READ THIS BEFORE CALLING ANY COMMAND\n\nEvery command costs real money. The X API charges per request. Follow these rules to minimize spend:\n\nRules\nNever call the same command twice in one conversation unless the user explicitly asks for fresh data. The scripts cache locally — if you already ran recent this session, just reference those results.\nPrefer top over recent for repeat questions. top reads from the local store for free ($0). recent hits the API ($0.005).\nDon't use --context on mentions by default. It costs an extra $0.005 per reply thread it fetches. Only add it if the user specifically asks \"what were they replying to?\"\nUse --max 5 for quick checks. Default is 10-20. If the user just wants a summary, pull fewer.\nUse --hours 24 for briefings. Don't pull the full timeline when they just want \"what happened today.\"\nNever run all scripts unprompted. If the user asks \"what's happening on my X?\", use x_briefing.py instead of running 3 separate commands.\nFor accountability checks, use activity only. It's a single API call. Don't also pull mentions and profile — that triples the cost.\ntop and refresh are your friends. top is free (local data). refresh TWEET_ID updates just one tweet ($0.005) — use it when they ask \"how's my last post doing?\" instead of re-pulling the whole timeline.\nWatch the daily spend total. Every command output shows \"Today's spend: $X.XXX\". If it's approaching the budget limit, tell the user before making more calls.\nNever loop or retry on your own. If a command fails (402, rate limit, etc.), report the error. Don't retry automatically.\nx_read.py caches tweets — if the user asks about the same tweet again, it's already in the local store. No need to re-fetch.\nUse x_briefing.py for morning briefings instead of running timeline + mentions + user separately. It's cheaper ($0.02 vs $0.02 for 3 separate commands) and cleaner output.\nCost Reference\nAction\tCost\tWhen to use\nx_briefing.py\t$0.02\tMorning briefing — one command does it all\nrecent\t$0.005\tOnce per briefing, or when user asks for new posts\ntop\t$0\tAnytime — serves from local store\nactivity\t$0.005\tAccountability check, once per session max\nrefresh ID\t$0.005\tUser asks about a specific post's performance\nmentions recent\t$0.005\tOnce per briefing, or user asks about replies\nmentions --context\t$0.005-0.03\tOnly when user explicitly wants reply context\nx_read.py URL\t$0.005\tUser sends a tweet URL or asks to read a post\nx_read.py --thread\t$0.005-0.01\tUser asks for full thread\nx_bookmarks.py list\t$0.005\tUser wants to see saved bookmarks\nx_bookmarks.py add/remove\t$0\tWrite actions are free\nuser me\t$0.01\tProfile check, once per day is plenty\nuser me --track\t$0.01\tMorning brief only — saves follower delta\nuser lookup\t$0.01\tOnly when user asks about another account\n--spend-report\t$0\tCheck spending anytime\n--dry-run\t$0\tPreview cost before any command\nBudget Modes\n\nThe user can set a budget enforcement mode via x_setup.py --budget-mode:\n\nguarded (default): Warn at 50/80/100%, block at limit\nrelaxed: Warn at 50/80/100%, never block\nunlimited: No warnings, no blocks\nBudget Tiers\n\nThe user set a daily budget during setup. The scripts will warn and block when the limit is hit:\n\nlite: $0.03/day (~1 briefing)\nstandard: $0.10/day (~3-5 checks)\nintense: $0.25/day (~10+ checks)\n\nIf blocked, tell the user: \"Daily X API budget reached. Use --force to override, or wait until tomorrow.\"\n\nWhat NOT to do\nDon't run commands \"just to have fresh data\" — only fetch when the user needs it\nDon't use --no-cache unless debugging\nDon't call user lookup on multiple accounts in a loop\nDon't refresh every tweet's metrics — only refresh specific ones the user asks about\nDon't combine recent + mentions + user in one response — use x_briefing.py instead"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/nevaaron/x-smart-read",
    "publisherUrl": "https://clawhub.ai/nevaaron/x-smart-read",
    "owner": "nevaaron",
    "version": "2.0.4",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/x-smart-read",
    "downloadUrl": "https://openagent3.xyz/downloads/x-smart-read",
    "agentUrl": "https://openagent3.xyz/skills/x-smart-read/agent",
    "manifestUrl": "https://openagent3.xyz/skills/x-smart-read/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/x-smart-read/agent.md"
  }
}