-
Notifications
You must be signed in to change notification settings - Fork 207
[Dev environments] Support windsurf IDE #3444
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR is being reviewed by Cursor Bugbot
Details
You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.
To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.
| version = values.get("version") | ||
| if ide == "windsurf" and version: | ||
| # Validate format: version@commit | ||
| if not re.match(r"^.+@[a-f0-9]+$", version): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regex allows multiple @ but split assumes exactly one
The regex validation ^.+@[a-f0-9]+$ allows versions containing multiple @ symbols (e.g., 1.0@@abc123 or 1.0@beta@abc123) because .+ is greedy and matches characters including @. However, windsurf.py uses version, commit = self.version.split("@") which expects exactly two parts. A malformed version passing validation would cause a runtime ValueError: too many values to unpack. The regex could use ^[^@]+@[a-f0-9]+$ to explicitly exclude @ from the version portion.
Additional Locations (1)
jvstme
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Python part LGTM. Left some comments regarding Windsurf version detection that may be worth addressing before merge
| console.print( | ||
| "[secondary]Unable to detect the Windsurf version and pre-install extensions. " | ||
| "Fix by opening [code]Command Palette[/code], executing [code]Shell Command: " | ||
| "Install 'surf' command in PATH[/code], and restarting terminal.[/]\n" | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Replaced `surf` with `windsurf`(which is the only one alaviable on Linux)



Fixes #3443
Note
Adds Windsurf as a first-class IDE option for dev environments across UI, types, CLI, and server.
windsurfinIDE_OPTIONS, updates types and "Connect" flow to use dynamic IDE labels/URLsTIdeand form value typings to includewindsurfwindsurftoDevEnvironmentConfigurationParams; validate Windsurfversionasversion@commitWindsurfDesktopinstaller/README commands and wiring in dev job configuratorWritten by Cursor Bugbot for commit 9e51925. This will update automatically on new commits. Configure here.