Skip to content
cccskills
FreePublished on GitHub

list-and-count-directories

List and count folders in a specified path using list_dir results. Distinguishes directories from files, handles hidden and system entries, and presents an alphabetically sorted inventory with the path and total count.

OriginalShow the original description

List and count directories in a path by filtering list_dir results for directory entries and excluding hidden/system files

See how to install

Good for

  • Check the folders that make up a project
  • Create an inventory of skill or module directories
  • Explore the directory layout of a repository
  • Document folder names and total counts

Files included (2)

  • SKILL.md3.3 KB
  • .skill_id40 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

List and Count Directories

This skill provides a systematic workflow for listing and counting directories within a given path using the list_dir tool. It filters results to identify directories, excludes hidden and system entries, and presents both an enumerated list and a total count.

Use Cases

  • Project structure analysis
  • Skill or module inventory
  • Repository exploration
  • Directory auditing and documentation

Workflow

Step 1: Get Directory Contents

Use list_dir to retrieve the contents of the target path:

list_dir(path="/path/to/target")

Step 2: Identify Directories

Filter the results to identify directory entries. Directories are marked by permissions starting with d in Unix ls format (e.g., drwxr-xr-x).

Recognition pattern:

  • Look for entries where the permissions field starts with d
  • Common directory permission patterns: drwxr-xr-x, drwxrwxr-x, drwx------, etc.

Step 3: Exclude Hidden and System Entries

Filter out entries that should not be counted:

  • . (current directory)
  • .. (parent directory)
  • .DS_Store (macOS metadata)
  • Other hidden files starting with . (optional, depending on requirements)

Step 4: Create Enumerated List

Present the directories as a numbered list for easy reference:

1. directory-name-1
2. directory-name-2
3. directory-name-3
...

Step 5: Provide Total Count

Calculate and report the total number of directories found:

Total: N directories

Implementation Example

When implementing this workflow programmatically, use the following approach:

# Pseudo-code for filtering directories
directories = []
for entry in dir_listing:
    # Check if entry is a directory (starts with 'd')
    if entry['permissions'].startswith('d'):
        name = entry['name']
        # Exclude hidden/system entries
        if name not in ['.', '..', '.DS_Store']:
            directories.append(name)

# Sort for consistent ordering
directories.sort()

# Present enumerated list
for i, dirname in enumerate(directories, 1):
    print(f"{i}. {dirname}")

# Provide total count
print(f"\nTotal: {len(directories)} directories")

Tips

  • Sorting: Always sort directory names alphabetically for consistent, predictable output
  • Context: Mention the path being analyzed for clarity
  • Validation: If the count is zero, verify the path exists and contains directories
  • Extensions: This pattern can be adapted to filter for files, specific extensions, or other criteria

Common Patterns

Basic directory listing with count:

Directories in /skills:
1. authentication-helpers
2. data-processing
3. workflow-automation

Total: 3 directories

With additional context:

Found 3 skill directories in /skills:
1. authentication-helpers
2. data-processing  
3. workflow-automation

Including path context:

Directory inventory for /path/to/modules:
- module-a
- module-b
- module-c
Count: 3 directories

Related Techniques

  • Use similar filtering logic to count files instead of directories (permissions starting with -)
  • Extend to filter by modification date, size, or naming patterns
  • Combine with recursive directory traversal for deep structure analysis

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Prepare audio stems, the separate parts of a track, for mixing by matching their durations with silence, loops, or crossfades. Verify each generated and processed file before moving to the next production step.

  • Match audio parts with different durations
  • Extend drums and melodic parts using suitable methods
  • Check audio specifications before mixing
HKUDS/OpenSpace7.8KUpdated Aug 13, 2026

Produce audio in separate stems, meaning individual instrument tracks, and verify each output as you go. Align track lengths with silence, loops, or crossfades, then apply effects, mix a master, and package the files.

  • Align instrument tracks to a reference audio file
  • Choose how to extend tracks that are too short
  • Verify audio properties after generation and effects
HKUDS/OpenSpace7.8KUpdated Aug 13, 2026

Build serverless endpoints that relay external API requests for a dashboard while keeping API keys on the server. Includes Vercel examples for input checks, caching, cross-origin access, and consistent JSON responses.

  • Connect a dashboard to external APIs without exposing API keys
  • Create endpoints for stock quotes and news
  • Standardize API responses and error handling
HKUDS/OpenSpace7.8KUpdated Aug 13, 2026

Produce a master track and separate audio parts through a structured Python workflow. Apply filters and reverb, export WAV files with consistent settings, package them in a ZIP archive, and check that the deliverables meet the requested specifications.

  • Export a master track with separate audio parts
  • Apply filters and reverb to audio
  • Check duration and format across deliverables
HKUDS/OpenSpace7.8KUpdated Aug 13, 2026

Keep document creation moving when web searches and page retrieval repeatedly fail. The skill preserves the original task, uses the model’s existing knowledge, and clearly identifies information that could not be checked against external sources.

  • Continue drafting after repeated web retrieval failures
  • Preserve task requirements during network errors
  • Mark information that could not be externally verified
HKUDS/OpenSpace7.8KUpdated Aug 13, 2026

When Python execution repeatedly fails in execute_code_sandbox, use a file-based alternative: save the script, run it through the shell, and capture results or errors. The guidance covers paths, imports, timeouts, structured output, and optional cleanup.

  • Retry Python work through the shell after repeated sandbox failures
  • Run longer tasks with an adjusted timeout
  • Execute Python work that needs multiple files or system utilities
HKUDS/OpenSpace7.8KUpdated Aug 13, 2026

See all skills by HKUDS

Report a problem with this skill