windsurf-upgrade-migration
Facilitates editor upgrades and settings migration from VS Code or Cursor to Windsurf.
Install
mkdir -p .claude/skills/windsurf-upgrade-migration && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/5424" && unzip -o skill.zip -d .claude/skills/windsurf-upgrade-migration && rm skill.zipInstalls to .claude/skills/windsurf-upgrade-migration
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Upgrade Windsurf IDE, migrate settings from VS Code or Cursor, and handleKey capabilities
- →Check the current Windsurf IDE version
- →Migrate extensions and settings from VS Code to Windsurf
- →Convert configuration files from Cursor to Windsurf
- →Add Windsurf-specific configurations like Cascade Workflows and Memories
- →Validate the post-upgrade state of Windsurf
- →Backup current Windsurf configuration files
How it works
This skill provides instructions and scripts to upgrade Windsurf, migrate settings and extensions from other editors like VS Code and Cursor, and configure Windsurf-specific features. It also includes steps for validation and backup.
Inputs & outputs
When to use windsurf-upgrade-migration
- →Migrate settings from VS Code to Windsurf
- →Upgrade Windsurf version
- →Verify extension compatibility after migration
About this skill
Windsurf Upgrade & Migration
Current State
!windsurf --version 2>/dev/null || echo 'Not installed'
!code --version 2>/dev/null | head -1 || echo 'VS Code not installed'
Overview
Guide for upgrading Windsurf to new versions and migrating from VS Code or Cursor. Covers settings transfer, extension compatibility, and Windsurf-specific configuration that doesn't exist in other editors.
Prerequisites
- Current editor installation accessible
- Git for version controlling config files
- Backup of existing settings
Instructions
Step 1: Check Current Windsurf Version
# Current version
windsurf --version
# Check for updates
# Windsurf auto-updates by default
# Manual: Help > Check for Updates (or download from windsurf.com)
Step 2: Migrate from VS Code
Windsurf is VS Code-based and supports most VS Code settings and extensions:
# Windsurf imports VS Code settings on first launch
# For manual migration:
# 1. Export VS Code extensions list
code --list-extensions > vscode-extensions.txt
# 2. Install in Windsurf
cat vscode-extensions.txt | xargs -L1 windsurf --install-extension
# 3. Copy settings
# macOS:
cp ~/Library/Application\ Support/Code/User/settings.json \
~/Library/Application\ Support/Windsurf/User/settings.json
# Linux:
cp ~/.config/Code/User/settings.json \
~/.config/Windsurf/User/settings.json
Key difference: Remove or disable GitHub Copilot -- it conflicts with Windsurf's Supercomplete.
Step 3: Migrate from Cursor
Cursor and Windsurf both extend VS Code but have different AI config files:
# Mapping Cursor concepts to Windsurf:
cursor_to_windsurf:
.cursorrules: .windsurfrules # AI context rules
.cursorignore: .codeiumignore # AI indexing exclusions
.cursor/rules/: .windsurf/rules/ # Workspace rules
cursor_settings: windsurf_settings # IDE preferences
Composer: Cascade # Agentic AI assistant
Tab: Supercomplete # Inline completions
Cmd+K: Cmd+I # Inline editing
Cmd+L: Cmd+L # AI chat (same!)
Migration script:
#!/bin/bash
set -euo pipefail
echo "Migrating Cursor config to Windsurf..."
# Convert .cursorrules to .windsurfrules
[ -f .cursorrules ] && cp .cursorrules .windsurfrules && echo "Copied .cursorrules → .windsurfrules"
# Convert .cursorignore to .codeiumignore
[ -f .cursorignore ] && cp .cursorignore .codeiumignore && echo "Copied .cursorignore → .codeiumignore"
# Migrate workspace rules
if [ -d .cursor/rules ]; then
mkdir -p .windsurf/rules
cp .cursor/rules/*.md .windsurf/rules/ 2>/dev/null
echo "Copied workspace rules to .windsurf/rules/"
echo "NOTE: Check frontmatter -- Windsurf uses 'trigger:' field, Cursor uses different format"
fi
echo "Migration complete. Review .windsurfrules for Cursor-specific references."
Step 4: Add Windsurf-Specific Configuration
After migration, add Windsurf-exclusive features:
<!-- New Windsurf features not in VS Code or Cursor -->
1. Cascade Workflows (.windsurf/workflows/*.md)
- Reusable multi-step automation via slash commands
- No equivalent in VS Code or Cursor
2. Cascade Memories
- Persistent facts across sessions
- Partial equivalent: Cursor notepad
3. Turbo Mode
- Auto-execute terminal commands
- Cursor has "auto-run" but different config
4. Browser Previews
- In-IDE preview with element selection
- Send UI elements to Cascade for editing
5. Workspace Rules with Trigger Modes
- glob, always_on, manual, model_decision
- More granular than Cursor's rule system
Step 5: Post-Upgrade Validation
set -euo pipefail
echo "=== Windsurf Post-Upgrade Check ==="
echo "Version: $(windsurf --version)"
echo "Extensions: $(windsurf --list-extensions | wc -l) installed"
echo "Rules: $([ -f .windsurfrules ] && wc -c < .windsurfrules || echo 'none') bytes"
echo "Ignore: $([ -f .codeiumignore ] && wc -l < .codeiumignore || echo 'none') patterns"
# Test AI features
echo ""
echo "Manual checks:"
echo "1. Open a code file -- Supercomplete should show ghost text"
echo "2. Press Cmd/Ctrl+L -- Cascade should open and respond"
echo "3. Press Cmd/Ctrl+I -- Command mode should activate"
Error Handling
| Issue | Cause | Solution |
|---|---|---|
| Extensions not loading | Incompatible with Windsurf | Check Windsurf marketplace for alternative |
| Settings not applied | Wrong config directory | Verify OS-specific settings path |
| .cursorrules not working | Wrong filename | Rename to .windsurfrules |
| Keyboard shortcuts different | Windsurf overrides some defaults | Check Keyboard Shortcuts editor |
| Copilot still active | Not disabled | Extensions > search "copilot" > Disable |
Examples
Backup Before Upgrade
# Backup current Windsurf config
tar -czf windsurf-config-backup-$(date +%Y%m%d).tar.gz \
~/.config/Windsurf/User/ \
~/.codeium/ \
.windsurfrules \
.codeiumignore \
.windsurf/ 2>/dev/null
Check Windsurf Changelog
Visit: https://windsurf.com/changelog
Look for: breaking changes, deprecated settings, new features
Resources
Next Steps
For CI integration, see windsurf-ci-integration.
When not to use it
- →When VS Code extensions are incompatible with Windsurf
- →When settings are not applied due to incorrect config directory
- →When keyboard shortcuts differ from expectations
Prerequisites
Limitations
- →Some VS Code extensions may be incompatible with Windsurf
- →Settings may not apply if copied to the wrong configuration directory
- →Keyboard shortcuts may differ due to Windsurf overrides
How it compares
This skill automates the migration of editor configurations and extensions, and integrates Windsurf-specific features, which differs from manually transferring individual settings.
Compared to similar skills
windsurf-upgrade-migration side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| windsurf-upgrade-migration (this skill) | 1 | 27d | Review | Intermediate |
| webapp-testing | 353 | 3mo | Review | Intermediate |
| resolve-conflicts | 81 | 8mo | Review | Intermediate |
| telegram-bot-builder | 106 | 6mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by jeremylongshore
View all by jeremylongshore →You might also like
webapp-testing
anthropics
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
resolve-conflicts
antinomyhq
Use this skill immediately when the user mentions merge conflicts that need to be resolved. Do not attempt to resolve conflicts directly - invoke this skill first. This skill specializes in providing a structured framework for merging imports, tests, lock files (regeneration), configuration files, and handling deleted-but-modified files with backup and analysis.
telegram-bot-builder
davila7
Expert in building Telegram bots that solve real problems - from simple automation to complex AI-powered bots. Covers bot architecture, the Telegram Bot API, user experience, monetization strategies, and scaling bots to thousands of users. Use when: telegram bot, bot api, telegram automation, chat bot telegram, tg bot.
dev-browser
SawyerHood
Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.
openspec-onboard
studyzy
Guided onboarding for OpenSpec - walk through a complete workflow cycle with narration and real codebase work.
codex-cli-bridge
alirezarezvani
Bridge between Claude Code and OpenAI Codex CLI - generates AGENTS.md from CLAUDE.md, provides Codex CLI execution helpers, and enables seamless interoperability between both tools