| created | "2026-04-17T00:00:00.000Z" |
| modified | "2026-06-28T00:00:00.000Z" |
| reviewed | "2026-06-28T00:00:00.000Z" |
| name | vault-tags |
| description | Emoji-prefixed tag taxonomy for Obsidian vaults. Use when consolidating drifted tags, collapsing bare emoji placeholders, or reducing over-tagging. |
| user-invocable | false |
| allowed-tools | Read, Edit, Grep, Glob |
Vault Tag Taxonomy
When to Use This Skill
| Use this skill when... | Use the alternative instead when... |
|---|
Consolidating drifted/duplicate tags (๐/security vs ๐/security) across many notes | Setting one property on one live note via the running CLI โ use properties |
Collapsing bare emoji placeholder tags like ๐ or ๐ฑ | Cleaning the surrounding YAML structure (null entries, missing blocks) โ use vault-frontmatter |
| Reducing over-tagged notes to 2-3 canonical tags | Grouping tag-aligned notes into a hub MOC โ use vault-mocs |
A two-level tag scheme built around emoji-prefixed categories. Consistent tagging enables reliable search (tag:#๐ ๏ธ/neovim), Dataview queries, and MOC coverage analysis.
Canonical Categories
| Emoji | Category | Examples |
|---|
๐ ๏ธ | Development tools | ๐ ๏ธ/neovim, ๐ ๏ธ/git, ๐ ๏ธ/terminal |
๐ป | Programming languages | ๐ป/python, ๐ป/rust, ๐ป/typescript |
โ๏ธ | Systems & infrastructure | โ๏ธ/kubernetes, โ๏ธ/docker, โ๏ธ/linux |
๐ | Hardware & IoT | ๐/esp32, ๐/arduino, ๐/electronics |
๐ | Home automation | ๐ /home-assistant, ๐ /esphome |
๐ฎ | Entertainment | ๐ฎ/games, ๐ฎ/tabletop |
๐ค | AI & ML | ๐ค/comfyui, ๐ค/llm, ๐ค/ai-tools |
Note-Type Tags
| Tag | Meaning |
|---|
๐/moc | Map of Content |
๐/notes | General note |
๐/collection | Resource collection |
๐/guide | How-to guide |
๐/reference | Quick reference material |
๐/commands | Command-line reference |
๐
/daily | Daily note |
Consolidation Table
When auditing reveals duplicate or drifted tags, apply these rewrites:
| Drift / Legacy | Canonical | Reason |
|---|
๐บ๏ธ | ๐/moc | Old MOC marker |
๐/security | ๐/security | Standardize on search emoji |
๐จ/comfyui | ๐ค/comfyui | ComfyUI lives under AI |
gaming | ๐ฎ/games | Flat โ emoji-prefixed |
neovim (flat) | ๐ ๏ธ/neovim | Flat โ emoji-prefixed |
softwaredevelopment | ๐ป/development | Concatenated โ slash |
project / projects | ๐ก/project | Pick one plural form |
Hardware (title-cased) | ๐/hardware | Lowercase, emoji-prefixed |
Bare Placeholder Tags
The tags ๐, ๐ฑ, ๐/๐ฑ are no-ops left over from unfinished template rendering. Treatment:
- If the note has other useful tags, remove the placeholder.
- If the note has only a placeholder, leave it flagged for manual review โ removing would leave the note untagged, which is a different (but real) problem.
Over-Tagging
More than 5 tags suggests the note mixes topics and should be split, or that tags are being used as keywords. Bring it down to 2โ3 by asking "what single category is this note about?" โ the rest go in the body as text.
Detection
rg -l '^\s*-\s+(๐|๐ฑ|๐/๐ฑ)\s*$' --glob '*.md'
rg -l '๐/security' --glob '*.md'
rg -l '๐/security' --glob '*.md'
rg '^\s*-\s+[a-z][a-z0-9_-]+\s*$' --glob '*.md'
Offline Fallback (App Closed)
The detection methodology above is unchanged โ only the data source changes when Obsidian (and its obsidian CLI / live tag index) is closed. The obsidian tags/tag queries in search-discovery are the live-index path; parsing the .md corpus directly with the rg Detection snippets above is the deterministic headless default, and for batch/scheduled audits it is often the better choice (reproducible, free of app/index state). vault-frontmatter already operates this way.
Tag taxonomy is pure frontmatter โ read each note's YAML block between the leading --- fences and extract tags (and aliases / context where relevant); see vault-frontmatter for YAML-block mechanics. The consolidation and bare-placeholder passes need no running app: the rg snippets above read tags straight from the files.
Edit Pattern
For each note, use Edit with a small old_string / new_string that touches only the affected tag lines. Preserve indentation and the rest of the frontmatter block exactly.
When renaming a tag across the whole vault, batch into one commit titled fix(tags): consolidate ๐/security โ ๐/security (N notes).
Anti-Patterns
- Do not invent new categories. Use the table above; propose additions via a conventional commit if truly needed.
- Do not use spaces inside tag values (
AI tools โ ๐ค/ai-tools).
- Do not use multiple emoji in one tag (
๐ ๏ธ๐/esp32 โ pick one).
- Do not add tags purely for search โ search works on content and filenames already.
Related Skills
- vault-frontmatter โ general YAML repair patterns
- vault-mocs โ how tag categories relate to MOCs
- search-discovery โ runtime tag queries via Obsidian CLI