agentleFS
d-o-hubd-o-hub/github-template-ai-agents/.agents/skills/intent-classifier/SKILL.md

intent-classifier

Skill2 starsChanged 10 days agoMITView on GitHub

Classify user intents and route to appropriate skills, commands, or workflows. Use when determining which skill to invoke, routing requests to specialized agents, or building skill selection logic. Trigger on 'which skill should I use', 'route this to', 'classify this request', 'skill selection', or when multiple skills could handle a task. Not for skill-creator, skill-evaluator.

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 4 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Consider skill descriptions and keywords

    line 32
  2. Distinctive:

    When a request contains multiple intents:

    line 60
  3. Distinctive:

    Composite: - Use parent skill that orchestrates sub-skills

    line 63
  4. Distinctive:

    Update the skill catalog using:

    line 76

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Intent Classifier

Classify user requests and route them to the most appropriate skill, command, or specialized agent.

When to Use

  • User asks which skill to use or how to route a request
  • Need to determine which skill handles a given task
  • Multiple skills could handle a request and disambiguation is needed
  • Even if they just say "which skill should I use" or "route this"

Classification Workflow

1. Intent Extraction

  • Parse the user's natural language request
  • Identify primary action (create, update, delete, analyze, etc.)
  • Extract entities (file paths, technologies, specific terms)

2. Skill Matching

  • Compare against available skills catalog
  • Score match confidence for each candidate
  • Consider skill descriptions and keywords

3. Route Decision

  • Select highest-confidence match
  • Handle ties and ambiguous cases
  • Fall back to general assistance if no match

Classification Rules

Priority Order

  1. Exact keyword match - Skill description contains exact phrase
  2. Domain match - Technology stack alignment
  3. Action match - Verb/action alignment
  4. Context match - File paths, extensions, surrounding context

Confidence Scoring

High (0.8-1.0):   Exact description match, multiple keyword hits
Medium (0.5-0.7): Partial match, related domain
Low (0.3-0.4):    Weak match, shared keywords only
None (<0.3):      No relevant match

Multi-Intent Handling

When a request contains multiple intents:

  1. Sequential - Chain skills in dependency order
  2. Parallel - Execute independent skills simultaneously
  3. Composite - Use parent skill that orchestrates sub-skills

Fallback Strategies

ConfidenceAction
> 0.7Execute primary skill
0.5 - 0.7Execute skill with confirmation
0.3 - 0.5Present top 2-3 options to user
< 0.3Use general assistance

Dynamic Catalog

Update the skill catalog using:

./scripts/generate-skill-catalog.sh

This scans .agents/skills/ and regenerates the skill registry with:

  • Skill names and full descriptions (1024-char budget, Not for guards retained)
  • Categories, with a per-category index

Regenerate after adding, renaming, or removing a skill. The previous dynamic-catalog.sh entry point is a deprecated shim that delegates here.

Skill Selection Examples

User RequestPrimary IntentRouted Skill
"Create a new skill for Docker"Skill creationskill-creator
"Audit my code for security issues"Security auditsecurity-code-auditor
"Design a REST API for users"API designapi-design-first
"Fix this bug in my Python script"Code debugging(general)

See Also

  • skill-creator — Create and improve skills
  • skill-evaluator — Evaluate and score skills
  • goap-agent — Orchestrator for complex multi-step tasks

Rationalizations

RationalizationReality
"I can just pick a skill manually"Systematic classification ensures the best-matched skill is used and prevents overlooking specialized alternatives.
"Close enough is fine, I'll just pick the first match"Low-confidence matches lead to wrong workflows and wasted tokens; present options when uncertain.

Red Flags

  • Routing to a skill without checking confidence score
  • Ignoring multi-intent requests that require chaining skills
  • Failing to update the dynamic catalog after adding new skills

References

  • references/classification-rules.md - Detailed classification algorithm
  • references/skill-catalog.md - Auto-generated skill registry
  • references/workflow-patterns.md - Multi-skill orchestration patterns

Voice & Context

  • Default: professional + blog
  • Reference: voice-profiles skill for definitions and auto-detection.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.