📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

ページの作成:「== 概要 == Claude Codeは、AnthropicのClaude AIモデルを使用したコマンドラインインターフェース (CLI) 開発ツールである。<br> <br> このページでは、Claude Codeの主要機能とコマンドリファレンスを解説する。<br> 特に重要な3つの機能を詳細に説明し、その他の有用なスラッシュコマンドとキーボードショートカットについても概要を示す。<br> <br> 主要機能は以…」
 
編集の要約なし
3行目: 3行目:
<br>
<br>
このページでは、Claude Codeの主要機能とコマンドリファレンスを解説する。<br>
このページでは、Claude Codeの主要機能とコマンドリファレンスを解説する。<br>
特に重要な3つの機能を詳細に説明し、その他の有用なスラッシュコマンドとキーボードショートカットについても概要を示す。<br>
特に重要な2つの機能を詳細に説明し、その他の有用なスラッシュコマンドとキーボードショートカットについても概要を示す。<br>
<br>
<br>
主要機能は以下の通りである。<br>
主要機能は以下の通りである。<br>
9行目: 9行目:
*: 以前の会話セッションに復帰する機能
*: 以前の会話セッションに復帰する機能
*: 複数の作業セッションを並行管理できる
*: 複数の作業セッションを並行管理できる
* Model Context Protocol機能 (/mcp)
*: 外部ツール、API、データベースへの接続を実現
*: 拡張可能なプラグインシステム
* 巻き戻し機能 (/rewind)
* 巻き戻し機能 (/rewind)
*: コード変更と会話履歴を任意のポイントまで巻き戻す
*: コード変更と会話履歴を任意のポイントまで巻き戻す
30行目: 27行目:
*: <br>
*: <br>
* 方法2 : 特定のセッションに復帰
* 方法2 : 特定のセッションに復帰
*: <pre>claude --resume [セッション名]</pre>
*: <pre>claude --resume <セッション名></pre>
*: <br>
*: <br>
* 方法3 : セッション内でのコマンド
* 方法3 : セッション内でのコマンド
163行目: 160行目:
* 長期保存が必要な場合はエクスポート
* 長期保存が必要な場合はエクスポート
*: 重要な会話履歴は別途保存する
*: 重要な会話履歴は別途保存する
<br><br>
== Model Context Protocol機能 (/mcp) ==
MCP (Model Context Protocol) は、Claude Codeが外部ツール、API、データベース、サービスに接続するための標準プロトコルである。<br>
MCPを使用することで、Claude Codeの機能を大幅に拡張できる。<br>
<br>
==== MCPの概要 ====
MCPは、以下の接続を実現する。<br>
<br>
===== 接続可能な外部システム =====
* 外部ツール
*: コマンドラインツール、スクリプト
* API
*: RESTful API、GraphQL API
* データベース
*: PostgreSQL、MySQL、MongoDB 等
* サービス
*: GitHub、Slack、Sentry 等
<br>
===== MCPの仕組み =====
* MCPサーバ
*: 外部システムとの接続を提供するサーバ
* MCPクライアント
*: Claude Code内でMCPサーバと通信するクライアント
* トランスポート
*: HTTP/SSE、stdio 等複数のトランスポートをサポート
<br>
==== MCPサーバのインストール ====
MCPサーバをインストールする方法を以下に示す。<br>
<br>
===== トランスポートの種類 =====
* HTTP/SSE (Server-Sent Events)
*: ネットワーク経由での接続
* stdio
*: 標準入出力を使用したローカル接続
<br>
===== MCPサーバのインストール方法 =====
<br>
* HTTP/SSEサーバの例
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "my-server": {
        "url": "http://localhost:3000/mcp",
        "transport": "sse"
      }
  }
}
</syntaxhighlight>
*: <br>
* stdioサーバの例
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "my-local-server": {
        "command": "node",
        "args": ["/path/to/server.js"],
        "transport": "stdio"
      }
  }
}
</syntaxhighlight>
<br>
==== MCPサーバの管理コマンド ====
MCPサーバを管理するためのコマンドを以下に示す。<br>
<br>
* サーバの一覧表示
*: <pre>claude mcp list</pre>
*: <br>
* サーバの追加
*: <pre>claude mcp add <名前> <URL または コマンド></pre>
*: <br>
* サーバの削除
*: <pre>claude mcp remove <名前></pre>
*: <br>
* サーバの詳細情報取得
*: <pre>claude mcp get <名前></pre>
<br>
==== MCPスコープ ====
MCPサーバは、3つのスコープで管理できる。<br>
<br>
<center>
{| class="wikitable"
|+ MCPスコープの種類
! スコープ !! 説明 !! 設定ファイルの場所
|-
| local || 現在のディレクトリのみ || .claude/mcp.json
|-
| project || プロジェクト全体 || プロジェクトルート/mcp.json
|-
| user || ユーザ全体 (全プロジェクト) || ~/.claude/mcp.json
|}
</center>
<br>
* スコープの優先順位
*: 同じ名前のサーバが複数のスコープで定義されている場合、優先順位の高いスコープの設定が使用される。
*# local (最優先)
*# project
*# user (最低優先)
<br>
==== 実用的なMCPサーバの例 ====
実際に使用されているMCPサーバの例を以下に示す。<br>
<br>
===== Sentry連携 =====
エラートラッキングサービスSentryとの連携例を示す。<br>
<br>
* 設定例
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "sentry": {
        "url": "https://sentry.io/api/mcp",
        "transport": "sse",
        "env": {
            "SENTRY_AUTH_TOKEN": "your-token-here"
        }
      }
  }
}
</syntaxhighlight>
<br>
# 使用例 1 :
最近のエラーをSentryから取得して分析してください。
# 使用例 2 :
Claudeは、MCPサーバ経由でSentryからエラー情報を取得し、分析を行う。
<br>
===== GitHub連携 =====
GitHubのIssue、Pull Request、Discussionsとの連携例を示す。<br>
<br>
* 設定例
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "github": {
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-github"],
        "transport": "stdio",
        "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "your-token-here"
        }
      }
  }
}
</syntaxhighlight>
<br>
# 使用例 1 :
このリポジトリの未解決のIssueを一覧表示してください
# 使用例 2 :
Issue #123 の内容を要約してください
<br>
===== PostgreSQL連携 =====
PostgreSQLデータベースとの連携例を示す。<br>
<br>
* 設定例
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "postgres": {
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:password@localhost:5432/mydb"],
        "transport": "stdio"
      }
  }
}
</syntaxhighlight>
<br>
# 使用例 1 :
usersテーブルのスキーマを確認してください。
# 使用例 2 :
最近追加されたユーザを10件表示してください。
<br>
==== 環境変数とヘッダ認証 ====
MCPサーバへの接続時に、環境変数やHTTPヘッダを使用した認証を設定できる。<br>
<br>
* 環境変数の設定
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "api-server": {
        "url": "https://api.example.com/mcp",
        "transport": "sse",
        "env": {
            "API_KEY": "your-api-key",
            "API_SECRET": "your-api-secret"
        }
      }
  }
}
</syntaxhighlight>
*: <br>
* HTTPヘッダの設定
*: <syntaxhighlight lang="json">
{
  "mcpServers": {
      "api-server": {
        "url": "https://api.example.com/mcp",
        "transport": "sse",
        "headers": {
            "Authorization": "Bearer your-token",
            "X-Custom-Header": "custom-value"
        }
      }
  }
}
</syntaxhighlight>
<br>
==== リソース参照 (@メンション) ====
MCPサーバが提供するリソースを、<code>@</code> メンションで参照できる。<br>
<br>
# リソース参照の例 :
@github/issue/123 の内容を確認してください
@sentry/error/latest を分析してください
@postgres/table/users のスキーマを表示してください
<br>
リソース参照により、以下のメリットが得られる。<br>
* 直感的な操作
*: リソースを自然言語で参照できる
* コンテキストの明確化
*: どのリソースについて話しているかが明確
* 自動補完
*: 利用可能なリソースを自動補完で選択できる
<br>
==== MCPスラッシュコマンド ====
MCP関連のスラッシュコマンドを以下に示す。<br>
<br>
* セッション内でのMCP管理
*: /mcp
<br>
このコマンドにより、以下の操作が可能になる。<br>
* MCPサーバの一覧表示
* MCPサーバの有効化/無効化
* MCPサーバの設定確認
* MCPリソースの参照
<br>
==== 組織でのMCP管理 ====
組織でMCPサーバを管理する方法を以下に示す。<br>
<br>
* managed-mcp.jsonファイル
*: <syntaxhighlight lang="json">
{
  "allowlist": [
      "github.com/modelcontextprotocol/*",
      "example.com/approved-servers/*"
  ],
  "denylist": [
      "untrusted.com/*"
  ]
}
</syntaxhighlight>
<br>
組織管理の仕組みを以下に示す。<br>
* allowlist
*: 許可されたMCPサーバのリスト
*: リストにあるサーバのみインストール可能
* denylist
*: 禁止されたMCPサーバのリスト
*: リストにあるサーバはインストール不可
<br>
これにより、組織全体でのセキュリティポリシーを維持できる。<br>
<br>
==== セキュリティ上の注意事項 ====
MCPサーバを使用する際のセキュリティ注意事項を以下に示す。<br>
<br>
===== プロンプトインジェクション対策 =====
* MCPサーバが返すデータを盲目的に信頼しない
*: 悪意のあるデータが含まれる可能性を考慮
* 外部データの検証
*: MCPサーバから取得したデータを検証してから使用
<br>
===== 信頼できるサーバのみ使用 =====
* 公式のMCPサーバを優先
*: Model Context Protocol公式リポジトリのサーバを使用
* サードパーティサーバの検証
*: ソースコードを確認してから使用
* 組織のallowlist/denylistの遵守
*: 組織のポリシーに従う
<br>
===== 認証情報の管理 =====
* 環境変数の使用
*: APIキーやトークンはハードコードせず環境変数で管理する。
* 設定ファイルのバージョン管理除外
*: mcp.jsonファイルを .gitignoreファイルに追加する。
* 最小権限の原則
*: 必要最小限の権限のみをMCPサーバに付与する。
<br><br>
<br><br>


463行目: 170行目:
<br>
<br>
===== 方法 1 : キーボードショートカット =====
===== 方法 1 : キーボードショートカット =====
* [Esc] --> [Esc] (Escキーを2回連続で押す)
* [Esc] -> [Esc] (Escキーを2回連続で押す)
*: 巻き戻しメニューが表示される
*: 巻き戻しメニューが表示される
<br>
<br>
563行目: 270行目:


== その他の重要なスラッシュコマンド ==
== その他の重要なスラッシュコマンド ==
Claude Codeには、上記3つの主要機能以外にも有用なスラッシュコマンドが多数存在する。<br>
Claude Codeには、上記2つの主要機能以外にも有用なスラッシュコマンドが多数存在する。<br>
<br>
<br>
==== セッション管理 ====
==== セッション管理 ====
617行目: 324行目:
| [Shift] + [Tab] || プランモード切り替え || プランモードと通常モードを切り替え
| [Shift] + [Tab] || プランモード切り替え || プランモードと通常モードを切り替え
|-
|-
| [Esc] --> [Esc]<br>([Esc]キーを2回押下) || 巻き戻し || 巻き戻しメニューを表示
| [Esc] -> [Esc]<br>([Esc]キーを2回押下) || 巻き戻し || 巻き戻しメニューを表示
|-
|-
| [Ctrl] + [L] || 画面クリア || ターミナル画面をクリア (会話は保持)
| [Ctrl] + [L] || 画面クリア || ターミナル画面をクリア (会話は保持)
645行目: 352行目:
  claude --model <モデル名>
  claude --model <モデル名>
<br>
<br>
  # 使用例 :
  # 使用例
  claude --model claude-opus-4-20250514
  claude --model claude-opus-4-20250514
   
   
673行目: 380行目:
<br>
<br>
Claude Codeのバージョンを表示する。<br>
Claude Codeのバージョンを表示する。<br>
<br>
claude --no-mcp
<br>
MCPサーバを無効化して起動する。<br>
<br><br>
<br><br>


700行目: 403行目:
* 優先度を含める
* 優先度を含める
*: 例: urgent-login-bug-fix
*: 例: urgent-login-bug-fix
<br>
==== MCPとセッションの組み合わせ ====
MCPサーバをセッションごとに使い分ける方法を示す。<br>
<br>
===== プロジェクトスコープのMCP設定 =====
* プロジェクト固有のMCPサーバを設定
*: プロジェクトルートに mcp.json を配置
* セッション再開時に自動的にMCPサーバが読み込まれる
*: プロジェクトに復帰すると、そのプロジェクト用のMCP設定が有効になる
<br>
===== ローカルスコープのMCP設定 =====
* 特定のディレクトリでのみ使用するMCPサーバ
*: .claude/mcp.jsonファイルに設定
* 実験的なMCPサーバの試行
*: ローカルスコープで試してから、プロジェクトスコープに昇格
<br>
<br>
==== 巻き戻しとGitの併用 ====
==== 巻き戻しとGitの併用 ====
737行目: 425行目:
主要機能をプランモードと組み合わせる方法を示す。<br>
主要機能をプランモードと組み合わせる方法を示す。<br>
<br>
<br>
* プランモードでの計画立案 --> 通常モードでの実装
* プランモードでの計画立案 -> 通常モードでの実装
*# プランモード ([Shift] + [Tab] キー) で計画を立てる
*# プランモード ([Shift] + [Tab] キー) で計画を立てる
*# セッションに名前を付けて保存
*# セッションに名前を付けて保存
744行目: 432行目:
*# 完成したらGitコミット
*# 完成したらGitコミット
*# セッションを終了または保存
*# セッションを終了または保存
*: <br>
* プランモードでのMCP活用
*# プランモードでMCPサーバ経由でデータベーススキーマを確認
*# API仕様をMCP経由で取得
*# 計画を立案
*# 通常モードに切り替えて実装
<br><br>
<br><br>


755行目: 437行目:
* [https://code.claude.com/docs Claude Code公式ドキュメント]
* [https://code.claude.com/docs Claude Code公式ドキュメント]
* [https://code.claude.com/docs/en/sessions Claude Code公式ドキュメント - Sessions]
* [https://code.claude.com/docs/en/sessions Claude Code公式ドキュメント - Sessions]
* [https://code.claude.com/docs/en/mcp Claude Code公式ドキュメント - Model Context Protocol]
* [https://code.claude.com/docs/en/rewind Claude Code公式ドキュメント - Rewind]
* [https://code.claude.com/docs/en/rewind Claude Code公式ドキュメント - Rewind]
* [https://modelcontextprotocol.io Model Context Protocol公式サイト]
<br><br>
<br><br>