agentleFS
DevinChen2014DevinChen2014/socialdatax-skills/skills/media-comments/SKILL.md

media-comments

Skill6 starsChanged 8 days agoMITView on GitHub

Fetch and analyze comments/replies for supported SocialDataX public platforms. This version is backed by hosted platform MCP services and supports Xiaohongshu / XHS / RedNote, Douyin, Kuaishou, Bilibili, Zhihu, Instagram, X / Twitter, YouTube, TikTok, Weibo, Toutiao, and WeChat Channels. Also use this skill for 百度贴吧 / Baidu Tieba comments and replies, XHS product reviews and nested review replies, WeChat Official Account / 公众号 article comments and replies, and Weibo liker/repost lists by post URL. Also supports Haokan / 好看视频.

  • Reads credentials

The file

We split this skill into the rules it gives an agent

6 rules. About 0 are common, 4 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use SOCIALDATAX_API_KEY for SocialDataX requests.

    line 45
  2. Distinctive:

    Prefer the direct CLI when the agent can run shell commands.

    line 57
  3. Distinctive:

    Use the URL entrypoint shown in the CLI example for a content page URL, short link, or share text for first-level comments.

    line 306
  4. Distinctive:

    Use one first-level comment entrypoint shown in the CLI example at a time.

    line 336
  5. Very specific:

    Use npx -y socialdatax-skills@latest <platform> <action> --help for exact flags and values.

    line 339
  6. Distinctive:

    If MCP tools are already available in the current agent, use one of these tools:

    line 366

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md
<!-- AUTO-GENERATED from socialdatax-skill-source. Do not edit directly; run `node scripts/generate_socialdatax_skills.mjs`. -->

Media Comments

Use this skill when the user wants comment mining, audience feedback, sentiment themes, objections, pain points, FAQ extraction, or discussion summaries for supported social media content. Also use this skill for 百度贴吧 / Baidu Tieba comments and replies, XHS product reviews and nested review replies, WeChat Official Account / 公众号 article comments and replies, and Weibo liker/repost lists by post URL. Also supports Haokan / 好看视频.

Current platform support:

  • Xiaohongshu / XHS / RedNote notes through the xhs_get_note_comments_by_* and xhs_get_note_sub_comments_by_comment_id tools.
  • Douyin / 抖音 works, including video and image/text posts, through the douyin_get_video_comments_by_* and douyin_get_video_comment_replies_by_comment_id tools.
  • Kuaishou / 快手 works through the kuaishou_get_video_comments_by_* and kuaishou_get_video_comment_replies_by_comment_id tools.
  • Bilibili / 哔哩哔哩 / B站 comments through the bilibili_get_content_comments_by_* and bilibili_get_content_comment_replies_by_comment_id tools.
  • Zhihu / 知乎 comments through zhihu_get_content_comments_by_url and zhihu_get_comment_replies_by_url.
  • Instagram comments through instagram_get_post_comments_by_post_url and instagram_get_post_comment_replies_by_comment_id.
  • X / Twitter comments through the x_get_post_comments_by_* and x_get_post_comment_replies_by_comment_id tools.
  • YouTube comments through youtube_get_video_comments_by_url and youtube_get_video_comment_replies.
  • TikTok comments through the tiktok_get_post_comments_by_* and tiktok_get_post_comment_replies tools.
  • Weibo / 微博 posts through the weibo_get_post_comments_by_* and weibo_get_post_comment_replies_by_comment_id tools.
  • Toutiao / 今日头条 posts through the toutiao_get_post_comments_by_* and toutiao_get_post_comment_replies_by_comment_id tools.
  • WeChat Channels / 视频号 videos through the wechat_get_video_comments_by_* and wechat_get_video_comment_replies_by_comment_id tools.
  • Also use this skill for 百度贴吧 / Baidu Tieba comments and replies, XHS product reviews and nested review replies, WeChat Official Account / 公众号 article comments and replies, and Weibo liker/repost lists by post URL.
  • Haokan / 好看视频 top-level comments and paginated replies by video ID or video page URL.

API Key

Use SOCIALDATAX_API_KEY for SocialDataX requests. The only official website for requesting or managing API access is https://socialdatax.com/ai?from=github. If a user asks where to get a key, provide only this URL; do not infer alternate domains. 获取或管理 API Key:访问 https://socialdatax.com/ai?from=github,按官网的 API Key 申请/管理入口操作。环境变量名固定使用 SOCIALDATAX_API_KEY;不要引导用户使用其他域名。

  • Identify the invocation route and actual command execution environment first. Authenticated hosted MCP needs no local CLI variable or Node/npm. For direct CLI calls requiring a Key, run the probe below in the same execution environment; if readable, resume the task without overwriting existing configuration. An unavailable command tool or missing Node.js is an execution-environment issue, not evidence of a missing Key. Direct the user to the official URL above only when they confirm they have no Key.
  • Local Agent: prefer the client's documented persistent Secret / env that injects into Agent command processes. In WorkBuddy merge {"env":{"SOCIALDATAX_API_KEY":"<YOUR_API_KEY>"}} into .codebuddy/settings.local.json in the current trusted workspace, preserving other settings and env entries. This path is WorkBuddy-specific and workspace-scoped. Have the user enter the real Key locally and keep the file out of version control.
  • Remote Agent: configure the client's persistent Secret / env on the remote host or service that actually executes commands, reload its execution process as documented, then probe in that same remote session. Local machine environment variables do not automatically transfer to the remote host; a successful local probe does not establish remote access.
  • Container or cloud sandbox Agent: prefer the platform's persistent Secret / environment injection into the actual CLI container or sandbox. Recreate or reload it as documented and probe inside it. Host-machine variables are not a substitute for sandbox injection. If the platform cannot persist or inject variables, explain the limitation and use a platform-supported authentication route without bypassing isolation.
  • When the probe is false, first check the configuration/Secret host, workspace and scope, workspace trust, correct fields and preserved existing settings, injection into command processes (MCP-server-only env is insufficient), and the documented reload or full restart. Correct these and recheck in the original execution environment. Use that environment's documented user/service environment fallback only after confirming client persistence is unsupported or exhausting these checks; one failed probe or reload alone is not grounds to switch to OS configuration.
  • Apply OS fallback on the actual execution host: Windows user environment variables are an option. On macOS the user can read a Key via hidden local terminal input (for example Bash read -s) and pass it to launchctl setenv; this is login-session-only and needs reloading after login/computer restart. On input failure, empty input or setup failure, report an explicit error and stop with a nonzero exit status; temporary-variable cleanup must preserve the original failure status. Fully quit the relevant client and background processes before reopening; remote services reload according to their runtime, while sandboxes still require platform injection. A separate terminal export, shell startup file alone, or closing a window does not prove inheritance. Keep real keys out of chat, logs, screenshots, command history and Skill files.
  • In the same environment that executes the CLI, run node -e "console.log(JSON.stringify({apiKeyReadable:Boolean(['SOCIALDATAX_API_KEY','SOCIAL_MEDIA_MCP_API_KEY'].map(name=>process.env[name]?.trim()).find(Boolean))}))" and report only the boolean, never the Key or full environment. Follow CLI lookup order: trimmed primary variable, then legacy compatibility for existing configurations; all new setup still uses SOCIALDATAX_API_KEY. If apiKeyReadable is false, stop business requests and diagnose in the order above. True only proves a readable nonempty value; resume the original request to verify authentication, without claiming validity or available credits. Never inject a temporary value into the probe to force success.

Preferred Direct CLI

Prefer the direct CLI when the agent can run shell commands. It does not require MCP server configuration:

npx -y socialdatax-skills@latest xhs comments \
  --note-id "<note_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest xhs comments \
  --note-id "<note_id>" --all --include-replies --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest xhs comments \
  --url "<note_url_or_share_text>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest xhs sub-comments \
  --note-id "<note_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest douyin comments \
  --aweme-id "<aweme_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest douyin comments \
  --aweme-id "<aweme_id>" --all --include-replies --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest douyin comments \
  --url "<douyin_content_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest douyin replies \
  --aweme-id "<aweme_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest kuaishou comments \
  --photo-id "<photo_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest kuaishou comments \
  --photo-id "<photo_id>" --all --include-replies --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest kuaishou comments \
  --url "<kuaishou_content_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest kuaishou replies \
  --photo-id "<photo_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest bilibili comments \
  --content-id "<content_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest bilibili comments \
  --url "<bilibili_content_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest bilibili replies \
  --comment-object-id "<comment_object_id>" \
  --comment-object-type "<comment_object_type_integer>" --comment-id "<comment_id>" \
  --pretty --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest zhihu comments \
  --content-url "<zhihu_content_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest zhihu replies \
  --content-url "<zhihu_content_url_or_share_text>" --comment-id "<comment_id>" \
  --pretty --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest instagram comments \
  --post-url "<instagram_post_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest instagram replies \
  --post-id "<post_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest x comments \
  --post-id "<post_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest x comments \
  --post-url "<x_post_url_or_share_text>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest x replies \
  --post-id "<post_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest youtube comments \
  --url "<youtube_video_url>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest youtube replies \
  --reply-token "<reply_token>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest tiktok comments \
  --post-id "<post_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest tiktok comments \
  --url "<tiktok_post_url_or_share_text>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest tiktok replies \
  --post-id "<post_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest weibo comments \
  --post-id "<post_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest weibo comments \
  --post-id "<post_id>" --all --include-replies --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest weibo comments \
  --post-url "<weibo_post_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest weibo replies \
  --post-id "<post_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest toutiao comments \
  --post-id "<post_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest toutiao comments \
  --post-id "<post_id>" --all --include-replies --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest toutiao comments \
  --url "<toutiao_content_url_or_share_text>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest toutiao replies \
  --comment-id "<comment_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest wechat comments \
  --object-id "<object_id>" --object-nonce-id "<object_nonce_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest wechat comments \
  --object-id "<object_id>" --object-nonce-id "<object_nonce_id>" --all \
  --include-replies --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest wechat comments \
  --url "<wechat_video_url_or_share_text>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest wechat replies \
  --object-id "<object_id>" --object-nonce-id "<object_nonce_id>" \
  --comment-id "<comment_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest xhs product-reviews \
  --sku-id "<sku_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest xhs product-review-replies \
  --review-id "<review_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest xhs product-review-reply-replies \
  --review-id "<review_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest wechat article-comments \
  --url "<url>" --pretty --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest wechat article-replies \
  --url "<url>" --pretty --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest weibo likers \
  --url "<post_url>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest weibo reposts \
  --url "<post_url>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest tieba replies \
  --thread-id "<thread_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest tieba comments \
  --thread-id "<thread_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest tieba comments \
  --url "<url>" --pretty --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest haokan comments \
  --video-id "<video_id>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest haokan comments \
  --url "<video_url>" --pretty --source-client socialdatax-skills \
  --source-platform github --source-skill media-comments

npx -y socialdatax-skills@latest haokan replies \
  --video-id "<video_id>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

npx -y socialdatax-skills@latest haokan replies \
  --url "<video_url>" --comment-id "<comment_id>" --pretty \
  --source-client socialdatax-skills --source-platform github \
  --source-skill media-comments

Optional arguments:

  • XHS --note-id <note_id>: use the entire note_id returned from search, detail, comments, or creator note lists; do not pass only a prefix.
  • XHS comments --sort-type <default|time_descending|like_count_descending>: optional first-level comment sort order; omit it for the platform default order.
  • Douyin --aweme-id <aweme_id>: preferred when the video ID is already known and should anchor the comment thread.
  • Use the URL entrypoint shown in the CLI example for a content page URL, short link, or share text for first-level comments.
  • Douyin URL safety: do not pass video.play_url; use a Douyin content page URL, short link, or share text instead.
  • --comment-id <comment_id>: required only for reply commands whose CLI example uses comment IDs; YouTube replies require the returned --reply-token <reply_token> instead.
  • --page-token <next_page_token>: opaque pagination token; pass the complete returned next_page_token back unchanged for the same content item or comment chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
  • --pages <n>: fetch and merge N pages of first-level comments or replies.
  • --all: continue first-level comments or replies until next_page_token is empty; there is no default item or page cap.
  • --max-items <n>: stop after collecting N primary comments or replies.
  • XHS, Douyin, Kuaishou, Weibo, Toutiao, and WeChat Channels / 视频号 comments --include-replies: for supported first-level comments commands, also fetch all second-level replies under each returned first-level comment.
  • --pretty: output formatting only.
  • Kuaishou --photo-id <photo_id>: preferred when the Kuaishou work photo_id is already known and should anchor the comment thread.
  • Bilibili --content-id <content_id>: preferred for first-level comments when the Bilibili content ID is already known.
  • Bilibili --url <bilibili_content_url_or_share_text>: use for a Bilibili video, article, dynamic, short link, or share text for first-level comments.
  • Bilibili comments --sort-type <hot|time_descending>: optional first-level comment sort order; omit it for default sorting.
  • Bilibili replies --comment-object-id <comment_object_id>, --comment-object-type <comment_object_type>, and --comment-id <comment_id>: use the reply identifiers returned from Bilibili first-level comments.
  • Zhihu --content-url <zhihu_content_url_or_share_text>: use for Zhihu first-level comments and replies; replies also require --comment-id <comment_id>.
  • Zhihu comments --sort-type <default|time_descending>: optional first-level comment sort order; omit it for default sorting.
  • Instagram --post-url <instagram_post_url_or_share_text>: use for first-level comments; replies require --post-id <post_id> and --comment-id <comment_id>.
  • X / Twitter --post-id <post_id> or --post-url <x_post_url_or_share_text>: use for first-level comments; replies require --post-id <post_id> and --comment-id <comment_id>.
  • YouTube --url <youtube_video_url>: use for first-level comments; replies require the returned --reply-token <reply_token>.
  • YouTube comments --sort-type <hot|time_descending>: optional first-level comment sort order; omit it for default sorting.
  • TikTok --post-id <post_id> or --url <tiktok_post_url_or_share_text>: use for first-level comments; replies require --post-id <post_id> and --comment-id <comment_id>.
  • Weibo --post-id <post_id>: preferred when the Weibo post ID is already known and should anchor the comment thread.
  • Weibo --post-url <weibo_post_url_or_share_text>: use for a Weibo post URL, short link, or share text for first-level comments.
  • Weibo comments --sort-type <hot|time_descending>: optional first-level comment sort order; omit it for the default hot order, and keep it unchanged when continuing with --page-token.
  • Toutiao --post-id <post_id>: preferred when the post ID is already known and should anchor the comment thread.
  • Toutiao --url <toutiao_content_url_or_share_text>: use for a content URL, short link, or share text for first-level comments; replies require --comment-id <comment_id>.
  • WeChat Channels / 视频号 --object-id <object_id> and --object-nonce-id <object_nonce_id>: use together when both values are already known and should anchor the comment thread.
  • WeChat Channels / 视频号 --url <wechat_video_url_or_share_text>: use for a WeChat Channels video link or share text for first-level comments.
  • --source-client socialdatax-skills --source-platform github --source-skill media-comments: usage attribution for this Agent Skill; keep these values unchanged when running examples from this Skill.

Use one first-level comment entrypoint shown in the CLI example at a time; do not mix multiple content identifiers in one command. For reply commands, use the platform-specific reply identifiers shown in the CLI example.

The command prints JSON with platform, tool, arguments, and data. Multi-page output keeps merged primary comments in data.items and adds page_count, item_count, and the next-page marker. On platforms that support --include-replies, each first-level comment includes replies, replies_page_count, and replies_next_page_token. Use npx -y socialdatax-skills@latest <platform> <action> --help for exact flags and values. Paginated commands require the complete returned next_page_token. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses. Commands without --page-token, including suggestions and first-page-only searches, do not support pagination. Haokan / 好看视频: choose either --video-id or --url. comments returns top-level comments with reply previews; use replies with the parent comment_id to page through replies. --include-replies is not supported. Preserve the token and the same video/comment inputs when continuing. For replies authored by an X creator rather than comments under a post, use media-user-posts with x user-replies.

Safety Boundary

This skill is read-only. It uses SOCIALDATAX_API_KEY from the user's environment at runtime. Generated Skill files do not contain API keys. It does not read local browser data or perform login, posting, liking, commenting, or account changes.

MCP Tools

MCP tools matching the direct CLI commands above:

  • XHS: xhs_get_note_comments_by_note_id, xhs_get_note_comments_by_note_url, xhs_get_note_sub_comments_by_comment_id, xhs_get_product_reviews, xhs_get_product_review_replies, xhs_get_product_review_reply_replies
  • DOUYIN: douyin_get_video_comments_by_aweme_id, douyin_get_video_comments_by_url, douyin_get_video_comment_replies_by_comment_id
  • KUAISHOU: kuaishou_get_video_comments_by_photo_id, kuaishou_get_video_comments_by_url, kuaishou_get_video_comment_replies_by_comment_id
  • BILIBILI: bilibili_get_content_comments_by_id, bilibili_get_content_comments_by_url, bilibili_get_content_comment_replies_by_comment_id
  • ZHIHU: zhihu_get_content_comments_by_url, zhihu_get_comment_replies_by_url
  • INSTAGRAM: instagram_get_post_comments_by_post_url, instagram_get_post_comment_replies_by_comment_id
  • X: x_get_post_comments_by_post_id, x_get_post_comments_by_post_url, x_get_post_comment_replies_by_comment_id
  • YOUTUBE: youtube_get_video_comments_by_url, youtube_get_video_comment_replies
  • TIKTOK: tiktok_get_post_comments_by_post_id, tiktok_get_post_comments_by_url, tiktok_get_post_comment_replies
  • WEIBO: weibo_get_post_comments_by_post_id, weibo_get_post_comments_by_post_url, weibo_get_post_comment_replies_by_comment_id, weibo_get_post_liker_list_by_post_url, weibo_get_post_repost_list_by_post_url
  • TOUTIAO: toutiao_get_post_comments_by_post_id, toutiao_get_post_comments_by_url, toutiao_get_post_comment_replies_by_comment_id
  • WECHAT: wechat_get_video_comments_by_object_id, wechat_get_video_comments_by_url, wechat_get_video_comment_replies_by_comment_id, wechat_get_mp_article_comments_by_url, wechat_get_mp_article_comment_replies_by_url
  • BAIDU: baidu_tieba_get_post_comment_replies, baidu_tieba_get_post_comments_by_thread_id, baidu_tieba_get_post_comments_by_url
  • HAOKAN: haokan_get_video_comments_by_video_id, haokan_get_video_comments_by_url, haokan_get_comment_replies_by_video_id, haokan_get_comment_replies_by_url

If MCP tools are already available in the current agent, use one of these tools:

  • xhs_get_note_comments_by_note_id: use when the full note_id is known; do not pass only a prefix; optional sort_type accepts default, time_descending, or like_count_descending.
  • xhs_get_note_comments_by_note_url: use for note URLs, short links, or share text; optional sort_type accepts default, time_descending, or like_count_descending.
  • xhs_get_note_sub_comments_by_comment_id: use when the full note_id and first-level comment ID are known; do not pass only a note ID prefix.
  • douyin_get_video_comments_by_aweme_id: use when the aweme_id is known.
  • douyin_get_video_comments_by_url: use for Douyin content page URLs, short links, or share text; do not pass playback URLs such as video.play_url.
  • douyin_get_video_comment_replies_by_comment_id: use when both aweme_id and first-level comment ID are known; use page_token to continue pagination.
  • Comment pagination uses opaque page_token values. Pass the complete returned next_page_token back unchanged for the same content item or comment chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses. Prefer CLI --pages and --all for multiple comment pages; use --include-replies only on XHS, Douyin, Kuaishou, Weibo, Toutiao, and WeChat Channels / 视频号 when the user asks for a full first-level plus second-level comment tree.
  • For Douyin comments and replies, continue only when next_page_token is non-empty; an empty string provides no continuation token and does not establish complete comment or reply coverage.
  • XHS reply pagination also uses page_token and is bound to the current comment.
  • kuaishou_get_video_comments_by_photo_id: use when the photo_id is known.
  • kuaishou_get_video_comments_by_url: use for Kuaishou work page URLs, short links, or share text.
  • kuaishou_get_video_comment_replies_by_comment_id: use when the photo_id and first-level comment ID are known.
  • For Kuaishou comments and replies, continue only when next_page_token is non-empty; an empty string provides no continuation token and does not establish complete comment or reply coverage.
  • bilibili_get_content_comments_by_id: use when the Bilibili content_id is known; optional sort_type accepts hot or time_descending.
  • bilibili_get_content_comments_by_url: use for Bilibili video, article, dynamic, short link, or share text; optional sort_type accepts hot or time_descending.
  • bilibili_get_content_comment_replies_by_comment_id: use when comment_object_id, comment_object_type, and first-level comment ID are known.
  • zhihu_get_content_comments_by_url: use for Zhihu answer, article, or video URLs; optional sort_type accepts default or time_descending.
  • zhihu_get_comment_replies_by_url: use when the Zhihu content URL and first-level comment ID are known.
  • instagram_get_post_comments_by_post_url: use for Instagram post URLs.
  • instagram_get_post_comment_replies_by_comment_id: use when the Instagram post_id and first-level comment ID are known.
  • x_get_post_comments_by_post_id: use when the X post_id is known.
  • x_get_post_comments_by_post_url: use for X post URLs.
  • x_get_post_comment_replies_by_comment_id: use when the X post_id and first-level comment ID are known.
  • youtube_get_video_comments_by_url: use for YouTube video URLs; optional sort_type accepts hot or time_descending.
  • youtube_get_video_comment_replies: use the reply_token returned by YouTube first-level comments.
  • tiktok_get_post_comments_by_post_id: use when the TikTok post_id is known.
  • tiktok_get_post_comments_by_url: use for TikTok post URLs or share text.
  • tiktok_get_post_comment_replies: use when the TikTok post_id and first-level comment ID are known.
  • weibo_get_post_comments_by_post_id: use when the post_id is known; optional sort_type accepts hot or time_descending.
  • weibo_get_post_comments_by_post_url: use for Weibo post URLs, short links, or share text; optional sort_type accepts hot or time_descending.
  • weibo_get_post_comment_replies_by_comment_id: use when the post_id and first-level comment ID are known.
  • For Weibo comments and replies, continue only when next_page_token is non-empty; an empty string provides no continuation token and does not establish complete comment or reply coverage.
  • toutiao_get_post_comments_by_post_id and toutiao_get_post_comments_by_url: use for Toutiao first-level comments by post ID or content URL.
  • toutiao_get_post_comment_replies_by_comment_id: use for Toutiao replies with a first-level comment ID.
  • For Toutiao comments and replies, continue only when next_page_token is non-empty; an empty string provides no continuation token and does not establish complete comment or reply coverage.
  • wechat_get_video_comments_by_object_id: use when both object_id and object_nonce_id are known.
  • wechat_get_video_comments_by_url: use for WeChat Channels / 视频号 video links or share text.
  • wechat_get_video_comment_replies_by_comment_id: use when object_id, object_nonce_id, and first-level comment ID are known.
  • For WeChat Channels / 视频号 comments and replies, continue only when next_page_token is non-empty; an empty string provides no continuation token and does not establish complete comment or reply coverage.

Output Guidance

Group comments by observed themes before inferring sentiment or demand. Mention whether the result is one page or multiple pages. Empty comments can be a valid successful result. For Douyin comment media, use image_urls for attached pictures. When sticker is present, sticker.static_url is a static preview when non-empty, and sticker.animated_url is the animated resource when non-empty. For Bilibili comments, preserve returned comment_object_id and comment_object_type values so reply commands can use the same comment thread. For YouTube comments, preserve returned reply_token values so reply commands can continue the correct thread. For Zhihu, Instagram, X / Twitter, and TikTok comments, preserve returned post or content IDs and first-level comment IDs for reply commands. For Weibo and WeChat Channels / 视频号 comments, preserve returned content IDs from first-level comments so reply commands can use the same content item and comment chain. For Toutiao comments, preserve the first-level comment_id; reply commands use that comment ID alone.

Troubleshooting

  • Credential source: identify whether this request uses CLI or MCP. For CLI, check the effective configuration in the actual execution environment using the API Key section (primary variable first, then legacy compatibility). For MCP, check the authentication configuration of the current connection, without requiring a local CLI variable. If configuration is missing, follow the earlier client diagnosis and fallback order. Do not expose Keys, Authorization headers or secret configuration values.
  • If an SDK/dependency, npm network, Node.js/npm/npx availability, permission, or missing runtime error appears, treat it as a local runtime, dependency installation, network, or agent authorization issue, not a SocialDataX API key or business data error. Install or repair task dependencies only within the user's existing authorization, preferably in the project or a temporary environment. Execution permissions are not user authorization; explain and obtain approval before changes outside that scope, including global installs, runtime upgrades, or system configuration changes. When network or execution authorization is needed, ask the user to approve or finish authorization, then continue the same command; do not use public web search as a substitute for SocialDataX data.
  • If the CLI exits with status 1 and prints partial: true, preserve data.items and the error, and report incomplete results. This recovery rule overrides advice to rerun the original command. After resolving the error (including insufficient balance), resume only with a non-empty data.next_page_token and the same query parameters. Keep the original page and item limits: subtract cumulative page_count and item_count from the respective --pages and --max-items limits, if set. Stop parent-list pagination when either limit is reached. An empty token does not mean completion. Do not restart from the first page; investigate repeated-token errors before continuing.
  • With --include-replies, replies_partial marks incomplete replies and replies_pending marks comments not yet expanded. Finish those comments with the platform reply command, its required comment identifiers and any non-empty replies_next_page_token. For pending comments or a failed first reply request, resolve the error before starting that comment from its first reply page; investigate repeated-token errors first. Then use the outer data.next_page_token only if the parent-comment budget remains; finishing replies under retained comments does not add parent-comment pages. Never interchange parent and reply tokens or treat reply previews as complete.
  • For non-balance network or API errors, preserve the error message, check the effective credential source above, parameters, and link or ID format, then retry once when appropriate.
  • If the response returns insufficient_balance or says the balance/credits are insufficient, do not retry repeatedly. Show the official billing link in the error (https://socialdatax.com/dashboard/billing, including any channel parameters); if absent, use https://socialdatax.com/dashboard/billing. After recharging, resume the failed call; if a job or partial results already exist, follow the corresponding job-query or pagination recovery rules.
  • If the user has recharged but still sees insufficient balance, have the user confirm in the relevant account dashboard that this request uses the recharged account, following the credential source above. If an update is needed, have the user update the effective CLI configuration or MCP connection, reload as documented, and resume the original command. Do not require reconfiguration just because the primary local variable is absent, or expose credential values.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.