{
  "schemaVersion": "1.0",
  "item": {
    "slug": "tweet-composer",
    "name": "Tweet Composer",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/minilozio/tweet-composer",
    "canonicalUrl": "https://clawhub.ai/minilozio/tweet-composer",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/tweet-composer",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=tweet-composer",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "assets/banner.svg",
      "references/algorithm-rules.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-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-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/tweet-composer"
    },
    "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/tweet-composer",
    "agentPageUrl": "https://openagent3.xyz/skills/tweet-composer/agent",
    "manifestUrl": "https://openagent3.xyz/skills/tweet-composer/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/tweet-composer/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": "Tweet Composer",
        "body": "Score and optimize tweets using rules derived from X's open-source ranking algorithm."
      },
      {
        "title": "How It Works",
        "body": "X's \"For You\" feed is ranked by a Grok-based transformer (Phoenix) that predicts 19 engagement\nactions for every candidate tweet. The final score is a weighted sum of these predictions.\nThis skill encodes the structural rules from that pipeline into a scoring system.\n\nFor the full algorithm breakdown, read references/algorithm-rules.md."
      },
      {
        "title": "Scoring a Draft Tweet",
        "body": "When a user asks to score or optimize a tweet draft:\n\nRead references/algorithm-rules.md for the complete rules engine\nAnalyze the draft against all rules\nOutput the score card in this format:\n\n🐦 Tweet Composer — Score: XX/100\n\n[Category scores with ✅ ⚠️ ❌ indicators]\n\n📊 Predicted Action Boost:\n├─ P(reply): [assessment]\n├─ P(favorite): [assessment]  \n├─ P(share): [assessment]\n├─ P(dwell): [assessment]\n└─ P(not_interested): [assessment]\n\n💡 Suggestions:\n→ [actionable improvements]\n\n✏️ Optimized version:\n\"[rewritten tweet]\""
      },
      {
        "title": "Scoring Rubric (Quick Reference)",
        "body": "Score 0-100 based on weighted categories:\n\nCategoryWeightWhat to checkReply potential25Questions, opinions, CTAs that drive repliesMedia20Native image/video attached (not link previews)Shareability15Would someone DM this or copy the link?Dwell time15Length that makes people stop scrollingContent quality10Clear, original, not genericFormat10No links in body, no hashtags, good lengthNegative signals5Risk of not_interested/mute/block"
      },
      {
        "title": "Thread Optimization",
        "body": "When composing threads:\n\nFirst tweet = strongest hook (DedupConversationFilter keeps only the best per conversation)\n3-6 tweets max (short threads > mega-threads)\nEach tweet self-contained (many see only the first)\nMedia on tweet 1 or 2 for photo_expand boost\nCTA in last tweet"
      },
      {
        "title": "Quick Rules (No Reference File Needed)",
        "body": "Links: Always in reply, never in body (learned penalty from lower engagement)\nHashtags: Zero. The model learns they reduce engagement\nLength: 100-200 chars sweet spot for single tweets\nMedia: Native image/video = separate P(photo_expand) and P(video_quality_view) predictions\nVideo: Must exceed minimum duration threshold for VQV weight to apply\nTiming: Post when your audience is active — engagement velocity in first 30 min is critical\nFrequency: AuthorDiversityScorer penalizes exponentially: 2nd post ~55% score, 3rd ~33%. Max 3-4 strong tweets/day\nQuote tweets: P(quote) has dedicated weight — QTs with added value outperform plain retweets\nEngagement bait: Questions/polls drive P(reply). \"What would you add?\" > \"Like if you agree\""
      }
    ],
    "body": "Tweet Composer\n\nScore and optimize tweets using rules derived from X's open-source ranking algorithm.\n\nHow It Works\n\nX's \"For You\" feed is ranked by a Grok-based transformer (Phoenix) that predicts 19 engagement actions for every candidate tweet. The final score is a weighted sum of these predictions. This skill encodes the structural rules from that pipeline into a scoring system.\n\nFor the full algorithm breakdown, read references/algorithm-rules.md.\n\nScoring a Draft Tweet\n\nWhen a user asks to score or optimize a tweet draft:\n\nRead references/algorithm-rules.md for the complete rules engine\nAnalyze the draft against all rules\nOutput the score card in this format:\n🐦 Tweet Composer — Score: XX/100\n\n[Category scores with ✅ ⚠️ ❌ indicators]\n\n📊 Predicted Action Boost:\n├─ P(reply): [assessment]\n├─ P(favorite): [assessment]  \n├─ P(share): [assessment]\n├─ P(dwell): [assessment]\n└─ P(not_interested): [assessment]\n\n💡 Suggestions:\n→ [actionable improvements]\n\n✏️ Optimized version:\n\"[rewritten tweet]\"\n\nScoring Rubric (Quick Reference)\n\nScore 0-100 based on weighted categories:\n\nCategory\tWeight\tWhat to check\nReply potential\t25\tQuestions, opinions, CTAs that drive replies\nMedia\t20\tNative image/video attached (not link previews)\nShareability\t15\tWould someone DM this or copy the link?\nDwell time\t15\tLength that makes people stop scrolling\nContent quality\t10\tClear, original, not generic\nFormat\t10\tNo links in body, no hashtags, good length\nNegative signals\t5\tRisk of not_interested/mute/block\nThread Optimization\n\nWhen composing threads:\n\nFirst tweet = strongest hook (DedupConversationFilter keeps only the best per conversation)\n3-6 tweets max (short threads > mega-threads)\nEach tweet self-contained (many see only the first)\nMedia on tweet 1 or 2 for photo_expand boost\nCTA in last tweet\nQuick Rules (No Reference File Needed)\nLinks: Always in reply, never in body (learned penalty from lower engagement)\nHashtags: Zero. The model learns they reduce engagement\nLength: 100-200 chars sweet spot for single tweets\nMedia: Native image/video = separate P(photo_expand) and P(video_quality_view) predictions\nVideo: Must exceed minimum duration threshold for VQV weight to apply\nTiming: Post when your audience is active — engagement velocity in first 30 min is critical\nFrequency: AuthorDiversityScorer penalizes exponentially: 2nd post ~55% score, 3rd ~33%. Max 3-4 strong tweets/day\nQuote tweets: P(quote) has dedicated weight — QTs with added value outperform plain retweets\nEngagement bait: Questions/polls drive P(reply). \"What would you add?\" > \"Like if you agree\""
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/minilozio/tweet-composer",
    "publisherUrl": "https://clawhub.ai/minilozio/tweet-composer",
    "owner": "minilozio",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/tweet-composer",
    "downloadUrl": "https://openagent3.xyz/downloads/tweet-composer",
    "agentUrl": "https://openagent3.xyz/skills/tweet-composer/agent",
    "manifestUrl": "https://openagent3.xyz/skills/tweet-composer/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/tweet-composer/agent.md"
  }
}