Skip to content
Back to skills

Breaking Changes

ASecurity

Detects breaking changes between two git refs and generates a migration guide

  • 10 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added June 1, 2026
ai-agentsbashgitapidatabase

Works with

  • api

Security analysis

A100/100

Scanned June 1, 2026

npx -y skills add berkcangumusisik/claude-code-practices --skill breaking-changes --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Breaking Changes?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Breaking Changes
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/berkcangumusisik-breaking-changes/badge)](https://www.skillsdirectory.com/skills/berkcangumusisik-breaking-changes)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: breaking-changes
description: Detects breaking changes between two git refs and generates a migration guide
argument-hint: <base-ref> [head-ref]
user-invocable: true
allowed-tools: Bash Read
effort: medium
---

## Breaking Change Detection

Base: **$1** (e.g., `v1.2.0`, `main`)
Head: **$2** (default: current HEAD)

1. Get the diff:
```bash
git diff $1 ${2:-HEAD} -- src/ --name-only
git diff $1 ${2:-HEAD} -- src/
```

2. Analyze changes for breakage:

**Public API changes** (exports):
- Removed exported functions/types
- Changed function signatures (added required params, changed types)
- Changed return types

**Database changes:**
- Removed columns (app code still references them?)
- Renamed columns/tables
- Changed column types

**Config/env changes:**
- Renamed environment variables
- New required env vars without defaults

**Behavior changes:**
- Changed default values
- Changed error types/messages (if consumers check these)

3. For each breaking change, write a migration step:
```markdown
## Breaking Changes in v2.0.0

### `createUser()` now requires `role` parameter
**Before:** `createUser({ name, email })`
**After:** `createUser({ name, email, role: 'user' })`
**Migration:** Add `role: 'user'` as default to all call sites.
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.