Claude Max 6 / Claude Code: Best practices for agentic coding 2

Claude Codeを使った開発の効率を上げる準備です。(2025.09.25)

Claude Code: Best practices for agentic coding

上記の公式HPから日本語にして抜粋するだけです。

2. Give Claude more tools

Claudeにもっと道具を与えろ

shellも使える。MCPも使える。REST APIも使える。

MCPを介してClaude Codeをツールに接続する

自分の興味 : Asana, Atlassian, Notion, Box, Figma, Canva

2-1. Use Claude with bash tools

Claudeをbashと一緒に使え

2-2. Use Claude with MCP

ClaudeをMCPと一緒に使え

2-3. Use custom slash commands

slash commandsについて理解を深めるために、具体的な例をClaude Opus 4.1に提示してもらいます。

指示内容 : claude codeのcustom slash commandsについて、簡単な例を用いて説明してください。徐々に中級レベルの説明にしていってください。markdown形式で日本語で出力してください。

英語で指示 : Explain custom slash commands in your claude code with simple examples, gradually moving to intermediate level explanations. Output in markdown format in Japanese.

claude-code-slash-commands-guide.md

# Claude Code カスタムスラッシュコマンド ガイド

## はじめに

カスタムスラッシュコマンドは、よく使うプロンプトを再利用可能なコマンドとして保存する機能です。`/` に続けてコマンド名を入力するだけで、定義済みのプロンプトを呼び出せます。

---

## レベル 1:基本 — 最初のコマンドを作る

### コマンドの保存場所

| 種類 | ディレクトリ | 用途 |
|---|---|---|
| **プロジェクト用** | `.claude/commands/` | チームで共有するコマンド(Git管理可能) |
| **ユーザー用** | `~/.claude/commands/` | 全プロジェクト共通の個人コマンド |

### 仕組み

1. 上記ディレクトリに `.md` ファイルを作成する
2. ファイル名がコマンド名になる(拡張子は除く)
3. ファイルの中身がプロンプトとして実行される

### 例 1:挨拶コマンド

```
# ファイルを作成
.claude/commands/hello.md
```

`hello.md` の内容:

```markdown
このプロジェクトの概要を簡潔に説明してください。
```

使い方:

```
> /hello
```

これだけで、Claude が「このプロジェクトの概要を簡潔に説明してください。」というプロンプトを受け取り、実行します。

### 例 2:テスト実行コマンド

`.claude/commands/test.md`:

```markdown
すべてのテストを実行し、失敗したテストがあれば原因を分析して修正案を提示してください。
```

使い方:

```
> /test
```

---

## レベル 2:引数を使う — `$ARGUMENTS`

### `$ARGUMENTS` とは

コマンド実行時にスラッシュコマンドの後ろに付けたテキストが `$ARGUMENTS` に代入されます。これにより、コマンドを汎用的に使えます。

### 例 3:コードレビューコマンド

`.claude/commands/review.md`:

```markdown
以下のファイルをレビューしてください:

$ARGUMENTS

確認観点:
- バグの可能性
- パフォーマンスの問題
- 命名規則の一貫性
```

使い方:

```
> /review src/api/auth.ts
```

Claude が受け取るプロンプト:

```
以下のファイルをレビューしてください:

src/api/auth.ts

確認観点:
- バグの可能性
- パフォーマンスの問題
- 命名規則の一貫性
```

### 例 4:コミットメッセージ作成

`.claude/commands/cm.md`:

```markdown
ステージ済みの変更を確認し、以下の形式でコミットメッセージを作成してください:

種別: $ARGUMENTS

形式:
<種別>: <簡潔な説明>

<詳細な変更内容>
```

使い方:

```
> /cm feat
> /cm fix
> /cm refactor
```

---

## レベル 3:ファイル参照と組み合わせる

### `#` によるファイル参照

コマンド定義内で `#` を使ってファイルを参照できます。これにより、特定のファイルのコンテキストを常に含めることができます。

### 例 5:スタイルガイドに沿ったレビュー

`.claude/commands/style-check.md`:

```markdown
#.eslintrc.json と #CLAUDE.md に記載されたルールに基づいて、
以下のファイルがプロジェクトのスタイルガイドに準拠しているか確認してください:

$ARGUMENTS

違反があれば修正してください。
```

使い方:

```
> /style-check src/components/Button.tsx
```

Claude は `.eslintrc.json`、`CLAUDE.md`、および `src/components/Button.tsx` の内容をすべて参照して作業します。

### 例 6:新機能の実装テンプレート

`.claude/commands/new-feature.md`:

```markdown
#src/routes/users.ts を参考パターンとして、以下の新しいリソースの
APIルートファイルを作成してください:

リソース名: $ARGUMENTS

要件:
- CRUD 操作(GET, POST, PUT, DELETE)
- #src/middleware/auth.ts の認証ミドルウェアを適用
- #src/types/index.ts に型定義を追加
- バリデーション付き
```

使い方:

```
> /new-feature products
```

---

## レベル 4:サブディレクトリで整理する

### コマンドのグループ化

コマンドが増えてきたら、サブディレクトリで整理できます。ディレクトリ名がプレフィックスになります。

### ディレクトリ構成例

```
.claude/commands/
├── review.md            → /review
├── test.md              → /test
├── db/
│   ├── migrate.md       → /db:migrate
│   ├── seed.md          → /db:seed
│   └── reset.md         → /db:reset
├── gen/
│   ├── component.md     → /gen:component
│   ├── hook.md          → /gen:hook
│   └── api-route.md     → /gen:api-route
└── doc/
    ├── api.md           → /doc:api
    └── readme.md        → /doc:readme
```

### 例 7:コード生成コマンド群

`.claude/commands/gen/component.md`:

```markdown
以下の名前で新しい React コンポーネントを作成してください:

コンポーネント名: $ARGUMENTS

ルール:
- #src/components/Button.tsx のパターンに従う
- Props の型定義を含める
- テストファイルも作成する
```

`.claude/commands/gen/hook.md`:

```markdown
以下の名前でカスタムフックを作成してください:

フック名: $ARGUMENTS

ルール:
- #src/hooks/useAuth.ts のパターンに従う
- 戻り値の型を明示する
```

使い方:

```
> /gen:component UserProfile
> /gen:hook useCart
```

---

## レベル 5:実践的なコマンド集

### 例 8:デバッグ支援

`.claude/commands/debug.md`:

```markdown
以下のエラーまたは問題を調査してください:

$ARGUMENTS

手順:
1. 関連するソースコードを特定する
2. エラーの根本原因を分析する
3. 修正案を提示する(複数ある場合はそれぞれの長所・短所を説明)
4. 最も推奨する修正を適用する
```

### 例 9:PR 準備コマンド

`.claude/commands/prep-pr.md`:

```markdown
プルリクエストの準備をしてください。

1. 現在のブランチの変更内容をすべて確認
2. 以下の形式で PR の説明を作成:

## 概要
(変更の目的と概要)

## 変更内容
(具体的な変更点をリスト)

## テスト
(テスト方法のチェックリスト)

3. CLAUDE.md に記載された規約への違反がないか最終確認
4. 問題があれば修正

ブランチの目的: $ARGUMENTS
```

使い方:

```
> /prep-pr ユーザー認証機能の追加
```

### 例 10:CLAUDE.md 自動改善

`.claude/commands/improve-memory.md`:

```markdown
以下の作業結果を踏まえて #CLAUDE.md を改善してください:

$ARGUMENTS

手順:
1. 現在の CLAUDE.md を読む
2. プロジェクトの実態(コード、設定ファイル)と比較する
3. 古くなった記述を削除する
4. 不足している規約やパターンを追加する
5. 簡潔さを維持する
```

---

## まとめ

| 概念 | 説明 |
|---|---|
| **コマンド定義** | `.claude/commands/` に `.md` ファイルを配置 |
| **ファイル名** | `.md` を除いた部分がコマンド名になる |
| **`$ARGUMENTS`** | コマンド実行時の引数を受け取るプレースホルダー |
| **`#` ファイル参照** | コマンド内で特定ファイルのコンテキストを含める |
| **サブディレクトリ** | `/group:command` 形式でコマンドを整理 |
| **プロジェクト用** | `.claude/commands/` — チームで共有可能 |
| **ユーザー用** | `~/.claude/commands/` — 個人の全プロジェクト共通 |

コマンドは小さく始めて、使いながら徐々に充実させていくのが効果的です。

広告

さくらのレンタルサーバ
ムームードメイン
Oisix(おいしっくす)
らでぃっしゅぼーや
珈琲きゃろっと
エプソムソルト
【FRONTIER】
AdGuard Ad Blocker
AdGuard VPN
AdGuard DNS




«       »