Files
claude/docs/guides/custom-commands.md
2025-07-05 13:48:50 +09:00

141 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Claude Code カスタムコマンドガイド
## 概要
Claude Codeでは、プロジェクト固有またはユーザー固有のカスタムスラッシュコマンドを作成できます。
## カスタムコマンドの種類
### 1. プロジェクトコマンド
- 場所: `.claude/commands/`
- プレフィックス: `/project:`
- スコープ: 現在のプロジェクト内
### 2. ユーザーコマンド
- 場所: `~/.claude/commands/`
- プレフィックス: `/user:`
- スコープ: すべてのプロジェクト
## 作成したカスタムコマンド
### 基本ヘルプ
```
/project:help
```
Claude Codeの拡張ヘルプを表示します。
### カテゴリ別ヘルプ
```
/project:help/shortcuts # ショートカットキー詳細
/project:help/quickref # クイックリファレンス
/project:help/safety # 安全利用ガイド
```
## カスタムコマンドの作成方法
### 基本構造
```markdown
---
name: コマンド名
description: コマンドの説明
bash: 実行前のbashコマンドオプション
---
# コマンドの内容
ここにMarkdown形式でコマンドの内容を記述
```
### 例: 新しいコマンドの作成
```bash
# プロジェクトコマンドとして作成
mkdir -p .claude/commands
echo "プロジェクト固有の情報" > .claude/commands/project-info.md
# ユーザーコマンドとして作成
mkdir -p ~/.claude/commands
echo "個人的なスニペット" > ~/.claude/commands/snippets.md
```
## 高度な機能
### 1. 引数の使用
```markdown
---
name: search
description: コードベースを検索
---
$ARGUMENTSを検索します。
```
使用例: `/project:search TODO`
### 2. bashコマンドの実行
```markdown
---
bash: date +"%Y-%m-%d %H:%M:%S"
---
現在時刻: $BASH_OUTPUT
```
### 3. ファイル参照
```markdown
---
name: readme
---
@README.md
上記はプロジェクトのREADMEです。
```
### 4. ネストされたコマンド
```
.claude/commands/
├── help.md # /project:help
├── help/
│ ├── shortcuts.md # /project:help/shortcuts
│ └── safety.md # /project:help/safety
```
## 使用上のヒント
1. **命名規則**
- わかりやすい名前を使用
- ハイフンまたはアンダースコアで単語を区切る
- 短く覚えやすい名前を選ぶ
2. **説明の重要性**
- `description`フィールドは必ず記入
- コマンドの目的を明確に
3. **保守性**
- 定期的に使わないコマンドは削除
- 類似コマンドは統合を検討
## トラブルシューティング
### コマンドが表示されない
- ファイルが`.md`拡張子であることを確認
- 正しいディレクトリに配置されているか確認
- YAMLフロントマターの構文を確認
### bashコマンドが実行されない
- `bash:`フィールドの構文を確認
- コマンドの実行権限を確認
## 今後の拡張案
1. **チームでの共有**
- `.claude/commands/`をGitで管理
- チーム共通のコマンドセットを作成
2. **テンプレート化**
- よく使うパターンをテンプレート化
- プロジェクトタイプ別のコマンドセット
3. **自動化**
- プロジェクト初期化時にコマンドを自動生成
- 使用頻度に基づく最適化