Awesome-omni-skill tag-based-search
Code tagging system using @FEAT, @COMP, @TYPE tags for easy discovery and navigation. Use when adding documentation tags or searching for related code across the codebase.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/product/tag-based-search" ~/.claude/skills/diegosouzapw-awesome-omni-skill-tag-based-search && rm -rf "$T"
manifest:
skills/product/tag-based-search/SKILL.mdsource content
Tag-Based Search
Instructions
Tag system
@FEAT:feature-name - Feature grouping @COMP:component-name - Component type @TYPE:category - Code category
Usage
Add in comments:
# @FEAT:{{feature-name}} @COMP:{{component}} @TYPE:{{type}} class {{ClassName}}: pass
Search with grep:
grep -r "@FEAT:{{feature-name}}" {{src_directory}}/
Example
<!-- CUSTOMIZE: Replace with {{PROJECT_NAME}} domain examples --># @FEAT:user-auth @COMP:service @TYPE:core class AuthenticationService: '''Handles user authentication''' pass # @FEAT:user-auth @COMP:validator @TYPE:utility def validate_credentials(username, password): return username and password
Common Tags by Domain
Generic/Universal Tags
FEAT (Feature):
,user-auth
,data-processing
,file-upload
,notificationpayment
COMP (Component):
,service
,validator
,route
,model
,controller
,middleware
,utilconfig
TYPE (Category):
,core
,api
,data
,utility
,business
,integrationvalidation
E-commerce Tags
FEAT:
@FEAT:product-catalog @FEAT:shopping-cart @FEAT:checkout @FEAT:payment-processing @FEAT:order-management @FEAT:inventory-tracking @FEAT:shipping-integration @FEAT:customer-reviews @FEAT:discount-pricing
COMP:
@COMP:product-service @COMP:cart-service @COMP:payment-gateway @COMP:order-processor @COMP:inventory-manager @COMP:shipping-calculator @COMP:price-engine
Example:
# @FEAT:shopping-cart @COMP:service @TYPE:core class CartService: def add_item(self, cart_id, product_id, quantity): pass # @FEAT:checkout @COMP:validator @TYPE:validation def validate_checkout(cart, address, payment): pass
SaaS Application Tags
FEAT:
@FEAT:user-management @FEAT:subscription-billing @FEAT:team-collaboration @FEAT:role-permissions @FEAT:audit-logging @FEAT:api-integration @FEAT:webhook-notifications @FEAT:data-export @FEAT:analytics-dashboard
COMP:
@COMP:tenant-service @COMP:subscription-manager @COMP:billing-processor @COMP:permission-checker @COMP:audit-logger @COMP:webhook-dispatcher @COMP:analytics-aggregator
Example:
# @FEAT:subscription-billing @COMP:service @TYPE:core class SubscriptionService: def charge_customer(self, customer_id, amount): pass # @FEAT:role-permissions @COMP:middleware @TYPE:integration def require_permission(permission_name): pass
Data Platform Tags
FEAT:
@FEAT:data-ingestion @FEAT:data-transformation @FEAT:data-validation @FEAT:data-pipeline @FEAT:data-quality @FEAT:schema-evolution @FEAT:data-lineage @FEAT:job-scheduling
COMP:
@COMP:extractor @COMP:transformer @COMP:loader @COMP:validator @COMP:pipeline-orchestrator @COMP:schema-registry @COMP:job-scheduler
Example:
# @FEAT:data-ingestion @COMP:extractor @TYPE:integration class APIDataExtractor: def fetch_data(self, endpoint, params): pass # @FEAT:data-validation @COMP:validator @TYPE:validation def validate_schema(data, schema): pass
Mobile/IoT Tags
FEAT:
@FEAT:device-registration @FEAT:device-monitoring @FEAT:firmware-update @FEAT:telemetry-collection @FEAT:remote-control @FEAT:offline-sync @FEAT:push-notification @FEAT:geolocation
COMP:
@COMP:device-manager @COMP:telemetry-collector @COMP:firmware-updater @COMP:sync-engine @COMP:notification-sender @COMP:location-tracker
Example:
# @FEAT:device-monitoring @COMP:service @TYPE:core class DeviceMonitoringService: def check_health(self, device_id): pass # @FEAT:offline-sync @COMP:sync-engine @TYPE:core class SyncEngine: def resolve_conflicts(self, local, remote): pass
CRM/Marketing Tags
FEAT:
@FEAT:contact-management @FEAT:lead-scoring @FEAT:email-campaign @FEAT:workflow-automation @FEAT:sales-pipeline @FEAT:reporting-analytics @FEAT:contact-import @FEAT:activity-tracking
COMP:
@COMP:contact-service @COMP:lead-scorer @COMP:email-sender @COMP:workflow-engine @COMP:pipeline-manager @COMP:report-generator
Example:
# @FEAT:lead-scoring @COMP:service @TYPE:business class LeadScoringService: def calculate_score(self, lead): pass # @FEAT:email-campaign @COMP:sender @TYPE:integration class EmailCampaignSender: def send_campaign(self, campaign_id, recipients): pass
Multi-Language Examples
Python
# @FEAT:user-auth @COMP:service @TYPE:core class AuthenticationService: '''Handles user authentication''' # @FEAT:user-auth @COMP:service @TYPE:core def authenticate(self, username, password): pass # @FEAT:user-auth @COMP:validator @TYPE:utility def validate_password_strength(password): return len(password) >= 8
JavaScript/TypeScript
// @FEAT:user-auth @COMP:service @TYPE:core class AuthenticationService { /** * Handles user authentication */ // @FEAT:user-auth @COMP:service @TYPE:core authenticate(username, password) { // ... } } // @FEAT:user-auth @COMP:validator @TYPE:utility function validatePasswordStrength(password) { return password.length >= 8; }
Go
// @FEAT:user-auth @COMP:service @TYPE:core // AuthenticationService handles user authentication type AuthenticationService struct{} // @FEAT:user-auth @COMP:service @TYPE:core // Authenticate validates user credentials func (s *AuthenticationService) Authenticate(username, password string) bool { // ... return false } // @FEAT:user-auth @COMP:validator @TYPE:utility // ValidatePasswordStrength checks password requirements func ValidatePasswordStrength(password string) bool { return len(password) >= 8 }
Java
// @FEAT:user-auth @COMP:service @TYPE:core /** * Handles user authentication */ public class AuthenticationService { // @FEAT:user-auth @COMP:service @TYPE:core public boolean authenticate(String username, String password) { // ... return false; } } // @FEAT:user-auth @COMP:validator @TYPE:utility /** * Validates password strength */ public class PasswordValidator { public static boolean validateStrength(String password) { return password.length() >= 8; } }
Search Strategies
Find all code for a feature
# Find everything related to user-auth grep -r "@FEAT:user-auth" src/ # With line numbers grep -rn "@FEAT:user-auth" src/ # Show file names only grep -rl "@FEAT:user-auth" src/
Find specific component type
# Find all services grep -r "@COMP:service" src/ # Find all validators grep -r "@COMP:validator" src/
Find by code category
# Find all core logic grep -r "@TYPE:core" src/ # Find all integrations grep -r "@TYPE:integration" src/
Combined searches
# Find core services for user-auth grep -r "@FEAT:user-auth" src/ | grep "@COMP:service" | grep "@TYPE:core" # Find all validation code across features grep -r "@TYPE:validation" src/
Using Claude Code's Grep tool
Pattern: "@FEAT:user-auth" Output mode: files_with_matches Path: src/ # Then drill down: Pattern: "@FEAT:user-auth.*@COMP:service" Output mode: content
Tag Maintenance
When to add tags
Always tag:
- New classes/functions
- Core business logic
- Integration points
- Validation logic
Optional (but recommended):
- Utility functions
- Configuration files
- Test files
Tag consistency rules
-
One tag per line (easier to grep)
# ✅ Good # @FEAT:user-auth @COMP:service @TYPE:core # ❌ Avoid # @FEAT:user-auth # @COMP:service # @TYPE:core -
Feature names lowercase with hyphens
✅ @FEAT:user-auth ❌ @FEAT:UserAuth ❌ @FEAT:user_auth -
Component names match architecture
✅ @COMP:service (if you use "services" in your architecture) ❌ @COMP:manager (if not a standard component type)
Updating tags
When refactoring:
- Update @FEAT if feature name changes
- Update @COMP if component type changes
- Keep @TYPE consistent with new purpose
For detailed patterns, see reference.md For more examples, see examples.md