home / skills / jeremylongshore / claude-code-plugins-plus-skills / windsurf-upgrade-migration

This skill analyzes Windsurf SDK upgrades, detects breaking changes, and guides you through migration steps to minimize downtime.

npx playbooks add skill jeremylongshore/claude-code-plugins-plus-skills --skill windsurf-upgrade-migration

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
2.8 KB
---
name: windsurf-upgrade-migration
description: |
  Analyze, plan, and execute Windsurf SDK upgrades with breaking change detection.
  Use when upgrading Windsurf SDK versions, detecting deprecations,
  or migrating to new API versions.
  Trigger with phrases like "upgrade windsurf", "windsurf migration",
  "windsurf breaking changes", "update windsurf SDK", "analyze windsurf version".
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(git:*)
version: 1.0.0
license: MIT
author: Jeremy Longshore <[email protected]>
---

# Windsurf Upgrade & Migration

## Overview
Guide for upgrading Windsurf SDK versions and handling breaking changes.

## Prerequisites
- Current Windsurf SDK installed
- Git for version control
- Test suite available
- Staging environment

## Instructions

### Step 1: Check Current Version
```bash
npm list @windsurf/sdk
npm view @windsurf/sdk version
```

### Step 2: Review Changelog
```bash
open https://github.com/windsurf/sdk/releases
```

### Step 3: Create Upgrade Branch
```bash
git checkout -b upgrade/windsurf-sdk-vX.Y.Z
npm install @windsurf/sdk@latest
npm test
```

### Step 4: Handle Breaking Changes
Update import statements, configuration, and method signatures as needed.

## Output
- Updated SDK version
- Fixed breaking changes
- Passing test suite
- Documented rollback procedure

## Error Handling
| SDK Version | API Version | Node.js | Breaking Changes |
|-------------|-------------|---------|------------------|
| 3.x | 2024-01 | 18+ | Major refactor |
| 2.x | 2023-06 | 16+ | Auth changes |
| 1.x | 2022-01 | 14+ | Initial release |

## Examples

### Import Changes
```typescript
// Before (v1.x)
import { Client } from '@windsurf/sdk';

// After (v2.x)
import { WindsurfClient } from '@windsurf/sdk';
```

### Configuration Changes
```typescript
// Before (v1.x)
const client = new Client({ key: 'xxx' });

// After (v2.x)
const client = new WindsurfClient({
  apiKey: 'xxx',
});
```

### Rollback Procedure
```bash
npm install @windsurf/[email protected] --save-exact
```

### Deprecation Handling
```typescript
// Monitor for deprecation warnings in development
if (process.env.NODE_ENV === 'development') {
  process.on('warning', (warning) => {
    if (warning.name === 'DeprecationWarning') {
      console.warn('[Windsurf]', warning.message);
      // Log to tracking system for proactive updates
    }
  });
}

// Common deprecation patterns to watch for:
// - Renamed methods: client.oldMethod() -> client.newMethod()
// - Changed parameters: { key: 'x' } -> { apiKey: 'x' }
// - Removed features: Check release notes before upgrading
```

## Resources
- [Windsurf Changelog](https://github.com/windsurf/sdk/releases)
- [Windsurf Migration Guide](https://docs.windsurf.com/migration)

## Next Steps
For CI integration during upgrades, see `windsurf-ci-integration`.

Overview

This skill analyzes, plans, and executes Windsurf SDK upgrades while detecting breaking changes and deprecations. It helps teams prepare upgrade branches, run tests, and apply safe migration edits to imports, configuration, and APIs. The outcome is a validated upgrade with rollback instructions and CI-ready steps.

How this skill works

The skill inspects the current installed Windsurf SDK version and compares it to target releases and changelogs. It runs an automated checklist: create an upgrade branch, install the new SDK, run the test suite, detect common breaking-change patterns (renamed classes, config key changes, removed methods), and surface actionable code edits. It produces a migration plan and rollback commands for quick recovery.

When to use it

  • Before upgrading the Windsurf SDK to a newer major or minor version
  • When CI tests fail after a Windsurf dependency bump
  • To proactively detect deprecations announced in release notes
  • When migrating code to new API names, signatures, or config keys
  • Prior to deploying to staging or production after a dependency update

Best practices

  • Run upgrades in a dedicated branch and keep changes isolated
  • Review Windsurf changelog and migration guide before code edits
  • Run full test suite and smoke tests in a staging environment
  • Search and update imports, client constructors, and renamed methods
  • Log deprecation warnings during development and track occurrences

Example use cases

  • Upgrade from Windsurf v1.x to v2.x: update imports and client constructor keys, then run tests
  • Detect and replace renamed methods across a codebase after a major refactor
  • Integrate the upgrade workflow into CI to automatically fail builds for breaking changes
  • Create rollback instructions and pin a prior SDK version if critical failures appear
  • Monitor deprecation warnings in development and queue fixes before the major release

FAQ

What are the typical breaking-change patterns to watch for?

Common patterns include renamed client classes, changed constructor/config keys (e.g., key -> apiKey), removed or renamed methods, and authentication flows redesigns.

How do I roll back if the upgraded SDK breaks production?

Install the previous exact version (for example: npm install @windsurf/[email protected] --save-exact), revert the upgrade branch, and deploy the pinned version while you fix compatibility issues.