Continuous-Claude-v3 explore
Meta-skill for internal codebase exploration at varying depths (quick/deep/architecture)
git clone https://github.com/parcadei/Continuous-Claude-v3
T=$(mktemp -d) && git clone --depth=1 https://github.com/parcadei/Continuous-Claude-v3 "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/explore" ~/.claude/skills/parcadei-continuous-claude-v3-explore && rm -rf "$T"
.claude/skills/explore/SKILL.mdExplore - Internal Codebase Exploration
Meta-skill for exploring an internal codebase at varying depths. READ-ONLY workflow - no code changes.
Usage
/explore <depth> [options]
Question Flow (No Arguments)
If the user types just
/explore with no or partial arguments, guide them through this question flow. Use AskUserQuestion for each phase.
Phase 0: Workflow Selection
question: "How would you like to explore?" header: "Explore" options: - label: "Help me choose (Recommended)" description: "I'll ask questions to pick the right exploration depth" - label: "Quick - fast overview" description: "Chain: tldr tree → tldr structure (~1 min)" - label: "Deep - comprehensive analysis" description: "Chain: onboard → tldr → research → document (~5 min)" - label: "Architecture - layers & dependencies" description: "Chain: tldr arch → call graph → layer mapping (~3 min)"
Mapping:
- "Help me choose" → Continue to Phase 1-4 questions
- "Quick" → Set depth=quick, skip to Phase 2 (scope)
- "Deep" → Set depth=deep, skip to Phase 2 (scope)
- "Architecture" → Set depth=architecture, skip to Phase 2 (scope)
If Answer is Unclear (via "Other"):
question: "I want to understand how deep you want to explore. Did you mean..." header: "Clarify" options: - label: "Help me choose" description: "Not sure - guide me through questions" - label: "Quick - fast overview" description: "Just want to see what's here" - label: "Deep - comprehensive analysis" description: "Need thorough understanding" - label: "Neither - let me explain differently" description: "I'll describe what I need"
Phase 1: Exploration Goal
question: "What are you trying to understand?" header: "Goal" options: - label: "Get oriented in the codebase" description: "Quick overview of structure" - label: "Understand how something works" description: "Deep dive into specific area" - label: "Map the architecture" description: "Layers, dependencies, patterns" - label: "Find where something is" description: "Locate specific code/functionality"
Mapping:
- "Get oriented" → quick depth
- "Understand how" → deep depth
- "Map architecture" → architecture depth
- "Find where" → quick with --focus
Phase 2: Scope
question: "What area should I focus on?" header: "Focus" options: - label: "Entire codebase" description: "Explore everything" - label: "Specific directory or module" description: "I'll specify the path" - label: "Specific concept/feature" description: "e.g., 'authentication', 'API routes'"
If "Specific directory" or "Specific concept" → ask follow-up for the path/keyword.
Phase 3: Output Format
question: "What should I produce?" header: "Output" options: - label: "Just tell me what you find" description: "Interactive summary in chat" - label: "Create a documentation file" description: "Write to thoughts/shared/docs/" - label: "Create handoff for implementation" description: "Prepare context for coding agent"
Mapping:
- "Documentation file" → --output doc
- "Handoff for implementation" → --output handoff
Phase 4: Entry Point (Architecture only)
If architecture depth selected:
question: "Where should I start the analysis?" header: "Entry point" options: - label: "Auto-detect (main, cli, app)" description: "Find common entry points" - label: "Specific function/file" description: "I'll specify the entry point"
Summary Before Execution
Based on your answers, I'll run: **Depth:** deep **Focus:** "authentication" **Output:** handoff **Path:** src/ Proceed? [Yes / Adjust settings]
Depths
| Depth | Time | What it does |
|---|---|---|
| ~1 min | tldr-explorer only - fast structure overview |
| ~5 min | onboard + tldr-explorer + research-codebase + write doc |
| ~3 min | tldr arch + call graph + layer mapping + circular dep detection |
Options
| Option | Description | Example |
|---|---|---|
| Focus on specific area | , |
| Create handoff for next agent | |
| Create documentation file | |
| Start from specific entry point | , |
Examples
# Quick structure overview /explore quick # Deep exploration focused on auth /explore deep --focus "auth" --output doc # Architecture analysis from specific entry /explore architecture --entry "cli" --output handoff # Quick focused exploration /explore quick --focus "hooks"
Workflow Details
Quick Depth
Fast structure overview using tldr-explorer. Best for:
- Initial orientation
- Quick questions about structure
- Finding where things are
Steps:
- Run
for file structuretldr tree - Run
for codemapstldr structure - If
provided, run--focus
for targeted resultstldr search - Return summary
Commands:
# 1. File tree tldr tree ${PATH:-src/} --ext .py # 2. Code structure tldr structure ${PATH:-src/} --lang python # 3. Focused search (if --focus provided) tldr search "${FOCUS}" ${PATH:-src/}
Deep Depth
Comprehensive exploration with documentation output. Best for:
- First time in a codebase
- Preparing for major work
- Creating reference documentation
Steps:
- Check if onboarded (look for
), if not run onboard.claude/cache/tldr/ - Run tldr-explorer for structure
- Spawn research-codebase agent for patterns
- Write findings to doc or handoff
Subprocess:
# 1. Onboard check if [ ! -f .claude/cache/tldr/arch.json ]; then # Spawn onboard agent fi # 2. Structure analysis tldr structure src/ --lang python tldr calls src/ # 3. Research patterns (via scout agent) Task: research-codebase → "Document existing patterns in ${FOCUS:-codebase}" # 4. Write output → thoughts/shared/research/YYYY-MM-DD-explore-{focus}.md → OR thoughts/shared/handoffs/{session}/explore-{focus}.yaml
Architecture Depth
Architecture-focused analysis with layer detection. Best for:
- Understanding system boundaries
- Preparing for refactoring
- Identifying coupling issues
Steps:
- Run
for layer detectiontldr arch - Run
for cross-file call graphtldr calls - Analyze entry/middle/leaf layers
- Detect circular dependencies
- Map architectural boundaries
Commands:
# 1. Architecture detection tldr arch ${PATH:-src/} # Returns: entry_layer, middle_layer, leaf_layer, circular_deps # 2. Call graph tldr calls ${PATH:-src/} # Returns: edges, nodes # 3. Impact analysis from entry point (if --entry provided) tldr impact ${ENTRY} ${PATH:-src/} --depth 3
Output Structure:
layers: entry: [routes.py, cli.py, main.py] # Controllers/handlers middle: [services.py, auth.py] # Business logic leaf: [utils.py, helpers.py] # Utilities call_graph: total_edges: 142 hot_paths: [process_request → validate → authorize] circular_deps: - [module_a, module_b] # A imports B, B imports A boundaries: - name: API layer files: [src/api/*] calls_to: [src/services/*]
Output Formats
--output doc
Creates:
thoughts/shared/research/YYYY-MM-DD-explore-{focus}.md
--- date: {ISO timestamp} type: exploration depth: {quick|deep|architecture} focus: {focus area or "full"} commit: {git hash} --- # Codebase Exploration: {focus} ## Summary {High-level findings} ## Structure {File tree / codemaps} ## Architecture {Layer analysis - for architecture depth} ## Key Components {Important files and their roles} ## Patterns Found {Existing patterns - for deep depth} ## References - `path/to/file.py:line` - Description
--output handoff
Creates:
thoughts/shared/handoffs/{session}/explore-{focus}.yaml
--- type: exploration ts: {ISO timestamp} depth: {quick|deep|architecture} focus: {focus area} commit: {git hash} --- summary: {One-line summary of findings} structure: entry_points: [{main.py}, {cli.py}] key_modules: [{auth.py}, {routes.py}] test_coverage: [{tests/}] architecture: layers: entry: [{files}] middle: [{files}] leaf: [{files}] circular_deps: [{pairs}] findings: - {key finding with file:line} next_steps: - {Recommended action based on exploration} refs: - path: {file.py} role: {what it does}
Integration with /build
The explore skill is designed to feed into
/build brownfield:
# Step 1: Explore to understand /explore architecture --output handoff # Step 2: Build with context from exploration /build brownfield --from-handoff thoughts/shared/handoffs/session/explore-full.yaml
Implementation
When user invokes
/explore <depth> [options]:
Parse Arguments
depth = args[0] # quick | deep | architecture focus = extract_option(args, "--focus") output = extract_option(args, "--output") # handoff | doc entry = extract_option(args, "--entry")
Execute Based on Depth
Quick:
# Just tldr commands, no agents tldr tree ${src_dir} --ext .py tldr structure ${src_dir} --lang python if [ -n "$focus" ]; then tldr search "$focus" ${src_dir} fi
Deep:
# 1. Check/run onboard if [ ! -f .claude/cache/tldr/meta.json ]; then # Spawn onboard agent via Task tool fi # 2. Structure tldr structure src/ --lang python # 3. Research (spawn scout agent) # Task tool with subagent_type: "scout" # Prompt: "Research patterns in ${focus:-codebase}" # 4. Write output # → doc or handoff based on --output
Architecture:
# 1. Arch detection arch_output=$(tldr arch ${src_dir}) # 2. Call graph calls_output=$(tldr calls ${src_dir}) # 3. Impact from entry (if provided) if [ -n "$entry" ]; then impact_output=$(tldr impact $entry ${src_dir} --depth 3) fi # 4. Synthesize and write output
Key Principles
- READ-ONLY - This skill never modifies code
- Uses scout, not Explore - Per project rules, scout (Sonnet) over Explore (Haiku)
- Token-efficient - Uses tldr commands (95% savings over raw reads)
- Outputs to shared locations -
or handoff directorythoughts/shared/research/ - Entry point to /build - Exploration handoffs feed into brownfield builds
Related Skills
| Skill | When to Use |
|---|---|
| tldr-explorer | Direct tldr commands (used internally by explore) |
| tldr-code | Specific analysis commands (cfg, dfg, slice) |
| onboard | First-time project setup (used by deep depth) |
| research-codebase | Pattern documentation (used by deep depth) |
| create_handoff | Handoff format (used by --output handoff) |
Troubleshooting
tldr not found:
# Check if installed which tldr # Install if missing uv tool install llm-tldr # or: pip install llm-tldr
No Python files found:
# Check language, adjust --lang tldr structure src/ --lang typescript # or go, rust
Empty architecture output:
# May need to specify src directory tldr arch ./ # Current directory tldr arch src/ # Explicit src