⛔ INTERCEPT TRIGGER: Automatically invoked BEFORE Read 3+ files OR Glob with broad patterns. Validates whether bulk file operations should be replaced with semantic search. Prevents token waste from sequential file reads.
Installation
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
skills listSkill Instructions
name: search-interceptor description: "⛔ INTERCEPT TRIGGER: Automatically invoked BEFORE Read 3+ files OR Glob with broad patterns. Validates whether bulk file operations should be replaced with semantic search. Prevents token waste from sequential file reads." allowed-tools: Bash, AskUserQuestion
Search Interceptor
╔══════════════════════════════════════════════════════════════════════════════╗
║ ║
║ ⛔ INTERCEPT TRIGGERS: ║
║ ║
║ • About to Read 3+ files in same directory ║
║ • About to Glob with **/*.ts, **/*.py, or similar broad pattern ║
║ • Planning sequential file reads to "understand" something ║
║ • Rationalizing "let me read while agents work" ║
║ ║
║ WHEN TRIGGERED: Validate if claudemem search is better ║
║ ║
╚══════════════════════════════════════════════════════════════════════════════╝
Purpose
This skill intercepts bulk file operations before they execute, validating whether semantic search would be more efficient.
When This Skill Triggers
Trigger 1: Multiple File Reads Planned
YOU ARE ABOUT TO:
Read file1.ts
Read file2.ts
Read file3.ts
Read file4.ts
...
STOP. Ask: Can this be ONE claudemem query?
Trigger 2: Broad Glob Pattern
YOU ARE ABOUT TO:
Glob("src/services/**/*.ts")
Then read all N matches
STOP. Ask: What am I looking for SEMANTICALLY?
Trigger 3: Parallelization Rationalization
YOU ARE THINKING:
"Let me read these files while the agent works..."
STOP. This is tool familiarity bias.
Trigger 4: File Paths in Prompt
PROMPT MENTIONS:
src/services/prime/internal_api/client.ts
src/services/prime/api.ts
...
YOUR INSTINCT: Read them directly
STOP. Search semantically first for context.
Interception Protocol
Step 1: Pause Before Execution
When you're about to execute bulk file operations, STOP and run:
claudemem status
Step 2: Evaluate
If claudemem is indexed:
| Your Plan | Better Alternative |
|---|---|
| Read 5 auth files | claudemem search "authentication login session" |
| Glob all services | claudemem search "service layer business logic" |
| Read mentioned paths | claudemem search "[concept from those paths]" |
If claudemem is NOT indexed:
claudemem index -y
Then proceed with semantic search.
Step 3: Execute Better Alternative
# Instead of reading N files, run ONE semantic query
claudemem search "concept describing what you need" -n 15
# ONLY THEN read specific lines from results
Interception Decision Matrix
| Situation | Intercept? | Action |
|---|---|---|
| Read 1-2 specific files | No | Proceed with Read |
| Read 3+ files in investigation | YES | Convert to claudemem search |
| Glob for exact filename | No | Proceed with Glob |
| Glob for pattern discovery | YES | Convert to claudemem search |
| Grep for exact string | No | Proceed with Grep |
| Grep for semantic concept | YES | Convert to claudemem search |
| Files mentioned in prompt | YES | Search semantically first |
Examples of Interception
Example 1: Auth Investigation
❌ Original plan:
I see the task mentions auth, let me read:
- src/services/auth/login.ts
- src/services/auth/session.ts
- src/services/auth/jwt.ts
- src/services/auth/middleware.ts
- src/services/auth/utils.ts
✅ After interception:
claudemem status # Check if indexed
claudemem search "authentication login session JWT token validation" -n 15
# Now I have ranked, relevant chunks instead of 5 full files
Example 2: API Integration Audit
❌ Original plan:
Audit mentions Prime API files:
- src/services/prime/internal_api/client.ts
- src/services/prime/api.ts
Let me just Read these directly...
✅ After interception:
claudemem search "Prime API integration endpoints HTTP client" -n 20
# This finds ALL Prime-related code, ranked by relevance
# Not just the 2 files mentioned
Example 3: Pattern Discovery
❌ Original plan:
Glob("src/**/*.controller.ts")
Then read all 15 controllers to understand routing
✅ After interception:
claudemem search "HTTP controller endpoint route handler" -n 20
# Gets the most relevant routing code, not all controllers
The Psychology of Tool Familiarity Bias
Why You Default to Read/Glob
- Predictability: Read always works, output is deterministic
- No skill overhead: Don't need to invoke a skill first
- Instant gratification: See file contents immediately
- Habit: These are your "native" tools
Why This Is Wrong for Investigation
- No ranking: File #5 might be more relevant than File #1
- No context: You see code but not relationships
- Token waste: Reading 5 files costs ~5000 tokens; claudemem search costs ~500
- Missing code: You only see what you explicitly request
Breaking the Habit
BEFORE: "I need to understand X, let me Read files..."
AFTER: "I need to understand X, let me claudemem search for X concepts..."
Integration with Other Skills
This skill works with:
| Skill | Relationship |
|---|---|
code-search-selector | Selector determines WHAT tool; Interceptor validates BEFORE execution |
claudemem-search | Interceptor redirects to claudemem; this skill shows HOW to search |
deep-analysis | Interceptor prevents bad patterns; deep-analysis uses good patterns |
| Detective skills | Interceptor prevents duplicate work by trusting detective agents |
Quick Reference
┌─────────────────────────────────────────────────────────────────┐
│ INTERCEPTION QUICK CHECK │
├─────────────────────────────────────────────────────────────────┤
│ │
│ BEFORE bulk Read/Glob, ask: │
│ │
│ 1. Is claudemem indexed? → claudemem status │
│ 2. Can this be ONE query? → Usually YES │
│ 3. Am I rationalizing? → "While agents work" = BAD │
│ 4. Files in prompt? → Search first, not Read │
│ │
│ DEFAULT: Use claudemem search. EXCEPTION: Exact string match. │
│ │
└─────────────────────────────────────────────────────────────────┘
Maintained by: MadAppGang Plugin: code-analysis v2.2.0 Purpose: Intercept and redirect bulk file operations to semantic search
More by MadAppGang
View allChoose optimal external AI models for code analysis, bug investigation, and architectural decisions. Use when consulting multiple LLMs via claudish, comparing model perspectives, or investigating complex Go/LSP/transpiler issues. Provides empirically validated model rankings (91/100 for MiniMax M2, 83/100 for Grok Code Fast) and proven consultation strategies based on real-world testing.
CRITICAL - Guide for using Claudish CLI ONLY through sub-agents to run Claude Code with OpenRouter models (Grok, GPT-5, Gemini, MiniMax). NEVER run Claudish directly in main context unless user explicitly requests it. Use when user mentions external AI models, Claudish, OpenRouter, or alternative models. Includes mandatory sub-agent delegation patterns, agent selection guide, file-based instructions, and strict rules to prevent context window pollution.
MANDATORY tracking protocol for multi-model validation. Creates structured tracking tables BEFORE launching models, tracks progress during execution, and ensures complete results presentation. Use when running 2+ external AI models in parallel. Trigger keywords - "multi-model", "parallel review", "external models", "consensus", "model tracking".
XML tag structure patterns for Claude Code agents and commands. Use when designing or implementing agents to ensure proper XML structure following Anthropic best practices.