[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JQSRC3STHGAEK761JPD5PP":3,"skill-same:01M6JQSRC3STHGAEK761JPD5PP":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":33,"linkOnly":34,"markdownContent":35,"markdownBody":36,"frontMatter":37,"refName":38,"commitSha":39,"skillDirectory":40,"forksCount":41,"repositoryHtmlUrl":42,"repositoryHomepageUrl":43,"ownerHtmlUrl":44,"ownerBlogUrl":45,"ownerDescription":6,"updatedAt":46,"install":47,"resources":60},"01M6JQSRC3STHGAEK761JPD5PP","tweet_draft_reviewer",null,"Review tweet drafts in Claude Code against 8 voice rules. Scores 1-10, breaks down every rule, and rewrites anything that scores below 7.","LongLeo287\u002FOmniClaw","LongLeo287","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F141803367?v=4","01M6JK75C62VCNZKR5BRZ386YV","LongLeo","01M6JK75GQ78TSP1ZPXNKK3MCH",9,"MIT","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Ftweet_draft_reviewer\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32],"reviewer","draft","tweet draft reviewer","review","code","voice","Rules","rule","drafts","2026-11-10 10:12:30",false,"---\nname: tweet_draft_reviewer\n\ndescription: Review tweet drafts in Claude Code against 8 voice rules. Scores 1-10, breaks down every rule, and rewrites anything that scores below 7.\n---\n\n# Tweet Draft Reviewer\n\nPaste a tweet draft and get a score out of 10, a rule-by-rule breakdown, and a rewrite if the score is below 7. Takes 30 seconds. Saves you from posting something that sounds like a chatbot wrote it.\n\nBuilt on 8 voice rules distilled from real content analysis — what separates high-engagement tweets from the ones that get skimmed.\n\n---\n\n## How to Use\n\n**Single draft:**\n```\nReview this tweet draft: [paste tweet here]\n```\n\n**Batch scan:**\n```\nReview all tweet drafts in my content\u002Ftweet-drafts\u002F folder.\n```\n\n---\n\n## Skill Instructions (for Claude Code)\n\nWhen this skill is invoked, follow these phases exactly.\n\n---\n\n### PHASE 1: INTAKE\n\nDetermine input mode:\n\n**Mode A — Direct paste:** User provided draft text inline. Proceed to PHASE 2 with that text.\n\n**Mode B — Folder scan:** User asked to review drafts folder. Run:\n\n```bash\nVAULT=\"${VAULT_PATH:-$(pwd)}\"\nfind \"$VAULT\u002Fcontent\u002Ftweet-drafts\" -name \"*.md\" 2>\u002Fdev\u002Fnull | while read f; do\n  if ! grep -q 'reviewed: true' \"$f\" 2>\u002Fdev\u002Fnull; then\n    echo \"UNREVIEWED:$f\"\n  fi\ndone\n```\n\nIf no vault path was given and no `content\u002Ftweet-drafts\u002F` exists in the current directory, ask:\n```\nWhere is your tweet drafts folder? (full path, e.g. \u002Froot\u002Fobsidian-vault\u002Fcontent\u002Ftweet-drafts)\n```\n\n**Mode C — Ambiguous:** No draft provided and no folder context. Ask:\n```\nPaste your tweet draft here, or tell me the path to your tweet-drafts folder and I'll scan it.\n```\n\n---\n\n### PHASE 2: ANALYZE\n\nApply all 8 rules to the draft. For each rule, record ✅ PASS or ❌ FAIL with a one-line reason.\n\n---\n\n#### The 8 Rules\n\n**Rule 1: No \"I\" opener**\n- FAIL: First word is exactly `I` (standalone — not \"In\", \"It\", \"If\")\n- PASS: Anything else\n\n**Rule 2: Strong opener**\n- FAIL: First sentence ends with `?` OR starts with \"Have you\", \"Do you\", \"Are you\", \"What if\", \"What would\"\n- PASS: Declarative statement, specific number\u002Ffact, named scenario, or emotional setup\n\n**Rule 3: No AI tells**\n- FAIL: Contains any of: `delve`, `certainly`, `game-changing`, `game changer`, `it's worth noting`, `invaluable`, `unleash`, `revolutionize`, `transformative`\n- PASS: None of those words detected\n\n**Rule 4: No generic closers**\n- FAIL: Ends with (or contains near the end): `what do you think`, `drop a comment`, `thoughts?`, `let me know in the comments`, `agree?`, `sound familiar?`\n- PASS: Ends with a statement, directive, punchline, or thread hook\n\n**Rule 5: Corey Test (specificity)**\n- FAIL: Uses vague language without specifics — \"it changed how I work\", \"massive results\", \"so much better\" — no numbers, names, or concrete outcomes\n- PASS: Contains at least one specific: a number, timeframe, named tool, or concrete result\n\n**Rule 6: Character count**\n- PASS: 280 characters or fewer\n- THREAD PASS: Over 280 chars BUT sections are numbered (1\u002F, 2\u002F, 3\u002F) or clearly separated with line breaks — count as PASS\n- FAIL: Over 280 chars with no thread formatting\n\n**Rule 7: Single point**\n- FAIL: Makes 3+ distinct unrelated claims with no clear through-line\n- PASS: One core idea, even if supported by 2–3 details\n\n**Rule 8: Punchy rhythm**\n- FAIL: Any sentence over 20 words OR preamble like \"I've been thinking a lot about...\" \u002F \"Something I've noticed recently is...\"\n- PASS: Short sentences, no preamble, gets to the point by line 2 at latest\n\n---\n\n### PHASE 3: OUTPUT\n\nPrint this exact format:\n\n```\nTWEET REVIEW\n────────────\n\nScore: X\u002F10\n\nRule-by-Rule:\n1. ✅\u002F❌ No \"I\" opener — [reason]\n2. ✅\u002F❌ Strong opener — [reason]\n3. ✅\u002F❌ No AI tells — [reason]\n4. ✅\u002F❌ No generic closers — [reason]\n5. ✅\u002F❌ Corey Test — [reason]\n6. ✅\u002F❌ Character count — [reason + actual count]\n7. ✅\u002F❌ Single point — [reason]\n8. ✅\u002F❌ Punchy rhythm — [reason]\n\n────────────\n```\n\n**Scoring table (passes → score):**\n\n| Passes | Score |\n|--------|-------|\n| 8 | 10\u002F10 |\n| 7 | 9\u002F10 |\n| 6 | 8\u002F10 |\n| 5 | 6\u002F10 |\n| 4 | 5\u002F10 |\n| 3 | 4\u002F10 |\n| 2 | 3\u002F10 |\n| 1 | 1\u002F10 |\n| 0 | 0\u002F10 |\n\n**If score ≥ 7:**\n```\n→ Ready to post. Use Typefully or your scheduler to queue it.\n```\n\n**If score \u003C 7 — add a rewrite:**\n```\nSuggested Rewrite:\n\n[rewritten tweet that fixes all failing rules]\n```\n\n---\n\n### PHASE 4: SELF-CRITIQUE\n\nBefore delivering the output, check:\n\n1. **All 8 rules evaluated** — Count the rule lines in your output. There must be exactly 8. If any are missing, add them.\n2. **Score matches pass count** — Count the ✅ marks. Verify the score matches the table above. Correct it if not.\n3. **Rewrite quality** — If a rewrite was provided, check it against all 8 rules mentally. Does it pass the ones the original failed? If the rewrite would score below 7 itself, rewrite it again.\n4. **Reason quality** — Each rule result must have a specific reason, not a generic one. \"Too vague\" is not enough — say what specifically is vague.\n\nFix anything that fails before delivering.\n\n---\n\n## Example Review\n\n**Input:**\n```\nI've been thinking a lot about how AI is really changing the way founders \napproach content creation and productivity, and I think it's worth noting \nthat the teams who figure out async AI workflows are going to have a \nmassive advantage. What do you think about this?\n```\n\n**Output:**\n```\nTWEET REVIEW\n────────────\n\nScore: 2\u002F10\n\nRule-by-Rule:\n1. ❌ No \"I\" opener — Starts with \"I've\"\n2. ❌ Strong opener — Slow setup, no hook, no specific fact\n3. ❌ No AI tells — Contains \"it's worth noting\"\n4. ❌ No generic closers — Ends with \"What do you think about this?\"\n5. ❌ Corey Test — \"massive advantage\" is vague, no numbers or concrete outcome\n6. ✅ Character count — 248 chars\n7. ✅ Single point — Focused on async AI workflows\n8. ❌ Punchy rhythm — Run-on sentence, preamble opener\n\n────────────\n\nSuggested Rewrite:\n\nThe founders winning right now aren't working harder.\n\nThey have agents running at 2am. Content drafted. Research done.\nQueue processed.\n\nBy 7am they're reviewing output, not creating it.\n\nAsync AI ops is the new early morning routine.\n```\n\n---\n\n## Batch Mode Output\n\nWhen scanning a folder, output one review block per file:\n\n```\n? content\u002Ftweet-drafts\u002Flinkedin-ai-post.md\n[full review block]\n\n? content\u002Ftweet-drafts\u002Ffounder-ops.md\n[full review block]\n\n────────────\nBATCH SUMMARY\nReviewed: 4 drafts\nReady to post (≥7): 2\nNeed rewrite (\u003C7): 2\n```\n\n---\n\n## Requirements\n\n- Claude Code with bash tool access (for folder scan mode)\n- No external APIs — pure LLM reasoning for the review\n- Tweet drafts folder at `content\u002Ftweet-drafts\u002F` (optional — direct paste always works)\n- Files in the drafts folder are marked `reviewed: true` to skip them in future scans\n","# Tweet Draft Reviewer\n\nPaste a tweet draft and get a score out of 10, a rule-by-rule breakdown, and a rewrite if the score is below 7. Takes 30 seconds. Saves you from posting something that sounds like a chatbot wrote it.\n\nBuilt on 8 voice rules distilled from real content analysis — what separates high-engagement tweets from the ones that get skimmed.\n\n---\n\n## How to Use\n\n**Single draft:**\n```\nReview this tweet draft: [paste tweet here]\n```\n\n**Batch scan:**\n```\nReview all tweet drafts in my content\u002Ftweet-drafts\u002F folder.\n```\n\n---\n\n## Skill Instructions (for Claude Code)\n\nWhen this skill is invoked, follow these phases exactly.\n\n---\n\n### PHASE 1: INTAKE\n\nDetermine input mode:\n\n**Mode A — Direct paste:** User provided draft text inline. Proceed to PHASE 2 with that text.\n\n**Mode B — Folder scan:** User asked to review drafts folder. Run:\n\n```bash\nVAULT=\"${VAULT_PATH:-$(pwd)}\"\nfind \"$VAULT\u002Fcontent\u002Ftweet-drafts\" -name \"*.md\" 2>\u002Fdev\u002Fnull | while read f; do\n  if ! grep -q 'reviewed: true' \"$f\" 2>\u002Fdev\u002Fnull; then\n    echo \"UNREVIEWED:$f\"\n  fi\ndone\n```\n\nIf no vault path was given and no `content\u002Ftweet-drafts\u002F` exists in the current directory, ask:\n```\nWhere is your tweet drafts folder? (full path, e.g. \u002Froot\u002Fobsidian-vault\u002Fcontent\u002Ftweet-drafts)\n```\n\n**Mode C — Ambiguous:** No draft provided and no folder context. Ask:\n```\nPaste your tweet draft here, or tell me the path to your tweet-drafts folder and I'll scan it.\n```\n\n---\n\n### PHASE 2: ANALYZE\n\nApply all 8 rules to the draft. For each rule, record ✅ PASS or ❌ FAIL with a one-line reason.\n\n---\n\n#### The 8 Rules\n\n**Rule 1: No \"I\" opener**\n- FAIL: First word is exactly `I` (standalone — not \"In\", \"It\", \"If\")\n- PASS: Anything else\n\n**Rule 2: Strong opener**\n- FAIL: First sentence ends with `?` OR starts with \"Have you\", \"Do you\", \"Are you\", \"What if\", \"What would\"\n- PASS: Declarative statement, specific number\u002Ffact, named scenario, or emotional setup\n\n**Rule 3: No AI tells**\n- FAIL: Contains any of: `delve`, `certainly`, `game-changing`, `game changer`, `it's worth noting`, `invaluable`, `unleash`, `revolutionize`, `transformative`\n- PASS: None of those words detected\n\n**Rule 4: No generic closers**\n- FAIL: Ends with (or contains near the end): `what do you think`, `drop a comment`, `thoughts?`, `let me know in the comments`, `agree?`, `sound familiar?`\n- PASS: Ends with a statement, directive, punchline, or thread hook\n\n**Rule 5: Corey Test (specificity)**\n- FAIL: Uses vague language without specifics — \"it changed how I work\", \"massive results\", \"so much better\" — no numbers, names, or concrete outcomes\n- PASS: Contains at least one specific: a number, timeframe, named tool, or concrete result\n\n**Rule 6: Character count**\n- PASS: 280 characters or fewer\n- THREAD PASS: Over 280 chars BUT sections are numbered (1\u002F, 2\u002F, 3\u002F) or clearly separated with line breaks — count as PASS\n- FAIL: Over 280 chars with no thread formatting\n\n**Rule 7: Single point**\n- FAIL: Makes 3+ distinct unrelated claims with no clear through-line\n- PASS: One core idea, even if supported by 2–3 details\n\n**Rule 8: Punchy rhythm**\n- FAIL: Any sentence over 20 words OR preamble like \"I've been thinking a lot about...\" \u002F \"Something I've noticed recently is...\"\n- PASS: Short sentences, no preamble, gets to the point by line 2 at latest\n\n---\n\n### PHASE 3: OUTPUT\n\nPrint this exact format:\n\n```\nTWEET REVIEW\n────────────\n\nScore: X\u002F10\n\nRule-by-Rule:\n1. ✅\u002F❌ No \"I\" opener — [reason]\n2. ✅\u002F❌ Strong opener — [reason]\n3. ✅\u002F❌ No AI tells — [reason]\n4. ✅\u002F❌ No generic closers — [reason]\n5. ✅\u002F❌ Corey Test — [reason]\n6. ✅\u002F❌ Character count — [reason + actual count]\n7. ✅\u002F❌ Single point — [reason]\n8. ✅\u002F❌ Punchy rhythm — [reason]\n\n────────────\n```\n\n**Scoring table (passes → score):**\n\n| Passes | Score |\n|--------|-------|\n| 8 | 10\u002F10 |\n| 7 | 9\u002F10 |\n| 6 | 8\u002F10 |\n| 5 | 6\u002F10 |\n| 4 | 5\u002F10 |\n| 3 | 4\u002F10 |\n| 2 | 3\u002F10 |\n| 1 | 1\u002F10 |\n| 0 | 0\u002F10 |\n\n**If score ≥ 7:**\n```\n→ Ready to post. Use Typefully or your scheduler to queue it.\n```\n\n**If score \u003C 7 — add a rewrite:**\n```\nSuggested Rewrite:\n\n[rewritten tweet that fixes all failing rules]\n```\n\n---\n\n### PHASE 4: SELF-CRITIQUE\n\nBefore delivering the output, check:\n\n1. **All 8 rules evaluated** — Count the rule lines in your output. There must be exactly 8. If any are missing, add them.\n2. **Score matches pass count** — Count the ✅ marks. Verify the score matches the table above. Correct it if not.\n3. **Rewrite quality** — If a rewrite was provided, check it against all 8 rules mentally. Does it pass the ones the original failed? If the rewrite would score below 7 itself, rewrite it again.\n4. **Reason quality** — Each rule result must have a specific reason, not a generic one. \"Too vague\" is not enough — say what specifically is vague.\n\nFix anything that fails before delivering.\n\n---\n\n## Example Review\n\n**Input:**\n```\nI've been thinking a lot about how AI is really changing the way founders \napproach content creation and productivity, and I think it's worth noting \nthat the teams who figure out async AI workflows are going to have a \nmassive advantage. What do you think about this?\n```\n\n**Output:**\n```\nTWEET REVIEW\n────────────\n\nScore: 2\u002F10\n\nRule-by-Rule:\n1. ❌ No \"I\" opener — Starts with \"I've\"\n2. ❌ Strong opener — Slow setup, no hook, no specific fact\n3. ❌ No AI tells — Contains \"it's worth noting\"\n4. ❌ No generic closers — Ends with \"What do you think about this?\"\n5. ❌ Corey Test — \"massive advantage\" is vague, no numbers or concrete outcome\n6. ✅ Character count — 248 chars\n7. ✅ Single point — Focused on async AI workflows\n8. ❌ Punchy rhythm — Run-on sentence, preamble opener\n\n────────────\n\nSuggested Rewrite:\n\nThe founders winning right now aren't working harder.\n\nThey have agents running at 2am. Content drafted. Research done.\nQueue processed.\n\nBy 7am they're reviewing output, not creating it.\n\nAsync AI ops is the new early morning routine.\n```\n\n---\n\n## Batch Mode Output\n\nWhen scanning a folder, output one review block per file:\n\n```\n? content\u002Ftweet-drafts\u002Flinkedin-ai-post.md\n[full review block]\n\n? content\u002Ftweet-drafts\u002Ffounder-ops.md\n[full review block]\n\n────────────\nBATCH SUMMARY\nReviewed: 4 drafts\nReady to post (≥7): 2\nNeed rewrite (\u003C7): 2\n```\n\n---\n\n## Requirements\n\n- Claude Code with bash tool access (for folder scan mode)\n- No external APIs — pure LLM reasoning for the review\n- Tweet drafts folder at `content\u002Ftweet-drafts\u002F` (optional — direct paste always works)\n- Files in the drafts folder are marked `reviewed: true` to skip them in future scans\n",{"name":5,"description":7},"main","c173cdffe08e788a99b91928a831b476b8434838","ecosystem\u002Fskills\u002Ftweet_draft_reviewer",0,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw","https:\u002F\u002Fportfolio-longleo.vercel.app\u002Flabs\u002Fomniclaw.html","https:\u002F\u002Fgithub.com\u002FLongLeo287","https:\u002F\u002Fwww.facebook.com\u002FResourceRookie2023","2026-11-14 08:48:28",{"source":8,"skillName":5,"commands":48,"prompt":58,"zipAvailable":59},[49,52,55],{"tool":50,"command":51},"npx","npx skills add LongLeo287\u002FOmniClaw --skill tweet_draft_reviewer",{"tool":53,"command":54},"bunx","bunx skills add LongLeo287\u002FOmniClaw --skill tweet_draft_reviewer",{"tool":56,"command":57},"pnpm","pnpm dlx skills add LongLeo287\u002FOmniClaw --skill tweet_draft_reviewer","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Ftweet_draft_reviewer\u002FSKILL.md",true,[61,67,71,75],{"path":62,"resourceType":63,"resourceTypeDesc":64,"sizeBytes":65,"sourceHtmlUrl":66},"_DIR_IDENTITY.md","REFERENCE","参考文档",405,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Ftweet_draft_reviewer\u002F_DIR_IDENTITY.md",{"path":68,"resourceType":63,"resourceTypeDesc":64,"sizeBytes":69,"sourceHtmlUrl":70},"README.md",475,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Ftweet_draft_reviewer\u002FREADME.md",{"path":72,"resourceType":63,"resourceTypeDesc":64,"sizeBytes":73,"sourceHtmlUrl":74},"schema.json",462,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Ftweet_draft_reviewer\u002Fschema.json",{"path":76,"resourceType":63,"resourceTypeDesc":64,"sizeBytes":77,"sourceHtmlUrl":78},"skill_oc.md",2628,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Ftweet_draft_reviewer\u002Fskill_oc.md",[80,119,141,169,184,211],{"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":15,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":98,"publishedAt":33},"01M6JR0KQP4MHT32TN40D9CBFX","UI-UX Pro Max","Advanced UI\u002FUX analysis and generation skills with data-driven patterns. Python scripts (core.py, search.py) for systematic UI pattern extraction, design system generation, and component search from curated data sources.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fui_components\u002Fui_ux_pro_max\u002FSKILL.md",[86,89,90,95],{"categoryNo":87,"categoryName":88,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":91,"categoryName":92,"taxonomyType":93,"taxonomyTypeDesc":94},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",{"categoryNo":96,"categoryName":97,"taxonomyType":93,"taxonomyTypeDesc":94},"01JBSEEDCAT000000000000033","数据分析师",[99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118],"ux","ui","ui ux pro max","max","pro","ui ux","design","component","search","analysis","team","rd","ui-ux","active","systematic","scripts","pattern extraction","sources","advanced","data-driven",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":126,"publishedAt":33},"01M6JR0EF5AEQHP2FSTB57H05P","shadcn-ui","Expert guidance for integrating and building applications with shadcn\u002Fui components, including component discovery, installation, customization, and best practices.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fui_components\u002Fshadcn_ui\u002FSKILL.md",[125],{"categoryNo":91,"categoryName":92,"taxonomyType":93,"taxonomyTypeDesc":94},[127,100,128,129,106,130,131,132,133,109,134,135,136,112,137,138,139,140],"shadcn","shadcn ui","components","core","best practices","applications","discovery","customization","guidance","expert","installation","ui components","with","for",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":150,"publishedAt":33},"01M6JR08F51BEN17RHFYX65WVE","zustand_store_ts","Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state\u002Faction separation. Use when building React state management, creating global stores, or implementing reactive state patterns with Zustand.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fzustand_store_ts\u002FSKILL.md",[147],{"categoryNo":148,"categoryName":149,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,139,167,168],"zustand store ts","zustand","store","typescript","microsoft","react","create","state management","state","react state management","management","global","use","patterns","separation","middleware","action","implementing",{"skillNo":170,"name":152,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":172,"categories":173,"keywords":174,"publishedAt":33},"01M6JR00TDMVAFFCZXZ04AN7Q7","Zustand state management guide. Use when working with store code (src\u002Fstore\u002F**), implementing actions, managing state, or creating slices. Triggers on Zustand store development, state management questions, or action implementation.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fzustand\u002FSKILL.md",[],[152,175,158,28,159,176,177,161,178,163,179,180,181,153,139,182,183,167,168],"development","actions","src","guide","implementation","zustand state","triggers","questions","zustand state management",{"skillNo":185,"name":186,"nameZh":6,"description":187,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":188,"categories":189,"keywords":194,"publishedAt":33},"01M6JQZSWV4KWJP112G6XHEP44","youtube_summarizer","Automatically fetch YouTube video transcripts, generate structured summaries, and send full transcripts to messaging platforms. Detects YouTube URLs and provides metadata, key insights, and downloadable transcripts.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fyoutube_summarizer\u002FSKILL.md",[190,193],{"categoryNo":191,"categoryName":192,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210],"youtube","youtube summarizer","summarizer","generate","metadata","messaging","Video","fetch","telegram","transcription","summarization","structured","full","insights","transcripts","summaries",{"skillNo":212,"name":213,"nameZh":6,"description":214,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":215,"categories":216,"keywords":217,"publishedAt":33},"01M6JQZN3QJB6B77JGKJD62DQT","youtube_clipper","YouTube 视频智能剪辑工具。下载视频和字幕，AI 分析生成精细章节（几分钟级别）， 用户选择片段后自动剪辑、翻译字幕为中英双语、烧录字幕到视频，并生成总结文案。 使用场景：当用户需要剪辑 YouTube 视频、生成短视频片段、制作双语字幕版本时。 关键词：视频剪辑、YouTube、字幕翻译、双语字幕、视频下载、clip video","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fyoutube_clipper\u002FSKILL.md",[],[195,218,219,201,220,221,222,223,224,225,226,227,228,229,230,231,232],"clipper","youtube clipper","Bash","下载","视频","生成","关键词","翻译","read","write","clip","总结","工具","文案","sonnet"]