Navigate, search, and understand project structures. Use when onboarding to a codebase, locating implementations, tracing dependencies, or understanding architecture. Provides patterns for file searching with Glob, code searching with Grep, and systematic architecture analysis.
/plugin marketplace add rsmdt/the-startup/plugin install team@the-startupThis skill inherits all available tools. When active, it can use any tool Claude has access to.
examples/exploration-patterns.mdSystematic patterns for navigating and understanding codebases efficiently.
Start broad, then narrow down. This three-step pattern works for any codebase.
# Understand top-level structure
ls -la
# Find configuration files (reveals tech stack)
ls -la *.json *.yaml *.yml *.toml 2>/dev/null
# Check for documentation
ls -la README* CLAUDE.md docs/ 2>/dev/null
# Find source directories
Glob: **/src/**/*.{ts,js,py,go,rs,java}
# Find test directories
Glob: **/{test,tests,__tests__,spec}/**/*
# Find entry points
Glob: **/index.{ts,js,py} | **/main.{ts,js,py,go,rs}
# Package/dependency files
Glob: **/package.json | **/requirements.txt | **/go.mod | **/Cargo.toml
# Build configuration
Glob: **/{tsconfig,vite.config,webpack.config,jest.config}.*
# Environment/deployment
Glob: **/{.env*,docker-compose*,Dockerfile}
When you need to locate where something is implemented:
# Find function/class definitions
Grep: (function|class|interface|type)\s+TargetName
# Find exports
Grep: export\s+(default\s+)?(function|class|const)\s+TargetName
# Find specific patterns (adjust for language)
Grep: def target_name # Python
Grep: func TargetName # Go
Grep: fn target_name # Rust
When you need to find where something is used:
# Find imports of a module
Grep: import.*from\s+['"].*target-module
# Find function calls
Grep: targetFunction\(
# Find references (broad search)
Grep: TargetName
When you need to understand system structure:
# Find all route definitions
Grep: (app\.(get|post|put|delete)|router\.)
# Find database models/schemas
Grep: (Schema|Model|Entity|Table)\s*\(
Glob: **/{models,entities,schemas}/**/*
# Find service boundaries
Glob: **/{services,controllers,handlers}/**/*
Grep: (class|interface)\s+\w+Service
# Web application routes
Grep: (Route|path|endpoint)
Glob: **/routes/**/* | **/*router*
# CLI commands
Grep: (command|program\.)
Glob: **/cli/**/* | **/commands/**/*
# Event handlers
Grep: (on|handle|subscribe)\s*\(
# Environment variables
Grep: (process\.env|os\.environ|env\.)
# Feature flags
Grep: (feature|flag|toggle)
# Constants/config objects
Grep: (const|let)\s+(CONFIG|config|settings)
Glob: **/{config,constants}/**/*
# Database queries
Grep: (SELECT|INSERT|UPDATE|DELETE|find|create|update)
Grep: (prisma|sequelize|typeorm|mongoose)\.
# API calls
Grep: (fetch|axios|http\.|request\()
# State management
Grep: (useState|useReducer|createStore|createSlice)
files_with_matches for discovery, content for analysisAfter exploration, summarize findings:
## Codebase Overview
**Tech Stack:** [Languages, frameworks, tools]
**Architecture:** [Monolith, microservices, modular, etc.]
**Entry Points:** [Main files, routes, handlers]
## Key Directories
- `src/` - [Purpose]
- `lib/` - [Purpose]
- `tests/` - [Purpose]
## Conventions Observed
- Naming: [Pattern]
- File organization: [Pattern]
- Testing: [Pattern]
## Dependencies
- [Key dependency]: [Purpose]
- [Key dependency]: [Purpose]
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.