# Strudel Code Assistant (Gemini CLI Skills)

このプロジェクトは、Gemini CLIの「Skills」機能を活用して、Strudelスクリプトの解説、構文修正、およびリファクタリングを自動化するためのツール群です。

⚠️ **注意**: このリポジトリは公開用です。個人情報や機密情報は絶対にアップロードしないでください。

## ファイル説明
- `/notebook/gemini.md`: コードスタイルや公式URLのリファレンス
- `/notebook/.gemini/reference.md`: gemini.mdから参照する詳細なstrudelの情報
- `/notebook/.gemini/skills/strudel_fix_and_explain.md`: strudelコードの誤りの修正とコードの説明のためのskill
- `/notebook/.gemini/skills/strudel_refactor.md`: strudelコードをより良いコードにするためのskill

## ディレクトリ構成

- `/notebook/strudel/`: 既存のStrudelコード（Markdown形式）
- `/notebook/.gemini/`: Strudelの知識ベース（Markdown形式）
- `/notebook/.gemini/skills/`: Gemini CLI用のスキル定義ファイル（プロンプトエンジニアリング）
- `/notebook/script/`: スキルを実行するための各種シェルスクリプト
- `/notebook/refactoring/`: リファクタリング後のコード出力先（実行時に自動生成）
- `/notebook/explained/`: 解説・修正後のコード出力先（実行時に自動生成）

## 主な機能

1. **コード解説と修正**: `fix_and_explain_strudel.sh` を使用して、コードのバグ修正と詳細な解説を生成します。
2. **リファクタリング**: `refactor_strudel.sh` を使用して、より洗練されたStrudelコードへの書き換えを行います。

## ワークフロー

プロジェクトのルートディレクトリ（`/notebook/`）から、対象に合わせて以下のコマンドを実行します。

### 1. 全ファイルを一括で修正・解説する
`strudel/` フォルダ内のすべての `.md` ファイルを処理します。
```bash
bash script/fix_and_explain_strudel.sh
```

### 2. 特定のファイルにリファクタリングを適用する
個別のファイルを指定して実行することも可能です。
```bash
bash script/refactor_strudel.sh strudel/my-beat.md
```

実行後、結果は `refactoring/` や `explained/` フォルダに自動的に保存されます。