112 lines
3.0 KiB
Markdown
112 lines
3.0 KiB
Markdown
---
|
|
name: directory-tree-viewer
|
|
description: Display directory structure as a formatted tree. Use when the user needs to visualize a directory structure, analyze folder organization, or share a file tree view. Supports custom paths via the /tree command.
|
|
allowed-tools: Bash, Read
|
|
---
|
|
|
|
# Directory Tree Viewer
|
|
|
|
A skill for generating visual representations of directory structures in various formats. Useful for understanding project layout, documenting folder organization, or visualizing file hierarchies.
|
|
|
|
## Features
|
|
|
|
- Display directory trees with visual formatting
|
|
- Support for custom paths via slash command
|
|
- Ignore common build/dependency directories by default
|
|
- Multiple output formats (text tree, indented, etc.)
|
|
|
|
## Prerequisites
|
|
|
|
- No special dependencies required
|
|
- Works with any directory on the system
|
|
- The slash command `/tree` provides convenient path-based access
|
|
|
|
## Workflow
|
|
|
|
### Basic Usage: Current Working Directory
|
|
|
|
When you need to see the structure of the current working directory, use the Bash tool with the `tree` command:
|
|
|
|
```bash
|
|
tree -L 3 -a
|
|
```
|
|
|
|
This displays up to 3 levels of the directory structure with all files (including hidden ones).
|
|
|
|
### Advanced Usage: Custom Path via /tree Command
|
|
|
|
Use the custom slash command `/tree` with a file path argument to view any directory:
|
|
|
|
```
|
|
/tree /path/to/directory
|
|
```
|
|
|
|
The slash command accepts optional arguments:
|
|
- Path (required): The directory to visualize
|
|
- Depth (optional): Number of levels to display (default: 3)
|
|
|
|
### Tree Command Options
|
|
|
|
Common options when using the `tree` command directly:
|
|
|
|
- `-L N`: Limit depth to N levels
|
|
- `-a`: Show all files including hidden ones
|
|
- `-I 'pattern'`: Ignore files matching pattern
|
|
- `-d`: Directories only
|
|
- `-h`: Human-readable file sizes
|
|
|
|
## Examples
|
|
|
|
### Example 1: View Plugin Directory Structure
|
|
|
|
Display the structure of the current plugins directory:
|
|
|
|
```bash
|
|
tree -L 2 plugins/
|
|
```
|
|
|
|
Output shows all plugins and their first-level contents.
|
|
|
|
### Example 2: Use /tree Command with Custom Path
|
|
|
|
Ask Claude to show the structure of a specific directory:
|
|
|
|
> "Show me the structure of the src directory"
|
|
|
|
Claude will invoke: `/tree src`
|
|
|
|
### Example 3: Deep Directory Exploration
|
|
|
|
Explore nested structures with multiple levels:
|
|
|
|
```bash
|
|
tree -L 5 -I 'node_modules|.git|dist'
|
|
```
|
|
|
|
This shows up to 5 levels while excluding common dependency/build directories.
|
|
|
|
### Example 4: File-Only Tree
|
|
|
|
Display only files without directories:
|
|
|
|
```bash
|
|
tree -f --dirsfirst
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
**Tree command not available**: The `tree` command may not be installed on all systems. Use `ls -R` as a fallback:
|
|
|
|
```bash
|
|
ls -R /path/to/directory
|
|
```
|
|
|
|
**Too much output**: Reduce depth with `-L 2` or filter with `-I 'pattern'`
|
|
|
|
**Permission denied**: Some directories may require elevated permissions. Use `ls -la` instead.
|
|
|
|
## See Also
|
|
|
|
- [Using Bash for file exploration](https://docs.claude.com/en/docs/claude-code/tools)
|
|
- [Glob patterns for file matching](https://docs.claude.com/en/docs/claude-code/tools)
|