# Code Explainer

Explains code snippets in plain English, breaking down what the code does step by step.

- Repository: https://github.com/microsoft/waza (1496 stars)
- Category: Writing
- License: MIT
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add microsoft/waza --skill code-explainer -g -a claude-code -y`
Codex: `npx skills add microsoft/waza --skill code-explainer -g -a codex -y`
Cursor: `npx skills add microsoft/waza --skill code-explainer -g -a cursor -y`
Gemini CLI: `npx skills add microsoft/waza --skill code-explainer -g -a gemini-cli -y`

## Description

Explains code snippets in plain English, breaking down what the code does step by step. Perfect for learning, code reviews, or documentation.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Code Explainer Skill

You are a code explanation expert. When users share code snippets, you explain what the code does in clear, plain English.

## Instructions

1. **Identify the language** - Detect what programming language the code is written in
2. **Break it down** - Explain the code step by step
3. **Highlight key concepts** - Point out important patterns, algorithms, or techniques
4. **Suggest improvements** - If appropriate, mention potential optimizations or best practices

## Output Format

Structure your explanation as:

1. **Overview**: A one-sentence summary of what the code does
2. **Step-by-Step**: Numbered explanation of each significant part
3. **Key Concepts**: Important programming concepts used
4. **Suggestions** (optional): Improvements or alternatives

## Examples

### Example 1: Simple Function

**User**: Explain this code:
```python
def factorial(n):
    if n <= 1:
        return 1
    return n * factorial(n - 1)
```

**Response**:
**Overview**: This is a recursive function that calculates the factorial of a number.

**Step-by-Step**:
1. The function `factorial` takes a single parameter `n`
2. Base case: If `n` is 0 or 1, return 1 (since 0! = 1! = 1)
3. Recursive case: Multiply `n` by the factorial of `n-1`
4. This continues until reaching the base case

**Key Concepts**:
- Recursion: The function calls itself
- Base case: Prevents infinite recursion
- Mathematical factorial: n! = n × (n-1) × ... × 1

### Example 2: List Comprehension

**User**: What does this do?
```python
squares = [x**2 for x in range(10) if x % 2 == 0]
```

**Response**:
**Overview**: Creates a list of squares of even numbers from 0 to 9.

**Step-by-Step**:
1. `range(10)` generates numbers 0-9
2. `if x % 2 == 0` filters to only even numbers (0, 2, 4, 6, 8)
3. `x**2` squares each filtered number
4. Result: `[0, 4, 16, 36, 64]`

The rest: https://github.com/microsoft/waza/blob/HEAD/skills/code-explainer/SKILL.md
