Claude Code Plugins

Community-maintained marketplace

Feedback

code-searcher

@leonj1/cat-emails
0
0

Delegates codebase searches to a lightweight agent. Use when searching for existing implementations, classes, or functions without loading search results into context.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name code-searcher
description Delegates codebase searches to a lightweight agent. Use when searching for existing implementations, classes, or functions without loading search results into context.

Code Searcher Skill

This skill delegates codebase searches to a specialized lightweight agent, keeping your context lean.

When to Invoke This Skill

Invoke this skill when ANY of these conditions are true:

  1. Before implementing: You need to check if a class, function, or service already exists
  2. Finding reusable code: You want to find existing implementations to reuse or extend
  3. Duplicate prevention: You need to verify you're not creating something that exists
  4. Pattern discovery: You want to find how similar functionality is implemented elsewhere
  5. Dependency tracing: You need to find where a class or function is used

Why Use This Skill?

Without this skill: You would use Grep/Glob directly, loading potentially hundreds of lines of search results into your context.

With this skill: The code-searcher agent (haiku model) performs targeted searches and returns a concise summary with file:line references.

Context savings: 70-90% reduction in search-related context usage.

Invocation

When you need to find existing implementations, invoke the agent:

Task(subagent_type="code-searcher", prompt="
Search for: User authentication service
Purpose: Handle login, logout, session management
Patterns to check: auth, login, session, authenticate, AuthService
")

For specific class/function searches:

Task(subagent_type="code-searcher", prompt="
Search for: EmailValidator class or function
Purpose: Validate email format
Patterns to check: email, validate, validator, EmailValidator, isValidEmail
")

For repository/data access searches:

Task(subagent_type="code-searcher", prompt="
Search for: Order repository or data access
Purpose: CRUD operations for orders
Patterns to check: order, OrderRepo, OrderRepository, order_repository, OrderDAO
")

What code-searcher Will Do

The agent will:

  1. Identify search terms: Extract key terms and naming variations
  2. Search for exact matches: Find class/function definitions with exact names
  3. Search for similar implementations: Find related code that could be reused
  4. Analyze findings: Determine if existing code can be used directly or extended
  5. Return summary: Concise results with file:line locations and recommendations

Expected Output

You will receive a structured summary like:

## Code Search Results

### Exact Matches
- [src/services/auth_service.py:15] `AuthService` - Handles authentication with JWT tokens

### Similar Implementations
- [src/services/user_service.py:8] `UserService` - User CRUD, has `verify_password` method
- [src/utils/session.py:22] `SessionManager` - Session storage and retrieval

### Recommendation
- **MODIFY_EXISTING**: [src/services/auth_service.py:15] - AuthService exists but missing logout

### Notes
- Project uses JWT tokens (see auth_service.py)
- Sessions stored in Redis (see session.py)
- Follow existing pattern: services return Result objects

Recommendation Types

The agent returns one of three recommendations:

Recommendation Meaning Action
USE_EXISTING Exact match found Import and use directly
MODIFY_EXISTING Similar found Extend or modify existing code
CREATE_NEW Nothing found Implement from scratch

Example Usage

Scenario: You need to implement a payment processing service.

Without skill: Run multiple Grep searches, read through results, manually identify matches.

With skill:

Task(subagent_type="code-searcher", prompt="
Search for: Payment processing service
Purpose: Handle payment transactions, refunds, webhooks
Patterns to check: payment, PaymentService, transaction, stripe, checkout
")

Result: You know there's a StripeClient at src/clients/stripe.py:10 you can use, saving implementation time.

Do NOT Invoke When

  • You already know exactly which file to read (use Read directly)
  • You're searching for a specific string in a known file (use Grep directly)
  • The search is very simple (single term, obvious location)
  • You just ran code-searcher for the same or similar query

Consumers

This skill is particularly useful for:

  • coder - Before implementing new functionality
  • codebase-analyst - Finding reuse opportunities in specs
  • verifier - Checking if implementations exist
  • refactorer - Finding code to consolidate
  • architect - Understanding existing capabilities