rulesync 0.52.0 → 0.54.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.
- package/README.ja.md +186 -23
- package/README.md +101 -25
- package/dist/{augmentcode-ICLQ2NEZ.js → augmentcode-MJYD2Y4S.js} +2 -2
- package/dist/{chunk-TTHBLXOB.js → chunk-3PHMFVXP.js} +1 -1
- package/dist/{chunk-FFW6TGCM.js → chunk-BEPSWIZC.js} +1 -1
- package/dist/chunk-D7XQ4OHK.js +145 -0
- package/dist/{chunk-OPZOVKIL.js → chunk-ORNO5MOO.js} +1 -1
- package/dist/{chunk-Y2XH4E5R.js → chunk-OXKDEZJK.js} +1 -1
- package/dist/{chunk-FNL2KPM3.js → chunk-OY6BYYIX.js} +1 -1
- package/dist/{chunk-YPIFCGAP.js → chunk-PPAQWVXX.js} +1 -1
- package/dist/{chunk-QUJMXHNR.js → chunk-QVPD6ENS.js} +1 -1
- package/dist/{chunk-Y26DXTAT.js → chunk-TJKD6LEW.js} +1 -1
- package/dist/{chunk-HMMTSS5E.js → chunk-UHANRG2O.js} +1 -1
- package/dist/{chunk-IXCMY24P.js → chunk-UZCJNUXO.js} +1 -1
- package/dist/{chunk-USKQYIZ2.js → chunk-VI6SBYFB.js} +1 -0
- package/dist/{claudecode-4XWK2WAY.js → claudecode-CKGUHLRR.js} +3 -3
- package/dist/{cline-MNXOHP77.js → cline-Z5C656VR.js} +3 -3
- package/dist/codexcli-VFUJKSIJ.js +10 -0
- package/dist/{copilot-ARYIWVJ7.js → copilot-4WQS5TA7.js} +2 -2
- package/dist/{cursor-FCS74IAH.js → cursor-HOB2F2V2.js} +2 -2
- package/dist/{geminicli-VOPV6DXZ.js → geminicli-XTMQTIU2.js} +2 -2
- package/dist/index.cjs +271 -25
- package/dist/index.js +217 -37
- package/dist/{junie-A2Y2WZI4.js → junie-AN6CR7DD.js} +2 -2
- package/dist/{kiro-MHIK4UBV.js → kiro-PTUZOHQ2.js} +2 -2
- package/dist/{roo-VG4IUNTE.js → roo-WOMS36KU.js} +2 -2
- package/package.json +1 -1
package/README.ja.md
CHANGED
|
@@ -15,9 +15,11 @@ rulesyncは以下のAI開発ツールの**生成**と**インポート**の両
|
|
|
15
15
|
- **Cursor Project Rules** (`.cursor/rules/*.mdc` + `.cursorrules`)
|
|
16
16
|
- **Cline Rules** (`.clinerules/*.md` + `.cline/instructions.md`)
|
|
17
17
|
- **Claude Code Memory** (`./CLAUDE.md` + `.claude/memories/*.md`)
|
|
18
|
+
- **OpenAI Codex CLI** (`codex.md` + `.codex/mcp-config.json` + `.codexignore`)
|
|
18
19
|
- **AugmentCode Rules** (`.augment/rules/*.md`)
|
|
19
20
|
- **Roo Code Rules** (`.roo/rules/*.md` + `.roo/instructions.md`)
|
|
20
21
|
- **Gemini CLI** (`GEMINI.md` + `.gemini/memories/*.md`)
|
|
22
|
+
- **JetBrains Junie Guidelines** (`.junie/guidelines.md`)
|
|
21
23
|
- **Kiro IDE カスタムステアリングドキュメント** (`.kiro/steering/*.md`) + **AI除外ファイル** (`.aiignore`)
|
|
22
24
|
|
|
23
25
|
## インストール
|
|
@@ -71,6 +73,7 @@ yarn global add rulesync
|
|
|
71
73
|
npx rulesync import --augmentcode-legacy # .augment-guidelines(レガシー形式)から
|
|
72
74
|
npx rulesync import --roo # .roo/instructions.mdから
|
|
73
75
|
npx rulesync import --geminicli # GEMINI.mdと.gemini/memories/*.mdから
|
|
76
|
+
npx rulesync import --junie # .junie/guidelines.mdから
|
|
74
77
|
```
|
|
75
78
|
|
|
76
79
|
2. **`.rulesync/`ディレクトリのインポートされたルールを確認・編集**
|
|
@@ -96,10 +99,12 @@ AI開発ツールは新しいツールが頻繁に登場し、急速に進化し
|
|
|
96
99
|
- Cursor:リファクタリング
|
|
97
100
|
- Claude Code:アーキテクチャ設計
|
|
98
101
|
- Cline:デバッグ支援
|
|
102
|
+
- OpenAI Codex CLI:GPT-4を活用した開発
|
|
99
103
|
- Gemini CLI:知的コード解析
|
|
104
|
+
- JetBrains Junie:自律的AIコーディング
|
|
100
105
|
|
|
101
106
|
### 🔓 **ベンダーロックインなし**
|
|
102
|
-
ベンダーロックインを完全に回避できます。rulesyncの使用を停止することを決定した場合でも、生成されたルールファイル(`.github/instructions/`、`.cursor/rules/`、`.clinerules/`、`CLAUDE.md`、`GEMINI.md`など)をそのまま使い続けることができます。
|
|
107
|
+
ベンダーロックインを完全に回避できます。rulesyncの使用を停止することを決定した場合でも、生成されたルールファイル(`.github/instructions/`、`.cursor/rules/`、`.clinerules/`、`CLAUDE.md`、`codex.md`、`GEMINI.md`、`.junie/guidelines.md`など)をそのまま使い続けることができます。
|
|
103
108
|
|
|
104
109
|
### 🎯 **ツール間の一貫性**
|
|
105
110
|
すべてのAIツールに一貫したルールを適用し、チーム全体のコード品質と開発体験を向上させます。
|
|
@@ -133,6 +138,59 @@ rulesyncは、Kiro IDEの組み込みプロジェクト管理システムを補
|
|
|
133
138
|
|
|
134
139
|
この責任分担により、rulesyncはKiroのコア機能を複製することなく、その機能を強化します。
|
|
135
140
|
|
|
141
|
+
## OpenAI Codex CLI統合
|
|
142
|
+
|
|
143
|
+
### 階層メモリシステム
|
|
144
|
+
|
|
145
|
+
rulesyncは**OpenAI Codex CLI**の階層メモリシステムをサポートしており、GPT-4を活用した開発ワークフローに持続的なコンテキストとプロジェクト固有のルールを提供します。
|
|
146
|
+
|
|
147
|
+
**主要機能**:
|
|
148
|
+
- **階層インストラクション**: グローバルユーザーインストラクション → プロジェクトレベルインストラクション → ディレクトリ固有インストラクション
|
|
149
|
+
- **MCP統合**: ラッパーサーバーを通じたModel Context Protocolサポートで機能拡張
|
|
150
|
+
- **GPT-4モデル**: GPT-4、GPT-4 Turbo、o1-mini、その他のOpenAIモデルをサポート
|
|
151
|
+
- **プレーンMarkdown形式**: 複雑なフロントマターなしのクリーンで読みやすいインストラクションファイル
|
|
152
|
+
- **コミュニティIgnoreサポート**: 機密ファイルをAIアクセスから除外するオプションの`.codexignore`ファイル
|
|
153
|
+
|
|
154
|
+
### ファイル構造
|
|
155
|
+
|
|
156
|
+
rulesyncはOpenAI Codex CLI用に以下のファイルを生成します:
|
|
157
|
+
|
|
158
|
+
- **`codex.md`**: メインのプロジェクトレベルインストラクション(ルートルールから生成)
|
|
159
|
+
- **`<filename>.md`**: 追加のインストラクションファイル(非ルートルールから生成)
|
|
160
|
+
- **`.codex/mcp-config.json`**: ラッパーサーバー用のMCPサーバー設定
|
|
161
|
+
- **`.codexignore`**: コミュニティツールとプライバシー強化用のオプション除外ファイル
|
|
162
|
+
|
|
163
|
+
### OpenAIモデルでの使用
|
|
164
|
+
|
|
165
|
+
OpenAI Codex CLIは様々なOpenAIモデルで動作します:
|
|
166
|
+
- **GPT-4**: 複雑な推論とアーキテクチャ決定に最適
|
|
167
|
+
- **GPT-4 Turbo**: パフォーマンスとコスト効率を最適化
|
|
168
|
+
- **o1-mini**: コーディングタスクと問題解決に特化
|
|
169
|
+
- **GPT-4o-mini**: 日常的な開発タスクでバランスの取れたパフォーマンス
|
|
170
|
+
|
|
171
|
+
階層メモリシステムにより、すべてのモデルとのやり取りで一貫したコーディング標準とプロジェクトコンテキストが保証されます。
|
|
172
|
+
|
|
173
|
+
### 使用例
|
|
174
|
+
|
|
175
|
+
OpenAI Codex CLI設定ファイルを生成:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# OpenAI Codex CLI専用で生成
|
|
179
|
+
npx rulesync generate --codexcli
|
|
180
|
+
|
|
181
|
+
# ラッパーサーバー用のMCP設定付きで生成
|
|
182
|
+
npx rulesync generate --codexcli --verbose
|
|
183
|
+
|
|
184
|
+
# 特定のディレクトリに生成(monorepoに便利)
|
|
185
|
+
npx rulesync generate --codexcli --base-dir ./packages/frontend
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
これにより以下が作成されます:
|
|
189
|
+
- `codex.md` プロジェクトレベルのインストラクション
|
|
190
|
+
- 特定のルールカテゴリ用の追加`.md`ファイル
|
|
191
|
+
- `.codex/mcp-config.json` MCPラッパーサーバー統合用
|
|
192
|
+
- `.codexignore` プライバシー制御強化用(`.rulesyncignore`が存在する場合)
|
|
193
|
+
|
|
136
194
|
## Claude Code統合
|
|
137
195
|
|
|
138
196
|
### カスタムスラッシュコマンドの作成
|
|
@@ -144,21 +202,19 @@ Claude Codeの組み込み`/init`コマンドを使用する代わりに、rules
|
|
|
144
202
|
**`.claude/commands/init-rulesync.md`**
|
|
145
203
|
|
|
146
204
|
```markdown
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
- セキュリティ要件
|
|
161
|
-
- パフォーマンスの考慮事項
|
|
205
|
+
Analyze this project's codebase and update .rulesync/overview.md files as needed.
|
|
206
|
+
|
|
207
|
+
Please ensure the following frontmatter is defined in .rulesync/overview.md:
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
root: true | false # Required: Rule level (true for overview, false for details)
|
|
211
|
+
targets: ["*"] # Required: Target tools (* = all, or specific tools)
|
|
212
|
+
description: "" # Required: Rule description
|
|
213
|
+
globs: ["**/*"] # Required: File patterns
|
|
214
|
+
cursorRuleType: "always" # Optional: Cursor-specific rule type (always, manual, specificFiles, intelligently)
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
In .rulesync/overview.md, root should be set to true. Please write an appropriate description in the description field.
|
|
162
218
|
```
|
|
163
219
|
|
|
164
220
|
### 統合のメリット
|
|
@@ -217,16 +273,18 @@ npx rulesync generate --copilot
|
|
|
217
273
|
npx rulesync generate --cursor
|
|
218
274
|
npx rulesync generate --cline
|
|
219
275
|
npx rulesync generate --claudecode
|
|
276
|
+
npx rulesync generate --codexcli
|
|
220
277
|
npx rulesync generate --augmentcode
|
|
221
278
|
npx rulesync generate --roo
|
|
222
279
|
npx rulesync generate --geminicli
|
|
280
|
+
npx rulesync generate --junie
|
|
223
281
|
npx rulesync generate --kiro
|
|
224
282
|
|
|
225
283
|
# クリーンビルド(既存ファイルを最初に削除)
|
|
226
284
|
npx rulesync generate --delete
|
|
227
285
|
|
|
228
286
|
# 特定ツール用のクリーンビルド
|
|
229
|
-
npx rulesync generate --copilot --cursor --delete
|
|
287
|
+
npx rulesync generate --copilot --cursor --codexcli --delete
|
|
230
288
|
|
|
231
289
|
# 詳細出力
|
|
232
290
|
npx rulesync generate --verbose
|
|
@@ -242,8 +300,10 @@ npx rulesync generate --base-dir ./apps/web,./apps/api,./packages/shared
|
|
|
242
300
|
|
|
243
301
|
- `--delete`: 新しいファイルを作成する前に既存の生成済みファイルをすべて削除
|
|
244
302
|
- `--verbose`: 生成プロセス中に詳細出力を表示
|
|
245
|
-
- `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--augmentcode`, `--roo`, `--geminicli`, `--kiro`: 指定されたツールのみ生成
|
|
303
|
+
- `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--codexcli`, `--augmentcode`, `--roo`, `--geminicli`, `--junie`, `--kiro`: 指定されたツールのみ生成
|
|
246
304
|
- `--base-dir <paths>`: 指定されたベースディレクトリに設定ファイルを生成(複数パスの場合はカンマ区切り)。異なるプロジェクトディレクトリにツール固有の設定を生成したいmonorepoセットアップに便利。
|
|
305
|
+
- `--config <path>`: 特定の設定ファイルを使用
|
|
306
|
+
- `--no-config`: 設定ファイルの読み込みを無効化
|
|
247
307
|
|
|
248
308
|
### 4. 既存設定のインポート
|
|
249
309
|
|
|
@@ -258,6 +318,7 @@ npx rulesync import --cline # .cline/instructions.mdからインポート
|
|
|
258
318
|
npx rulesync import --augmentcode # .augment/rules/*.mdからインポート
|
|
259
319
|
npx rulesync import --roo # .roo/instructions.mdからインポート
|
|
260
320
|
npx rulesync import --geminicli # GEMINI.mdと.gemini/memories/*.mdからインポート
|
|
321
|
+
npx rulesync import --junie # .junie/guidelines.mdからインポート
|
|
261
322
|
|
|
262
323
|
# 各ツールを個別にインポート
|
|
263
324
|
npx rulesync import --claudecode
|
|
@@ -305,6 +366,100 @@ Cursorからのインポートでは、以下の4つのルールタイプが自
|
|
|
305
366
|
- `.cursor/rules/*.mdc` (モダンな推奨形式)
|
|
306
367
|
- `.cursorrules` (レガシーな形式)
|
|
307
368
|
|
|
369
|
+
### 設定ファイル
|
|
370
|
+
|
|
371
|
+
rulesyncは、繰り返しコマンドライン引数を避けるために設定ファイルをサポートしています。設定は(優先順位順に)以下から読み込まれます:
|
|
372
|
+
|
|
373
|
+
1. `--config`フラグで指定されたパス
|
|
374
|
+
2. `rulesync.jsonc` (コメント付きJSONC形式)
|
|
375
|
+
3. `rulesync.ts` (TypeScript形式)
|
|
376
|
+
4. `rulesync.config.ts`
|
|
377
|
+
5. `rulesync.config.jsonc`
|
|
378
|
+
6. `package.json` (`"rulesync"`フィールド内)
|
|
379
|
+
|
|
380
|
+
#### 設定ファイルの例
|
|
381
|
+
|
|
382
|
+
**JSONC形式 (`rulesync.jsonc`):**
|
|
383
|
+
```jsonc
|
|
384
|
+
{
|
|
385
|
+
// 設定を生成するツールのリスト
|
|
386
|
+
"targets": ["copilot", "cursor", "claudecode", "codexcli"],
|
|
387
|
+
|
|
388
|
+
// 生成から除外するツール(targetsをオーバーライド)
|
|
389
|
+
"exclude": ["roo"],
|
|
390
|
+
|
|
391
|
+
// 特定ツール用のカスタム出力パス
|
|
392
|
+
"outputPaths": {
|
|
393
|
+
"copilot": ".github/copilot-instructions.md"
|
|
394
|
+
},
|
|
395
|
+
|
|
396
|
+
// 生成用のベースディレクトリまたはディレクトリ群
|
|
397
|
+
"baseDir": "./packages",
|
|
398
|
+
|
|
399
|
+
// 生成前に既存ファイルを削除
|
|
400
|
+
"delete": false,
|
|
401
|
+
|
|
402
|
+
// 詳細出力を有効化
|
|
403
|
+
"verbose": true,
|
|
404
|
+
|
|
405
|
+
// ルールファイルを含むディレクトリ
|
|
406
|
+
"aiRulesDir": ".rulesync",
|
|
407
|
+
|
|
408
|
+
// 監視設定
|
|
409
|
+
"watch": {
|
|
410
|
+
"enabled": false,
|
|
411
|
+
"interval": 1000,
|
|
412
|
+
"ignore": ["node_modules/**", ".git/**", "dist/**", "build/**"]
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
**TypeScript形式 (`rulesync.ts`):**
|
|
418
|
+
```typescript
|
|
419
|
+
import type { ConfigOptions } from "rulesync";
|
|
420
|
+
|
|
421
|
+
const config: ConfigOptions = {
|
|
422
|
+
targets: ["copilot", "cursor", "claudecode", "codexcli"],
|
|
423
|
+
exclude: ["roo"],
|
|
424
|
+
outputPaths: {
|
|
425
|
+
copilot: ".github/copilot-instructions.md"
|
|
426
|
+
},
|
|
427
|
+
baseDir: "./packages",
|
|
428
|
+
delete: false,
|
|
429
|
+
verbose: true
|
|
430
|
+
};
|
|
431
|
+
|
|
432
|
+
export default config;
|
|
433
|
+
```
|
|
434
|
+
|
|
435
|
+
#### 設定オプション
|
|
436
|
+
|
|
437
|
+
- `targets`: 設定を生成するツールの配列(デフォルトターゲットをオーバーライド)
|
|
438
|
+
- `exclude`: 生成から除外するツールの配列
|
|
439
|
+
- `outputPaths`: 特定ツール用のカスタム出力パス
|
|
440
|
+
- `baseDir`: 生成用のベースディレクトリまたはディレクトリ配列
|
|
441
|
+
- `delete`: 生成前に既存ファイルを削除(デフォルト: false)
|
|
442
|
+
- `verbose`: 詳細出力を有効化(デフォルト: false)
|
|
443
|
+
- `aiRulesDir`: ルールファイルを含むディレクトリ(デフォルト: ".rulesync")
|
|
444
|
+
- `watch`: `enabled`、`interval`、`ignore`オプション付きの監視設定
|
|
445
|
+
- `enabled`: ファイル監視を有効化(デフォルト: false)
|
|
446
|
+
- `interval`: 監視間隔(ミリ秒、デフォルト: 1000)
|
|
447
|
+
- `ignore`: 監視中に無視するパターンの配列
|
|
448
|
+
|
|
449
|
+
#### 設定の管理
|
|
450
|
+
|
|
451
|
+
```bash
|
|
452
|
+
# 現在の設定を表示
|
|
453
|
+
npx rulesync config
|
|
454
|
+
|
|
455
|
+
# 設定ファイルを初期化
|
|
456
|
+
npx rulesync config --init
|
|
457
|
+
|
|
458
|
+
# 特定の形式で初期化
|
|
459
|
+
npx rulesync config --init --format jsonc # デフォルト、コメントをサポート
|
|
460
|
+
npx rulesync config --init --format ts # 型安全性を持つTypeScript
|
|
461
|
+
```
|
|
462
|
+
|
|
308
463
|
### 5. その他のコマンド
|
|
309
464
|
|
|
310
465
|
```bash
|
|
@@ -327,6 +482,10 @@ npx rulesync watch
|
|
|
327
482
|
|
|
328
483
|
# 生成されたファイルを.gitignoreに追加
|
|
329
484
|
npx rulesync gitignore
|
|
485
|
+
|
|
486
|
+
# 設定を表示または管理
|
|
487
|
+
npx rulesync config
|
|
488
|
+
npx rulesync config --init # 設定ファイルを作成
|
|
330
489
|
```
|
|
331
490
|
|
|
332
491
|
## 設定ファイル構造
|
|
@@ -378,7 +537,7 @@ draft-*.md
|
|
|
378
537
|
root: true | false # 必須: ルールレベル (概要の場合true、詳細の場合false)
|
|
379
538
|
targets: ["*"] # 必須: ターゲットツール (* = すべて、または特定のツール)
|
|
380
539
|
description: "簡潔な説明" # 必須: ルールの説明
|
|
381
|
-
globs: "
|
|
540
|
+
globs: ["**/*"] # 必須: ファイルパターン (配列形式)
|
|
382
541
|
cursorRuleType: "always" # オプション: Cursor固有のルールタイプ (always, manual, specificFiles, intelligently)
|
|
383
542
|
---
|
|
384
543
|
```
|
|
@@ -400,7 +559,7 @@ Cursorツール用の追加メタデータフィールド:
|
|
|
400
559
|
root: true
|
|
401
560
|
targets: ["*"]
|
|
402
561
|
description: "プロジェクト概要と開発思想"
|
|
403
|
-
globs: "src/**/*.ts"
|
|
562
|
+
globs: ["src/**/*.ts"]
|
|
404
563
|
---
|
|
405
564
|
|
|
406
565
|
# プロジェクト開発ガイドライン
|
|
@@ -414,7 +573,7 @@ globs: "src/**/*.ts"
|
|
|
414
573
|
root: false
|
|
415
574
|
targets: ["copilot", "cursor", "roo"]
|
|
416
575
|
description: "TypeScriptコーディング標準"
|
|
417
|
-
globs: "**/*.ts
|
|
576
|
+
globs: ["**/*.ts", "**/*.tsx"]
|
|
418
577
|
---
|
|
419
578
|
|
|
420
579
|
# TypeScriptコーディングルール
|
|
@@ -432,9 +591,11 @@ globs: "**/*.ts,**/*.tsx"
|
|
|
432
591
|
| **Cursor** | `.cursor/rules/*.mdc` | MDC (YAMLヘッダー + Markdown) | ルート: `cursorRuleType: always`<br>非ルート: `cursorRuleType: specificFiles` (globs指定時)<br>非ルート: `cursorRuleType: intelligently` (description指定時)<br>非ルート: `cursorRuleType: manual` (デフォルト) |
|
|
433
592
|
| **Cline** | `.clinerules/*.md` | プレーンMarkdown | 両レベルとも同じフォーマットを使用 |
|
|
434
593
|
| **Claude Code** | `./CLAUDE.md` (ルート)<br>`.claude/memories/*.md` (非ルート) | プレーンMarkdown | ルートはCLAUDE.mdに移動<br>非ルートは別メモリファイルに移動<br>CLAUDE.mdは`@filename`参照を含む |
|
|
594
|
+
| **OpenAI Codex CLI** | `codex.md` (ルート)<br>`<filename>.md` (非ルート) | プレーンMarkdown | ルートはcodex.mdに移動<br>非ルートは別インストラクションファイルに移動<br>階層メモリシステム |
|
|
435
595
|
| **AugmentCode** | `.augment/rules/*.md` | YAMLフロントマター + Markdown | ルート: `type: always`<br>非ルート: `type: auto` (description指定時) または `type: manual` (デフォルト) |
|
|
436
596
|
| **Roo Code** | `.roo/rules/*.md` | プレーンMarkdown | 両レベルとも説明ヘッダー付きの同じフォーマットを使用 |
|
|
437
|
-
| **Gemini CLI** | `GEMINI.md` (ルート)<br>`.gemini/memories/*.md` (非ルート) | プレーンMarkdown | ルートはGEMINI.mdに移動<br>非ルートは別メモリファイルに移動<br>GEMINI.mdは`@filename`参照を含む
|
|
597
|
+
| **Gemini CLI** | `GEMINI.md` (ルート)<br>`.gemini/memories/*.md` (非ルート) | プレーンMarkdown | ルートはGEMINI.mdに移動<br>非ルートは別メモリファイルに移動<br>GEMINI.mdは`@filename`参照を含む |
|
|
598
|
+
| **JetBrains Junie** | `.junie/guidelines.md` | プレーンMarkdown | すべてのルールを単一のガイドラインファイルに統合 |
|
|
438
599
|
| **Kiro IDE** | `.kiro/steering/*.md` + `.aiignore` | プレーンMarkdown + 除外パターン | カスタムステアリングドキュメントで両レベルとも同じフォーマット使用<br>AI除外ファイルで機密パターンを除外 |
|
|
439
600
|
|
|
440
601
|
## バリデーション
|
|
@@ -461,7 +622,9 @@ rulesyncは、対応するAIツール用のMCPサーバー設定も管理でき
|
|
|
461
622
|
- **GitHub Copilot** (`.vscode/mcp.json`)
|
|
462
623
|
- **Cursor** (`.cursor/mcp.json`)
|
|
463
624
|
- **Cline** (`.cline/mcp.json`)
|
|
625
|
+
- **OpenAI Codex CLI** (`.codex/mcp-config.json`)
|
|
464
626
|
- **Gemini CLI** (`.gemini/settings.json`)
|
|
627
|
+
- **JetBrains Junie** (`.junie/mcp.json`)
|
|
465
628
|
- **Kiro IDE** (`.kiro/mcp.json`)
|
|
466
629
|
- **Roo Code** (`.roo/mcp.json`)
|
|
467
630
|
|
|
@@ -533,7 +696,7 @@ MCP設定はルールファイルと一緒に生成されます:
|
|
|
533
696
|
npx rulesync generate
|
|
534
697
|
|
|
535
698
|
# 特定のツールのみ生成
|
|
536
|
-
npx rulesync generate --claudecode --cursor --kiro
|
|
699
|
+
npx rulesync generate --claudecode --cursor --codexcli --junie --kiro
|
|
537
700
|
|
|
538
701
|
# 特定のディレクトリに生成(monorepo)
|
|
539
702
|
npx rulesync generate --base-dir ./packages/frontend
|
package/README.md
CHANGED
|
@@ -15,9 +15,11 @@ rulesync supports both **generation** and **import** for the following AI develo
|
|
|
15
15
|
- **Cursor Project Rules** (`.cursor/rules/*.mdc` + `.cursorrules`)
|
|
16
16
|
- **Cline Rules** (`.clinerules/*.md` + `.cline/instructions.md`)
|
|
17
17
|
- **Claude Code Memory** (`./CLAUDE.md` + `.claude/memories/*.md`)
|
|
18
|
+
- **OpenAI Codex CLI** (`codex.md` + `.codex/mcp-config.json` + `.codexignore`)
|
|
18
19
|
- **AugmentCode Rules** (`.augment/rules/*.md`)
|
|
19
20
|
- **Roo Code Rules** (`.roo/rules/*.md` + `.roo/instructions.md`)
|
|
20
21
|
- **Gemini CLI** (`GEMINI.md` + `.gemini/memories/*.md`)
|
|
22
|
+
- **JetBrains Junie Guidelines** (`.junie/guidelines.md`)
|
|
21
23
|
- **Kiro IDE Custom Steering Documents** (`.kiro/steering/*.md`) + **AI Ignore Files** (`.aiignore`)
|
|
22
24
|
|
|
23
25
|
## Installation
|
|
@@ -71,6 +73,7 @@ If you already have AI tool configurations, you can import them into rulesync fo
|
|
|
71
73
|
npx rulesync import --augmentcode-legacy # From .augment-guidelines (legacy format)
|
|
72
74
|
npx rulesync import --roo # From .roo/instructions.md
|
|
73
75
|
npx rulesync import --geminicli # From GEMINI.md and .gemini/memories/*.md
|
|
76
|
+
npx rulesync import --junie # From .junie/guidelines.md
|
|
74
77
|
```
|
|
75
78
|
|
|
76
79
|
2. **Review and edit** the imported rules in `.rulesync/` directory
|
|
@@ -96,10 +99,12 @@ Enable hybrid development workflows combining multiple AI tools:
|
|
|
96
99
|
- Cursor for refactoring
|
|
97
100
|
- Claude Code for architecture design
|
|
98
101
|
- Cline for debugging assistance
|
|
102
|
+
- OpenAI Codex CLI for GPT-4 powered development
|
|
99
103
|
- Gemini CLI for intelligent code analysis
|
|
104
|
+
- JetBrains Junie for autonomous AI coding
|
|
100
105
|
|
|
101
106
|
### 🔓 **No Vendor Lock-in**
|
|
102
|
-
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`, `GEMINI.md`, etc.) as-is.
|
|
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.
|
|
103
108
|
|
|
104
109
|
### 🎯 **Consistency Across Tools**
|
|
105
110
|
Apply consistent rules across all AI tools, improving code quality and development experience for the entire team.
|
|
@@ -133,6 +138,59 @@ rulesync supports **Custom Steering Documents** and **AI Ignore Files** for Kiro
|
|
|
133
138
|
|
|
134
139
|
This division of responsibility ensures that rulesync enhances Kiro's capabilities without duplicating its core functionality.
|
|
135
140
|
|
|
141
|
+
## OpenAI Codex CLI Integration
|
|
142
|
+
|
|
143
|
+
### Hierarchical Memory System
|
|
144
|
+
|
|
145
|
+
rulesync supports **OpenAI Codex CLI**'s hierarchical memory system, which provides persistent context and project-specific rules to GPT-4 powered development workflows.
|
|
146
|
+
|
|
147
|
+
**Key Features**:
|
|
148
|
+
- **Hierarchical Instructions**: Global user instructions → Project-level instructions → Directory-specific instructions
|
|
149
|
+
- **MCP Integration**: Model Context Protocol support through wrapper servers for extended functionality
|
|
150
|
+
- **GPT-4 Models**: Support for GPT-4, GPT-4 Turbo, o1-mini, and other OpenAI models
|
|
151
|
+
- **Plain Markdown Format**: Clean, readable instruction files without complex frontmatter
|
|
152
|
+
- **Community Ignore Support**: Optional `.codexignore` file for excluding sensitive files from AI access
|
|
153
|
+
|
|
154
|
+
### File Structure
|
|
155
|
+
|
|
156
|
+
rulesync generates the following files for OpenAI Codex CLI:
|
|
157
|
+
|
|
158
|
+
- **`codex.md`**: Main project-level instructions (generated from root rules)
|
|
159
|
+
- **`<filename>.md`**: Additional instruction files (generated from non-root rules)
|
|
160
|
+
- **`.codex/mcp-config.json`**: MCP server configuration for wrapper servers
|
|
161
|
+
- **`.codexignore`**: Optional ignore file for community tools and enhanced privacy
|
|
162
|
+
|
|
163
|
+
### Usage with OpenAI Models
|
|
164
|
+
|
|
165
|
+
OpenAI Codex CLI works with various OpenAI models:
|
|
166
|
+
- **GPT-4**: Best for complex reasoning and architecture decisions
|
|
167
|
+
- **GPT-4 Turbo**: Optimized for performance and cost efficiency
|
|
168
|
+
- **o1-mini**: Specialized for coding tasks and problem-solving
|
|
169
|
+
- **GPT-4o-mini**: Balanced performance for everyday development tasks
|
|
170
|
+
|
|
171
|
+
The hierarchical memory system ensures consistent coding standards and project context across all model interactions.
|
|
172
|
+
|
|
173
|
+
### Example Usage
|
|
174
|
+
|
|
175
|
+
Generate OpenAI Codex CLI configuration files:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# Generate only for OpenAI Codex CLI
|
|
179
|
+
npx rulesync generate --codexcli
|
|
180
|
+
|
|
181
|
+
# Generate with MCP configuration for wrapper servers
|
|
182
|
+
npx rulesync generate --codexcli --verbose
|
|
183
|
+
|
|
184
|
+
# Generate in specific directory (useful for monorepos)
|
|
185
|
+
npx rulesync generate --codexcli --base-dir ./packages/frontend
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
This will create:
|
|
189
|
+
- `codex.md` with your project-level instructions
|
|
190
|
+
- Additional `.md` files for specific rule categories
|
|
191
|
+
- `.codex/mcp-config.json` for MCP wrapper server integration
|
|
192
|
+
- `.codexignore` for enhanced privacy control (if `.rulesyncignore` exists)
|
|
193
|
+
|
|
136
194
|
## Claude Code Integration
|
|
137
195
|
|
|
138
196
|
### Creating Custom Slash Commands
|
|
@@ -144,21 +202,19 @@ Refer to the [Claude Code slash commands documentation](https://docs.anthropic.c
|
|
|
144
202
|
**`.claude/commands/init-rulesync.md`**
|
|
145
203
|
|
|
146
204
|
```markdown
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
- Security requirements
|
|
161
|
-
- Performance considerations
|
|
205
|
+
Analyze this project's codebase and update .rulesync/overview.md files as needed.
|
|
206
|
+
|
|
207
|
+
Please ensure the following frontmatter is defined in .rulesync/overview.md:
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
root: true | false # Required: Rule level (true for overview, false for details)
|
|
211
|
+
targets: ["*"] # Required: Target tools (* = all, or specific tools)
|
|
212
|
+
description: "" # Required: Rule description
|
|
213
|
+
globs: ["**/*"] # Required: File patterns
|
|
214
|
+
cursorRuleType: "always" # Optional: Cursor-specific rule type (always, manual, specificFiles, intelligently)
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
In .rulesync/overview.md, root should be set to true. Please write an appropriate description in the description field.
|
|
162
218
|
```
|
|
163
219
|
|
|
164
220
|
### Integration Benefits
|
|
@@ -217,16 +273,18 @@ npx rulesync generate --copilot
|
|
|
217
273
|
npx rulesync generate --cursor
|
|
218
274
|
npx rulesync generate --cline
|
|
219
275
|
npx rulesync generate --claudecode
|
|
276
|
+
npx rulesync generate --codexcli
|
|
220
277
|
npx rulesync generate --augmentcode
|
|
221
278
|
npx rulesync generate --roo
|
|
222
279
|
npx rulesync generate --geminicli
|
|
280
|
+
npx rulesync generate --junie
|
|
223
281
|
npx rulesync generate --kiro
|
|
224
282
|
|
|
225
283
|
# Clean build (delete existing files first)
|
|
226
284
|
npx rulesync generate --delete
|
|
227
285
|
|
|
228
286
|
# Clean build for specific tools
|
|
229
|
-
npx rulesync generate --copilot --cursor --delete
|
|
287
|
+
npx rulesync generate --copilot --cursor --codexcli --delete
|
|
230
288
|
|
|
231
289
|
# Verbose output
|
|
232
290
|
npx rulesync generate --verbose
|
|
@@ -242,7 +300,7 @@ npx rulesync generate --base-dir ./apps/web,./apps/api,./packages/shared
|
|
|
242
300
|
|
|
243
301
|
- `--delete`: Remove all existing generated files before creating new ones
|
|
244
302
|
- `--verbose`: Show detailed output during generation process
|
|
245
|
-
- `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--augmentcode`, `--roo`, `--geminicli`, `--kiro`: Generate only for specified tools
|
|
303
|
+
- `--copilot`, `--cursor`, `--cline`, `--claudecode`, `--codexcli`, `--augmentcode`, `--roo`, `--geminicli`, `--junie`, `--kiro`: Generate only for specified tools
|
|
246
304
|
- `--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.
|
|
247
305
|
- `--config <path>`: Use a specific configuration file
|
|
248
306
|
- `--no-config`: Disable configuration file loading
|
|
@@ -264,7 +322,7 @@ rulesync supports configuration files to avoid repetitive command-line arguments
|
|
|
264
322
|
```jsonc
|
|
265
323
|
{
|
|
266
324
|
// List of tools to generate configurations for
|
|
267
|
-
"targets": ["copilot", "cursor", "claudecode"],
|
|
325
|
+
"targets": ["copilot", "cursor", "claudecode", "codexcli"],
|
|
268
326
|
|
|
269
327
|
// Tools to exclude from generation (overrides targets)
|
|
270
328
|
"exclude": ["roo"],
|
|
@@ -281,7 +339,17 @@ rulesync supports configuration files to avoid repetitive command-line arguments
|
|
|
281
339
|
"delete": false,
|
|
282
340
|
|
|
283
341
|
// Enable verbose output
|
|
284
|
-
"verbose": true
|
|
342
|
+
"verbose": true,
|
|
343
|
+
|
|
344
|
+
// Directory containing rule files
|
|
345
|
+
"aiRulesDir": ".rulesync",
|
|
346
|
+
|
|
347
|
+
// Watch configuration
|
|
348
|
+
"watch": {
|
|
349
|
+
"enabled": false,
|
|
350
|
+
"interval": 1000,
|
|
351
|
+
"ignore": ["node_modules/**", ".git/**", "dist/**", "build/**"]
|
|
352
|
+
}
|
|
285
353
|
}
|
|
286
354
|
```
|
|
287
355
|
|
|
@@ -290,7 +358,7 @@ rulesync supports configuration files to avoid repetitive command-line arguments
|
|
|
290
358
|
import type { ConfigOptions } from "rulesync";
|
|
291
359
|
|
|
292
360
|
const config: ConfigOptions = {
|
|
293
|
-
targets: ["copilot", "cursor", "claudecode"],
|
|
361
|
+
targets: ["copilot", "cursor", "claudecode", "codexcli"],
|
|
294
362
|
exclude: ["roo"],
|
|
295
363
|
outputPaths: {
|
|
296
364
|
copilot: ".github/copilot-instructions.md"
|
|
@@ -313,6 +381,9 @@ export default config;
|
|
|
313
381
|
- `verbose`: Enable verbose output (default: false)
|
|
314
382
|
- `aiRulesDir`: Directory containing rule files (default: ".rulesync")
|
|
315
383
|
- `watch`: Watch configuration with `enabled`, `interval`, and `ignore` options
|
|
384
|
+
- `enabled`: Enable file watching (default: false)
|
|
385
|
+
- `interval`: Watch interval in milliseconds (default: 1000)
|
|
386
|
+
- `ignore`: Array of patterns to ignore during watching
|
|
316
387
|
|
|
317
388
|
#### Managing Configuration
|
|
318
389
|
|
|
@@ -341,6 +412,7 @@ npx rulesync import --cline # Import from .cline/instructions.md
|
|
|
341
412
|
npx rulesync import --augmentcode # Import from .augment/rules/*.md
|
|
342
413
|
npx rulesync import --roo # Import from .roo/instructions.md
|
|
343
414
|
npx rulesync import --geminicli # Import from GEMINI.md and .gemini/memories/*.md
|
|
415
|
+
npx rulesync import --junie # Import from .junie/guidelines.md
|
|
344
416
|
|
|
345
417
|
# Import each tool individually
|
|
346
418
|
npx rulesync import --claudecode
|
|
@@ -467,7 +539,7 @@ Each rule file must include frontmatter with the following fields:
|
|
|
467
539
|
root: true | false # Required: Rule level (true for overview, false for details)
|
|
468
540
|
targets: ["*"] # Required: Target tools (* = all, or specific tools)
|
|
469
541
|
description: "Brief description" # Required: Rule description
|
|
470
|
-
globs: "
|
|
542
|
+
globs: ["**/*"] # Required: File patterns (array format)
|
|
471
543
|
cursorRuleType: "always" # Optional: Cursor-specific rule type (always, manual, specificFiles, intelligently)
|
|
472
544
|
---
|
|
473
545
|
```
|
|
@@ -489,7 +561,7 @@ Additional metadata field for Cursor tool:
|
|
|
489
561
|
root: true
|
|
490
562
|
targets: ["*"]
|
|
491
563
|
description: "Project overview and development philosophy"
|
|
492
|
-
globs: "src/**/*.ts"
|
|
564
|
+
globs: ["src/**/*.ts"]
|
|
493
565
|
---
|
|
494
566
|
|
|
495
567
|
# Project Development Guidelines
|
|
@@ -503,7 +575,7 @@ This project follows TypeScript-first development with clean architecture princi
|
|
|
503
575
|
root: false
|
|
504
576
|
targets: ["copilot", "cursor", "roo"]
|
|
505
577
|
description: "TypeScript coding standards"
|
|
506
|
-
globs: "**/*.ts
|
|
578
|
+
globs: ["**/*.ts", "**/*.tsx"]
|
|
507
579
|
---
|
|
508
580
|
|
|
509
581
|
# TypeScript Coding Rules
|
|
@@ -521,9 +593,11 @@ globs: "**/*.ts,**/*.tsx"
|
|
|
521
593
|
| **Cursor** | `.cursor/rules/*.mdc` | MDC (YAML header + Markdown) | Root: `cursorRuleType: always`<br>Non-root: `cursorRuleType: specificFiles` (with globs)<br>Non-root: `cursorRuleType: intelligently` (with description)<br>Non-root: `cursorRuleType: manual` (default) |
|
|
522
594
|
| **Cline** | `.clinerules/*.md` | Plain Markdown | Both levels use same format |
|
|
523
595
|
| **Claude Code** | `./CLAUDE.md` (root)<br>`.claude/memories/*.md` (non-root) | Plain Markdown | Root goes to CLAUDE.md<br>Non-root go to separate memory files<br>CLAUDE.md includes `@filename` references |
|
|
596
|
+
| **OpenAI Codex CLI** | `codex.md` (root)<br>`<filename>.md` (non-root) | Plain Markdown | Root goes to codex.md<br>Non-root go to separate instruction files<br>Hierarchical memory system |
|
|
524
597
|
| **AugmentCode** | `.augment/rules/*.md` | Markdown with YAML frontmatter | Root: `type: always`<br>Non-root: `type: auto` (with description) or `type: manual` (default) |
|
|
525
598
|
| **Roo Code** | `.roo/rules/*.md` | Plain Markdown | Both levels use same format with description header |
|
|
526
599
|
| **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
|
+
| **JetBrains Junie** | `.junie/guidelines.md` | Plain Markdown | All rules combined into single guidelines file |
|
|
527
601
|
| **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 |
|
|
528
602
|
|
|
529
603
|
## Validation
|
|
@@ -550,7 +624,9 @@ rulesync can also manage MCP server configurations for supported AI tools. This
|
|
|
550
624
|
- **GitHub Copilot** (`.vscode/mcp.json`)
|
|
551
625
|
- **Cursor** (`.cursor/mcp.json`)
|
|
552
626
|
- **Cline** (`.cline/mcp.json`)
|
|
627
|
+
- **OpenAI Codex CLI** (`.codex/mcp-config.json`)
|
|
553
628
|
- **Gemini CLI** (`.gemini/settings.json`)
|
|
629
|
+
- **JetBrains Junie** (`.junie/mcp.json`)
|
|
554
630
|
- **Kiro IDE** (`.kiro/mcp.json`)
|
|
555
631
|
- **Roo Code** (`.roo/mcp.json`)
|
|
556
632
|
|
|
@@ -622,7 +698,7 @@ MCP configurations are generated alongside rule files:
|
|
|
622
698
|
npx rulesync generate
|
|
623
699
|
|
|
624
700
|
# Generate only for specific tools
|
|
625
|
-
npx rulesync generate --claudecode --cursor --kiro
|
|
701
|
+
npx rulesync generate --claudecode --cursor --codexcli --junie --kiro
|
|
626
702
|
|
|
627
703
|
# Generate in specific directories (monorepo)
|
|
628
704
|
npx rulesync generate --base-dir ./packages/frontend
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
generateAugmentcodeMcp,
|
|
3
3
|
generateAugmentcodeMcpConfiguration
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-ORNO5MOO.js";
|
|
5
|
+
import "./chunk-VI6SBYFB.js";
|
|
6
6
|
export {
|
|
7
7
|
generateAugmentcodeMcp,
|
|
8
8
|
generateAugmentcodeMcpConfiguration
|