mcpField
X
xiaohongshu-tools

xiaohongshu-tools

github.com/postplusaiData & databases27138 installsUpdated 1d ago
Repository

About xiaohongshu-tools

A support skill for running local data-processing scripts in the Xiaohongshu skill family. It handles defined collection keys and workflows for normalizing datasets, ranking accounts, posts and products, clustering comments, and building topic maps or merchant reports.

Key features

  1. 01Runs supported XHS collection keys
  2. 02Normalizes collected datasets
  3. 03Ranks accounts, posts, and products
  4. 04Clusters comments
  5. 05Builds topic maps and merchant reports

Use cases

  1. 01Process collected XHS account posts
  2. 02Analyze XHS search results
  3. 03Create ranked product or account outputs

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/postplusai/postplus-skills --skill xiaohongshu-tools

After installing, type/xiaohongshu-toolsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

_postplus_shared/00-core/shared-collection/scripts/
collection_actor_run.mjs
_postplus_shared/00-core/shared-collection/scripts/lib/
hosted_collection_bridge.mjs
_postplus_shared/00-core/shared-runtime/scripts/
download_videos_from_manifest_with_ytdlp.mjs
_postplus_shared/00-core/shared-runtime/scripts/lib/
execution_approval.mjs
hosted_billing_summary.mjs
hosted_execution_protocol.mjs
hosted_media_generation_bridge.mjs
local_skill_cli.mjs
network_runtime.mjs
postplus_cli_config.mjs
postplus_cloud_client.mjs
skill_runtime.mjs
scripts/
build_xhs_merchant_report.mjs
build_xhs_topic_map.mjs
cluster_xhs_comments.mjs
extract_xhs_vendor_page_products.mjs
normalize_xhs_dataset.mjs
rank_xhs_accounts.mjs
rank_xhs_posts.mjs
rank_xhs_products.mjs
run_xhs_actor.mjs
scripts/lib/
xhs_common.mjs

Details

From the project README

Xiaohongshu Tools

Follow shared public skill rules in:

  • postplus-shared public skill rules

Use this skill when implementing or running the local execution layer for the Xiaohongshu skill family.

Main scripts:

  • scripts/run_xhs_actor.mjs
  • scripts/normalize_xhs_dataset.mjs
  • scripts/extract_xhs_vendor_page_products.mjs
  • scripts/rank_xhs_accounts.mjs
  • scripts/rank_xhs_posts.mjs
  • scripts/cluster_xhs_comments.mjs
  • scripts/rank_xhs_products.mjs
  • scripts/build_xhs_topic_map.mjs
  • scripts/build_xhs_merchant_report.mjs

Shared helpers:

  • scripts/lib/xhs_common.mjs

Reference contracts:

  • ../xiaohongshu-references/tool-contracts.md
  • ../xiaohongshu-references/normalized-schema.md

Execution Rule

Do not invent actor-specific downstream workflows unless the schema truly requires it.

Prefer:

  • scripts/run_xhs_actor.mjs
  • ${CLAUDE_SKILL_DIR}/_postplus_shared/00-core/shared-collection/scripts/collection_actor_run.mjs

This skill should stay focused on stable local contracts after raw data has been collected.

Supported Collection Keys

This support skill may run only these PostPlus public collection keys:

  • xhs-account-posts
  • xhs-search

Minimal runner examples:

node ${CLAUDE_SKILL_DIR}/scripts/run_xhs_actor.mjs \
  --collection-key xhs-account-posts \
  --input <work-folder>/.postplus/xiaohongshu-tools/xhs-account-posts-input.json \
  --output <work-folder>/.postplus/xiaohongshu-tools/xhs-account-posts-raw.json

node ${CLAUDE_SKILL_DIR}/scripts/run_xhs_actor.mjs \
  --collection-key xhs-search \
  --input <work-folder>/.postplus/xiaohongshu-tools/xhs-search-input.json \
  --output <work-folder>/.postplus/xiaohongshu-tools/xhs-search-raw.json

Do not pass provider-specific collection names or unpublished keys.

Public Skill Execution Contract

  • keep actor inputs, raw datasets, normalized datasets, ranking outputs, clustered comments, product rankings, and topic maps under <work-folder>/.postplus/xiaohongshu-tools/
  • keep only final user-facing shortlists or reports outside .postplus/
  • start with a bounded first pass before broader collection
  • if PostPlus Cloud service is unavailable, unauthorized, or returns a stable network error, stop immediately instead of switching to ad hoc shell glue

Comments

Markdown supported