Skip to content

Add Windsurf support to installer#478

Merged
dustinvannoy-db merged 2 commits into
databricks-solutions:mainfrom
rytizzle:feat/windsurf-support
Apr 23, 2026
Merged

Add Windsurf support to installer#478
dustinvannoy-db merged 2 commits into
databricks-solutions:mainfrom
rytizzle:feat/windsurf-support

Conversation

@rytizzle
Copy link
Copy Markdown
Contributor

Summary

Adds Windsurf as a supported tool in install.sh, mirroring the existing Cursor pattern.

Motivation

The README lists Windsurf as a supported AI coding assistant ("Claude Code, Cursor, Antigravity, Windsurf, etc."), but install.sh only handled claude, cursor, copilot, codex, gemini, and antigravity. Windsurf users had to manually copy skills into ~/.windsurf/rules and hand-write ~/.codeium/windsurf/mcp_config.json — which is exactly what I did before writing this patch.

Changes

install.sh

  • Detect Windsurf via /Applications/Windsurf.app or windsurf on PATH
  • Add Windsurf row to interactive checkbox tool picker + silent-mode default
  • Install skills to ~/.windsurf/rules (global) or ./.windsurf/rules (project)
  • Write MCP config to ~/.codeium/windsurf/mcp_config.json (global) or ./.codeium/windsurf/mcp_config.json (project), reusing the existing write_mcp_json helper
  • Add Windsurf restart hint to the "Next steps" summary
  • Update --tools help text and header comment

README.md

  • Add Windsurf to prerequisites list
  • Add .windsurf / .codeium to the per-project config-dirs note
  • Add windsurf to the --tools example

Testing

  • bash -n install.sh — syntax OK
  • Global install exercised end-to-end:
    bash ./install.sh --tools windsurf --global --force
    
    Verified ~/.codeium/windsurf/mcp_config.json is valid JSON with the databricks MCP server key, skills copied into ~/.windsurf/rules/ (Databricks + MLflow + APX), and Windsurf's MCP Registry reports databricks — 44/44 tools enabled against the e2-demo-field-eng profile.
  • Interactive path (bash ./install.sh with no flags, project scope) also works — new Windsurf row appears in the checkbox picker.

Note

Submitting from a personal GitHub account (rytizzle) because EMU restrictions on my Databricks GH account (ryan-tom_data) prevent forking this repo. I am a Databricks Field Engineer — ryan.tom@databricks.com. Happy to re-submit via a different mechanism if preferred.

The README lists Windsurf as a supported AI coding assistant, but
install.sh had no handling for it — Windsurf users had to manually
copy skills and hand-write mcp_config.json. This adds a windsurf
branch everywhere the other tools are handled, mirroring the Cursor
pattern.

- Detect Windsurf via /Applications/Windsurf.app or windsurf on PATH
- Add Windsurf row to interactive tool picker + silent-mode default
- Install skills to ~/.windsurf/rules (global) or ./.windsurf/rules (project)
- Write MCP config to ~/.codeium/windsurf/mcp_config.json (global)
  or ./.codeium/windsurf/mcp_config.json (project)
- Add Windsurf restart hint to Next Steps summary
- Update --tools help text, header comment, and README
Copy link
Copy Markdown
Collaborator

@dustinvannoy-db dustinvannoy-db left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please review if rules path is correct (see comment) and can we add this for windows, to install.ps1

Comment thread install.sh Outdated
if [ "$SCOPE" = "global" ]; then
dirs+=("$HOME/.windsurf/rules")
else
dirs+=("$base_dir/.windsurf/rules")
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm seeing that .windsurf/skills should be the path for skills, did you try this insteaed of rules?
https://docs.windsurf.com/windsurf/cascade/skills#manual-creation

Comment thread install.sh Outdated
if [ "$SCOPE" = "global" ]; then
write_mcp_json "$HOME/.codeium/windsurf/mcp_config.json"
else
write_mcp_json "$base_dir/.codeium/windsurf/mcp_config.json"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This local install does not work in my testing. I think MCP will have to be global for windsurf.

- Skills install to ~/.codeium/windsurf/skills (global) and
  .windsurf/skills (project), per docs.windsurf.com/windsurf/cascade/skills.
  The previous /rules path is not loaded by Cascade.
- MCP config is always written to ~/.codeium/windsurf/mcp_config.json
  regardless of scope, with a warning when --scope project is requested.
  Mirrors the Antigravity pattern; Windsurf does not load per-project MCP.
- Mirror Windsurf support in install.ps1 (detection, tool picker,
  skills install, MCP config, next-steps hint) for Windows parity.

Co-authored-by: Isaac
@rytizzle
Copy link
Copy Markdown
Contributor Author

Pushed a fix commit addressing the review:

  1. skills path corrected to .windsurf/skills / ~/.codeium/windsurf/skills
  2. Windsurf MCP config forced to global with a warning on --scope project
  3. install.ps1 now includes Windsurf support mirroring install.sh.

ran and tested on my macbook

Copy link
Copy Markdown
Collaborator

@dustinvannoy-db dustinvannoy-db left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dustinvannoy-db dustinvannoy-db merged commit 000c834 into databricks-solutions:main Apr 23, 2026
antonyprasad-db added a commit to antonyprasad-db/ai-dev-kit that referenced this pull request May 4, 2026
- Resolves merge with main which added Windsurf (databricks-solutions#478) and OpenCode (databricks-solutions#492).
- Combines all three new tools (windsurf, opencode, kiro) in a consistent
  order at every touch point: header comment, --tools help text, detection,
  checkbox UI, silent default, skill install path, MCP config, and final
  launch instructions.
- Adds Kiro launch instruction to the post-install steps (was missing in
  the original PR).
- Brings Windsurf and OpenCode into the header comment alongside the other
  tools (per reviewer note that opencode wasn't listed everywhere on main).
- Kiro skill install now supports both global (~/.kiro/skills) and project
  (.kiro/skills) scopes, mirroring windsurf/opencode.

Co-authored-by: Isaac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants