mcpbeat Sign in

Explore Skill for Claude

Meta-skill for internal codebase exploration at varying depths (quick/deep/architecture)

3k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
521
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/vibeeval/vibecosystem --skill explore

What it tells the agent to use

found in the instruction text
Task spawns other agents

The instruction itself

26 sections, as written by the author

Explore - 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 |

|-------|------|--------------|

| quick | ~1 min | tldr-explorer only - fast structure overview |

| deep | ~5 min | onboard + tldr-explorer + research-codebase + write doc |

| architecture | ~3 min | tldr arch + call graph + layer mapping + circular dep detection |

Options

| Option | Description | Example |

|--------|-------------|---------|

| --focus "area" | Focus on specific area | --focus "auth", --focus "api" |

| --output handoff | Create handoff for next agent | --output handoff |

| --output doc | Create documentation file | --output doc |

| --entry "func" | Start from specific entry point | --entry "main", --entry "process_request" |

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 tldr tree for file structure
  • Run tldr structure for codemaps
  • If --focus provided, run tldr search for targeted results
  • 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 .claude/cache/tldr/), if not run onboard
  • 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 tldr arch for layer detection
  • Run tldr calls for cross-file call graph
  • 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 - thoughts/shared/research/ or handoff directory
  • Entry point to /build - Exploration handoffs feed into brownfield builds

| 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

Other skills for the same job

different authors, same section of the catalogue
MCP Builder
by anthropics
vendor ×13

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

30k tokens scripts
Changelog Generator
by frostant
×9

Automatically creates user-facing changelogs from git commits by analyzing commit history, categorizing changes, and transforming technical commits into clear, customer-friendly release notes. Turns hours of manual changelog writing into minutes of automated generation.

774 tokens
Finishing A Development Branch
by ZhanlinCui
×7

Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup

1k tokens
MCP Builder
by JayZeeDesign
×7

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

37k tokens scripts
Vercel React Native Skills
by vercel-labs
vendor ×6

React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.

39k tokens
Vercel React Best Practices
by ratacat
×5

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

34k tokens
Next Best Practices
by vercel-labs
vendor ×4

Next.js best practices - file conventions, RSC boundaries, data patterns, async APIs, metadata, error handling, route handlers, image/font optimization, bundling

20k tokens
Using Git Worktrees
by ZhanlinCui
×4

Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification

1k tokens

How to use it

Copy the folder

Take vibeeval/explore from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip. Without those the skill loads but fails at the first command.