mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-11 02:33:51 +08:00
Add semantic file discovery via Gemini CLI --all-files parameter - Define codebase-retrieval as primary semantic search tool - Add tool selection matrix for search strategy - Provide command templates with dynamic placeholders - Document workflow integration with rg and other tools 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
96 lines
4.0 KiB
Markdown
96 lines
4.0 KiB
Markdown
---
|
|
name: context-search-strategy
|
|
description: Strategic guidelines for context search commands
|
|
type: search-guideline
|
|
---
|
|
|
|
# Context Search Strategy
|
|
|
|
## ⚡ Execution Environment
|
|
|
|
**CRITICAL**: All commands execute in **Bash environment** (Git Bash on Windows, Bash on Linux/macOS)
|
|
|
|
**❌ Forbidden**: Windows-specific commands (`findstr`, `dir`, `where`, `type`, `copy`, `del`) - Use Bash equivalents (`grep`, `find`, `which`, `cat`, `cp`, `rm`)
|
|
|
|
## ⚡ Core Search Tools
|
|
|
|
**codebase-retrieval**: Semantic file discovery via Gemini CLI with all files analysis
|
|
**rg (ripgrep)**: Fast content search with regex support
|
|
**find**: File/directory location by name patterns
|
|
**grep**: Built-in pattern matching in files
|
|
**get_modules_by_depth.sh**: Program architecture analysis and structural discovery
|
|
|
|
### Decision Principles
|
|
- **Use codebase-retrieval for semantic discovery** - Intelligent file discovery based on task context
|
|
- **Use rg for content** - Fastest for searching within files
|
|
- **Use find for files** - Locate files/directories by name
|
|
- **Use grep sparingly** - Only when rg unavailable
|
|
- **Use get_modules_by_depth.sh first** - MANDATORY for program architecture analysis before planning
|
|
- **Always use Bash commands** - NEVER use Windows cmd/PowerShell commands
|
|
|
|
### Tool Selection Matrix
|
|
|
|
| Need | Tool | Use Case |
|
|
|------|------|----------|
|
|
| **Semantic file discovery** | codebase-retrieval | Find files relevant to task/feature context |
|
|
| **Pattern matching** | rg | Search code content with regex |
|
|
| **File name lookup** | find | Locate files by name patterns |
|
|
| **Architecture analysis** | get_modules_by_depth.sh | Understand program structure |
|
|
|
|
### Quick Command Reference
|
|
```bash
|
|
# Semantic File Discovery (codebase-retrieval)
|
|
~/.claude/scripts/gemini-wrapper --all-files -p "List all files relevant to: [task/feature description]"
|
|
bash(~/.claude/scripts/gemini-wrapper --all-files -p "List all files relevant to: [task/feature description]")
|
|
|
|
# Program Architecture Analysis (MANDATORY FIRST)
|
|
~/.claude/scripts/get_modules_by_depth.sh # Discover program architecture
|
|
bash(~/.claude/scripts/get_modules_by_depth.sh) # Analyze structural hierarchy
|
|
|
|
# Content Search (rg preferred)
|
|
rg "pattern" --type js # Search in JS files
|
|
rg -i "case-insensitive" # Ignore case
|
|
rg -n "show-line-numbers" # Show line numbers
|
|
rg -A 3 -B 3 "context-lines" # Show 3 lines before/after
|
|
|
|
# File Search (find)
|
|
find . -name "*.ts" -type f # Find TypeScript files
|
|
find . -path "*/node_modules" -prune -o -name "*.js" -print
|
|
|
|
# Built-in alternatives
|
|
grep -r "pattern" . # Recursive search (slower)
|
|
grep -n -i "pattern" file.txt # Line numbers, case-insensitive
|
|
```
|
|
|
|
### Workflow Integration Examples
|
|
```bash
|
|
# Semantic Discovery → Content Search → Analysis (Recommended Pattern)
|
|
~/.claude/scripts/gemini-wrapper --all-files -p "List all files relevant to: [task/feature]" # Get relevant files
|
|
rg "[pattern]" --type [filetype] # Then search within discovered files
|
|
|
|
# Program Architecture Analysis (MANDATORY BEFORE PLANNING)
|
|
~/.claude/scripts/get_modules_by_depth.sh # Discover program architecture
|
|
bash(~/.claude/scripts/get_modules_by_depth.sh) # Analyze structural hierarchy
|
|
|
|
# Search for task definitions
|
|
rg "IMPL-\d+" .workflow/ --type json # Find task IDs
|
|
find .workflow/ -name "*.json" -path "*/.task/*" # Locate task files
|
|
|
|
# Analyze workflow structure
|
|
rg "status.*pending" .workflow/.task/ # Find pending tasks
|
|
rg "depends_on" .workflow/.task/ -A 2 # Show dependencies
|
|
|
|
# Find workflow sessions
|
|
find .workflow/ -name ".active-*" # Active sessions
|
|
rg "WFS-" .workflow/ --type json # Session references
|
|
|
|
# Content analysis for planning
|
|
rg "flow_control" .workflow/ -B 2 -A 5 # Flow control patterns
|
|
find . -name "IMPL_PLAN.md" -exec grep -l "requirements" {} \;
|
|
```
|
|
|
|
### Performance Tips
|
|
- **rg > grep** for content search
|
|
- **Use --type filters** to limit file types
|
|
- **Exclude common dirs**: `--glob '!node_modules'`
|
|
- **Use -F for literal** strings (no regex) |