Analyzes code files and generates statistics about a codebase.
Usage
When invoked, this skill will:
- Scan the specified directory (defaults to current directory)
- Count total lines, files by extension
- Report the largest files
- Output results in a structured format
- Sort extension summaries by total line count in descending order
Output Format
Always use this exact format for the output:
# Code Statistics
Summary
- Total Files:
- Total Lines:
- Total Size: <size_bytes> bytes
Files by Extension
| Extension | Files | Lines |
|---|---|---|
| .go | 12 | 1500 |
| .md | 5 | 200 |
Top 5 File Extensions by Line Count
- .go — 1500 lines
- .md — 200 lines
Largest Files (top 5)
- main.go (500 lines)
- util.go (300 lines)
If a file has no extension, group it under `(no ext)` in both extension sections.
## Process
1. Use `Bash` with `find` to locate all code files
2. Use `Bash` with `wc -l` to count lines per file
3. Group files with no extension under `(no ext)`
4. Sort both extension summaries by total line count in descending order
5. Aggregate the results into the output format above
6. If no directory is specified, analyze the current working directory
## Examples
- "Analyze the current directory"
- "Run code-stats on ./src"
- "Show me file type distribution"
- "How many lines of Python do we have?"