gwm 0.3.2

Git Worktree Manager - A CLI tool for managing Git worktrees with an interactive TUI
Documentation
# CLAUDE.md (gwm-rust)

Rust版gwmの開発ガイドライン。

## 必須要件

- **Rust**: 1.74以上

---

## 開発コマンド

```bash
cargo build            # ビルド
cargo test             # テスト
cargo clippy           # リント
cargo fmt              # フォーマット
make check             # CI相当のチェック
```

## ローカル検証

```bash
cargo build
./target/debug/gwm {command}
```

---

## ディレクトリ構成

```
src/
├── main.rs        # エントリポイント
├── cli/           # CLIコマンド定義
├── config/        # 設定管理
├── git/           # Git操作
├── ui/            # TUIコンポーネント
├── hooks/         # フック実行
└── trust/         # 信頼検証
```

---

## 開発ルール

### DO(必須)

- **テストを書く**: 新機能・バグ修正には必ずテストを追加
- **動作確認**: コード変更後はローカルで動作確認
- **UX優先**: ユーザー体験を最優先に設計
- **エラーメッセージ**: 具体的で対処法がわかるメッセージ
- **既存パターン踏襲**: プロジェクト内の既存コードスタイルに従う

### DON'T(禁止)

- **未読のコード変更禁止**: 読んでいないファイルを変更しない
- **過剰な抽象化禁止**: 必要最小限の実装に留める
- **機密情報禁止**: `.env`や認証情報をコミットしない
- **破壊的変更禁止**: 既存のCLIインターフェースを壊さない

---

## コーディング規約

- `cargo clippy`の警告をすべて解消
- `cargo fmt`でフォーマット
- `unwrap()`は避け、適切なエラーハンドリング
- `unsafe`は使用禁止
- `thiserror`/`anyhow`でエラーハンドリング

---

## テスト

```bash
cargo test                 # 全テスト
cargo test git::           # 特定モジュール
cargo test -- --nocapture  # 出力表示
```

---

## トラブルシューティング

| 問題               | 解決策                            |
| ------------------ | --------------------------------- |
| ビルドエラー       | `cargo clean && cargo build`      |
| クリップボード警告 | `cargo clippy --fix`              |
| TUI表示崩れ        | `crossterm`のターミナル互換性確認 |

---

## TypeScript版との整合性

1. **機能パリティ**: TypeScript版の機能をRust版にも実装
2. **CLI統一**: コマンド名・オプションは両実装で同一
3. **設定互換**: 同じ`config.toml`形式を使用