{"id":"48ab3ebe-b36f-4544-9e7d-ff74a3fe2259","shortId":"3n6g2d","kind":"skill","title":"keyword-extractor","tagline":"Extracts up to 50 highly relevant SEO keywords from text. Use when user wants to generate or extract keywords for given text.","description":"# Keyword Extractor\n\nExtracts **max 50 relevant keywords** from text and formats them in a strict machine-ready structure.\n\n---\n\n## QUICK START\n\nJump to any section:\n1. [CORE MANDATE](#core-mandate) – Output rules and formatting \n2. [WHEN TO USE](#when-to-use) – Trigger conditions for this skill \n3. [KEYWORD QUALITY RULES](#keyword-quality-rules) – Priorities and forbidden keywords \n4. [WORKFLOW](#workflow) – Step-by-step generation and processing \n5. [FAILURE HANDLING](#failure-handling) – Short text or edge cases \n\n---\n\n# CORE MANDATE\n\nReturn **exactly one comma-separated line** of keywords, following these rules:\n- max 50 keywords  \n- ordered by relevance  \n- all lowercase  \n- no duplicates or near-duplicates  \n- mix of single words and 2–4 word phrases  \n- no numbering, bullets, explanations, or trailing period\n\n---\n\n## When to Use\nUse this skill when the user wants to generate or extract **SEO-friendly keywords or tags** from text including:\n- Extracting keywords or tags for any given text or paragraph  \n- Creating **comma-separated keywords or tags** suitable for SEO, search, or metadata  \n- Generating topic-specific keywords or tags based on the content’s main subjects and concepts  \n\nThis skill should be triggered for **all text-based keyword extraction requests**, regardless of phrasing, as long as the goal is SEO, tagging, or metadata generation.\n\nDo NOT trigger this skill for:  \n- Summaries or paraphrasing requests  \n- Text analysis without keyword generation\n\n---\n\n# KEYWORD QUALITY RULES\n\nPrefer noun phrases over verbs or adjectives.\nPrefer keywords useful for:\n- SEO and search\n- tagging\n- metadata\n\nPrioritize:\n- domain terminology\n- meaningful nouns\n- search phrases\n- entities\n- technical concepts\n\nAvoid weak keywords like:\n- things and various topics\n- general concepts\n- important ideas\n- methods\n\n**IMPORTANT: Each keyword must strictly represent a phrase that a user would type into a search engine**\n\n---\n\n# WORKFLOW\n\n## Step 1 — Analyze\n\nIdentify:\n- main subject\n- key topics\n- domain terminology\n- entities\n- concepts\n\nIgnore filler words.\n\n---\n\n## Step 2 — Generate Keywords\n\nGenerate up to 50 strictly SEO-friendly keywords directly from the text.\n\nInclude:\n- core topics\n- domain terminology\n- related concepts\n- common search queries\n\nAllowed formats:\n- single words\n- 2 word phrases\n- 3 word phrases\n- 4 word phrases\n\nExample:\n```machine learning, neural networks, deep learning models, ai algorithms, data science tools```\n\nAvoid vague keywords, filler phrases, adjectives without nouns like:\n```important methods, different ideas, various techniques, things```\n\nKeywords must not exceed 4 words.\n\n---\n\n## Step 3 — Rank\n\nOrder keywords by SEO importance using these signals:\n1. main topic of the text\n2. high-value domain terminology\n3. technologies, tools, or entities mentioned\n4. common search queries related to the topic\n5. supporting contextual topics\n\nMost important keywords should always appear first.\n\n---\n\n## Step 4 — Normalize\n\nEnsure:\n- lowercase, comma separated, no duplicates\n- ≤50 keywords\n- Remove near-duplicate keywords that represent the same concept.\n- Keep only the most common search phrase.\n- If two keywords represent the same concept, keep only the more common search phrase.\n\n---\n\n## Step 5 — Validate\n\nBefore returning output ensure:\n- keyword_count <= 50\n- no duplicates and near-duplicates\n- all lowercase and comma separated\n- no trailing period\n- each keyword is a clear searchable topic\n- keywords do not exceed 4 words\n\nIf any rule fails regenerate the list.\n\n---\n\n# FAILURE HANDLING\n\nIf text is very short, infer likely topics and still generate keywords. Never exceed 50 keywords.\n\n---\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["keyword","extractor","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows"],"capabilities":["skill","source-sickn33","skill-keyword-extractor","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/keyword-extractor","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34726 github stars · SKILL.md body (3,997 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-23T12:51:07.844Z","embedding":null,"createdAt":"2026-04-18T21:39:33.575Z","updatedAt":"2026-04-23T12:51:07.844Z","lastSeenAt":"2026-04-23T12:51:07.844Z","tsv":"'1':51,316,416 '2':61,140,331,361,422 '3':74,364,406,428 '4':86,141,367,403,434,454,530 '5':96,442,496 '50':7,30,122,337,462,504,555 'adject':264,388 'ai':378 'algorithm':379 'allow':357 'alway':450 'analysi':251 'analyz':317 'appear':451 'ask':590 'avoid':284,383 'base':204,222 'boundari':598 'bullet':146 'case':106 'clarif':592 'clear':523,565 'comma':113,186,458,514 'comma-separ':112,185 'common':354,435,478,492 'concept':212,283,293,326,353,473,487 'condit':70 'content':207 'contextu':444 'core':52,55,107,348 'core-mand':54 'count':503 'creat':184 'criteria':601 'data':380 'deep':375 'describ':569 'differ':394 'direct':343 'domain':275,323,350,426 'duplic':130,134,461,467,506,510 'edg':105 'engin':313 'ensur':456,501 'entiti':281,325,432 'environ':581 'environment-specif':580 'exact':110 'exampl':370 'exceed':402,529,554 'expert':586 'explan':147 'extract':4,21,28,164,174,224 'extractor':3,27 'fail':535 'failur':97,100,539 'failure-handl':99 'filler':328,386 'first':452 'follow':118 'forbidden':84 'format':36,60,358 'friend':167,341 'general':292 'generat':19,93,162,197,239,254,332,334,551 'given':24,180 'goal':233 'handl':98,101,540 'high':8,424 'high-valu':423 'idea':295,395 'identifi':318 'ignor':327 'import':294,297,392,412,447 'includ':173,347 'infer':546 'input':595 'jump':47 'keep':474,488 'key':321 'keyword':2,11,22,26,32,75,79,85,117,123,168,175,188,201,223,253,255,266,286,299,333,342,385,399,409,448,463,468,483,502,520,526,552,556 'keyword-extractor':1 'keyword-quality-rul':78 'learn':372,376 'like':287,391,547 'limit':557 'line':115 'list':538 'long':230 'lowercas':128,457,512 'machin':42,371 'machine-readi':41 'main':209,319,417 'mandat':53,56,108 'match':566 'max':29,121 'meaning':277 'mention':433 'metadata':196,238,273 'method':296,393 'miss':603 'mix':135 'model':377 'must':300,400 'near':133,466,509 'near-dupl':132,465,508 'network':374 'neural':373 'never':553 'normal':455 'noun':259,278,390 'number':145 'one':111 'order':124,408 'output':57,500,575 'paragraph':183 'paraphras':248 'period':150,518 'permiss':596 'phrase':143,228,260,280,304,363,366,369,387,480,494 'prefer':258,265 'priorit':274 'prioriti':82 'process':95 'qualiti':76,80,256 'queri':356,437 'quick':45 'rank':407 'readi':43 'regardless':226 'regener':536 'relat':352,438 'relev':9,31,126 'remov':464 'repres':302,470,484 'request':225,249 'requir':594 'return':109,499 'review':587 'rule':58,77,81,120,257,534 'safeti':597 'scienc':381 'scope':568 'search':194,271,279,312,355,436,479,493 'searchabl':524 'section':50 'seo':10,166,193,235,269,340,411 'seo-friend':165,339 'separ':114,187,459,515 'short':102,545 'signal':415 'singl':137,359 'skill':73,156,214,244,560 'skill-keyword-extractor' 'source-sickn33' 'specif':200,582 'start':46 'step':90,92,315,330,405,453,495 'step-by-step':89 'still':550 'stop':588 'strict':40,301,338 'structur':44 'subject':210,320 'substitut':578 'success':600 'suitabl':191 'summari':246 'support':443 'tag':170,177,190,203,236,272 'task':564 'technic':282 'techniqu':397 'technolog':429 'terminolog':276,324,351,427 'test':584 'text':13,25,34,103,172,181,221,250,346,421,542 'text-bas':220 'thing':288,398 'tool':382,430 'topic':199,291,322,349,418,441,445,525,548 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'topic-specif':198 'trail':149,517 'treat':573 'trigger':69,217,242 'two':482 'type':309 'use':14,64,68,153,154,267,413,558 'user':16,159,307 'vagu':384 'valid':497,583 'valu':425 'various':290,396 'verb':262 'want':17,160 'weak':285 'when-to-us':65 'without':252,389 'word':138,142,329,360,362,365,368,404,531 'workflow':87,88,314 'would':308","prices":[{"id":"d9192033-9a72-4d9a-922e-ab8b5265b913","listingId":"48ab3ebe-b36f-4544-9e7d-ff74a3fe2259","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:39:33.575Z"}],"sources":[{"listingId":"48ab3ebe-b36f-4544-9e7d-ff74a3fe2259","source":"github","sourceId":"sickn33/antigravity-awesome-skills/keyword-extractor","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/keyword-extractor","isPrimary":false,"firstSeenAt":"2026-04-18T21:39:33.575Z","lastSeenAt":"2026-04-23T12:51:07.844Z"}],"details":{"listingId":"48ab3ebe-b36f-4544-9e7d-ff74a3fe2259","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"keyword-extractor","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34726,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-23T06:41:03Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"65a64936cd61ca56f7ae7fb4f06807deae4e6530","skill_md_path":"skills/keyword-extractor/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/keyword-extractor"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"keyword-extractor","description":"Extracts up to 50 highly relevant SEO keywords from text. Use when user wants to generate or extract keywords for given text."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/keyword-extractor"},"updatedAt":"2026-04-23T12:51:07.844Z"}}