oculus-tagging-taxonomy
Oculus Tagging Taxonomy
A living guide to the tagging conventions used in the Oculus knowledge graph. This page includes live statistics that update whenever you view it.
Live Statistics
Live Statistics
Overview
TableConfig:
array_path: namespaces
columns:
Namespace: namespace
Tag Count: tag_count
Total Usage: total_usage
format: markdown❌ Fence Execution Error: "'tag-statistics' - Down the rabbit hole we went, but that node doesn't exist! Try 'oculus list' to see what's available."
Top 20 Tags
TableConfig:
array_path: top_tags
columns:
Tag: tag
Count: count
format: markdown❌ Fence Execution Error: "'tag-statistics' - Down the rabbit hole we went, but that node doesn't exist! Try 'oculus list' to see what's available."
Pattern/Implementation Summary
TableConfig:
array_path: patterns
columns:
Pattern: tag
Nodes: count
format: markdown❌ Fence Execution Error: "'tag-statistics' - Down the rabbit hole we went, but that node doesn't exist! Try 'oculus list' to see what's available."
TableConfig:
array_path: implementations
columns:
Implementation: tag
Nodes: count
format: markdown❌ Fence Execution Error: "'tag-statistics' - Down the rabbit hole we went, but that node doesn't exist! Try 'oculus list' to see what's available."
Tagging Philosophy
Tags serve three purposes in Oculus:
- Discovery - Find related content across the graph
- Classification - Categorize nodes by type, pattern, or domain
- Audit - Track implementations of patterns and conventions
Namespace Conventions
Tags use namespace:value format for structured categorization. Plain tags (no colon) are general-purpose.
Core Namespaces
Tags use namespace:value format for structured categorization. Plain tags (no colon) are general-purpose.
Wonderland Namespaces
Thematic tags inspired by Alice's adventures:
| Namespace | Purpose | Example |
|---|---|---|
potion: |
Executable capabilities - tools, utilities, skills you can do | potion:graph-navigation |
cake: |
Learning paths - reading lists, curricula, knowledge you consume | cake:peregrine-basics |
"Drink Me" potions grant abilities. Tag nodes that provide executable tools or reusable capabilities.
"Eat Me" cakes are for consumption. Tag reading lists, learning paths, and curated knowledge collections.
Core Namespaces
| Namespace | Purpose | Example |
|---|---|---|
pattern: |
Defines a methodology or convention | pattern:methodology |
implementation: |
Marks concrete realizations of patterns | implementation:looking-glass-development |
guide: |
Documentation guides by audience | guide:gentik |
test: |
LGD test nodes for features | test:graphnode |
fence: |
Fence provider references | fence:graphnode |
type: |
Node type classification | type:guide |
status: |
Lifecycle status | status:active |
component: |
System component references | component:kinesis-statsd |
Guide Namespace
The guide: namespace classifies documentation by target audience:
| Tag | Audience | Description |
|---|---|---|
guide:gentik |
AI Agents | Cut-down tool guides for AI consumption. Like MCP schemas but for CLI tools and systems. Quick reference format with commands, workflows, error handling. |
guide:user |
Humans | Traditional user documentation with narrative explanations |
guide:admin |
Operators | Ops-focused guides for deployment, maintenance, troubleshooting |
Gentik Guide Convention:
- Slug pattern:
guide-<tool-name> - Must have "Quick Reference" section
- Copy-paste ready commands
- No narrative fluff
- Index: [[gentik-guide-index]]
Pattern/Implementation Pairs
This is the interface/class analogy for the knowledge graph:
pattern:methodology ← The contract (what it means)
↓ implements
implementation:looking-glass-development ← Concrete realizationDiscovery workflow:
# Find all methodology patterns
oculus find-by-tag pattern:methodology
# Find all nodes implementing LGD
oculus find-by-tag implementation:looking-glass-developmentDate Tags
Temporal tags for tracking when content was created or relevant:
| Format | Scope | Example |
|---|---|---|
YYYY-MM |
Month | 2025-11 |
YYYY-MM-DD |
Day | 2025-11-17 |
YYYY-MM-wWW |
Week | 2025-11-w47 |
Training Hierarchy
For structured learning content:
| Tag | Level | Contains |
|---|---|---|
training-parent |
Top | Overall training structure |
training-month |
Month | Monthly curriculum |
training-week |
Week | Weekly modules |
training-day |
Day | Daily lessons |
Related: peregrine-training, discovery-phase
Domain Tags
General-purpose tags for subject areas:
| Domain | Tags |
|---|---|
| Infrastructure | aws, ecs, fargate, efs, containers |
| Tools | jenkins, deployoryah, stuffy, oculus |
| Architecture | architecture, graph, fence, graphnode |
| Process | troubleshooting, debugging, diagnostic |
| Content | guide, documentation, reference, example |
| Testing | testing, harness, vitest, pytest, rspec |
| Languages | javascript, python, ruby, typescript |
Harness Tags
The harness tag marks reusable test execution components:
| Tag | Description |
|---|---|
harness |
Base tag for all test harness nodes |
vitest-harness |
JavaScript/TypeScript via Vitest |
pytest-harness |
Python via pytest |
rspec-harness |
Ruby via RSpec |
Harnesses follow the [[pattern-looking-glass-development]] and are tagged:
harness- the class/type markerpattern:lgdorpattern:methodology- indicates LGD compliance- Language tag (
javascript,python,ruby)
Tag Hygiene Guidelines
DO
- Use namespaces for structured categories (
pattern:,implementation:) - Be consistent - check existing tags before creating new ones
- Tag implementations when you follow a pattern
- Use date tags for time-relevant content
DON'T
- Create duplicate tags with slight variations (
debuggingvsdebug) - Use tags as sentences (
this-is-about-aws-deployment) - Over-tag - 3-7 tags per node is usually sufficient
- Create orphan patterns without implementations
Roadmap
Roadmap
Current Pattern Tags
TableConfig:
array_path: patterns
columns:
Pattern Tag: tag
Implementing Nodes: count
format: markdown❌ Fence Execution Error: "'tag-statistics' - Down the rabbit hole we went, but that node doesn't exist! Try 'oculus list' to see what's available."
Current Implementation Tags
TableConfig:
array_path: implementations
columns:
Implementation Tag: tag
Nodes: count
format: markdown❌ Fence Execution Error: "'tag-statistics' - Down the rabbit hole we went, but that node doesn't exist! Try 'oculus list' to see what's available."
Audit: Untagged Nodes
TODO: Add graphnode to find nodes with zero tags
Audit: Pattern Coverage
TODO: Add graphnode to find patterns with zero implementations
Quick Reference
CLI Commands
# List all tags with counts
oculus list-all-tags
# Find nodes by tag
oculus find-by-tag wanderland
# Add tags to a node
oculus add-tags my-node consciousness architecture
# View node tags
oculus get-tags my-nodeMCP Tools
// List all tags
mcp__wanderland__oculus_list_all_tags()
// Find by tag
mcp__wanderland__oculus_find_by_tag({ tag: "pattern:methodology" })
// Add tags
mcp__wanderland__oculus_add_tags({ slug: "my-node", tags: ["new-tag"] })See Also
- [[pattern-looking-glass-development]] - Primary methodology pattern
- [[pattern-embedded-tests]] - Self-validating documentation pattern
- [[tag-statistics]] - Raw statistics graphnode
Slots
North
slots:
- oculus
- patternsSouth
slots:
- tag-statistics
- tag-statisticsEast
slots:
- pattern-looking-glass-development
- pattern-looking-glass-developmentWest
slots:
- patterns