Files
ISA-Frontend/.claude/skills/api-change-analyzer/SKILL.md
Lorenz Hilpert ac2df3ea54 ♻️ refactor(agents,skills): optimize invocation system with context-efficient architecture
## Major Changes

**Agent System Overhaul:**
-  Added 3 specialized implementation agents (angular-developer, test-writer, refactor-engineer)
- 🗑️ Removed 7 redundant agents (debugger, error-detective, deployment-engineer, prompt-engineer, search-specialist, technical-writer, ui-ux-designer)
- 📝 Updated all 9 agent descriptions with action-focused, PROACTIVELY-triggered patterns
- 🔧 Net reduction: 16 → 9 agents (44% reduction)

**Description Pattern Standardization:**
- **Agents**: "[Action] + what. Use PROACTIVELY when [specific triggers]. [Features]."
- **Skills**: "This skill should be used when [triggers]. [Capabilities]."
- Removed ambiguous "use proactively" without conditions
- Added measurable triggers (file counts, keywords, thresholds)

**CLAUDE.md Enhancements:**
- 📚 Added "Agent Design Principles" based on Anthropic research
-  Added "Proactive Agent Invocation" rules for automatic delegation
- 🎯 Added response format control (concise vs detailed)
- 🔄 Added environmental feedback patterns
- 🛡️ Added poka-yoke error-proofing guidelines
- 📊 Added token efficiency benchmarks (98.7% reduction via code execution)
- 🗂️ Added context chunking strategy for retrieval
- 🏗️ Documented Orchestrator-Workers pattern

**Context Management:**
- 🔄 Converted context-manager from MCP memory to file-based (.claude/context/)
- Added implementation-state tracking for session resumption
- Team-shared context in git (not personal MCP storage)

**Skills Updated (5):**
- api-change-analyzer: Condensed, added trigger keywords
- architecture-enforcer: Standardized "This skill should be used when"
- circular-dependency-resolver: Added build failure triggers
- git-workflow: Added missing trigger keywords
- library-scaffolder: Condensed implementation details

## Expected Impact

**Context Efficiency:**
- 15,000-20,000 tokens saved per task (aggressive pruning)
- 25,000-35,000 tokens saved per complex task (agent isolation)
- 2-3x more work capacity per session

**Automatic Invocation:**
- Main agent now auto-invokes specialized agents based on keywords
- Clear boundaries prevent wrong agent selection
- Response format gives user control over detail level

**Based on Anthropic Research:**
- Building Effective Agents
- Writing Tools for Agents
- Code Execution with MCP
- Contextual Retrieval
2025-11-21 19:00:01 +01:00

3.6 KiB

name, description
name description
api-change-analyzer This skill should be used when checking for breaking changes before API regeneration, assessing backend API update impact, or user mentions "check breaking changes", "API diff", "impact assessment". Analyzes Swagger/OpenAPI spec changes, categorizes as breaking/compatible/warnings, and provides migration strategies.

API Change Analyzer

Overview

Analyze Swagger/OpenAPI specification changes to detect breaking changes before regeneration. Provides detailed comparison, impact analysis, and migration recommendations.

When to Use This Skill

Invoke when user wants to:

  • Check API changes before regeneration
  • Assess impact of backend updates
  • Plan migration for breaking changes
  • Mentioned "breaking changes" or "API diff"

Analysis Workflow

Step 1: Backup and Generate Temporarily

cp -r generated/swagger/[api-name] /tmp/[api-name].backup
npm run generate:swagger:[api-name]

Step 2: Compare Files

diff -u /tmp/[api-name].backup/models.ts generated/swagger/[api-name]/models.ts
diff -u /tmp/[api-name].backup/services.ts generated/swagger/[api-name]/services.ts

Step 3: Categorize Changes

🔴 Breaking (Critical):

  • Removed properties from response models
  • Changed property types (string → number)
  • Removed endpoints
  • Optional → required fields
  • Removed enum values

Compatible (Safe):

  • Added properties (non-breaking)
  • New endpoints
  • Added optional parameters
  • New enum values

⚠️ Warnings (Review):

  • Property renamed (old removed + new added)
  • Changed default values
  • Changed validation rules
  • Added required request fields

Step 4: Analyze Impact

For each breaking change, use Explore agent to find usages:

# Example: Find usages of removed property
grep -r "removedProperty" libs/*/data-access --include="*.ts"

List:

  • Affected files
  • Services impacted
  • Estimated refactoring effort

Step 5: Generate Migration Strategy

Based on severity:

High Impact (multiple breaking changes):

  1. Create migration branch
  2. Document all changes
  3. Update services incrementally
  4. Comprehensive testing

Medium Impact:

  1. Fix compilation errors
  2. Update affected tests
  3. Deploy with monitoring

Low Impact:

  1. Minor updates
  2. Deploy

Step 6: Create Report

API Breaking Changes Analysis
==============================

API: [api-name]
Analysis Date: [timestamp]

📊 Summary
----------
Breaking Changes: XX
Warnings: XX
Compatible Changes: XX

🔴 Breaking Changes
-------------------
1. Removed Property: OrderResponse.deliveryDate
   Files Affected: 2
   - libs/oms/data-access/src/lib/services/order.service.ts:45
   - libs/oms/feature/order-detail/src/lib/component.ts:78
   Impact: Medium
   Fix: Remove references or use alternativeDate

2. Type Changed: ProductResponse.price (string → number)
   Files Affected: 1
   - libs/catalogue/data-access/src/lib/services/product.service.ts:32
   Impact: High
   Fix: Update parsing logic

⚠️ Warnings
-----------
1. Possible Rename: CustomerResponse.customerName → fullName
   Action: Verify with backend team

✅ Compatible Changes
---------------------
1. Added Property: OrderResponse.estimatedDelivery
2. New Endpoint: GET /api/v2/orders/bulk

💡 Migration Strategy
---------------------
Approach: [High/Medium/Low Impact]
Estimated Effort: [hours]
Steps: [numbered list]

🎯 Recommendation
-----------------
[Proceed with sync / Fix critical issues first / Coordinate with backend]

Step 7: Cleanup

rm -rf /tmp/[api-name].backup
# Or restore if needed

References