{
  "schemaVersion": "1.0",
  "item": {
    "slug": "social-media-suite",
    "name": "Social Media Suite",
    "source": "tencent",
    "type": "skill",
    "category": "其他",
    "sourceUrl": "https://clawhub.ai/Vitja1988/social-media-suite",
    "canonicalUrl": "https://clawhub.ai/Vitja1988/social-media-suite",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/social-media-suite",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=social-media-suite",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.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. 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. 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-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.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/social-media-suite"
    },
    "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/social-media-suite",
    "agentPageUrl": "https://openagent3.xyz/skills/social-media-suite/agent",
    "manifestUrl": "https://openagent3.xyz/skills/social-media-suite/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/social-media-suite/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. 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. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "🚀 Social Media Suite - Automated Posting",
        "body": "Post to Instagram and YouTube automatically. Schedule and publish content without manual uploads. The free alternative to expensive tools like Buffer or Hootsuite – pay only for AI tokens, no monthly fees."
      },
      {
        "title": "Use Cases",
        "body": "Content Creators: Automate daily posting to grow your audience\nMarketing Teams: Schedule campaigns across multiple platforms\nBusiness Owners: Maintain consistent social presence without daily effort\nAgencies: Manage multiple client accounts efficiently\n\nKey Features: Instagram image posting, YouTube video uploads, caption management, privacy settings, hashtag support, OAuth authentication.\n\nCurrently supported platforms:\n\nInstagram\nYouTube"
      },
      {
        "title": "1. Setup",
        "body": "Before you can use this skill, you need to set up credentials for each platform you want to use."
      },
      {
        "title": "1.1 Instagram Setup",
        "body": "Prerequisites:\n\nAn Instagram account with Creator or Business status.\nA Facebook Page connected to your Instagram account.\nA Facebook App with the necessary permissions: instagram_basic, instagram_content_publish, pages_show_list, pages_read_engagement.\nA long-lived User Access Token from your Facebook App.\n\n\n\nCredential Files:\nCreate the following files inside the {baseDir}/credentials/ directory:\n\ninstagram_user_access_token: Paste your long-lived User Access Token into this file.\ninstagram_account_id: Paste your Instagram Account ID into this file."
      },
      {
        "title": "1.2 YouTube Setup",
        "body": "Prerequisites:\n\nA Google Cloud Platform project with the YouTube Data API v3 enabled.\nOAuth 2.0 credentials (client ID and client secret).\n\n\n\nAuthentication:\nRun the one-time authentication command to authorize the skill and generate your initial credentials:\nbash {baseDir}/run.sh auth --platform youtube\n\nFollow the on-screen instructions to log in with your Google account and grant permission. This will create a youtube_credentials.json file in the {baseDir}/credentials/ directory."
      },
      {
        "title": "2. Usage",
        "body": "The primary command is post, which takes a platform and platform-specific arguments."
      },
      {
        "title": "2.1 Post to Instagram",
        "body": "This command posts a single image with a caption to your Instagram account.\n\nCommand:\n\nbash {baseDir}/run.sh post --platform instagram --image-url <url_to_image> --caption \"Your caption here\"\n\nParameters:\n\n--platform instagram: Specifies that the target is Instagram.\n--image-url <url_to_image>: Required. A public URL to the image you want to post. The image must be accessible from the internet.\n--caption \"<text>\": Required. The text caption for your post.\n\nExample:\n\nbash {baseDir}/run.sh post --platform instagram \\\n  --image-url \"https://i.imgur.com/removed.png\" \\\n  --caption \"Just chilling with my OpenClaw agent! 🤖 #OpenClaw #AI #automation\""
      },
      {
        "title": "2.2 Post to YouTube",
        "body": "This command uploads a video file to your YouTube channel.\n\nCommand:\n\nbash {baseDir}/run.sh post --platform youtube --file <path_to_video> --title \"Title\" --description \"Description\" [options]\n\nParameters:\n\n--platform youtube: Specifies that the target is YouTube.\n--file <path>: Required. The local path to the video file you want to upload.\n--title \"<text>\": Required. The title of the video (max 100 characters).\n--description \"<text>\": Required. The description of the video.\n--privacy <status>: Optional. The privacy status of the video. Can be public, unlisted, or private. (Default: private)\n--tags \"<tag1,tag2>\": Optional. Comma-separated list of tags for the video.\n\nExample:\n\nbash {baseDir}/run.sh post --platform youtube \\\n  --file \"/home/user/videos/my_awesome_video.mp4\" \\\n  --title \"My First AI-Generated Video\" \\\n  --description \"Check out this cool video that my OpenClaw agent helped me create!\" \\\n  --privacy \"public\" \\\n  --tags \"AI,OpenClaw,automation,tech\""
      },
      {
        "title": "Refresh YouTube Token",
        "body": "The YouTube access token expires periodically. The script attempts to refresh it automatically, but you can also trigger a manual refresh if needed.\n\nbash {baseDir}/run.sh auth --platform youtube --refresh"
      },
      {
        "title": "4. Scripts (for implementation)",
        "body": "This SKILL.md is the user-facing documentation. The actual logic would be implemented in a run.sh script that parses the arguments and calls the appropriate platform-specific logic.\n\nA simplified run.sh might look like this:\n\n#!/bin/bash\nset -e\n\nPLATFORM=\"\"\n\n# Parse platform first\nif [ \"$1\" == \"--platform\" ]; then\n    PLATFORM=\"$2\"\n    shift 2\nfi\n\ncase $PLATFORM in\n    instagram)\n        # Execute instagram logic with remaining args: \"$@\"\n        echo \"Calling Instagram script with: $@\"\n        # ./instagram_poster.sh \"$@\"\n        ;;\n    youtube)\n        # Execute youtube logic with remaining args: \"$@\"\n        echo \"Calling YouTube script with: $@\"\n        # ./youtube_uploader.sh \"$@\"\n        ;;\n    *)\n        echo \"Error: Unknown or missing platform. Use --platform [instagram|youtube]\"\n        exit 1\n        ;;\nesac"
      }
    ],
    "body": "🚀 Social Media Suite - Automated Posting\n\nPost to Instagram and YouTube automatically. Schedule and publish content without manual uploads. The free alternative to expensive tools like Buffer or Hootsuite – pay only for AI tokens, no monthly fees.\n\nUse Cases\nContent Creators: Automate daily posting to grow your audience\nMarketing Teams: Schedule campaigns across multiple platforms\nBusiness Owners: Maintain consistent social presence without daily effort\nAgencies: Manage multiple client accounts efficiently\n\nKey Features: Instagram image posting, YouTube video uploads, caption management, privacy settings, hashtag support, OAuth authentication.\n\nCurrently supported platforms:\n\nInstagram\nYouTube\n1. Setup\n\nBefore you can use this skill, you need to set up credentials for each platform you want to use.\n\n1.1 Instagram Setup\n\nPrerequisites:\n\nAn Instagram account with Creator or Business status.\nA Facebook Page connected to your Instagram account.\nA Facebook App with the necessary permissions: instagram_basic, instagram_content_publish, pages_show_list, pages_read_engagement.\nA long-lived User Access Token from your Facebook App.\n\nCredential Files: Create the following files inside the {baseDir}/credentials/ directory:\n\ninstagram_user_access_token: Paste your long-lived User Access Token into this file.\ninstagram_account_id: Paste your Instagram Account ID into this file.\n1.2 YouTube Setup\n\nPrerequisites:\n\nA Google Cloud Platform project with the YouTube Data API v3 enabled.\nOAuth 2.0 credentials (client ID and client secret).\n\nAuthentication: Run the one-time authentication command to authorize the skill and generate your initial credentials:\n\nbash {baseDir}/run.sh auth --platform youtube\n\n\nFollow the on-screen instructions to log in with your Google account and grant permission. This will create a youtube_credentials.json file in the {baseDir}/credentials/ directory.\n\n2. Usage\n\nThe primary command is post, which takes a platform and platform-specific arguments.\n\n2.1 Post to Instagram\n\nThis command posts a single image with a caption to your Instagram account.\n\nCommand:\n\nbash {baseDir}/run.sh post --platform instagram --image-url <url_to_image> --caption \"Your caption here\"\n\n\nParameters:\n\n--platform instagram: Specifies that the target is Instagram.\n--image-url <url_to_image>: Required. A public URL to the image you want to post. The image must be accessible from the internet.\n--caption \"<text>\": Required. The text caption for your post.\n\nExample:\n\nbash {baseDir}/run.sh post --platform instagram \\\n  --image-url \"https://i.imgur.com/removed.png\" \\\n  --caption \"Just chilling with my OpenClaw agent! 🤖 #OpenClaw #AI #automation\"\n\n2.2 Post to YouTube\n\nThis command uploads a video file to your YouTube channel.\n\nCommand:\n\nbash {baseDir}/run.sh post --platform youtube --file <path_to_video> --title \"Title\" --description \"Description\" [options]\n\n\nParameters:\n\n--platform youtube: Specifies that the target is YouTube.\n--file <path>: Required. The local path to the video file you want to upload.\n--title \"<text>\": Required. The title of the video (max 100 characters).\n--description \"<text>\": Required. The description of the video.\n--privacy <status>: Optional. The privacy status of the video. Can be public, unlisted, or private. (Default: private)\n--tags \"<tag1,tag2>\": Optional. Comma-separated list of tags for the video.\n\nExample:\n\nbash {baseDir}/run.sh post --platform youtube \\\n  --file \"/home/user/videos/my_awesome_video.mp4\" \\\n  --title \"My First AI-Generated Video\" \\\n  --description \"Check out this cool video that my OpenClaw agent helped me create!\" \\\n  --privacy \"public\" \\\n  --tags \"AI,OpenClaw,automation,tech\"\n\n3. Credential Management\nRefresh YouTube Token\n\nThe YouTube access token expires periodically. The script attempts to refresh it automatically, but you can also trigger a manual refresh if needed.\n\nbash {baseDir}/run.sh auth --platform youtube --refresh\n\n4. Scripts (for implementation)\n\nThis SKILL.md is the user-facing documentation. The actual logic would be implemented in a run.sh script that parses the arguments and calls the appropriate platform-specific logic.\n\nA simplified run.sh might look like this:\n\n#!/bin/bash\nset -e\n\nPLATFORM=\"\"\n\n# Parse platform first\nif [ \"$1\" == \"--platform\" ]; then\n    PLATFORM=\"$2\"\n    shift 2\nfi\n\ncase $PLATFORM in\n    instagram)\n        # Execute instagram logic with remaining args: \"$@\"\n        echo \"Calling Instagram script with: $@\"\n        # ./instagram_poster.sh \"$@\"\n        ;;\n    youtube)\n        # Execute youtube logic with remaining args: \"$@\"\n        echo \"Calling YouTube script with: $@\"\n        # ./youtube_uploader.sh \"$@\"\n        ;;\n    *)\n        echo \"Error: Unknown or missing platform. Use --platform [instagram|youtube]\"\n        exit 1\n        ;;\nesac"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Vitja1988/social-media-suite",
    "publisherUrl": "https://clawhub.ai/Vitja1988/social-media-suite",
    "owner": "Vitja1988",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/social-media-suite",
    "downloadUrl": "https://openagent3.xyz/downloads/social-media-suite",
    "agentUrl": "https://openagent3.xyz/skills/social-media-suite/agent",
    "manifestUrl": "https://openagent3.xyz/skills/social-media-suite/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/social-media-suite/agent.md"
  }
}