rulesync 0.55.0 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/README.ja.md +67 -5
  2. package/README.md +77 -6
  3. package/dist/{augmentcode-MJYD2Y4S.js → augmentcode-HIZIQG2W.js} +2 -2
  4. package/dist/chunk-7E4U4YAB.js +17 -0
  5. package/dist/{chunk-D7XQ4OHK.js → chunk-7UBF4OLN.js} +1 -1
  6. package/dist/{chunk-VI6SBYFB.js → chunk-AUUSMVCT.js} +2 -1
  7. package/dist/chunk-J3TBR5EP.js +292 -0
  8. package/dist/{chunk-OXKDEZJK.js → chunk-KUGTKMNW.js} +1 -1
  9. package/dist/{chunk-QVPD6ENS.js → chunk-LXTA7DBA.js} +1 -1
  10. package/dist/chunk-OA473EXZ.js +17 -0
  11. package/dist/{chunk-BEPSWIZC.js → chunk-PCATT4UZ.js} +1 -1
  12. package/dist/chunk-VKNCBVZF.js +17 -0
  13. package/dist/chunk-VNT6AHHO.js +17 -0
  14. package/dist/chunk-W2WU253H.js +17 -0
  15. package/dist/chunk-WAX2UANS.js +61 -0
  16. package/dist/{chunk-ORNO5MOO.js → chunk-YTU3SCQO.js} +1 -1
  17. package/dist/{claudecode-CKGUHLRR.js → claudecode-VVI2PTKI.js} +3 -3
  18. package/dist/{cline-Z5C656VR.js → cline-BJLFSLEB.js} +3 -3
  19. package/dist/{codexcli-VFUJKSIJ.js → codexcli-LKWQB3V3.js} +3 -3
  20. package/dist/{copilot-4WQS5TA7.js → copilot-MOR3HHJX.js} +2 -2
  21. package/dist/{cursor-HOB2F2V2.js → cursor-2BVUO64T.js} +3 -2
  22. package/dist/{geminicli-XTMQTIU2.js → geminicli-5YFMKRFL.js} +3 -2
  23. package/dist/index.cjs +532 -318
  24. package/dist/index.js +304 -163
  25. package/dist/{junie-AN6CR7DD.js → junie-5TDJPUXX.js} +3 -2
  26. package/dist/{kiro-PTUZOHQ2.js → kiro-YDHXY2MA.js} +2 -2
  27. package/dist/{roo-WOMS36KU.js → roo-L3QTTIPO.js} +2 -2
  28. package/dist/windsurf-PXDRIQ76.js +10 -0
  29. package/package.json +1 -1
  30. package/dist/chunk-3PHMFVXP.js +0 -66
  31. package/dist/chunk-OY6BYYIX.js +0 -63
  32. package/dist/chunk-PPAQWVXX.js +0 -94
  33. package/dist/chunk-TJKD6LEW.js +0 -90
  34. package/dist/chunk-UHANRG2O.js +0 -54
  35. package/dist/chunk-UZCJNUXO.js +0 -67
package/README.ja.md CHANGED
@@ -9,7 +9,7 @@
9
9
 
10
10
  ## 対応ツール
11
11
 
12
- rulesyncは以下のAI開発ツールの**生成**と**インポート**の両方をサポートしています:
12
+ rulesyncは以下の**10のAI開発ツール**の**生成**と**インポート**の両方をサポートしています:
13
13
 
14
14
  - **GitHub Copilot Custom Instructions** (`.github/copilot-instructions.md` + `.github/instructions/*.instructions.md`)
15
15
  - **Cursor Project Rules** (`.cursor/rules/*.mdc` + `.cursorrules`)
@@ -20,6 +20,7 @@ rulesyncは以下のAI開発ツールの**生成**と**インポート**の両
20
20
  - **Roo Code Rules** (`.roo/rules/*.md` + `.roo/instructions.md`)
21
21
  - **Gemini CLI** (`GEMINI.md` + `.gemini/memories/*.md`)
22
22
  - **JetBrains Junie Guidelines** (`.junie/guidelines.md`)
23
+ - **Windsurf AIコードエディター** (`.windsurfrules` + `.windsurfignore` + `.windsurf/mcp.json`)
23
24
  - **Kiro IDE カスタムステアリングドキュメント** (`.kiro/steering/*.md`) + **AI除外ファイル** (`.aiignore`)
24
25
 
25
26
  ## インストール
@@ -74,6 +75,7 @@ yarn global add rulesync
74
75
  npx rulesync import --roo # .roo/instructions.mdから
75
76
  npx rulesync import --geminicli # GEMINI.mdと.gemini/memories/*.mdから
76
77
  npx rulesync import --junie # .junie/guidelines.mdから
78
+ npx rulesync import --windsurf # .windsurfrules と .windsurf/rules/*.mdから
77
79
  ```
78
80
 
79
81
  2. **`.rulesync/`ディレクトリのインポートされたルールを確認・編集**
@@ -102,9 +104,10 @@ AI開発ツールは新しいツールが頻繁に登場し、急速に進化し
102
104
  - OpenAI Codex CLI:GPT-4を活用した開発
103
105
  - Gemini CLI:知的コード解析
104
106
  - JetBrains Junie:自律的AIコーディング
107
+ - Windsurf:高度なAIコードエディティング
105
108
 
106
109
  ### 🔓 **ベンダーロックインなし**
107
- ベンダーロックインを完全に回避できます。rulesyncの使用を停止することを決定した場合でも、生成されたルールファイル(`.github/instructions/`、`.cursor/rules/`、`.clinerules/`、`CLAUDE.md`、`codex.md`、`GEMINI.md`、`.junie/guidelines.md`など)をそのまま使い続けることができます。
110
+ ベンダーロックインを完全に回避できます。rulesyncの使用を停止することを決定した場合でも、生成されたルールファイル(`.github/instructions/`、`.cursor/rules/`、`.clinerules/`、`CLAUDE.md`、`codex.md`、`GEMINI.md`、`.junie/guidelines.md`、`.windsurfrules`など)をそのまま使い続けることができます。
108
111
 
109
112
  ### 🎯 **ツール間の一貫性**
110
113
  すべてのAIツールに一貫したルールを適用し、チーム全体のコード品質と開発体験を向上させます。
@@ -191,6 +194,59 @@ npx rulesync generate --codexcli --base-dir ./packages/frontend
191
194
  - `.codex/mcp-config.json` MCPラッパーサーバー統合用
192
195
  - `.codexignore` プライバシー制御強化用(`.rulesyncignore`が存在する場合)
193
196
 
197
+ ## Windsurf AI統合
198
+
199
+ ### 包括的なWindsurf対応
200
+
201
+ rulesyncは**Windsurf AIコードエディター**の完全統合を提供し、ルール/メモリー管理、Model Context Protocol (MCP)サーバー、AIファイル除外の3つの主要領域をサポートしています。
202
+
203
+ **主要機能**:
204
+ - **統一ルールシステム**: プロジェクト固有のAIルールと開発ガイドライン
205
+ - **MCP統合**: Model Context Protocolサーバー設定で外部ツールとの拡張可能性
206
+ - **プライバシー制御**: 機密ファイルをAIアクセスから除外するスマートな除外システム
207
+ - **プロジェクトレベル設定**: チーム全体で一貫したAI支援開発体験
208
+
209
+ ### 生成されるファイル構造
210
+
211
+ rulesyncはWindsurf用に以下のファイルを生成します:
212
+
213
+ - **`.windsurfrules`**: メインのプロジェクトルール(ルートルールから生成)
214
+ - **`.windsurf/rules/<filename>.md`**: 追加のルールファイル(非ルートルールから生成)
215
+ - **`.windsurf/mcp.json`**: Model Context Protocol サーバー設定
216
+ - **`.windsurfignore`**: AIアクセス除外ファイル(`.rulesyncignore`から生成)
217
+
218
+ ### Windsurf設定の生成
219
+
220
+ Windsurf設定ファイルを生成する:
221
+
222
+ ```bash
223
+ # Windsurf専用で生成
224
+ npx rulesync generate --windsurf
225
+
226
+ # MCPサーバー設定の詳細出力付きで生成
227
+ npx rulesync generate --windsurf --verbose
228
+
229
+ # 特定のディレクトリに生成(monorepoに便利)
230
+ npx rulesync generate --windsurf --base-dir ./packages/frontend
231
+ ```
232
+
233
+ これにより以下が作成されます:
234
+ - `.windsurfrules` プロジェクトレベルのルール
235
+ - `.windsurf/rules/` ディレクトリの詳細ルールファイル
236
+ - `.windsurf/mcp.json` Model Context Protocolサーバー統合用
237
+ - `.windsurfignore` プライバシー保護用(`.rulesyncignore`が存在する場合)
238
+
239
+ ### アーキテクチャ改善
240
+
241
+ Windsurfサポートの実装により、rulesyncのアーキテクチャは大幅に改善されました:
242
+
243
+ - **レジストリパターン**: すべてのルールジェネレーターを統一されたレジストリシステムで管理
244
+ - **共有ファクトリー**: ジェネレーター間でコードの重複を削減
245
+ - **関心事の分離**: より良い保守性とテストのためのモジュラー設計
246
+ - **包括的なテスト**: 新機能の広範なテストカバレッジ
247
+
248
+ これらの改善により、すべてのAI開発ツールにおいて、より一貫性があり信頼性の高い設定生成が可能になりました。
249
+
194
250
  ## Claude Code統合
195
251
 
196
252
  ### カスタムスラッシュコマンドの作成
@@ -261,6 +317,7 @@ rulesyncは2レベルのルールシステムを使用します:
261
317
  | **Cline** | 標準フォーマット | 標準フォーマット | すべてのルールがプレーンMarkdownフォーマットを使用 |
262
318
  | **Roo Code** | 標準フォーマット | 標準フォーマット | すべてのルールが説明ヘッダー付きのプレーンMarkdownフォーマットを使用 |
263
319
  | **Gemini CLI** | `GEMINI.md` | `.gemini/memories/*.md` | GEMINI.mdがメモリファイルへの`@filename`参照を含む |
320
+ | **Windsurf** | `.windsurfrules` | `.windsurf/rules/*.md` | 包括的統合:MCP設定、ignoreファイル、プレーンMarkdownフォーマット |
264
321
 
265
322
  ### 3. 設定ファイルの生成
266
323
 
@@ -278,13 +335,14 @@ npx rulesync generate --augmentcode
278
335
  npx rulesync generate --roo
279
336
  npx rulesync generate --geminicli
280
337
  npx rulesync generate --junie
338
+ npx rulesync generate --windsurf
281
339
  npx rulesync generate --kiro
282
340
 
283
341
  # クリーンビルド(既存ファイルを最初に削除)
284
342
  npx rulesync generate --delete
285
343
 
286
344
  # 特定ツール用のクリーンビルド
287
- npx rulesync generate --copilot --cursor --codexcli --delete
345
+ npx rulesync generate --copilot --cursor --codexcli --windsurf --delete
288
346
 
289
347
  # 詳細出力
290
348
  npx rulesync generate --verbose
@@ -300,7 +358,7 @@ npx rulesync generate --base-dir ./apps/web,./apps/api,./packages/shared
300
358
 
301
359
  - `--delete`: 新しいファイルを作成する前に既存の生成済みファイルをすべて削除
302
360
  - `--verbose`: 生成プロセス中に詳細出力を表示
303
- - `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--codexcli`, `--augmentcode`, `--roo`, `--geminicli`, `--junie`, `--kiro`: 指定されたツールのみ生成
361
+ - `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--codexcli`, `--augmentcode`, `--roo`, `--geminicli`, `--junie`, `--windsurf`, `--kiro`: 指定されたツールのみ生成
304
362
  - `--base-dir <paths>`: 指定されたベースディレクトリに設定ファイルを生成(複数パスの場合はカンマ区切り)。異なるプロジェクトディレクトリにツール固有の設定を生成したいmonorepoセットアップに便利。
305
363
  - `--config <path>`: 特定の設定ファイルを使用
306
364
  - `--no-config`: 設定ファイルの読み込みを無効化
@@ -319,6 +377,7 @@ npx rulesync import --augmentcode # .augment/rules/*.mdからインポート
319
377
  npx rulesync import --roo # .roo/instructions.mdからインポート
320
378
  npx rulesync import --geminicli # GEMINI.mdと.gemini/memories/*.mdからインポート
321
379
  npx rulesync import --junie # .junie/guidelines.mdからインポート
380
+ npx rulesync import --windsurf # .windsurfrules と .windsurf/rules/*.mdからインポート
322
381
 
323
382
  # 各ツールを個別にインポート
324
383
  npx rulesync import --claudecode
@@ -524,6 +583,7 @@ draft-*.md
524
583
  - Cline用の`.clineignore`
525
584
  - Roo Code用の`.rooignore`
526
585
  - GitHub Copilot用の`.copilotignore`(コミュニティツール用)
586
+ - Windsurf用の`.windsurfignore`
527
587
  - Gemini CLI用の`.aiexclude`
528
588
  - Kiro IDE用の`.aiignore`
529
589
  - Claude Code用に`.claude/settings.json`のpermissions.denyに`Read()`ルールを追加
@@ -596,6 +656,7 @@ globs: ["**/*.ts", "**/*.tsx"]
596
656
  | **Roo Code** | `.roo/rules/*.md` | プレーンMarkdown | 両レベルとも説明ヘッダー付きの同じフォーマットを使用 |
597
657
  | **Gemini CLI** | `GEMINI.md` (ルート)<br>`.gemini/memories/*.md` (非ルート) | プレーンMarkdown | ルートはGEMINI.mdに移動<br>非ルートは別メモリファイルに移動<br>GEMINI.mdは`@filename`参照を含む |
598
658
  | **JetBrains Junie** | `.junie/guidelines.md` | プレーンMarkdown | すべてのルールを単一のガイドラインファイルに統合 |
659
+ | **Windsurf** | `.windsurfrules` (ルート)<br>`.windsurf/rules/*.md` (非ルート) | プレーンMarkdown | ルートはメインルールファイルに移動<br>非ルートは別ルールファイルに移動<br>MCP設定とignoreファイルを含む包括的統合 |
599
660
  | **Kiro IDE** | `.kiro/steering/*.md` + `.aiignore` | プレーンMarkdown + 除外パターン | カスタムステアリングドキュメントで両レベルとも同じフォーマット使用<br>AI除外ファイルで機密パターンを除外 |
600
661
 
601
662
  ## バリデーション
@@ -625,6 +686,7 @@ rulesyncは、対応するAIツール用のMCPサーバー設定も管理でき
625
686
  - **OpenAI Codex CLI** (`.codex/mcp-config.json`)
626
687
  - **Gemini CLI** (`.gemini/settings.json`)
627
688
  - **JetBrains Junie** (`.junie/mcp.json`)
689
+ - **Windsurf** (`.windsurf/mcp.json`)
628
690
  - **Kiro IDE** (`.kiro/mcp.json`)
629
691
  - **Roo Code** (`.roo/mcp.json`)
630
692
 
@@ -696,7 +758,7 @@ MCP設定はルールファイルと一緒に生成されます:
696
758
  npx rulesync generate
697
759
 
698
760
  # 特定のツールのみ生成
699
- npx rulesync generate --claudecode --cursor --codexcli --junie --kiro
761
+ npx rulesync generate --claudecode --cursor --codexcli --windsurf --junie --kiro
700
762
 
701
763
  # 特定のディレクトリに生成(monorepo)
702
764
  npx rulesync generate --base-dir ./packages/frontend
package/README.md CHANGED
@@ -21,6 +21,7 @@ rulesync supports both **generation** and **import** for the following AI develo
21
21
  - **Gemini CLI** (`GEMINI.md` + `.gemini/memories/*.md`)
22
22
  - **JetBrains Junie Guidelines** (`.junie/guidelines.md`)
23
23
  - **Kiro IDE Custom Steering Documents** (`.kiro/steering/*.md`) + **AI Ignore Files** (`.aiignore`)
24
+ - **Windsurf AI Code Editor** (`.windsurf/rules/*.md` + `.windsurf/mcp.json` + `.codeiumignore`)
24
25
 
25
26
  ## Installation
26
27
 
@@ -74,6 +75,7 @@ If you already have AI tool configurations, you can import them into rulesync fo
74
75
  npx rulesync import --roo # From .roo/instructions.md
75
76
  npx rulesync import --geminicli # From GEMINI.md and .gemini/memories/*.md
76
77
  npx rulesync import --junie # From .junie/guidelines.md
78
+ npx rulesync import --windsurf # From .windsurf/rules/*.md
77
79
  ```
78
80
 
79
81
  2. **Review and edit** the imported rules in `.rulesync/` directory
@@ -102,9 +104,10 @@ Enable hybrid development workflows combining multiple AI tools:
102
104
  - OpenAI Codex CLI for GPT-4 powered development
103
105
  - Gemini CLI for intelligent code analysis
104
106
  - JetBrains Junie for autonomous AI coding
107
+ - Windsurf for comprehensive AI-assisted editing with Cascade AI
105
108
 
106
109
  ### 🔓 **No Vendor Lock-in**
107
- Avoid vendor lock-in completely. If you decide to stop using rulesync, you can continue using the generated rule files (`.github/instructions/`, `.cursor/rules/`, `.clinerules/`, `CLAUDE.md`, `codex.md`, `GEMINI.md`, `.junie/guidelines.md`, etc.) as-is.
110
+ Avoid vendor lock-in completely. If you decide to stop using rulesync, you can continue using the generated rule files (`.github/instructions/`, `.cursor/rules/`, `.clinerules/`, `CLAUDE.md`, `codex.md`, `GEMINI.md`, `.junie/guidelines.md`, `.windsurf/rules/`, etc.) as-is.
108
111
 
109
112
  ### 🎯 **Consistency Across Tools**
110
113
  Apply consistent rules across all AI tools, improving code quality and development experience for the entire team.
@@ -191,6 +194,69 @@ This will create:
191
194
  - `.codex/mcp-config.json` for MCP wrapper server integration
192
195
  - `.codexignore` for enhanced privacy control (if `.rulesyncignore` exists)
193
196
 
197
+ ## Windsurf AI Code Editor Integration
198
+
199
+ ### Comprehensive AI-Assisted Development
200
+
201
+ rulesync provides full integration with **Windsurf AI Code Editor**, supporting its complete ecosystem of features including rules/memories, MCP servers, and ignore file patterns.
202
+
203
+ **Key Features**:
204
+ - **Unified Rule System**: Supports both workspace rules and global rules with automatic memory integration
205
+ - **Cascade AI Enhancement**: Provides persistent context to Windsurf's Cascade AI for better code understanding
206
+ - **MCP Integration**: Model Context Protocol support for extended functionality through external services
207
+ - **Privacy Controls**: Advanced ignore file generation for sensitive data protection
208
+
209
+ ### File Structure
210
+
211
+ rulesync generates the following files for Windsurf:
212
+
213
+ - **`.windsurf/rules/*.md`**: Project-specific rules (generated from both root and detail rules)
214
+ - **`.windsurf/mcp.json`**: MCP server configuration for external tool integration
215
+ - **`.codeiumignore`**: Ignore file for excluding sensitive files from Cascade AI analysis
216
+
217
+ ### Rule Integration Options
218
+
219
+ Windsurf supports multiple rule placement strategies:
220
+
221
+ #### Directory Variant (Recommended)
222
+ - **Location**: `.windsurf/rules/` directory
223
+ - **Files**: Multiple Markdown files for organized rule categorization
224
+ - **Benefits**: Better organization, team collaboration, version control friendly
225
+
226
+ #### Single-File Alternative
227
+ - **Location**: `.windsurf-rules` file at project root
228
+ - **Format**: Single Markdown file with all rules
229
+ - **Use Case**: Simple projects or minimal rule sets
230
+
231
+ ### Cascade AI Memory System
232
+
233
+ Windsurf's Cascade AI automatically integrates with both:
234
+ - **Workspace Rules**: Project-specific guidelines in `.windsurf/rules/`
235
+ - **Auto-generated Memories**: Context learned from development patterns
236
+ - **Global Rules**: User-wide preferences (not managed by rulesync)
237
+
238
+ The combination provides comprehensive context for AI-assisted development.
239
+
240
+ ### Example Usage
241
+
242
+ Generate Windsurf configuration files:
243
+
244
+ ```bash
245
+ # Generate only for Windsurf
246
+ npx rulesync generate --windsurf
247
+
248
+ # Generate with verbose output
249
+ npx rulesync generate --windsurf --verbose
250
+
251
+ # Generate in specific directory (useful for monorepos)
252
+ npx rulesync generate --windsurf --base-dir ./packages/frontend
253
+ ```
254
+
255
+ This will create:
256
+ - `.windsurf/rules/*.md` with your project rules organized by category
257
+ - `.windsurf/mcp.json` for MCP server integration
258
+ - `.codeiumignore` for enhanced privacy control (if `.rulesyncignore` exists)
259
+
194
260
  ## Claude Code Integration
195
261
 
196
262
  ### Creating Custom Slash Commands
@@ -279,12 +345,13 @@ npx rulesync generate --roo
279
345
  npx rulesync generate --geminicli
280
346
  npx rulesync generate --junie
281
347
  npx rulesync generate --kiro
348
+ npx rulesync generate --windsurf
282
349
 
283
350
  # Clean build (delete existing files first)
284
351
  npx rulesync generate --delete
285
352
 
286
353
  # Clean build for specific tools
287
- npx rulesync generate --copilot --cursor --codexcli --delete
354
+ npx rulesync generate --copilot --cursor --codexcli --windsurf --delete
288
355
 
289
356
  # Verbose output
290
357
  npx rulesync generate --verbose
@@ -300,7 +367,7 @@ npx rulesync generate --base-dir ./apps/web,./apps/api,./packages/shared
300
367
 
301
368
  - `--delete`: Remove all existing generated files before creating new ones
302
369
  - `--verbose`: Show detailed output during generation process
303
- - `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--codexcli`, `--augmentcode`, `--roo`, `--geminicli`, `--junie`, `--kiro`: Generate only for specified tools
370
+ - `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--codexcli`, `--augmentcode`, `--roo`, `--geminicli`, `--junie`, `--kiro`, `--windsurf`: Generate only for specified tools
304
371
  - `--base-dir <paths>`: Generate configuration files in specified base directories (comma-separated for multiple paths). Useful for monorepo setups where you want to generate tool-specific configurations in different project directories.
305
372
  - `--config <path>`: Use a specific configuration file
306
373
  - `--no-config`: Disable configuration file loading
@@ -322,7 +389,7 @@ rulesync supports configuration files to avoid repetitive command-line arguments
322
389
  ```jsonc
323
390
  {
324
391
  // List of tools to generate configurations for
325
- "targets": ["copilot", "cursor", "claudecode", "codexcli"],
392
+ "targets": ["copilot", "cursor", "claudecode", "codexcli", "windsurf"],
326
393
 
327
394
  // Tools to exclude from generation (overrides targets)
328
395
  "exclude": ["roo"],
@@ -358,7 +425,7 @@ rulesync supports configuration files to avoid repetitive command-line arguments
358
425
  import type { ConfigOptions } from "rulesync";
359
426
 
360
427
  const config: ConfigOptions = {
361
- targets: ["copilot", "cursor", "claudecode", "codexcli"],
428
+ targets: ["copilot", "cursor", "claudecode", "codexcli", "windsurf"],
362
429
  exclude: ["roo"],
363
430
  outputPaths: {
364
431
  copilot: ".github/copilot-instructions.md"
@@ -413,6 +480,7 @@ npx rulesync import --augmentcode # Import from .augment/rules/*.md
413
480
  npx rulesync import --roo # Import from .roo/instructions.md
414
481
  npx rulesync import --geminicli # Import from GEMINI.md and .gemini/memories/*.md
415
482
  npx rulesync import --junie # Import from .junie/guidelines.md
483
+ npx rulesync import --windsurf # Import from .windsurf/rules/*.md
416
484
 
417
485
  # Import each tool individually
418
486
  npx rulesync import --claudecode
@@ -528,6 +596,7 @@ When `.rulesyncignore` exists, rulesync will:
528
596
  - `.copilotignore` for GitHub Copilot (community tools)
529
597
  - `.aiexclude` for Gemini CLI
530
598
  - `.aiignore` for Kiro IDE
599
+ - `.codeiumignore` for Windsurf
531
600
  - Update `.claude/settings.json` permissions.deny with `Read()` rules for Claude Code
532
601
 
533
602
  ### Frontmatter Schema
@@ -599,6 +668,7 @@ globs: ["**/*.ts", "**/*.tsx"]
599
668
  | **Gemini CLI** | `GEMINI.md` (root)<br>`.gemini/memories/*.md` (non-root) | Plain Markdown | Root goes to GEMINI.md<br>Non-root go to separate memory files<br>GEMINI.md includes `@filename` references |
600
669
  | **JetBrains Junie** | `.junie/guidelines.md` | Plain Markdown | All rules combined into single guidelines file |
601
670
  | **Kiro IDE** | `.kiro/steering/*.md` + `.aiignore` | Plain Markdown + Ignore patterns | Both levels use same format for custom steering docs<br>AI ignore file excludes sensitive patterns |
671
+ | **Windsurf** | `.windsurf/rules/*.md` | Plain Markdown | Both levels use same format with auto-generated memory integration |
602
672
 
603
673
  ## Validation
604
674
 
@@ -629,6 +699,7 @@ rulesync can also manage MCP server configurations for supported AI tools. This
629
699
  - **JetBrains Junie** (`.junie/mcp.json`)
630
700
  - **Kiro IDE** (`.kiro/mcp.json`)
631
701
  - **Roo Code** (`.roo/mcp.json`)
702
+ - **Windsurf** (`.windsurf/mcp.json`)
632
703
 
633
704
  ### MCP Configuration
634
705
 
@@ -698,7 +769,7 @@ MCP configurations are generated alongside rule files:
698
769
  npx rulesync generate
699
770
 
700
771
  # Generate only for specific tools
701
- npx rulesync generate --claudecode --cursor --codexcli --junie --kiro
772
+ npx rulesync generate --claudecode --cursor --codexcli --junie --kiro --windsurf
702
773
 
703
774
  # Generate in specific directories (monorepo)
704
775
  npx rulesync generate --base-dir ./packages/frontend
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  generateAugmentcodeMcp,
3
3
  generateAugmentcodeMcpConfiguration
4
- } from "./chunk-ORNO5MOO.js";
5
- import "./chunk-VI6SBYFB.js";
4
+ } from "./chunk-YTU3SCQO.js";
5
+ import "./chunk-AUUSMVCT.js";
6
6
  export {
7
7
  generateAugmentcodeMcp,
8
8
  generateAugmentcodeMcpConfiguration
@@ -0,0 +1,17 @@
1
+ import {
2
+ generateMcpConfigurationFilesFromRegistry,
3
+ generateMcpFromRegistry
4
+ } from "./chunk-J3TBR5EP.js";
5
+
6
+ // src/generators/mcp/windsurf.ts
7
+ function generateWindsurfMcp(config) {
8
+ return generateMcpFromRegistry("windsurf", config);
9
+ }
10
+ function generateWindsurfMcpConfiguration(mcpServers, baseDir = "") {
11
+ return generateMcpConfigurationFilesFromRegistry("windsurf", mcpServers, baseDir);
12
+ }
13
+
14
+ export {
15
+ generateWindsurfMcp,
16
+ generateWindsurfMcpConfiguration
17
+ };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  generateMcpConfig,
3
3
  generateMcpConfigurationFiles
4
- } from "./chunk-PPAQWVXX.js";
4
+ } from "./chunk-J3TBR5EP.js";
5
5
 
6
6
  // src/generators/mcp/codexcli.ts
7
7
  function generateCodexMcp(config) {
@@ -11,7 +11,8 @@ var ALL_TOOL_TARGETS = [
11
11
  "roo",
12
12
  "geminicli",
13
13
  "kiro",
14
- "junie"
14
+ "junie",
15
+ "windsurf"
15
16
  ];
16
17
  var ToolTargetSchema = z.enum(ALL_TOOL_TARGETS);
17
18
  var ToolTargetsSchema = z.array(ToolTargetSchema);