[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DBXVZST8SB7K4P6BRCGTA2":3,"skill-same:01M6DBXVZST8SB7K4P6BRCGTA2":77},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":31,"publishedAt":52,"linkOnly":53,"markdownContent":54,"markdownBody":55,"frontMatter":56,"refName":57,"commitSha":58,"skillDirectory":59,"forksCount":14,"repositoryHtmlUrl":60,"repositoryHomepageUrl":6,"ownerHtmlUrl":61,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":62,"install":63,"resources":76},"01M6DBXVZST8SB7K4P6BRCGTA2","social-media-toolchain",null,"Use when working with the user's personal social-media MCP servers (Instagram live, Facebook Messenger groups\u002Fpages, WhatsApp proof-of-concept, TikTok public read-only) - which server does what, their auth and setup, the per-platform tool inventory, residential-proxy and account-state guidance, and the hard limits (E2EE, client-version gotchas, ToS and ban risk).","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial-media-toolchain\u002FSKILL.md",[18,23,26],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000019","营销推广","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000035","市场营销","PROFESSION","适用职业",[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],"social media toolchain","social","Media","social media","use","pages","platform","facebook","tiktok","e2ee","only","version","MCP","instagram","tool","social-media","inventory","risk","proxy","auth","2026-11-10 10:12:30",false,"---\nname: social-media-toolchain\ndescription: Use when working with the user's personal social-media MCP servers (Instagram live, Facebook Messenger groups\u002Fpages, WhatsApp proof-of-concept, TikTok public read-only) - which server does what, their auth and setup, the per-platform tool inventory, residential-proxy and account-state guidance, and the hard limits (E2EE, client-version gotchas, ToS and ban risk).\n---\n\n# Social Media MCP Toolchain\n\n## Overview\n\nThe user has self-hosted, private-API MCP servers for their own personal accounts. Each lives in `~\u002Fsource\u002Frepos\u002F` with its own `SETUP.md`. Status today: **Instagram = live\u002Fregistered**, **Facebook = live\u002Fexpanded (Messenger incl. E2EE DMs + Page + IG-Graph, 33 tools)**, **WhatsApp = built but proof-of-concept ONLY (do not register or use for routine tasks)**. **TikTok = built: a read-only public scraper (trending works keyless, the other tools need an ms_token).** All use **private\u002Funofficial APIs**, so each carries **Terms-of-Service and account-ban risk** — keep usage human-paced (especially anything that writes\u002Fsends), and never commit credentials. Secrets (cookies, sessions, tokens, `auth_info\u002F`, `*.db`, `.env`) are `.gitignore`d in every repo.\n\n| Platform | Repo (`~\u002Fsource\u002Frepos\u002F`) | Runtime | Auth | Reads | Status \u002F Hard limit |\n|---|---|---|---|---|---|\n| **Instagram** | `insta-mcp` | Node (JS) | session.json from a 2FA login (`login.mjs`); real password not stored | saved, posts, feed, search, **DMs**, liked, stories | **LIVE \u002F registered.** Library spoofs a stale app version → IG `unsupported_version` checkpoint; **fixed** by impersonating the device's current IG app version (`src\u002Findex.ts`, env `IG_APP_VERSION`) |\n| **Facebook** (Messenger + Page + IG-Graph) | `fb-messenger-mcp` | Python (venv) | facebook.com **cookies** (`data\u002Fcookies.json`, C3C export; **+ `fr` cookie** for E2EE) + optional `FB_PAGE_ACCESS_TOKEN` | Messenger (groups\u002Frooms + **E2EE 1:1 DMs**), Page posts\u002Finsights\u002Fmoderation, IG-Graph (business IG) | **LIVE \u002F expanded to 33 tools.** E2EE personal DMs now readable via the fbchat-v2 bridge (needs the `fr` cookie); FB has no personal-profile post API → personal Reels via the Playwright `fbreels` path |\n| **WhatsApp** | `whatsapp-mcp` | Node (TS, Baileys) | **QR link** (phone → WhatsApp → Linked Devices) | chats, messages, contacts, search; can **send** | **PROOF-OF-CONCEPT ONLY — do NOT register or use for routine tasks.** Built + vetted clean, but kept as a POC: Baileys is unofficial → WhatsApp can ban (would need a secondary number); incoming group history is thin |\n| **TikTok** | `tiktok-mcp` | Python (TikTok-Api 7.3.3) | none (public scrape); optional `ms_token` cookie | trending, user info\u002Fposts\u002Flikes, hashtag, video details\u002Fcomments\u002Frelated, user search — read-only | **BUILT — public read-only only.** No own feed, no saved, no DMs, no posting. `trending` keyless; other tools need an `ms_token`. See [[tiktok-public-research]] |\n\n## Registering \u002F loading\n\nEach MCP is registered with `claude mcp add \u003Cname> -- \u003Ccommand>` (see each repo's `SETUP.md` and the companion SETUP-GUIDE for the exact command). **MCP tools only load when Claude Code restarts.** When tools are not yet loaded, the same capability can be exercised directly via the repo's scripts (e.g. a Node one-shot against the saved Instagram session).\n\n## Egress: residential proxy + account state\n\nSome setups need a **residential proxy** in front of the IG \u002F FB egress; some do not. The rule is about **where the MCP is running**, not which tool you call:\n\n- **Running locally** (on the user's own residential IP) → **no proxy.** IG\u002FFB see a normal home IP.\n- **Running on a cloud \u002F datacenter host** (e.g. an always-on VM) → route IG and FB through the **Byteful sticky-Romania residential proxy** so a datacenter IP does not trigger an instant ban. **WhatsApp goes direct** (tolerant of a cloud IP). The endpoints live (gitignored) at `source\u002Frepos\u002Fsocial-mcp-deploy\u002Fproxy-endpoints.secret` — never inline or echo the credential string.\n\n**Account-state dimensions that change the setup (social only):**\n\n- **Instagram clean vs FLAGGED.** A flagged account (this one was flagged during the `unsupported_version` work) needs the residential proxy + **minimal call volume** + extra caution: it can re-checkpoint even via the proxy. Keep reads light; avoid bursts; surface any challenge instead of retrying.\n- **Facebook personal 1:1 vs groups\u002Fpages.** 1:1 Messenger is E2EE and unreadable here; only group \u002F room \u002F page threads are accessible.\n- **WhatsApp primary vs secondary number.** POC only — if it were ever used for real, prefer a **secondary** number (ban risk on the primary).\n- **Local vs cloud egress.** Drives the proxy decision above.\n\n**Setup details:** see the companion social MCP SETUP-GUIDE (`docs\u002FSETUP-GUIDE.md`) for the per-platform auth, registration commands, proxy wiring, and the cloud-deploy steps. This skill is the quick reference; the SETUP-GUIDE is the runbook.\n\n## Tool inventory (logical names)\n\n- **Instagram** (`insta-mcp`): `get_saved_posts`, `get_recent_posts`, `get_timeline`, `get_discover`, `search_instagram`, `get_liked_posts`, `get_inbox`, `get_direct_messages`, `get_stories`, `get_account_overview`, `get_followers`, `get_following` (+ `upload_reel`\u002F`upload_photo`\u002F`upload_video`\u002F`upload_album`, `send_direct_message`, `follow_user`\u002F`unfollow_user`, `like_post`\u002F`add_comment`, `get_post_insights`, `get_highlights`, `get_tag_feed`, `edit_profile`, `set_privacy` — 36 total).\n  - **Two IG paths (best-of-both, no collision):** the `insta-mcp` tools above are for a **personal** account (private API, ToS-risky). For a **business\u002Fcreator** IG account linked to a FB Page, use the official Graph API path on the `fb` backend — `ig_graph_publish` \u002F `ig_graph_insights` \u002F `ig_graph_moderate_comments` (durable, official; needs `FB_PAGE_ACCESS_TOKEN`). Distinct names → both always exposed; **pick by account type**, don't remove either.\n- **Facebook** (`fb-messenger`, 33 tools): **Messenger** `whoami`\u002F`list_threads`\u002F`read_thread`\u002F`thread_info`\u002F`search_messages`\u002F`fb_send_message`\u002F`fb_send_file`\u002F`fb_react_to_message`\u002F`fb_unsend_message`\u002F`fb_forward_message`\u002F`fb_mark_read`\u002F`fb_send_typing`\u002F`fb_create_group`; **E2EE 1:1 DMs** `fb_dm_list`\u002F`fb_dm_read`\u002F`fb_dm_send`\u002F`fb_dm_react`\u002F`fb_dm_status` (needs the `fr` cookie, via the fbchat-v2 bridge); **Page** `fb_page_post`\u002F`fb_page_schedule_post`\u002F`fb_page_upload_photo`·`video`·`reel`·`story`\u002F`fb_page_read_posts`·`read_comments`\u002F`fb_page_moderate`\u002F`fb_page_insights`\u002F`fb_page_message`\u002F`fb_graph_token_info`; **IG-Graph (business\u002Fcreator IG)** `ig_graph_publish`\u002F`ig_graph_insights`\u002F`ig_graph_moderate_comments`.\n- **WhatsApp** (`whatsapp`) — **POC ONLY, not for routine use:** `search_contacts`, `list_chats`, `get_chat`, `list_messages`, `get_message_context`, `search_messages`, `send_message`. (Built, but do not register\u002Fuse for real tasks — see the status table.)\n- **Facebook feed \u002F posts \u002F saved** (no API): drive `facebook.com` in the user's logged-in browser (Claude-in-Chrome \u002F Playwright) — there is no FB app on their BlueStacks.\n- **Facebook Reels posting** (`fb-reels-uploader`, `tools\u002Fmcp\u002Ffb-reels-uploader\u002F`): now an **MCP backend** (`fbreels` in social-hub) wrapping the Playwright uploader — `fb_upload_reel`, `fb_upload_reels_from_folder`, `fb_reels_status`. Bulk-uploads local vertical videos to Facebook **as Reels, in order, one per post**. FB's official Graph API can't post to a personal profile, so it drives the browser (`\u002Freels\u002Fcreate\u002F` flow) with a persistent-login profile, `.fb-posted.json` resume, and fail-safe ordering; a **one-time human FB login** primes the profile, after which the tools run headless + non-blocking (return a `jobId`; poll `fb_reels_status(jobId)`). (A copy also lives in the opus-bulk-downloader repo.)\n- **TikTok** (`tiktok`) — **BUILT, read-only public scraper:** `tiktok_trending` (keyless), `tiktok_user_info`, `tiktok_user_posts`, `tiktok_user_liked`, `tiktok_hashtag`, `tiktok_video_details`, `tiktok_comments`, `tiktok_related_videos`, `tiktok_search_users`. All public + read-only. The non-trending tools need an `ms_token` (anti-bot cookie); `TIKTOK_PROXY` only on cloud egress. **No own feed, no saved, no DMs, no posting.** Full reference: [[tiktok-public-research]].\n\n## Operating rules\n\n- **Read before write.** These are the user's real accounts. Never send\u002Fpost\u002Freact without explicit confirmation.\n- **Re-auth when sessions expire:** IG → `node login.mjs`; FB → re-export cookies; WhatsApp → re-scan QR.\n- **Account safety:** if a platform starts returning checkpoints\u002Fchallenges, STOP — repeated attempts raise ban risk. Surface it; don't hammer.\n- **Egress + flagged-account discipline:** on a cloud host, route IG\u002FFB via the residential proxy (WhatsApp direct); on a flagged IG account keep calls minimal and never hammer a checkpoint. See the \"Egress: residential proxy + account state\" section and the SETUP-GUIDE.\n- **Related skills:** [[social-find-post]] (locate a post\u002Fsaved item), [[social-dm-search]] (search messages\u002Fchats), [[tiktok-public-research]] (read public TikTok data).\n","# Social Media MCP Toolchain\n\n## Overview\n\nThe user has self-hosted, private-API MCP servers for their own personal accounts. Each lives in `~\u002Fsource\u002Frepos\u002F` with its own `SETUP.md`. Status today: **Instagram = live\u002Fregistered**, **Facebook = live\u002Fexpanded (Messenger incl. E2EE DMs + Page + IG-Graph, 33 tools)**, **WhatsApp = built but proof-of-concept ONLY (do not register or use for routine tasks)**. **TikTok = built: a read-only public scraper (trending works keyless, the other tools need an ms_token).** All use **private\u002Funofficial APIs**, so each carries **Terms-of-Service and account-ban risk** — keep usage human-paced (especially anything that writes\u002Fsends), and never commit credentials. Secrets (cookies, sessions, tokens, `auth_info\u002F`, `*.db`, `.env`) are `.gitignore`d in every repo.\n\n| Platform | Repo (`~\u002Fsource\u002Frepos\u002F`) | Runtime | Auth | Reads | Status \u002F Hard limit |\n|---|---|---|---|---|---|\n| **Instagram** | `insta-mcp` | Node (JS) | session.json from a 2FA login (`login.mjs`); real password not stored | saved, posts, feed, search, **DMs**, liked, stories | **LIVE \u002F registered.** Library spoofs a stale app version → IG `unsupported_version` checkpoint; **fixed** by impersonating the device's current IG app version (`src\u002Findex.ts`, env `IG_APP_VERSION`) |\n| **Facebook** (Messenger + Page + IG-Graph) | `fb-messenger-mcp` | Python (venv) | facebook.com **cookies** (`data\u002Fcookies.json`, C3C export; **+ `fr` cookie** for E2EE) + optional `FB_PAGE_ACCESS_TOKEN` | Messenger (groups\u002Frooms + **E2EE 1:1 DMs**), Page posts\u002Finsights\u002Fmoderation, IG-Graph (business IG) | **LIVE \u002F expanded to 33 tools.** E2EE personal DMs now readable via the fbchat-v2 bridge (needs the `fr` cookie); FB has no personal-profile post API → personal Reels via the Playwright `fbreels` path |\n| **WhatsApp** | `whatsapp-mcp` | Node (TS, Baileys) | **QR link** (phone → WhatsApp → Linked Devices) | chats, messages, contacts, search; can **send** | **PROOF-OF-CONCEPT ONLY — do NOT register or use for routine tasks.** Built + vetted clean, but kept as a POC: Baileys is unofficial → WhatsApp can ban (would need a secondary number); incoming group history is thin |\n| **TikTok** | `tiktok-mcp` | Python (TikTok-Api 7.3.3) | none (public scrape); optional `ms_token` cookie | trending, user info\u002Fposts\u002Flikes, hashtag, video details\u002Fcomments\u002Frelated, user search — read-only | **BUILT — public read-only only.** No own feed, no saved, no DMs, no posting. `trending` keyless; other tools need an `ms_token`. See [[tiktok-public-research]] |\n\n## Registering \u002F loading\n\nEach MCP is registered with `claude mcp add \u003Cname> -- \u003Ccommand>` (see each repo's `SETUP.md` and the companion SETUP-GUIDE for the exact command). **MCP tools only load when Claude Code restarts.** When tools are not yet loaded, the same capability can be exercised directly via the repo's scripts (e.g. a Node one-shot against the saved Instagram session).\n\n## Egress: residential proxy + account state\n\nSome setups need a **residential proxy** in front of the IG \u002F FB egress; some do not. The rule is about **where the MCP is running**, not which tool you call:\n\n- **Running locally** (on the user's own residential IP) → **no proxy.** IG\u002FFB see a normal home IP.\n- **Running on a cloud \u002F datacenter host** (e.g. an always-on VM) → route IG and FB through the **Byteful sticky-Romania residential proxy** so a datacenter IP does not trigger an instant ban. **WhatsApp goes direct** (tolerant of a cloud IP). The endpoints live (gitignored) at `source\u002Frepos\u002Fsocial-mcp-deploy\u002Fproxy-endpoints.secret` — never inline or echo the credential string.\n\n**Account-state dimensions that change the setup (social only):**\n\n- **Instagram clean vs FLAGGED.** A flagged account (this one was flagged during the `unsupported_version` work) needs the residential proxy + **minimal call volume** + extra caution: it can re-checkpoint even via the proxy. Keep reads light; avoid bursts; surface any challenge instead of retrying.\n- **Facebook personal 1:1 vs groups\u002Fpages.** 1:1 Messenger is E2EE and unreadable here; only group \u002F room \u002F page threads are accessible.\n- **WhatsApp primary vs secondary number.** POC only — if it were ever used for real, prefer a **secondary** number (ban risk on the primary).\n- **Local vs cloud egress.** Drives the proxy decision above.\n\n**Setup details:** see the companion social MCP SETUP-GUIDE (`docs\u002FSETUP-GUIDE.md`) for the per-platform auth, registration commands, proxy wiring, and the cloud-deploy steps. This skill is the quick reference; the SETUP-GUIDE is the runbook.\n\n## Tool inventory (logical names)\n\n- **Instagram** (`insta-mcp`): `get_saved_posts`, `get_recent_posts`, `get_timeline`, `get_discover`, `search_instagram`, `get_liked_posts`, `get_inbox`, `get_direct_messages`, `get_stories`, `get_account_overview`, `get_followers`, `get_following` (+ `upload_reel`\u002F`upload_photo`\u002F`upload_video`\u002F`upload_album`, `send_direct_message`, `follow_user`\u002F`unfollow_user`, `like_post`\u002F`add_comment`, `get_post_insights`, `get_highlights`, `get_tag_feed`, `edit_profile`, `set_privacy` — 36 total).\n  - **Two IG paths (best-of-both, no collision):** the `insta-mcp` tools above are for a **personal** account (private API, ToS-risky). For a **business\u002Fcreator** IG account linked to a FB Page, use the official Graph API path on the `fb` backend — `ig_graph_publish` \u002F `ig_graph_insights` \u002F `ig_graph_moderate_comments` (durable, official; needs `FB_PAGE_ACCESS_TOKEN`). Distinct names → both always exposed; **pick by account type**, don't remove either.\n- **Facebook** (`fb-messenger`, 33 tools): **Messenger** `whoami`\u002F`list_threads`\u002F`read_thread`\u002F`thread_info`\u002F`search_messages`\u002F`fb_send_message`\u002F`fb_send_file`\u002F`fb_react_to_message`\u002F`fb_unsend_message`\u002F`fb_forward_message`\u002F`fb_mark_read`\u002F`fb_send_typing`\u002F`fb_create_group`; **E2EE 1:1 DMs** `fb_dm_list`\u002F`fb_dm_read`\u002F`fb_dm_send`\u002F`fb_dm_react`\u002F`fb_dm_status` (needs the `fr` cookie, via the fbchat-v2 bridge); **Page** `fb_page_post`\u002F`fb_page_schedule_post`\u002F`fb_page_upload_photo`·`video`·`reel`·`story`\u002F`fb_page_read_posts`·`read_comments`\u002F`fb_page_moderate`\u002F`fb_page_insights`\u002F`fb_page_message`\u002F`fb_graph_token_info`; **IG-Graph (business\u002Fcreator IG)** `ig_graph_publish`\u002F`ig_graph_insights`\u002F`ig_graph_moderate_comments`.\n- **WhatsApp** (`whatsapp`) — **POC ONLY, not for routine use:** `search_contacts`, `list_chats`, `get_chat`, `list_messages`, `get_message_context`, `search_messages`, `send_message`. (Built, but do not register\u002Fuse for real tasks — see the status table.)\n- **Facebook feed \u002F posts \u002F saved** (no API): drive `facebook.com` in the user's logged-in browser (Claude-in-Chrome \u002F Playwright) — there is no FB app on their BlueStacks.\n- **Facebook Reels posting** (`fb-reels-uploader`, `tools\u002Fmcp\u002Ffb-reels-uploader\u002F`): now an **MCP backend** (`fbreels` in social-hub) wrapping the Playwright uploader — `fb_upload_reel`, `fb_upload_reels_from_folder`, `fb_reels_status`. Bulk-uploads local vertical videos to Facebook **as Reels, in order, one per post**. FB's official Graph API can't post to a personal profile, so it drives the browser (`\u002Freels\u002Fcreate\u002F` flow) with a persistent-login profile, `.fb-posted.json` resume, and fail-safe ordering; a **one-time human FB login** primes the profile, after which the tools run headless + non-blocking (return a `jobId`; poll `fb_reels_status(jobId)`). (A copy also lives in the opus-bulk-downloader repo.)\n- **TikTok** (`tiktok`) — **BUILT, read-only public scraper:** `tiktok_trending` (keyless), `tiktok_user_info`, `tiktok_user_posts`, `tiktok_user_liked`, `tiktok_hashtag`, `tiktok_video_details`, `tiktok_comments`, `tiktok_related_videos`, `tiktok_search_users`. All public + read-only. The non-trending tools need an `ms_token` (anti-bot cookie); `TIKTOK_PROXY` only on cloud egress. **No own feed, no saved, no DMs, no posting.** Full reference: [[tiktok-public-research]].\n\n## Operating rules\n\n- **Read before write.** These are the user's real accounts. Never send\u002Fpost\u002Freact without explicit confirmation.\n- **Re-auth when sessions expire:** IG → `node login.mjs`; FB → re-export cookies; WhatsApp → re-scan QR.\n- **Account safety:** if a platform starts returning checkpoints\u002Fchallenges, STOP — repeated attempts raise ban risk. Surface it; don't hammer.\n- **Egress + flagged-account discipline:** on a cloud host, route IG\u002FFB via the residential proxy (WhatsApp direct); on a flagged IG account keep calls minimal and never hammer a checkpoint. See the \"Egress: residential proxy + account state\" section and the SETUP-GUIDE.\n- **Related skills:** [[social-find-post]] (locate a post\u002Fsaved item), [[social-dm-search]] (search messages\u002Fchats), [[tiktok-public-research]] (read public TikTok data).\n",{"name":5,"description":7},"main","a298c929b6cbd662e1fce54302ce520d5ceea1a5",".agents\u002Fskills\u002Fsocial-media-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":64,"prompt":74,"zipAvailable":75},[65,68,71],{"tool":66,"command":67},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill social-media-toolchain",{"tool":69,"command":70},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill social-media-toolchain",{"tool":72,"command":73},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill social-media-toolchain","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial-media-toolchain\u002FSKILL.md",true,[],[78,98,123,149,163,179],{"skillNo":79,"name":80,"nameZh":6,"description":81,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":82,"categories":83,"keywords":84,"publishedAt":52},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[85,86,87,49,88,89,90,91,92,36,93,94,95,96,97],"clarify requirements","clarify","requirements","options","task","prompts","goal","scanning","context","repo","injection","execution","file",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":105,"publishedAt":52},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[104],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[106,107,108,109,110,111,46,112,113,114,115,116,117,118,36,119,120,121,122,44],"openmm md","how","decision","pick","linux","analyze","stack","open","NVIDIA","gpu","license","workflow","windows","free","molecular dynamics","local","do",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":135,"publishedAt":52},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[129,132],{"categoryNo":130,"categoryName":131,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":133,"categoryName":134,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[136,137,138,37,139,140,141,142,143,144,107,145,146,147,148],"review","visual","visual review","web","false","iteration","take","check","slides","ui","screenshot","playwright","screenshots",{"skillNo":150,"name":151,"nameZh":6,"description":152,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":153,"categories":154,"keywords":155,"publishedAt":52},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[151,156,157,158,159,160,161,162],"setup","report","project","installation","project setup","issues","state",{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":170,"publishedAt":52},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[169],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[165,171,89,172,173,174,36,175,176,177,178],"start issue","issue","ready","work on issue","user","work","work on","development",{"skillNo":180,"name":156,"nameZh":6,"description":181,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":182,"categories":183,"keywords":184,"publishedAt":52},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[156,158,121,185,160,186],"files","interactive"]