Install
openclaw skills install windsurf-cascadeA comprehensive skill for using the Windsurf IDE and its Cascade AI agent for various software engineering tasks (updated for 2026 features, includes Skills, Workflows, Memories, MCP, and multi-agent sessions).
openclaw skills install windsurf-cascadeThis skill provides a comprehensive guide and set of workflows for utilizing the Windsurf IDE and its Cascade AI agent, including all features from Wave 13 (January 2026).
Download Windsurf Editor from windsurf.com for your platform:
.dmg installer (Intel and Apple Silicon).exe installer.deb package (Debian/Ubuntu) or .tar.gz tarballAdd to PATH (optional but recommended):
During onboarding, you can optionally install windsurf in PATH to launch from the command line:
# macOS - create symlink manually if needed
sudo ln -sF /Applications/Windsurf.app/Contents/Resources/app/bin/windsurf /usr/local/bin/windsurf
# Open a project from terminal
windsurf /path/to/project
Import existing configuration:
Windsurf supports importing settings, extensions, and keybindings from VS Code or Cursor during onboarding. You can also do this later via the Command Palette:
Cmd+Shift+P → "Import VS Code Settings"
Cmd+Shift+P → "Import Cursor Settings"
Windsurf supports WSL (Beta). Connect to your WSL instance:
Remote-WSL: Connect to WSLFor CLI access from WSL terminal, create a helper script:
#!/bin/bash
CURRENT_PATH=$(readlink -f "$1")
windsurf --folder-uri "vscode-remote://wsl+Ubuntu$CURRENT_PATH"
Sign up or log in to your Windsurf (formerly Codeium) account during onboarding or via the profile menu.
Cascade is Windsurf's agentic AI assistant. It understands your entire codebase, tracks your real-time actions (edits, terminal, clipboard), and can autonomously create files, edit code across multiple files, run terminal commands, and maintain project memory.
Cascade comes in two primary modes:
Cmd+L / Ctrl+L): Full write access — creates files, edits code, runs terminal commands, and makes modifications to your codebase.Cmd+Shift+L / Ctrl+Shift+L to toggle): Read-only — answers questions about your codebase and general coding principles without making changes.Switch between models from the dropdown below the Cascade input box. Available models include:
Each prompt consumes credits depending on the model selected.
Cascade has a variety of built-in tools:
Cascade can make up to 25 tool calls per prompt. If the trajectory stops, type continue and Cascade will resume.
Reference specific files, functions, or context in your prompts:
@filename.ts
@src/components/
@function:calculateTotal
You can also:
Use voice input to interact with Cascade via speech-to-text transcription.
Cascade creates named checkpoints. You can revert changes by hovering over a prompt and clicking the revert arrow, or via the table of contents. Reverts are currently irreversible.
| Action | macOS | Windows/Linux |
|---|---|---|
| Open Cascade (Write) | Cmd+L | Ctrl+L |
| Toggle Write/Chat | Cmd+Shift+L | Ctrl+Shift+L |
| Command Palette | Cmd+Shift+P | Ctrl+Shift+P |
| Inline AI (terminal) | Cmd+I | Ctrl+I |
| Accept focused diff hunk | Option+Enter | Alt+Enter |
| Reject focused diff hunk | Option+Shift+Backspace | Alt+Shift+Backspace |
| Fast Context (first msg) | Cmd+Enter | Ctrl+Enter |
Skills let you bundle instructions, templates, checklists, and supporting files into folders that Cascade can invoke for complex, multi-step tasks.
+ Workspace (project-specific) or + GlobalEach skill is a folder with a SKILL.md file and optional supporting files:
.windsurf/skills/deploy-to-production/
├── SKILL.md
├── deployment-checklist.md
├── rollback-procedure.md
└── config-template.yaml
---
name: deploy-to-production
description: Guides the deployment process to production with safety checks
---
## Pre-deployment Checklist
1. Run all tests
2. Check for pending migrations
3. Verify environment variables
...
The name field is used for display and @-mentions. The description helps Cascade decide when to automatically invoke the skill.
For the full Skills specification, visit agentskills.io.
Workflows define a series of steps to guide Cascade through repetitive tasks. They are saved as markdown files and invoked via slash commands.
+ WorkflowWorkflows are saved in .windsurf/workflows/ directories. Windsurf discovers them from:
Workflow files are limited to 12,000 characters each.
/workflow-name
Workflows can call other workflows:
## Steps
1. Call /lint-and-format
2. Call /run-tests
3. Deploy to staging
---
name: pr-review
description: Review PR comments and address them
---
## Steps
1. Check out the PR branch: `gh pr checkout [id]`
2. Get comments on PR:
```bash
gh api --paginate repos/[owner]/[repo]/pulls/[id]/comments | jq '.[] | {user: .user.login, body, path, line}'
## Memories & Rules
Memories persist context across Cascade conversations. Rules guide Cascade behavior.
### Memories
- **Auto-generated**: Cascade creates memories when it encounters useful context. Does NOT consume credits.
- **User-created**: Type `create memory ...` in Cascade to manually save context.
- Auto-generated memories are workspace-specific.
**Managing Memories:**
- Windsurf Settings → Settings tab → Manage next to "Cascade-Generated Memories"
- Or: three dots in Cascade → Manage Memories
- Toggle auto-generation: Settings → "Auto-Generate Memories"
### Rules
Rules are manually defined instructions for Cascade.
**Rule Levels:**
- `global_rules.md` — applies across all workspaces
- `.windsurf/rules/` — workspace-level directory with rules tied to globs or descriptions
- System-level rules (Enterprise) — deployed via MDM policies
**Activation Modes:**
- **Always**: Rule is always active
- **Glob**: Applied to files matching a pattern (e.g., `*.js`, `src/**/*.ts`)
- **Manual / Description-based**: Activated by natural language match
**Rules Best Practices:**
- Keep rules simple, concise, and specific
- Use bullet points and markdown formatting
- Avoid generic rules like "write good code"
- Use XML tags to group similar rules
**Example Rule:**
```markdown
# Coding Guidelines
- My project's programming language is Python
- Use early returns when possible
- Always add documentation when creating new functions and classes
- Use pytest for testing
- Follow PEP 8 style guide
Press Cmd+I / Ctrl+I in the terminal to access an inline chat box that generates CLI commands from natural language.
Cascade can run terminal commands directly. Configure auto-execution levels in Windsurf Settings:
Windsurf uses a dedicated zsh shell for Cascade command execution, providing improved reliability. It uses your .zshrc environment variables and is fully interactive.
When running Windsurf from automated environments (AI agents, scripts, orchestrators), the IDE requires a GUI context. For headless automation scenarios, consider:
Windsurf supports Model Context Protocol (MCP) for connecting external tools and services.
Configure MCP servers in mcp_config.json:
{
"mcpServers": {
"github": {
"command": "uvx",
"args": ["github-mcp"],
"env": {
"GITHUB_TOKEN": "your_token_here"
}
}
}
}
Access via: Windsurf Settings → Cascade → Manage MCPs → View raw config
Each MCP tool call costs one prompt credit.
Execute custom shell commands at key points during Cascade's workflow:
Run multiple Cascade sessions in parallel:
Press Cmd+Enter / Ctrl+Enter on the first message to enable Fast Context. Uses SWE-grep models for up to 20x faster code retrieval from large codebases.
Add files to .codeiumignore at the root of your workspace (same syntax as .gitignore). For global ignore rules across all repositories, place .codeiumignore in ~/.codeium/.
Review the changes in the current branch against main.
Focus on security and performance.
Refactor src/utils.ts to reduce complexity and improve type safety.
Analyze the following error log and suggest a fix: [paste error]
Or: Highlight error → "Explain and Fix"
Generate a commit message for the staged changes adhering to conventional commits.
Create a Workflow in .windsurf/workflows/deploy.md:
---
name: deploy
description: Deploy to production with safety checks
---
## Steps
1. Run all tests: `npm test`
2. Build the project: `npm run build`
3. Run linter: `npm run lint`
4. If all pass, deploy: `npm run deploy:production`
5. Verify deployment health checks
Invoke with /deploy in Cascade.
Windsurf has built-in live preview for web apps. Ask Cascade to start a dev server and preview will appear inside the editor. Click any element to let Cascade reshape it.
Deploy your app with one click via Cascade tool calls (beta Netlify deployment support).
| Plan | Price | Credits/month | Best For |
|---|---|---|---|
| Free | $0 | 25 | Students, hobbyists |
| Pro | $15/mo | 500 | Individual developers |
| Teams | $30/user/mo | Custom | Development teams |
| Enterprise | $60/user/mo | Custom | Large organizations |
| Feature | Windsurf | Cursor |
|---|---|---|
| AI Agent | Cascade (agentic, flow-aware) | Cursor Agent (CLI-based) |
| Rules | .windsurf/rules/ + global_rules.md | .cursor/rules + CLAUDE.md |
| Workflows | .windsurf/workflows/ (slash commands) | N/A (manual) |
| Memories | Auto-generated + user-created | Codebase indexing + Project Rules |
| Skills | .windsurf/skills/ (bundled folders) | N/A |
| Terminal | Dedicated zsh shell + Turbo Mode | Standard terminal |
| Live Preview | Built-in | Extension-based |
| MCP | Native with marketplace | Native |