nw-hotspot

Git change frequency hotspot analysis — find the most-changed files in your codebase

322 stars

Best use case

nw-hotspot is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Git change frequency hotspot analysis — find the most-changed files in your codebase

Teams using nw-hotspot should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/nw-hotspot/SKILL.md --create-dirs "https://raw.githubusercontent.com/nWave-ai/nWave/main/nWave/skills/nw-hotspot/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/nw-hotspot/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How nw-hotspot Compares

Feature / Agentnw-hotspotStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Git change frequency hotspot analysis — find the most-changed files in your codebase

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# NW-HOTSPOT: Code Crime Scene Hotspot Lens

**Wave**: CROSS_WAVE
**Execution**: Inline (no agent — Claude executes git commands directly)
**Inspiration**: Adam Tornhill's "Your Code as a Crime Scene"

## Overview

Analyze git change frequency to identify the most-changed files in a codebase. Pure git churn — no complexity metrics. Use as a **pre-filter** to scope analysis or a **post-filter** to prioritize existing findings.

## How It Works

Run `git log --name-only` over the configured time period, count commits per file, rank by frequency.

## Modes

### 1. Analyze (default)

Show the most-changed files in the repo. Output is inline only — no files persisted.

```
/nw-hotspot
/nw-hotspot --top=20
/nw-hotspot --since=12m
```

**Steps:**
1. Run: `git log --since={since} --format=format: --name-only | sort | uniq -c | sort -rn`
2. Exclude deleted files (verify each file still exists with `test -f`)
3. For each file, get last changed date: `git log -1 --format="%ar" -- {file}`
4. Display ranked table (top N):

```
 Rank │ Commits │ Last Changed │ File
──────┼─────────┼──────────────┼─────────────────────────
    1 │      87 │ 2 days ago   │ src/services/payment.ts
    2 │      64 │ 1 week ago   │ src/api/controllers/user.ts
    3 │      51 │ 3 days ago   │ src/models/order.ts
```

5. Show summary: total files changed in period, time period, top N shown

**Defaults:** `--top`: 15, `--since`: 6 months

### 2. Rank (post-filter)

Overlay churn data on an existing analysis report to prioritize findings.

```
/nw-hotspot --rank code-smell-detector-report.md
```

**Steps:**
1. Run the same git churn analysis
2. Read the specified report file
3. Extract file paths mentioned in the report
4. Annotate each file with its commit count
5. Re-sort findings by churn (highest first). Findings without extractable file paths go at the bottom.
6. Show noise reduction: "X of Y findings are in low-churn files (< 20 commits)"

### 3. Detail (deep-dive)

Deep-dive into a single file's change history.

```
/nw-hotspot --detail src/services/payment.ts
```

**Steps:**
1. Monthly commit breakdown over the period
2. Top contributors to the file
3. Co-change coupling: top 5 files that frequently change alongside this one
4. Last 10 commit messages for context

### 4. JSON export (pre-filter composition)

```
/nw-hotspot --top=10 --json
```

Output: `[{"path": "src/services/payment.ts", "commits": 87, "last_changed": "2 days ago"}, ...]`

## Parameters

| Flag | Default | Description |
|------|---------|-------------|
| `--top` | 15 | Number of files to show |
| `--since` | 6m | Time period (e.g., 3m, 12m, 2024-01-01) |
| `--json` | false | Output as JSON array |
| `--rank` | - | Path to existing report to re-rank by churn |
| `--detail` | - | Path to single file for deep-dive |

## Edge Cases

- **No commits in period**: Display "No commits found since {date}" rather than an empty table
- **File renames**: Counted as separate files (no `--follow`; keeps it simple and fast)
- **Empty repo / not a git repo**: Display error and exit

## Usage from Other Skills

### Pre-filter (scope downstream analysis)

Run `/nw-hotspot --top=10 --json` first, then pass the file list to:
- **code-smell-detector**: "Analyze only these files: {hotspot list}"
- **cognitive-load-analyzer**: "Focus analysis on these files: {hotspot list}"
- **refactoring-expert**: "Prioritize recommendations for these files"

### Post-filter (rank existing findings)

Run `/nw-hotspot --rank {report.md}` after any analysis to prioritize by churn.

### In nWave workflows

- Before `/nw-refactor` — identify which files to refactor first
- Before `/nw-review` — focus review effort on high-churn areas
- Before `/nw-root-why` — check if the problematic area is a known hotspot

## Next Wave

**Usage Context**: Inline utility, composable with any analysis skill
**Handoff To**: Invoking context (no sequential handoff)

## Examples

### Example 1: Quick scan of a legacy codebase
```
/nw-hotspot
```

### Example 2: Scope a code smell analysis to hotspots
```
/nw-hotspot --top=10 --json
```

### Example 3: Prioritize an existing refactoring report
```
/nw-hotspot --rank code-refactoring-report.md
```

### Example 4: Investigate a specific troubled file
```
/nw-hotspot --detail src/services/payment.ts
```

## Expected Outputs

No persistent files. Output is displayed inline. JSON mode outputs a JSON array for composition with other tools.

Related Skills

nw-ux-web-patterns

322
from nWave-ai/nWave

Web UI design patterns for product owners. Load when designing web application interfaces, writing web-specific acceptance criteria, or evaluating responsive designs.

nw-ux-tui-patterns

322
from nWave-ai/nWave

Terminal UI and CLI design patterns for product owners. Load when designing command-line tools, interactive terminal applications, or writing CLI-specific acceptance criteria.

nw-ux-principles

322
from nWave-ai/nWave

Core UX principles for product owners. Load when evaluating interface designs, writing acceptance criteria with UX requirements, or reviewing wireframes and mockups.

nw-ux-emotional-design

322
from nWave-ai/nWave

Emotional design and delight patterns for product owners. Load when designing onboarding flows, empty states, first-run experiences, or evaluating the emotional quality of an interface.

nw-ux-desktop-patterns

322
from nWave-ai/nWave

Desktop application UI patterns for product owners. Load when designing native or cross-platform desktop applications, writing desktop-specific acceptance criteria, or evaluating panel layouts and keyboard workflows.

nw-user-story-mapping

322
from nWave-ai/nWave

User story mapping for backlog management and outcome-based prioritization. Load during Phase 2.5 (User Story Mapping) to produce story-map.md and prioritization.md.

nw-tr-review-criteria

322
from nWave-ai/nWave

Review dimensions and scoring for root cause analysis quality assessment

nw-tlaplus-verification

322
from nWave-ai/nWave

TLA+ formal verification for design correctness and PBT pipeline integration

nw-test-refactoring-catalog

322
from nWave-ai/nWave

Detailed refactoring mechanics with step-by-step procedures, and test code smell catalog with detection patterns and before/after examples

nw-test-organization-conventions

322
from nWave-ai/nWave

Test directory structure patterns by architecture style, language conventions, naming rules, and fixture placement. Decision tree for selecting test organization strategy.

nw-test-design-mandates

322
from nWave-ai/nWave

Four design mandates for acceptance tests - hexagonal boundary enforcement, business language abstraction, user journey completeness, walking skeleton strategy, and pure function extraction

nw-tdd-review-enforcement

322
from nWave-ai/nWave

Test design mandate enforcement, test budget validation, 5-phase TDD validation, and external validity checks for the software crafter reviewer