Tag Vocabulary

Tags are how suggest-best-practice routes any situation to the right skill. Every skill requires tags covering all four axes. Inconsistent tags silently break routing — two skills covering the same role tagged differently won’t both surface when they should.

This document defines accepted values per axis and explains how to choose.


The four axes

AxisQuestion it answersExample
ProblemWhat problem or situation is this skill for?commit-messages, deprecation, gap-analysis
MethodWhat technique or tool does it apply?checklist, mece, semantic-versioning
RoleWho uses this skill?developer, maintainer, reviewer
OutcomeWhat does the user get?defect-prevention, consistency, domain-release

All four axes must be covered. A skill with only problem and method tags won’t route to the right audience (missing role) and won’t match queries framed as outcomes (missing outcome).

The total tag count should be 3–8. Under 3 usually means an axis is missing. Over 8 usually means the skill covers too many concepts — consider splitting.


Problem keywords

Use these to tag what the skill addresses. Pick the most specific match; add a broader category if needed.

Commits and version control

TagMeaning
commit-messagesWriting or evaluating commit message content
conventional-commitsConventional Commits specification specifically
changelogMaintaining or generating changelogs
semantic-versioningVersion numbering decisions
gitGit workflows and operations

Skill library management

TagMeaning
skill-authoringWriting a new SKILL.md
skill-reviewEvaluating a SKILL.md
skill-revisionFixing findings in an existing SKILL.md
skill-discoveryFinding the right skill for a situation
skill-maintenanceKeeping skills accurate and current
skill-qualityAssessing overall quality of skills
deprecationRetiring an outdated skill or practice
stalenessDetecting skills or references that are out of date
knowledge-freshnessEnsuring knowledge stays current over time
outdated-practicePractices that have been superseded

Domain and library structure

TagMeaning
domain-creationAdding a new domain to the library
domain-healthQuality state of an entire domain
knowledge-architectureHow knowledge is structured and organized
knowledge-governanceRules and processes for managing a knowledge base

Practice evaluation and gap analysis

TagMeaning
gap-analysisIdentifying what’s missing from an approach
practice-alignmentHow well an approach matches best practices
solution-reviewEvaluating an existing solution or design
quality-auditBatch assessment of quality across many items
quality-debtAccumulated quality problems that need addressing
quality-gateA checkpoint that blocks progress until quality criteria pass

Problem structure

TagMeaning
multi-domainProblems spanning more than one domain
cross-domainSkills that apply across multiple domains
problem-decompositionBreaking complex problems into sub-problems
naming-inconsistencyInconsistent naming in code, docs, or taxonomy
structured-authoringWriting structured documents like specs or proposals

Method tags

Use these to tag the technique or approach the skill applies.

TagMeaning
auto-classifyAutomatic categorization of input to the right domain
checklistEvaluation via a fixed list of criteria
meceMutually Exclusive, Collectively Exhaustive decomposition
problem-routingDirecting a problem to the right skill or domain
situation-analysisAnalyzing a user’s context before recommending
skill-orchestrationCoordinating multiple skills in sequence
structured-solutionProducing output in a defined structured format

Role tags

Use the role that best describes who invokes this skill. Pick the primary audience; add a second if genuinely two distinct audiences exist.

TagMeaning
developerSoftware engineer writing or reviewing code
architectTechnical decision-maker designing systems
reviewerPerson evaluating someone else’s work (code, skills, plans)
maintainerPerson responsible for maintaining a library or codebase
contributorPerson contributing to an open-source project
domain-expertSubject matter expert in a specific field
practitionerGeneric professional practitioner in any domain
decision-makerPerson making a strategic or resource decision
problem-solverGeneral — anyone trying to solve a problem across domains

Rule: Don’t use practitioner when a more specific role applies. practitioner is a fallback for domain skills where the audience can’t be narrowed further (e.g., a health skill for anyone in medicine). For meta skills and engineering skills, use a specific role.


Outcome tags

Use these to tag what the user achieves by applying the skill.

TagMeaning
consistencyUniform results across multiple applications
contribution-qualityHigher quality of contributions to a shared library
defect-preventionFewer bugs or errors in output
documentation-standardsDocumentation that meets a defined quality bar
domain-releaseA new domain ready to publish
knowledge-governanceA governed, maintained knowledge base
onboarding-speedFaster time-to-productivity for new contributors
practice-complianceOutput that conforms to established best practices
practice-recommendationA concrete recommendation for what practice to apply
repo-healthA codebase or skill library in good structural health
review-passA skill or artifact that passes a quality review
searchabilityContent that can be found and routed accurately
solution-improvementAn existing solution improved against best practices

Choosing tags: decision rules

Step 1 — Problem axis Ask: “What situation would cause someone to use this skill?” Pick 1–2 tags that match that situation.

Step 2 — Method axis Ask: “What technique does this skill apply?” Pick 1 tag. If none fit, the method may be implicit in the problem — that’s acceptable, but check the vocabulary first.

Step 3 — Role axis Ask: “Who is this skill for — by job or responsibility?” Pick 1 tag. If two genuinely distinct audiences exist (e.g., both developer and reviewer), use both.

Step 4 — Outcome axis Ask: “What does the user walk away with?” Pick 1–2 outcome tags. This is the most commonly missing axis.

Step 5 — Count check If total tags < 3: an axis is missing. If total tags > 8: the skill covers too many concepts — split it.


Common mistakes

Missing the outcome axis

# Bad — no outcome
tags: [skill-review, checklist, reviewer]

# Good — outcome added
tags: [skill-review, checklist, reviewer, review-pass]

Using a role too broad

# Bad — practitioner is too generic for an engineering skill
tags: [commit-messages, conventional-commits, practitioner, consistency]

# Good
tags: [commit-messages, conventional-commits, developer, consistency]

Tags that describe the same thing twice

# Bad — skill-review and quality-gate both say "evaluation checkpoint"
tags: [skill-review, quality-gate, reviewer, review-pass]

# Good — pick the most specific
tags: [skill-review, checklist, reviewer, review-pass]

Inventing tags with no equivalent in this vocabulary Before adding a new tag, check whether an existing tag covers it. Tags outside the vocabulary don’t improve routing — they’re noise. If a genuine gap exists, add the tag to this document in the same PR as the skill.


Adding new tags

If no existing tag fits your skill, add one — but follow these rules:

  1. Check the vocabulary first. A synonym of an existing tag does not qualify.
  2. Place it in the correct axis section. If you’re unsure which axis it belongs to, the tag may be combining two concepts — split it.
  3. Write a one-line definition. Every tag in this document has a definition. Add yours.
  4. Include it in the same PR as the skill. Don’t add tags in isolation; they need a skill to validate their meaning.