Claude Code 全機能ガイド

Skills, Hooks, MCP, 権限, CLAUDE.md, IDE統合...全部解説

全機能を網羅的に解説

Claude Codeの拡張機能をフル活用して開発効率を最大化しよう

機能マップ

🎯
Skills
カスタムスラッシュコマンドでワークフローを自動化
🪝
Hooks
イベント駆動で自動処理を実行
🔌
MCP
外部ツール・データソースとの接続
🔐
権限システム
ツールごとの許可・拒否を細かく制御
📝
CLAUDE.md
プロジェクトのルールをClaudeに教える
🧠
メモリ
セッション間で情報を永続化
📦
Plugins
拡張機能のパッケージ配布
🖥️
IDE統合
VS Code / JetBrainsから直接利用
🤖
ヘッドレス
CI/CDパイプラインでの自動実行

Skills(スキル)

SKILL.mdファイルにMarkdownで指示を書くだけで、Claudeにカスタムの能力を追加できます。SDKもAPIも不要です。

🎯 Skillsの本質

スキル = Markdownで書いた指示書
「こういう時はこうして」というルールをClaude Codeに教えるだけ。
/skill-name で手動実行するか、Claudeが自動判断で使います。

スキルの配置場所

場所パス範囲
個人~/.claude/skills/名前/SKILL.md全プロジェクト共通
プロジェクト.claude/skills/名前/SKILL.mdこのプロジェクトのみ
プラグインplugin/skills/名前/SKILL.mdプラグイン有効時のみ

SKILL.md の書き方

# ~/.claude/skills/review/SKILL.md
---
name: review
description: コードレビューを実行する
allowed-tools: Read, Grep, Glob
---

# コードレビューの手順
$ARGUMENTS のファイルをレビューしてください。

チェック項目:
1. セキュリティの問題はないか
2. パフォーマンスの問題はないか
3. コーディング規約に従っているか

フロントマター(設定項目)

フィールド説明
nameスキル名(/コマンド名になる)
descriptionいつ使うかの説明
disable-model-invocationtrueでClaudeの自動使用を無効化
user-invocablefalseでユーザーメニューから非表示
allowed-tools許可するツール
contextforkでサブエージェント実行
model使用するモデル指定

💡 動的コンテキスト注入

!コマンド` 構文でシェルコマンドの出力を埋め込めます:
!`gh pr diff` → PRの差分を自動取得してスキルに注入

Hooks(フック)

Claude Codeのライフサイクルの特定のタイミングでシェルコマンドを自動実行する仕組みです。LLMを介さず確実に実行されるのが特徴です。

🪝 Hooksの本質

「Claudeがファイルを編集したら自動でフォーマットする」
「危険なコマンドを実行しようとしたらブロックする」
こうした決定論的な自動化を実現します。

全フックイベント一覧

イベントタイミング用途例
SessionStartセッション開始・再開時初期コンテキスト注入
UserPromptSubmitユーザーがプロンプト送信時入力の前処理
PreToolUseツール実行前コマンドのブロック・検証
PermissionRequest権限ダイアログ表示時カスタム権限判断
PostToolUseツール実行後自動フォーマット、ログ記録
PostToolUseFailureツール実行失敗後エラー通知
Notification通知送信時デスクトップ通知
SubagentStartサブエージェント起動時リソース制御
SubagentStopサブエージェント終了時結果の後処理
StopClaude応答完了時タスク完了確認
PreCompactコンテキスト圧縮前データ保存
ConfigChange設定ファイル変更時セキュリティ監査
SessionEndセッション終了時クリーンアップ

フックの3つのタイプ

タイプ動作用途
"command"シェルコマンドを実行フォーマット、ログ、通知
"prompt"LLMに1回判断させる柔軟なYes/No判断
"agent"サブエージェントで検証テスト実行など複雑な検証

設定例:ファイル編集後に自動フォーマット

// .claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [{
          "type": "command",
          "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write"
        }]
      }
    ]
  }
}

MCP(Model Context Protocol)

MCPは外部ツールやデータソースをClaude Codeに接続するオープンスタンダードです。GitHub、Slack、データベース、APIなど何にでも接続できます。

🔌 MCPの本質

MCPサーバー = Claudeに新しいツールを渡すアダプター
例えば「GitHubのPRを読む」「Slackにメッセージを送る」「DBを検索する」
といった能力をClaude Codeに追加できます。

MCP設定方法

// .claude/mcp.json
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_TOKEN": "ghp_..." }
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path"]
    }
  }
}

💡 Tool Search(遅延読み込み)

MCPサーバーが増えるとコンテキストを圧迫しますが、Tool Search機能により
必要な時だけツールを読み込み、コンテキスト使用量を最大95%削減できます。

権限システム

ツールごとに自動許可・確認・拒否を細かく設定できます。

// settings.json の権限設定
{
  "permissions": {
    "allow": [
      "Read", "Glob", "Grep",
      "Bash(git status)",
      "Bash(git diff*)",
      "Bash(npm test*)"
    ],
    "deny": [
      "Bash(rm -rf *)"
    ]
  }
}

設定ファイルの優先順位

ファイル範囲共有
~/.claude/settings.json全プロジェクト個人のみ
.claude/settings.jsonプロジェクトgit共有可能
.claude/settings.local.jsonプロジェクトgitignore
マネージドポリシー組織全体管理者制御

CLAUDE.md(メモリ)詳細

Claude Codeは起動時に複数のCLAUDE.mdを自動読み込みし、マージします。

~/.claude/
└── CLAUDE.md ← グローバル(全プロジェクト共通の好み)

プロジェクトルート/
├── CLAUDE.md ← プロジェクト全体のルール
├── .claude/
│ ├── CLAUDE.md ← 追加のプロジェクト指示
│ └── CLAUDE.local.md ← 個人的な指示(gitignore推奨)
└── src/
    └── CLAUDE.md ← ディレクトリ固有のルール

💡 /memory コマンド

セッション中に /memory を実行すると、CLAUDE.mdを直接編集できます。
また、v2.1.59以降は自動メモリ機能があり、Claudeが重要な情報を自動的にメモリファイルに保存します。

IDE統合

📝
VS Code
  • インラインdiff表示
  • @メンション対応
  • プランレビュー機能
  • 会話履歴
  • Cursor対応
🔧
JetBrains
  • IntelliJ IDEA
  • PyCharm
  • WebStorm
  • インタラクティブdiff
  • 選択コンテキスト共有
🖥️
Desktopアプリ
  • macOS / Windows
  • ビジュアルdiffレビュー
  • 複数セッション並列
  • クラウドセッション起動

ヘッドレスモード / CI/CD

-p フラグで非対話的にClaude Codeを実行し、CI/CDパイプラインに組み込めます。

# 基本的な使い方
claude -p "このコードのバグを見つけて修正して"

# パイプで入力
git diff main --name-only | claude -p "変更ファイルをセキュリティレビューして"

# JSON形式で出力
claude -p "分析して" --output-format json

# ログ監視
tail -f app.log | claude -p "異常があったらSlackに通知して"

🚀 GitHub Actions / GitLab CI/CD

Claude Codeは公式でGitHub ActionsとGitLab CI/CDをサポートしています。
PRの自動レビュー、Issue対応、テスト生成などを自動化できます。

キーボードショートカット

ショートカット機能
Enterメッセージ送信
Shift+Enter改行(要ターミナル設定)
Tab思考モード(Extended Thinking)切り替え
Shift+Tabプランモード切り替え
Ctrl+C現在の操作をキャンセル
Ctrl+R履歴検索
Ctrl+OVerbose(詳細)モード切り替え
Ctrl+Fバックグラウンドエージェントを停止
Escape現在の操作を中断
上矢印過去のメッセージ表示
Alt+Pモデル切り替え
@ファイル参照
/スラッシュコマンド

まとめ

Claude Codeは単なるCLIツールではない

Skills、Hooks、MCP、権限システム、CLAUDE.md、IDE統合、ヘッドレスモード...
これらを組み合わせることで、あなたの開発ワークフロー全体をAIで強化できます。
まずは1つの機能から試してみましょう。

⚙️🔧🛠️

Master the tools, master the code!