code-analysis

This skill should be used when the user needs to analyze Git repositories, compare developer commit patterns, work habits, development efficiency, code style, code quality, and slacking behaviors. It generates honest, direct developer evaluations with scores, grades, strengths, weaknesses, and actionable suggestions. Trigger phrases include "analyze code", "analyze repository", "compare developers", "code quality report", "commit patterns", "developer efficiency", "developer evaluation", "slacking index", "摸鱼指数", "工作习惯分析", "代码分析", "研发效率", "代码质量", "开发者评估", "developer score".

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "code-analysis" with this command: npx skills add Wscats/code-analysis-skills

Code Analysis Skill

📦 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.

💬 Natural Language (Recommended)

You don't need to memorize any commands — simply describe what you need in your own language:

🇺🇸 English

💬 "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?"

🇨🇳 中文

💬 "分析一下这个仓库 Alice 的研发效率"
💬 "帮我看看团队成员的工作习惯"
💬 "对比一下 Alice 和 Bob 的代码质量"
💬 "看看这个项目的摸鱼指数"
💬 "给所有开发者做个完整评估打分"
💬 "谁的代码质量最差?帮我分析下"
💬 "最近一个月团队的提交习惯怎么样?"
💬 "这个仓库有什么问题?帮我诊断下"

🇯🇵 日本語

💬 "このリポジトリの開発者効率を分析してください"
💬 "チームメンバーの作業習慣を見せてください"
💬 "AliceとBobのコード品質を比較してください"
💬 "このプロジェクトのサボり指数は?"
💬 "全開発者の評価レポートを作成してください"

🇰🇷 한국어

💬 "이 레포지토리의 개발 효율성을 분석해줘"
💬 "팀원들의 작업 습관을 보여줘"
💬 "Alice와 Bob의 코드 품질을 비교해줘"
💬 "이 프로젝트의 땡땡이 지수가 뭐야?"
💬 "모든 개발자에 대한 평가 보고서를 만들어줘"

🇪🇸 Español

💬 "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"

🇫🇷 Français

💬 "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"

🇩🇪 Deutsch

💬 "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.


🚀 Quick Start (CLI)

Install Dependencies

pip install gitpython pydriller radon tabulate jinja2 click reportlab

For higher quality PDF output (optional):

pip install weasyprint   # Recommended, requires system cairo library
# or
pip install pdfkit       # Requires system wkhtmltopdf

Common Commands

# 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

CLI Parameters

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

Use Cases

  • Analyze developer behavior in a Git repository
  • Compare team members' commit habits and development efficiency
  • Understand code quality trends and style consistency
  • Batch-analyze all .git repositories under a directory
  • Generate work habit reports (active hours, weekend/late-night coding, streaks, etc.)
  • Evaluate each developer's overall capability with scores, strengths, weaknesses, and suggestions
  • View the team's "Slacking Index" leaderboard
  • Produce formal PDF reports for review

Workflow

Step 1: Confirm Analysis Parameters

Ask the user for the following information:

  • Repository path: A single Git repo path, or a parent directory containing multiple repos
  • Scan scope: Whether to scan all .git repos under the directory (--scan-all)
  • Target authors: Analyze specific developers (multi-select) or all contributors
  • Date range: Optional start/end dates (ISO format, e.g., 2024-01-01)
  • Branch: Branch to analyze; defaults to the current active branch
  • Output format: markdown (default), json, html, pdf, or comma-separated combination

Step 2: Run the Analysis

Execute the analysis script with the confirmed parameters (see Quick Start above for command examples).

Step 3: Interpret the Report

The report covers seven dimensions. Walk the user through the key findings for each:

  1. 🏆 Developer Evaluation — Overall score (S/A/B/C/D/E/F), strengths, weaknesses, improvement suggestions, one-line verdict
  2. 🐟 Slacking Index — Activity level, trivial commit ratio, disappearance ratio, low output, procrastination signals
  3. 📝 Commit Habits — Commit frequency, commit size, merge ratio, message quality
  4. ⏰ Work Habits — Active hour distribution, weekend/late-night coding ratio, consecutive coding streaks
  5. 🚀 Development Efficiency — Code churn rate, rework rate, Bus Factor, file ownership
  6. 🎨 Code Style — Language distribution, Conventional Commits compliance, file classification
  7. 🔍 Code Quality — Bug fix ratio, revert frequency, large commit ratio, test coverage, complexity

For multi-developer analysis, additional sections include:

  • 📋 Cross-comparison summary table
  • 🏆 Developer score leaderboard
  • 🐟 Slacking Index leaderboard

Step 4: Deep-Dive into Evaluation Results

For each developer's evaluation, deliver a blunt, no-nonsense interpretation to the user:

  1. Score & Grade: Total score (0-100) and corresponding grade (S/A/B/C/D/E/F)
  2. Six Dimension Scores: Commit discipline, work consistency, efficiency, code quality, code style, engagement
  3. Strengths: Each backed by concrete data, not generic praise
  4. Weaknesses: No sugarcoating — point directly at the problem and its impact
  5. Suggestions: Actionable improvement measures, each immediately executable
  6. Slacking Index: Interpret each signal and its meaning

Available Resources

Scripts

  • src/main.py — Main entry point with CLI argument support, orchestrates the full analysis pipeline and generates reports
  • src/scanner.py — Repository scanner, discovers single or recursively scans multiple Git repositories
  • src/analyzers/base_analyzer.py — Base analyzer class providing Git history traversal and author filtering
  • src/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 generator
  • src/reporters/json_reporter.py — JSON report generator
  • src/reporters/html_reporter.py — HTML report generator (with rich visual styling)
  • src/reporters/pdf_reporter.py — PDF report generator (supports weasyprint/pdfkit/reportlab fallback)

Reference Documents

  • 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.

⚠️ Privacy & Data Security Notice

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:

  1. Informed Consent — Obtain informed consent from all relevant developers before analyzing their repositories
  2. Non-Punitive Use — Analysis results must not be directly used for performance reviews, compensation decisions, or punitive management
  3. Contextual Understanding — Data must be interpreted within actual work context (e.g., architects naturally commit less; that does not indicate low output)
  4. Data Protection — Generated reports contain personal information and should be securely stored, not publicly shared
  5. Compliance — Ensure usage complies with your organization's HR policies and local data protection regulations (e.g., GDPR)
  6. Local Execution — This tool runs entirely locally and does not transmit any data to external servers

Evaluation System

Overall Score (0-100)

GradeScore RangeMeaning
S90-100Top-tier contributor, excellent across all dimensions
A80-89Outstanding developer, reliable and efficient
B70-79Solid contributor with minor room for improvement
C60-69Adequate, but needs improvement in multiple areas
D50-59Barely passing, has clear weaknesses
E35-49Below expectations, requires serious attention
F0-34Critical issues, needs coaching or intervention

Six Dimension Weights

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

Slacking Index (0-100)

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

Notes

  • Analyzing large repositories (100K+ commits) may take a long time; consider limiting the date range
  • Python code complexity analysis depends on the radon library and only works on .py files
  • Author matching supports fuzzy matching (matches on name or email containing the keyword)
  • Directory scanning defaults to a maximum depth of 5 levels to avoid excessive recursion
  • PDF generation prefers weasyprint, falls back to pdfkit, and ultimately falls back to reportlab
  • Evaluation results are based solely on Git commit history and do not represent a developer's full capability
  • The slacking index is for reference only and should be interpreted in actual work context
  • This tool runs entirely locally and does not send data to any external server
  • Always obtain informed consent before analyzing team repositories
  • Report results must not be directly used for performance reviews or punitive management decisions

... EOF

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

PinchTab Browser Ops

Browser automation via PinchTab CLI (nav/snap/find/click/fill/press/text) with low-token accessibility-tree flow. Use when the user asks to operate websites,...

Registry SourceRecently Updated
Coding

Aigames

Create a mini HTML game, organize files in a new folder, and upload it to the brianclan/aigames GitHub repo for www.thenext.games.

Registry SourceRecently Updated
Coding

Api Tester Cn

API请求构造、curl命令生成、Mock数据、API文档、HTTP状态码速查、Headers说明。API request builder, curl generator, mock data, API documentation, HTTP status codes, headers reference. Us...

Registry SourceRecently Updated
Coding

Miaoda App Builder

Create, modify, generate, and deploy websites, web apps, dashboards, SaaS products, internal tools, interactive web pages, Weixin mini program , games on the...

Registry SourceRecently Updated