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.
Best use case
tag-based-search is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
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.
Teams using tag-based-search should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/tag-based-search/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How tag-based-search Compares
| Feature / Agent | tag-based-search | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
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.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Tag-Based Search
## Instructions
### Tag system
**@FEAT:feature-name** - Feature grouping
**@COMP:component-name** - Component type
**@TYPE:category** - Code category
### Usage
Add in comments:
```{{LANG}}
# @FEAT:{{feature-name}} @COMP:{{component}} @TYPE:{{type}}
class {{ClassName}}:
pass
```
Search with grep:
```bash
grep -r "@FEAT:{{feature-name}}" {{src_directory}}/
```
## Example
<!-- CUSTOMIZE: Replace with {{PROJECT_NAME}} domain examples -->
```{{LANG}}
# @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`, `notification`, `payment`
**COMP (Component):**
- `service`, `validator`, `route`, `model`, `controller`, `middleware`, `util`, `config`
**TYPE (Category):**
- `core`, `api`, `data`, `utility`, `business`, `integration`, `validation`
---
### 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:**
```{{LANG}}
# @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:**
```{{LANG}}
# @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:**
```{{LANG}}
# @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:**
```{{LANG}}
# @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:**
```{{LANG}}
# @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
```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
```javascript
// @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
```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
```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
```bash
# 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
```bash
# Find all services
grep -r "@COMP:service" src/
# Find all validators
grep -r "@COMP:validator" src/
```
### Find by code category
```bash
# Find all core logic
grep -r "@TYPE:core" src/
# Find all integrations
grep -r "@TYPE:integration" src/
```
### Combined searches
```bash
# 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
1. **One tag per line** (easier to grep)
```python
# ✅ Good
# @FEAT:user-auth @COMP:service @TYPE:core
# ❌ Avoid
# @FEAT:user-auth
# @COMP:service
# @TYPE:core
```
2. **Feature names lowercase with hyphens**
```
✅ @FEAT:user-auth
❌ @FEAT:UserAuth
❌ @FEAT:user_auth
```
3. **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](reference.md)**
**For more examples, see [examples.md](examples.md)**Related Skills
amazon-product-search-recommender
When the user wants to search for specific products on Amazon within budget constraints and generate structured recommendations. This skill navigates to Amazon.com, performs targeted searches using specific criteria (price range, material, color), browses search results, extracts product details (title, price, store/brand, URL), and compiles recommendations into a structured JSON format. Triggers include requests for product recommendations, shopping assistance, budget-constrained searches, or when users need to find specific items on Amazon with detailed specifications.
advanced-text-search-matching
Production-grade text search algorithms for finding and matching text in large documents with millisecond performance. Includes Boyer-Moore search, n-gram similarity, fuzzy matching, and intelligent indexing. Use when building search features for large documents, finding quotes with imperfect matches, implementing fuzzy search, or need character-level precision.
rey-web-search
Quick web search for information. Returns top results with summaries. Use when user says "search", "look up", "find info about".
jekyll-research-theme
Create production-grade, accessible Jekyll themes for researchers conducting "research in public." Generates complete lab notebook-style themes with Tufte-inspired sidenotes, KaTeX math rendering, and WCAG 2.1 AA compliance. Use when building Jekyll themes for scientific journals, experiment logs, field notes, or research documentation sites. Supports collections for organizing experiments and field notes, responsive sidenote rendering (sidebar on desktop, inline on mobile), and full-width layout options.
hig-components-search
Apple HIG guidance for navigation-related components including search fields, page controls, and path controls.
class-based-state-management
Enforces the use of classes for complex state management (state machines) in Svelte components. Applies specifically to `.svelte.ts` files.
ai-search-technical-auditor
Audit front-end code for AI search readiness. Use when reviewing HTML structure, meta tags, schema markup, and technical elements that affect how AI crawlers understand and index web pages.
research-documentation
Searches across your Notion workspace, synthesizes findings from multiple pages, and creates comprehensive research documentation saved as new Notion pages. Trigger on "노션 검색", "조사해줘", "리서치 정리". For meeting prep use meeting-intelligence; for saving knowledge use knowledge-capture; for spec breakdown use spec-to-implementation.
documentation-research
Enforces documentation research before implementation. Auto-loads when implementing features to ensure current best practices are followed. Researches official docs first.
CitedResearch
Research output with proper source citations. USE WHEN conducting research, creating sector analyses, or generating investment notes that need verifiable sources.
azure-search-documents-py
Azure AI Search SDK for Python. Use for vector search, hybrid search, semantic ranking, indexing, and skillsets.
azure-search-documents-dotnet
Azure AI Search SDK for .NET (Azure.Search.Documents). Use for building search applications with full-text, vector, semantic, and hybrid search.