this repo has no description

feat: add support for windsurf (#4)

authored by

Lintao He and committed by
GitHub
5c66f606 3b91c164

+17
+1
README.md
··· 58 58 | Cursor | `.cursor/skills/` | `~/.cursor/skills/` | 59 59 | Gemini | `.gemini/skills/` | `~/.gemini/skills/` | 60 60 | Opencode | `.opencode/skills/` | `~/.opencode/skills/` | 61 + | Windsurf | `.windsurf/skills/` | `~/.codeium/windsurf/skills/` | 61 62 62 63 Skills are installed as relative symlinks for portability. 63 64
+14
pixi_skills/backend.py
··· 16 16 CURSOR = "cursor" 17 17 GEMINI = "gemini" 18 18 OPENCODE = "opencode" 19 + WINDSURF = "windsurf" 19 20 20 21 21 22 class Backend(ABC): ··· 170 171 return Path.home() / ".opencode/skills" 171 172 172 173 174 + class WindsurfBackend(Backend): 175 + """Backend for Windsurf.""" 176 + 177 + name = "windsurf" 178 + 179 + def get_skills_dir(self, scope: Scope) -> Path: 180 + if scope == Scope.LOCAL: 181 + return Path(".windsurf/skills") 182 + else: 183 + return Path.home() / ".codeium/windsurf/skills" 184 + 185 + 173 186 # Registry of available backends 174 187 BACKENDS: dict[BackendName, type[Backend]] = { 175 188 BackendName.CLAUDE: ClaudeBackend, ··· 179 192 BackendName.CURSOR: CursorBackend, 180 193 BackendName.GEMINI: GeminiBackend, 181 194 BackendName.OPENCODE: OpencodeBackend, 195 + BackendName.WINDSURF: WindsurfBackend, 182 196 } 183 197 184 198
+2
tests/test_backend.py
··· 13 13 CursorBackend, 14 14 GeminiBackend, 15 15 OpencodeBackend, 16 + WindsurfBackend, 16 17 get_all_backends, 17 18 get_backend, 18 19 ) ··· 51 52 (CopilotBackend, ".github/skills", ".github/skills"), 52 53 (GeminiBackend, ".gemini/skills", ".gemini/skills"), 53 54 (OpencodeBackend, ".opencode/skills", ".opencode/skills"), 55 + (WindsurfBackend, ".windsurf/skills", ".codeium/windsurf/skills"), 54 56 ], 55 57 ) 56 58 class TestGetSkillsDir: