agentsclimarketplace

Run2 keyword classification

Skill cxcscmu/SkillLearnBench/skills/b2-self-feedback-gemini-3.1-pro-preview/organize-messy-files/run2_keyword-classification

Classifies unstructured text into specific categories based on keyword presence, falling back to a default category when no matches are found.From its SKILL.md

Install
npx -y skills add cxcscmu/SkillLearnBench --skill run2_keyword-classification

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

1.7 KB, 344 tokens by cl100k_base, as published. Nobody here has run it

Keyword-Based Text Classification Skill

Description

This skill leverages simple keyword occurrence counting to categorize textual documents. It is faster than using an LLM and is effective when categories are highly distinct (e.g., DNA vs. Black Holes).

Python Implementation

def classify_by_keywords(text, category_keywords, default_category):
    """
    Classifies text based on the frequency of predefined keywords per category.
    
    :param text: Lowercase text string to classify.
    :param category_keywords: A dictionary mapping category names to a list of keywords.
    :param default_category: The category to return if no keywords match.
    :return: The string name of the matched category.
    """
    scores = {cat: 0 for cat in category_keywords}
    
    for cat, keywords in category_keywords.items():
        for kw in keywords:
            # Simple substring matching, can be enhanced with regex if needed
            scores[cat] += text.count(kw.lower())
            
    best_cat = max(scores, key=scores.get)
    
    if scores[best_cat] > 0:
        return best_cat
    else:
        return default_category

# Example Usage
categories = {
    "LLM": ["llm", "large language model", "transformer", "chatgpt", "gpt-", "natural language processing"],
    "DNA": ["dna", "genome", "gene ", "genetic", "chromosome", "biology"]
}

text_sample = "the human genome project mapped all the genes in our dna."
result = classify_by_keywords(text_sample, categories, "unknown")
print(result) # Output: DNA

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.