[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MJ4Z7H3FB6VRKXKPAT8E4T":3,"skill-same:01M6MJ4Z7H3FB6VRKXKPAT8E4T":79},{"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":23,"publishedAt":46,"linkOnly":47,"markdownContent":48,"markdownBody":49,"frontMatter":50,"refName":55,"commitSha":56,"skillDirectory":57,"forksCount":58,"repositoryHtmlUrl":59,"repositoryHomepageUrl":60,"ownerHtmlUrl":61,"ownerBlogUrl":62,"ownerDescription":63,"updatedAt":64,"install":65,"resources":78},"01M6MJ4Z7H3FB6VRKXKPAT8E4T","linkedin-engagement-leads",null,"Turn the people who commented on or reacted to a LinkedIn post into a ranked lead list, with the LinkMCP connector. The list shows up to 20 people, each with the name, title, company, profile link, how the person engaged and why the person fits. Use when the user asks who engaged with a LinkedIn post: a post URL, their own latest post or a company post. Also use it when the user wants to know which of these people fit a target profile. Reads LinkedIn data only. It does not send connection requests, messages, comments or reactions.","hashgraph-online\u002Fawesome-codex-plugins","hashgraph-online","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F160371962?v=4","01M6CNB6NRJVNNGN14TR01Q6D3","HOL (Hashgraph Online)","01M6JT1HSKKG9V68KQAQGBA7XP",1571,"MIT","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Flinkmcp-io\u002Flinkmcp\u002Fskills\u002Flinkedin-engagement-leads\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],"linkedin engagement leads","linkedin","linkedin engagement","engagement","leads","Connector","paid","when","company","send","which","URL","remote","people","MCP","up","ai client","only","plan","messages","server","mcp server","2026-11-10 10:12:30",false,"---\nname: linkedin-engagement-leads\ndescription: \"Turn the people who commented on or reacted to a LinkedIn post into a ranked lead list, with the LinkMCP connector. The list shows up to 20 people, each with the name, title, company, profile link, how the person engaged and why the person fits. Use when the user asks who engaged with a LinkedIn post: a post URL, their own latest post or a company post. Also use it when the user wants to know which of these people fit a target profile. Reads LinkedIn data only. It does not send connection requests, messages, comments or reactions.\"\nlicense: MIT\ncompatibility: \"Needs the LinkMCP connector (remote MCP server) in the AI client. Replies to comments need a paid LinkMCP plan with a connected LinkedIn account.\"\nmetadata:\n  author: LinkMCP\n  version: \"1.0.0\"\n---\n\n# LinkedIn engagement leads\n\nMake a lead list from the people who engaged with one LinkedIn post. The user decides what to do with each person.\n\n## Rules\n\n- This skill only reads. Do not send connection requests or messages. Do not comment or react. Do not schedule any of these actions.\n- Do not write messages to the people on the list. If the user wants to contact one person, treat it as a new task. Show the exact text, and send only after the user approves that one message.\n- Do not look up email addresses or phone numbers for the people on the list.\n- Keep only the data that the list needs. Save a file only when the user asks for it.\n- LinkMCP lookups can use part of the monthly LinkMCP usage of the user. Ask the user before you read more pages of comments or reactions, or look up more than 20 profiles.\n\n## Tools\n\nThis skill uses these LinkMCP tools. All of them only read: `linkedin_who_am_i`, `linkedin_get_person_posts`, `linkedin_get_company_posts`, `linkedin_get_post_comments`, `linkedin_get_post_reactions`, `linkedin_get_nested_comments`, `linkedin_bulk_get_profiles`.\n\nYour client can show a tool name with a prefix, for example `mcp__linkmcp__linkedin_get_post_comments`. Use the tool whose name ends with the name in this skill.\n\n## Steps\n\n1. Make sure that the LinkMCP tools are available, for example `linkedin_get_post_comments`. If they are not available, stop and tell the user how to connect LinkMCP:\n   - With the LinkMCP plugin: connect the LinkMCP connector of the plugin and sign in. In Claude, the connector is on the Connectors tab of the plugin.\n   - Without the plugin: add LinkMCP as a remote MCP server with the URL `https:\u002F\u002Fapp.linkmcp.io\u002Fapi\u002Fmcp?ref=skills` and sign in. Setup steps for each AI client: https:\u002F\u002Fapp.linkmcp.io\u002Fdocs\u002Fquick-start\n2. Find the post.\n   - If the user gives a post URL, use it.\n   - If the user means their own latest post, call `linkedin_who_am_i` to get the profile URL of the user. If it does not give the URL, ask the user for it. Then call `linkedin_get_person_posts` and select the newest post that the user wrote (not a repost).\n   - If the user means a post of a company, call `linkedin_get_company_posts` and select the post in the same way.\n   - Show the first line and the date of the post. Ask the user to confirm that it is the correct post.\n3. If the user did not describe a good lead, ask for it: for example job titles, seniority, industry, region or company size. If the user does not know, rank the people by how close their work is to the topic of the post.\n4. Read the comments: call `linkedin_get_post_comments` one time, with `postUrl` or `activityUrn`. One call can return many comments. If the result has a `nextCursor`, more comments exist. Ask the user before you read the next page with `cursor` set to that value.\n5. Read the reactions: call `linkedin_get_post_reactions` one time, with `postUrl` or `activityUrn`. If the result has a `nextCursor`, more reactions exist. Ask the user before you read the next page with `cursor` set to that value. If the tool says that it needs a connected LinkedIn account or a paid plan, give that message to the user. Then continue with the comments only.\n6. Optional: the user can ask for the replies to comments. Then call `linkedin_get_nested_comments` for each comment whose `replyCount` is above 0. Set `activityUrn` to the post and `parentCommentId` to the `commentId` of the comment. Do this for 10 comments or fewer. If the first call says that LinkedIn is not connected, skip this step.\n7. Merge the people. Use the profile URL or the profile ID as the key. Remove the author of the post and the user. Remove company pages (`actorType` is \"organization\"). A comment is a stronger signal than a reaction. Keep the strongest signal for each person.\n8. Rank the people with the data that you already have. A comment gives the headline and the comment text. A reaction gives only the name and the profile link, so do not guess the fit of a person who only reacted.\n9. Call `linkedin_bulk_get_profiles` for 20 people or fewer. Take the commenters who fit best first. Then take the people who reacted, in the order that LinkMCP returned them. Use up to 10 identifiers in each call and `detail` set to \"slim\". Rank the people again with the title, company and location from the results.\n10. Show the list in the format below.\n\n## List format\n\nShow a table with the people that you looked up in step 9. Put the best fit first.\n\n| # | Name | Title | Company | Location | Engagement | Fit | Why | Profile |\n|---|---|---|---|---|---|---|---|---|\n\n- **Engagement:** \"Comment: \u003Cshort quote>\" or \"Reaction: \u003Ctype>\".\n- **Fit:** High, Medium or Low, compared with the description of a good lead.\n- **Why:** one short reason from the data. Do not guess facts.\n\nAfter the table, give the counts: comments read, reactions read, people found and people in the table. Offer the same table as CSV.\n\n## When a tool fails\n\n- If a tool needs a connected LinkedIn account or a paid plan, it tells you. Give that message to the user. Then continue with the other steps.\n- If a tool reports a limit or tells you to wait, do what it says. Do not call the tool again and again. If the wait is long, stop and show the list with the data that you have.\n- If LinkMCP cannot find the post, ask the user for the exact post URL.\n","# LinkedIn engagement leads\n\nMake a lead list from the people who engaged with one LinkedIn post. The user decides what to do with each person.\n\n## Rules\n\n- This skill only reads. Do not send connection requests or messages. Do not comment or react. Do not schedule any of these actions.\n- Do not write messages to the people on the list. If the user wants to contact one person, treat it as a new task. Show the exact text, and send only after the user approves that one message.\n- Do not look up email addresses or phone numbers for the people on the list.\n- Keep only the data that the list needs. Save a file only when the user asks for it.\n- LinkMCP lookups can use part of the monthly LinkMCP usage of the user. Ask the user before you read more pages of comments or reactions, or look up more than 20 profiles.\n\n## Tools\n\nThis skill uses these LinkMCP tools. All of them only read: `linkedin_who_am_i`, `linkedin_get_person_posts`, `linkedin_get_company_posts`, `linkedin_get_post_comments`, `linkedin_get_post_reactions`, `linkedin_get_nested_comments`, `linkedin_bulk_get_profiles`.\n\nYour client can show a tool name with a prefix, for example `mcp__linkmcp__linkedin_get_post_comments`. Use the tool whose name ends with the name in this skill.\n\n## Steps\n\n1. Make sure that the LinkMCP tools are available, for example `linkedin_get_post_comments`. If they are not available, stop and tell the user how to connect LinkMCP:\n   - With the LinkMCP plugin: connect the LinkMCP connector of the plugin and sign in. In Claude, the connector is on the Connectors tab of the plugin.\n   - Without the plugin: add LinkMCP as a remote MCP server with the URL `https:\u002F\u002Fapp.linkmcp.io\u002Fapi\u002Fmcp?ref=skills` and sign in. Setup steps for each AI client: https:\u002F\u002Fapp.linkmcp.io\u002Fdocs\u002Fquick-start\n2. Find the post.\n   - If the user gives a post URL, use it.\n   - If the user means their own latest post, call `linkedin_who_am_i` to get the profile URL of the user. If it does not give the URL, ask the user for it. Then call `linkedin_get_person_posts` and select the newest post that the user wrote (not a repost).\n   - If the user means a post of a company, call `linkedin_get_company_posts` and select the post in the same way.\n   - Show the first line and the date of the post. Ask the user to confirm that it is the correct post.\n3. If the user did not describe a good lead, ask for it: for example job titles, seniority, industry, region or company size. If the user does not know, rank the people by how close their work is to the topic of the post.\n4. Read the comments: call `linkedin_get_post_comments` one time, with `postUrl` or `activityUrn`. One call can return many comments. If the result has a `nextCursor`, more comments exist. Ask the user before you read the next page with `cursor` set to that value.\n5. Read the reactions: call `linkedin_get_post_reactions` one time, with `postUrl` or `activityUrn`. If the result has a `nextCursor`, more reactions exist. Ask the user before you read the next page with `cursor` set to that value. If the tool says that it needs a connected LinkedIn account or a paid plan, give that message to the user. Then continue with the comments only.\n6. Optional: the user can ask for the replies to comments. Then call `linkedin_get_nested_comments` for each comment whose `replyCount` is above 0. Set `activityUrn` to the post and `parentCommentId` to the `commentId` of the comment. Do this for 10 comments or fewer. If the first call says that LinkedIn is not connected, skip this step.\n7. Merge the people. Use the profile URL or the profile ID as the key. Remove the author of the post and the user. Remove company pages (`actorType` is \"organization\"). A comment is a stronger signal than a reaction. Keep the strongest signal for each person.\n8. Rank the people with the data that you already have. A comment gives the headline and the comment text. A reaction gives only the name and the profile link, so do not guess the fit of a person who only reacted.\n9. Call `linkedin_bulk_get_profiles` for 20 people or fewer. Take the commenters who fit best first. Then take the people who reacted, in the order that LinkMCP returned them. Use up to 10 identifiers in each call and `detail` set to \"slim\". Rank the people again with the title, company and location from the results.\n10. Show the list in the format below.\n\n## List format\n\nShow a table with the people that you looked up in step 9. Put the best fit first.\n\n| # | Name | Title | Company | Location | Engagement | Fit | Why | Profile |\n|---|---|---|---|---|---|---|---|---|\n\n- **Engagement:** \"Comment: \u003Cshort quote>\" or \"Reaction: \u003Ctype>\".\n- **Fit:** High, Medium or Low, compared with the description of a good lead.\n- **Why:** one short reason from the data. Do not guess facts.\n\nAfter the table, give the counts: comments read, reactions read, people found and people in the table. Offer the same table as CSV.\n\n## When a tool fails\n\n- If a tool needs a connected LinkedIn account or a paid plan, it tells you. Give that message to the user. Then continue with the other steps.\n- If a tool reports a limit or tells you to wait, do what it says. Do not call the tool again and again. If the wait is long, stop and show the list with the data that you have.\n- If LinkMCP cannot find the post, ask the user for the exact post URL.\n",{"name":5,"license":15,"metadata":51,"description":7,"compatibility":54},{"author":52,"version":53},"LinkMCP","1.0.0","Needs the LinkMCP connector (remote MCP server) in the AI client. Replies to comments need a paid LinkMCP plan with a connected LinkedIn account.","main","2b63f856ce19c2a797929cacabd9e0fc936812fa","plugins\u002Flinkmcp-io\u002Flinkmcp\u002Fskills\u002Flinkedin-engagement-leads",490,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins","https:\u002F\u002Fhol.org\u002Fplugins\u002Fbest-codex-plugins","https:\u002F\u002Fgithub.com\u002Fhashgraph-online","https:\u002F\u002Fhol.org","Open-source standards and developer tools for interoperable AI agents: discovery, identity, communication, payments, privacy and security.","2026-11-14 02:12:02",{"source":8,"skillName":5,"commands":66,"prompt":76,"zipAvailable":77},[67,70,73],{"tool":68,"command":69},"npx","npx skills add hashgraph-online\u002Fawesome-codex-plugins --skill linkedin-engagement-leads",{"tool":71,"command":72},"bunx","bunx skills add hashgraph-online\u002Fawesome-codex-plugins --skill linkedin-engagement-leads",{"tool":74,"command":75},"pnpm","pnpm dlx skills add hashgraph-online\u002Fawesome-codex-plugins --skill linkedin-engagement-leads","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Flinkmcp-io\u002Flinkmcp\u002Fskills\u002Flinkedin-engagement-leads\u002FSKILL.md",true,[],[80,89,96,103,129,154],{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":84,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":88},"01M746ZWACVKMZ1BJXJZHYJSSX","migrate-to-e2e","Moves an existing Playwright, Cypress, Selenium, Appium, Detox, Maestro, or TesterArmy suite to e2e one slice at a time, with the old suite running beside the new one until each ported test is proven. Keeps a MIGRATION.md progress file so any later session resumes where the last stopped. Optionally plants a defect to show both suites catch it. Use for \u002Fmigrate-to-e2e, \"migrate our tests to e2e\", \"port these Maestro flows\", \"move our TesterArmy tests\", or when a project has an e2e config and an older suite still running.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fmigrate-to-e2e\u002FSKILL.md",[],[],"2026-11-11 15:11:14",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":84,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":88},"01M746ZPTAX1Q0FBKAB1CYND7E","e2e","Writes, runs, and debugs end-to-end tests for web and mobile apps with e2e, the agentic test runner, which mixes agent.act goals with exact locator assertions on a Playwright browser or an iOS or Android device. Also drives a project's running app live over the e2e MCP server to look at a screen, check a UI change, take a screenshot or record a video, and try a locator; and runs bug bashes, parallel e2e explore runs with each bug proven by a repro test. Use when a project depends on e2e or has an e2e.config.ts, when asked for end-to-end, browser, mobile, or agentic UI tests, to check a change in the running app, to QA or bug bash an app or branch, or when an e2e run fails.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fe2e\u002FSKILL.md",[],[],{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":84,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":88},"01M746ZJN784HVHMDP9MQGCSGG","create-verification-skill","Generate a project-local verify-\u003Capp> skill on top of e2e, so any coding agent can launch the app, check it is worth driving, exercise a feature the way a user does, keep evidence, and bug bash it. Writes the skill, a feature map with one explore charter per feature, and proves it once. Use for \u002Fcreate-verification-skill, \"make a verification skill for this repo\", or when a project has no scripted way to prove UI behavior.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fcreate-verification-skill\u002FSKILL.md",[],[],{"skillNo":104,"name":105,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":84,"licenseFileUrl":6,"sourceHtmlUrl":107,"categories":108,"keywords":109,"publishedAt":46},"01M716A6ETNB9B1SQ3GXZC75VR","deja-search","deja-vu memory — search the user's past AI coding sessions with the deja CLI. Holds what they already settled and never wrote into the repo (naming rules, banned or already-tried tools, required checks before merge, preferred values, who owns what). Use before your first edit in a task, before you call a change done or ready to merge, before you recommend a tool, library, design or reviewer, before re-debugging an error that may already be solved, when they say 'didn't we fix this before', 'what did we decide about X' or 'I already have that', and before telling them something on this machine does not exist.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-search\u002FSKILL.md",[],[110,111,112,113,114,115,116,117,118,119,120,31,121,122,123,124,125,126,127,128],"search","deja search","never","error","ready","memory","re","decide","fix","design","debugging","you","done","reviewer","io","change","cli","merge","past",{"skillNo":130,"name":131,"nameZh":6,"description":132,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":84,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":135,"publishedAt":46},"01M716A3J2W5SENSE9VGMXB375","deja-reflect","End-of-session reflection and memory curation with deja-vu. Review what was decided, what commands broke and what repaired them, and record durable project rules or decisions with deja remember so the next session starts with them.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-reflect\u002FSKILL.md",[],[136,137,138,124,139,140,141,142,143,144,145,146,147,148,115,149,150,151,152,153],"deja reflect","reflect","review","with","record","github","next","https","node","Rules","decisions","brew","remember","project rules","project","session","end","reflection",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":84,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":167,"publishedAt":46},"01M715T3RR4BAYSR57HPPTJ0PF","revid","Make, edit, export and post AI videos with Revid (revid.ai) through the Revid MCP server. Use whenever the user wants a short-form or long-form video made (from an idea, a script, a URL, an article, a PDF, a tweet, a product page, their own clips, or a song), wants to find what is going viral on TikTok, YouTube, Instagram or X before making something, wants to edit or re-export an existing Revid project, generate a standalone AI image or clip, make a series episode, or publish and schedule a finished video to connected social accounts. Covers setup (hosted MCP with OAuth, or an API key), the 36 tools, credits, polling and the rules for publishing. Routes to the more specific revid-* skills when one fits.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftmakersas\u002Frevid-skills\u002Fskills\u002Frevid\u002FSKILL.md",[160,163,164],{"categoryNo":161,"categoryName":162,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":165,"categoryName":166,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口",[156,35,168,169,170,171,172,150,173,116,174,175,38,176,31,177,45,178,179,180],"Video","short-form","standalone","PDF","viral","tiktok","short","social","song","image","schedule","api","publish"]