📦 GitHub: https://github.com/Wscats/code-analysis-skills
Scan specified repositories or directories containing Git repositories, analyze and compare developers' commit habits, work patterns, development efficiency, code style, code quality, and slacking index. Provide blunt, data-driven evaluations for each developer with scores, grades, strengths, weaknesses, and actionable suggestions. Output structured reports in Markdown / HTML / JSON / PDF.
You don't need to memorize any commands — simply describe what you need in your own language:
text
💬 "Analyze Alice's development efficiency in /path/to/repo"
💬 "Show me the team's work habits in this project"
💬 "Compare Alice and Bob's code quality"
💬 "What's the slacking index of this project?"
💬 "Generate a full developer evaluation report"
💬 "Score all developers and tell me who's slacking"
💬 "What's wrong with Bob's commit habits?"
💬 "Here's my repo, can you analyze the team?"
text
💬 "分析一下这个仓库 Alice 的研发效率"
💬 "帮我看看团队成员的工作习惯"
💬 "对比一下 Alice 和 Bob 的代码质量"
💬 "看看这个项目的摸鱼指数"
💬 "给所有开发者做个完整评估打分"
💬 "谁的代码质量最差?帮我分析下"
💬 "最近一个月团队的提交习惯怎么样?"
💬 "这个仓库有什么问题?帮我诊断下"
text
💬 "このリポジトリの開発者効率を分析してください"
💬 "チームメンバーの作業習慣を見せてください"
💬 "AliceとBobのコード品質を比較してください"
💬 "このプロジェクトのサボり指数は?"
💬 "全開発者の評価レポートを作成してください"
text
💬 "이 레포지토리의 개발 효율성을 분석해줘"
💬 "팀원들의 작업 습관을 보여줘"
💬 "Alice와 Bob의 코드 품질을 비교해줘"
💬 "이 프로젝트의 땡땡이 지수가 뭐야?"
💬 "모든 개발자에 대한 평가 보고서를 만들어줘"
text
💬 "Analiza la eficiencia de desarrollo de Alice en este repositorio"
💬 "Muéstrame los hábitos de trabajo del equipo"
💬 "Compara la calidad del código de Alice y Bob"
💬 "¿Cuál es el índice de holgazanería de este proyecto?"
💬 "Genera un informe de evaluación completo de los desarrolladores"
text
💬 "Analyse l'efficacité de développement d'Alice dans ce dépôt"
💬 "Montre-moi les habitudes de travail de l'équipe"
💬 "Compare la qualité du code d'Alice et de Bob"
💬 "Quel est l'indice de paresse de ce projet ?"
💬 "Génère un rapport d'évaluation complet des développeurs"
text
💬 "Analysiere die Entwicklungseffizienz von Alice in diesem Repository"
💬 "Zeig mir die Arbeitsgewohnheiten des Teams"
💬 "Vergleiche die Codequalität von Alice und Bob"
💬 "Was ist der Faulenzer-Index dieses Projekts?"
💬 "Erstelle einen vollständigen Bewertungsbericht für alle Entwickler"
Note: You need to provide the repository path (
repo_path) — it is a required parameter. If you are already working within a repository context, the agent may infer the path from the conversation, but an explicit path is always recommended for accuracy.
The Skill understands all the languages above. Just describe what you need and it will run the analysis on your repository and return a structured report.
bash
pip install gitpython pydriller radon tabulate jinja2 click reportlab
For higher quality PDF output (optional):
bash
pip install weasyprint # Recommended, requires system cairo library
# or
pip install pdfkit # Requires system wkhtmltopdf
bash
# Analyze a single repository (all contributors)
python -m src.main -r /path/to/repo
# Scan all repositories under a directory
python -m src.main -r /path/to/projects --scan-all
# Compare specific developers
python -m src.main -r /path/to/repo -a "Alice" -a "Bob"
# Specify date range + HTML output
python -m src.main -r /path/to/repo -s 2024-01-01 -u 2024-12-31 -f html -o report.html
# Generate Markdown + HTML + PDF simultaneously
python -m src.main -r /path/to/repo -f "markdown,html,pdf" -o report
# Generate PDF report only
python -m src.main -r /path/to/repo -f pdf -o report.pdf
# Save report to a file
python -m src.main -r /path/to/repo -o report.md
ParameterShortDescriptionDefault--repo-path``-rPath to Git repository or parent directoryRequired--scan-allRecursively scan all .git repositoriesfalse``--author``-aFilter by author (repeatable)All authors--since``-sStart date (ISO format)None--until``-uEnd date (ISO format)None--branch``-bBranch to analyzeActive branch--format``-fOutput format: markdown, json, html, pdf (comma-separated for multiple)markdown``--output``-oOutput file pathstdout
.git repositories under a directoryAsk the user for the following information:
.git repos under the directory ( --scan-all)2024-01-01)markdown (default), json, html, pdf, or comma-separated combinationExecute the analysis script with the confirmed parameters (see Quick Start above for command examples).
The report covers seven dimensions. Walk the user through the key findings for each:
For multi-developer analysis, additional sections include:
For each developer's evaluation, deliver a blunt, no-nonsense interpretation to the user:
src/main.py — Main entry point with CLI argument support, orchestrates the full analysis pipeline and generates reportssrc/scanner.py — Repository scanner, discovers single or recursively scans multiple Git repositoriessrc/analyzers/base_analyzer.py — Base analyzer class providing Git history traversal and author filteringsrc/analyzers/commit_analyzer.py — Commit habit analysis (frequency, size, message quality)src/analyzers/work_habit_analyzer.py — Work habit analysis (active hours, weekends, late nights, streaks)src/analyzers/efficiency_analyzer.py — Development efficiency analysis (churn, rework, bus factor)src/analyzers/code_style_analyzer.py — Code style analysis (language distribution, commit conventions)src/analyzers/code_quality_analyzer.py — Code quality analysis (bug fixes, reverts, complexity)src/analyzers/slacking_analyzer.py — Slacking index analysis (activity, trivial commits, disappearance patterns, procrastination, etc.)src/evaluator/developer_evaluator.py — Developer evaluation engine (overall scoring, strengths/weaknesses, suggestions, verdicts)src/reporters/markdown_reporter.py — Markdown report generatorsrc/reporters/json_reporter.py — JSON report generatorsrc/reporters/html_reporter.py — HTML report generator (with rich visual styling)src/reporters/pdf_reporter.py — PDF report generator (supports weasyprint/pdfkit/reportlab fallback)references/metrics-guide.md — Metric definitions, calculation methods, and healthy value reference ranges. Read this file when users ask about the meaning of a specific metric.Important: This tool extracts personal developer activity data from Git commit history, including but not limited to:
- Commit timestamps (down to the hour)
- Weekend/late-night coding frequency
- Individual commit frequency and output volume
- Code ownership attribution
- Slacking index and behavioral assessments
Before using, you must adhere to the following principles:
GradeScore RangeMeaningS90-100Top-tier contributor, excellent across all dimensionsA80-89Outstanding developer, reliable and efficientB70-79Solid contributor with minor room for improvementC60-69Adequate, but needs improvement in multiple areasD50-59Barely passing, has clear weaknessesE35-49Below expectations, requires serious attentionF0-34Critical issues, needs coaching or intervention
DimensionWeightWhat It Evaluates📝 Commit Discipline15%Commit frequency, message quality, convention compliance⏰ Work Consistency15%Routine regularity, work continuity🚀 Efficiency20%Code churn rate, rework rate, output volume🔍 Code Quality25%Bug fix rate, revert rate, test coverage, complexity🎨 Code Style10%Conventional Commits, issue references💪 Engagement15%Inverse of slacking index signals
LevelScore RangeMeaning🔥 Workaholic0-20Highly engaged, continuous contributions✅ Normal21-40Healthy work pattern😏 Suspicious41-60Some slacking signals detected🐟 Slacking Pro61-80Significant low-engagement indicators🏆 Slacking Master81-100Professional-grade slacking
radon library and only works on .py files... EOF