Catch breaking API changes before they ship. AI auto-fix included.
A GitHub App that automatically detects breaking API changes in pull requests using AST analysis β not LLM guessing.
Finds removed fields, changed types, deleted endpoints, and new required parameters. Shows confidence levels, affected consumers, and risk scores. Then offers AI-powered auto-fix with one command.
- Install β github.com/apps/breakshield-ci
- Open a PR with API changes
- BreakShield analyzes automatically β posts findings in PR comment
- Type
/fixin a comment to generate a fix PR with AI
That's it. No config files. No YAML. No CI pipeline changes.
| Change Type | Example | Severity |
|---|---|---|
| Removed field | UserResponse.email deleted |
π΄ Critical |
| Changed type | id: number β id: string |
π΄ Critical |
| Removed endpoint | GET /api/users/:id gone |
π΄ Critical |
| Added required field | New orgId required in request |
π High |
| Changed return type | Promise<User> β Promise<void> |
π High |
| Removed interface | PaymentMethod type deleted |
π΄ Critical |
| Removed parameter | Function param removed | π‘ Medium |
Every finding includes:
- Confidence score β 80%+ means AST-verified, no false positive
- Consumer search β which files in your repo actually use that API
- Risk level β CRITICAL / HIGH / MEDIUM / LOW / SAFE
- Before/after β what changed exactly
Type /fix as a comment in your PR and BreakShield:
- π Acknowledges (reaction on your comment)
- π§ Reads the affected file + breaking change context
- β¨ Sends to your AI provider to generate a fix
- π Opens a new PR with the corrected code
| Provider | Models | Free? |
|---|---|---|
| Google Gemini | 3.5 Flash, 2.5 Pro, 2.5 Flash | β Free tier |
| OpenAI | GPT-5.5, GPT-5.4, GPT-5.4 mini | β |
| Anthropic | Claude Opus 4.8, Sonnet 4.6, Haiku 4.5 | β |
| Groq | GPT-OSS 120B, Llama 3.3 70B, Qwen3 32B | β Free tier |
| Perplexity | Sonar Deep Research, Sonar Pro | β |
BYOK β Bring Your Own Key. Configure in the Dashboard.
PR opened / updated
β
GitHub webhook fires β BreakShield CI
β
Fetch changed files (base vs head)
β
Parse both versions with ts-morph (TypeScript AST)
β
Diff exported interfaces, types, functions, endpoints
β
For each breaking change β search repo for consumers
β
Calculate risk score β post PR comment + GitHub Check
No LLM in detection. Pure AST. Deterministic. Same code = same result every time.
AI is only used when you explicitly request a fix via /fix.
The web dashboard at breakshield-ci.vercel.app provides:
- Overview of all your repositories and PRs
- Detailed findings with before/after diffs
- Risk scoring and trend analysis
- One-click "Suggest fix with AI" button
- Settings for AI provider and model selection
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- AST Parsing: ts-morph
- Database: Supabase (PostgreSQL)
- Auth: GitHub OAuth + JWT sessions
- Hosting: Vercel (serverless)
- Queue: Supabase-backed job queue with
after()processing
- API keys stored encrypted at rest in Supabase
- Keys never exposed to client (only
hasApiKey: boolean) - OAuth tokens in signed HTTP-only JWT cookies
- Webhook signatures verified with HMAC-SHA256
- Write operations use installation tokens or scoped PATs
MIT β free for personal and commercial use.
Install on GitHub Β· Dashboard Β· Report Bug
Made with π‘οΈ by @vojtisprime11