Skip to main content Skills Marketplace Découvrez et explorez les compétences IA créées par la communauté.
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Copier le promptAfficher les détails du prompt Une commande directe contourne le prompt de vérification. Examinez la source avant de l'exécuter.
npx skills add https://github.com/dabit3/sonic-agent --skill codebase-inspectionLa commande reste sur une seule ligne. Faites défiler horizontalement pour la vérifier avant de la copier.
Vous préférez une copie locale ? Téléchargez les fichiers actuellement disponibles dans SkillsMP.
Télécharger Zip Téléchargement... Métiers associés SOC
Basé sur la classification professionnelle SOC
name codebase-inspection description Inspect codebases w/ pygount: LOC, languages, ratios. version 1.0.0 author Sonic Agent license MIT platforms ["linux","macos","windows"] metadata {"sonic":{"tags":["LOC","Code Analysis","pygount","Codebase","Metrics","Repository"],"related_skills":["github-repo-management"]}} prerequisites {"commands":["pygount"]}
Codebase Inspection with pygount
Analyze repositories for lines of code, language breakdown, file counts, and code-vs-comment ratios using .
pygount
When to Use
User asks for LOC (lines of code) count
User wants a language breakdown of a repo
User asks about codebase size or composition
User wants code-vs-comment ratios
General "how big is this repo" questions
Prerequisites pip install --break-system-packages pygount 2>/dev/null || pip install pygount
1. Basic Summary (Most Common) Get a full language breakdown with file counts, code lines, and comment lines:
cd /path/to/repo
pygount --format=summary \
--folders-to-skip=".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,.eggs,*.egg-info" \
.
IMPORTANT: Always use --folders-to-skip to exclude dependency/build directories, otherwise pygount will crawl them and take a very long time or hang.
2. Common Folder Exclusions Adjust based on the project type:
--folders-to-skip=".git,venv,.venv,__pycache__,.cache,dist,build,.tox,.eggs,.mypy_cache"
--folders-to-skip=".git,node_modules,dist,build,.next,.cache,.turbo,coverage"
--folders-to-skip=".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,vendor,third_party"
3. Filter by Specific Language
pygount --suffix=py --format=summary .
pygount --suffix=py,yaml,yml --format=summary .
4. Detailed File-by-File Output
pygount --folders-to-skip=".git,node_modules,venv" .
pygount --folders-to-skip=".git,node_modules,venv" . | sort -t$'\t' -k1 -nr | head -20
5. Output Formats
pygount --format=summary .
pygount --format=json .
pygount --format=summary . 2>/dev/null
6. Interpreting Results The summary table columns:
Language — detected programming language
Files — number of files of that language
Code — lines of actual code (executable/declarative)
Comment — lines that are comments or documentation
% — percentage of total
Special pseudo-languages:
__empty__ — empty files
__binary__ — binary files (images, compiled, etc.)
__generated__ — auto-generated files (detected heuristically)
__duplicate__ — files with identical content
__unknown__ — unrecognized file types
Pitfalls
Always exclude .git, node_modules, venv — without --folders-to-skip, pygount will crawl everything and may take minutes or hang on large dependency trees.
Markdown shows 0 code lines — pygount classifies all Markdown content as comments, not code. This is expected behavior.
JSON files show low code counts — pygount may count JSON lines conservatively. For accurate JSON line counts, use wc -l directly.
Large monorepos — for very large repos, consider using --suffix to target specific languages rather than scanning everything.