コンテンツにスキップ

🤖 Claude Code 機能ガイド(〜2026年4月版)

📁 docs/dev-environment/artifact/20260429_200249_claude-code-features-guide.md

[!NOTE] 知識カットオフ(2025年8月)以降に追加・強化された機能を中心に、現在使える全機能・ユースケース・ベストプラクティスをまとめたガイドです。 ドキュメント: https://code.claude.com/docs


📋 目次

  1. スラッシュコマンド一覧
  2. 設定オプション(settings.json)
  3. Hooks(フック)
  4. MCP(Model Context Protocol)
  5. サブエージェント / Sub-agents
  6. Routines(クラウドスケジュール)
  7. Auto Memory(自動メモリ)
  8. パーミッション管理
  9. モデル・Thinking
  10. その他の便利機能
  11. ベストプラクティス

🔧 スラッシュコマンド

新規追加コマンド(2025年8月以降)

コマンド 概要 ユースケース
/schedule Routinesを自然言語で作成・管理 「毎朝PRレビューを自動実行」など
/effort Thinking強度を対話的に選択(low/medium/high/xhigh) 重い分析は high、簡単なタスクは low
/ultrareview マルチエージェント並列コードレビュー(課金) PR前の徹底レビュー
/ultraplan クラウドで計画立案(Default環境を自動生成) 大規模機能設計
/tui フリッカーなしのフルスクリーンモードに切替 ターミナル表示が乱れるとき
/focus 通常 ↔ 詳細トランスクリプト表示を切替 デバッグ時に詳細を確認
/recap セッション要約を手動呼び出し 離席後に状況を素早く把握
/team-onboarding 使用状況からチーム導入ガイドを自動生成 チームにClaude Codeを展開するとき
/less-permission-prompts 頻出コマンドの許可リストを自動提案 許可ダイアログを減らす
/terminal-setup iTerm2・VS Code等のターミナル最適化設定 初期セットアップ
/undo /rewind のエイリアス 直前の操作を取り消す
/usage コスト・統計をタブUI表示(/cost + /stats の統合) 利用状況確認
/theme カスタムテーマ作成・切替 UIの視覚カスタマイズ
/config 設定を検索・永続化(settings.json に書込み) テーマ・モード・詳細設定
/skills スキル一覧を検索(/skills <query> で絞り込み) 利用可能スキルを探す
/memory Auto Memoryの閲覧・編集・トグル 記憶内容の確認・整理

既存の主要コマンド

コマンド 概要
/init CLAUDE.md・skills・hooksを段階的に対話セットアップ(CLAUDE_CODE_NEW_INIT=1 で拡張版)
/clear セッションコンテキストをリセット
/compact コンテキストを圧縮して継続
/rewind 直前のターンを取り消し
/model モデルを切り替え(会話途中はキャッシュ消失の警告あり)
/fast Fast Mode トグル(Opus 4.6 の高速出力)

⚙️ 設定オプション

~/.claude/settings.json(グローバル)または .claude/settings.json(プロジェクト)に記述。

Thinking / モデル制御

{
  "effortLevel": "low|medium|high|xhigh",
  "alwaysThinkingEnabled": true,
  "showThinkingSummaries": true,
  "availableModels": ["sonnet", "haiku"],
  "modelOverrides": {
    "claude-opus-4-7": "arn:aws:bedrock:..."
  }
}

[!TIP] effortLevel: "high" が Pro/Max のデフォルトになりました(旧: medium)。重くなったと感じたら "medium" に下げてください。

UI / 表示

{
  "viewMode": "default|verbose|focus",
  "tui": "fullscreen|default",
  "autoScrollEnabled": false,
  "showTurnDuration": true,
  "spinnerTipsEnabled": true,
  "awaySummaryEnabled": true,
  "prefersReducedMotion": false,
  "terminalProgressBarEnabled": true
}

Auto Memory

{
  "autoMemoryEnabled": true,
  "autoMemoryDirectory": "~/my-custom-memory-dir"
}

Worktree / ファイル管理

{
  "worktree": {
    "symlinkDirectories": ["node_modules", ".cache"],
    "sparsePaths": ["packages/my-app"]
  },
  "plansDirectory": "./plans",
  "claudeMdExcludes": ["**/other-team/CLAUDE.md"],
  "cleanupPeriodDays": 30
}

Sandbox(隔離実行)

{
  "sandbox": {
    "network": {
      "allowedDomains": ["github.com", "*.npmjs.org"],
      "deniedDomains": ["sensitive.internal.com"]
    },
    "filesystem": {
      "allowWrite": ["/tmp/build"],
      "denyRead": ["~/.aws/credentials"]
    }
  }
}

パーミッション

{
  "permissions": {
    "allow": ["Bash(git:*)", "Read"],
    "ask": ["Bash(git push *)"],
    "deny": ["Bash(rm -rf *)"],
    "defaultMode": "acceptEdits",
    "additionalDirectories": ["../docs/"]
  }
}

自動更新

{
  "autoUpdatesChannel": "stable|latest",
  "minimumVersion": "2.1.100"
}

🪝 Hooks

settings.jsonhooks セクションでライフサイクルイベントにスクリプトを紐付けます。

フックイベント一覧(主要24種)

カテゴリ イベント 概要
ツール PreToolUse ツール実行前(ブロック可)
PostToolUse ツール実行後(出力書換可)
PostToolBatch 並列バッチ完了後
コンパクション PreCompact コンパクション前(ブロック可)
PostCompact コンパクション後
パーミッション PermissionRequest 確認ダイアログ表示時(自動承認/拒否可)
PermissionDenied 自動モードでツール拒否時
サブエージェント SubagentStart / SubagentStop サブエージェントの開始・終了
タスク TaskCreated / TaskCompleted タスクライフサイクル
ファイル FileChanged 監視ファイルの変更(.envrc 等)
設定 CwdChanged 作業ディレクトリ変更
ConfigChange 設定ファイル変更
InstructionsLoaded CLAUDE.md / rules のロード
ワークツリー WorktreeCreate / WorktreeRemove Git worktree のライフサイクル
ユーザー入力 UserPromptSubmit ユーザー入力送信時
チーム TeammateIdle エージェントチームでチームメイトがアイドル

フックタイプ

// コマンド実行(従来)
{ "type": "command", "command": "./hooks/my-script.sh" }

// MCPツールを直接呼び出し
{
  "type": "mcp_tool",
  "server": "my-server",
  "tool": "security_scan",
  "input": {"file_path": "${tool_input.file_path}"}
}

// HTTPリクエスト
{
  "type": "http",
  "url": "http://validator:8080/check",
  "headers": {"Authorization": "Bearer $TOKEN"},
  "allowedEnvVars": ["TOKEN"]
}

// サブエージェントに委譲
{
  "type": "agent",
  "prompt": "このファイル変更を検証: $ARGUMENTS"
}

条件フィルタ(if フィールド)

{
  "matcher": "Bash",
  "hooks": [{
    "type": "command",
    "if": "Bash(rm *)",
    "command": "./hooks/block-rm.sh"
  }]
}

ベストプラクティス:Hooksの活用例

✅ PostToolUse (Bash) → コマンドのプレフィックスを自動で allowlist に追加
✅ PreToolUse (Write) → 機密ファイルへの書き込みをブロック
✅ PostCompact → コンパクション後に要約をSlack通知
✅ FileChanged (.envrc) → 環境変数変更を検知して自動リロード
✅ PermissionRequest → CIでの自動承認(危険なコマンドは除外)

🔌 MCP(Model Context Protocol)

新機能・強化点

機能 概要
alwaysLoad: true ToolSearch による遅延ロードをスキップし、常にツールを利用可能に
環境変数置換 headers に ${ENV_VAR} を記述してリクエスト前に置換
並列接続 サーバー起動が高速化(デフォルト並列接続)
OAuth強化 expires_in 省略時の自動リフレッシュ、macOS keychain 競合解消
Routines用コネクタ クラウドRoutinesにMCPコネクタを紐付け可能

設定例

{
  "mcpServers": {
    "my-server": {
      "command": "npx",
      "args": ["-y", "@my-org/my-mcp-server"],
      "alwaysLoad": true,
      "env": {
        "API_TOKEN": "${MY_API_TOKEN}"
      }
    }
  }
}

[!TIP] よく使うMCPツールは alwaysLoad: true にすると ToolSearch の遅延ロードがなくなり即座に使えます。


🤖 サブエージェント(Sub-agents)

.claude/agents/ または ~/.claude/agents/ にYAMLファイルを配置して専門エージェントを定義できます。

エージェント定義例

---
name: researcher
description: Webリサーチと情報収集を担当するエージェント
model: claude-haiku-4-5
tools: [WebFetch, WebSearch, Read]
---
調査担当エージェントです。リサーチ要件を受け取り、
情報を収集して要約します。

サブエージェントの利点

機能 効果
コンテキスト保護 サブエージェントが独立したコンテキストで作業し、要約のみ返す
ツール制限 エージェントごとに使用可能ツールを限定(セキュリティ向上)
モデル指定 単純タスクに安価な Haiku を使い、コストを最適化
並列実行 独立したタスクを並列処理してスループット向上
専門化 description に特徴を書くと Agent ツールが適切にルーティング

フロントマター拡張

---
name: secure-agent
description: セキュリティ検査専門エージェント
model: claude-sonnet-4-6
mcpServers:
  - security-scanner
hooks:
  - type: "prompt"
    handler: "audit_log"
---

⏰ Routines(クラウドスケジュール)

Anthropic 管理インフラで実行されるため、PCがオフでも動作します。

トリガー種別

トリガー 概要
スケジュール 定期実行(毎時・毎日・毎週・One-off) 「毎朝9時にPRサマリーを投稿」
APIトリガー HTTP POSTで起動 アラートシステムからの呼び出し
GitHubトリガー PR作成・リリースなどのリポジトリイベント 「新しいPRが開かれたらレビュー」

作成方法

# スラッシュコマンドで自然言語指定
/schedule daily PR review at 9am

# または claude.ai/code/routines で管理

ユースケース例

✅ 毎朝:GitHubの未解決Issueをスキャンして優先度付けしSlack通知
✅ PR作成時:自動コードレビューを実行してコメント投稿
✅ 毎週月曜:依存ライブラリの脆弱性チェックレポート生成
✅ One-off:リリース2週間後にフィーチャーフラグ削除PRを自動作成

🧠 Auto Memory(自動メモリ)

Claudeがセッションをまたいで重要情報を自動記憶するシステムです。

仕組み

~/.claude/projects/<project-path>/memory/
├── MEMORY.md          # インデックス(先頭200行がセッション開始時に自動ロード)
├── user_profile.md    # ユーザー情報
├── feedback_*.md      # フィードバック記録
├── project_*.md       # プロジェクト状況
└── reference_*.md     # 外部リソースへのポインタ

記憶タイプ

タイプ 保存対象 フォーマット
user 役割・スキル・好みなど 本文のみ
feedback 修正・承認された行動指針 本文 + Why: + How to apply:
project 進行中の作業・意思決定 本文 + Why: + How to apply:
reference 外部システムへのポインタ 本文のみ

設定

{
  "autoMemoryEnabled": true,
  "autoMemoryDirectory": "~/.claude/projects/custom-memory"
}

[!IMPORTANT] MEMORY.md は200行を超えると切り捨てられます。インデックスは簡潔に保ち、詳細は個別ファイルに記述してください。


🔐 パーミッション管理

permissions.ask(新規)

allow でも deny でもなく「必ず確認する」ルール:

{
  "permissions": {
    "allow": ["Bash(git:*)", "Read", "Write"],
    "ask": ["Bash(git push *)", "Bash(npm publish *)"],
    "deny": ["Bash(rm -rf *)"]
  }
}

パーミッションモード

モード 動作
acceptEdits ファイル編集は自動承認、Bashは確認
acceptAll すべて自動承認(--dangerously-skip-permissions相当)
planningMode ツール実行なし、計画のみ

セキュリティ強化(v2.1.98以降)

  • バックスラッシュエスケープによるBashパターン回避の修正
  • /dev/tcp リダイレクトのブロック
  • 環境変数プレフィックスの抜け穴修正

💡 モデル・Thinking

利用可能モデル(2026年4月時点)

モデルID 特徴 用途
claude-opus-4-7 最高性能・コンテキスト1M・xhigh effort対応 複雑な分析・設計
claude-sonnet-4-6 バランス型(デフォルト) 日常的なコーディング
claude-haiku-4-5 高速・低コスト ルーティング・サブエージェント

Effort レベル

レベル 動作 目安
low Thinking なし 簡単なQ&A、フォーマット
medium 短いThinking 通常のコーディング
high 深いThinking(Pro/Max デフォルト) バグ修正・設計
xhigh 最深のThinking(Opus 4.7専用) 難問・研究
# セッション内で切り替え
/effort
# ↑ 矢印キーでinteractiveに選択

Thinking Progress 表示

重い処理中にインライン進捗が表示されます: - "still thinking..." → "thinking more..." → "almost done thinking..."


🛠️ その他の便利機能

CLAUDE.md の強化

<!-- このコメントはAIのコンテキストに注入されない(人間向けメモに使える) -->

# プロジェクトルール

@path/to/shared-rules.md  <!-- 別ファイルをインクルード -->
# .claude/rules/python.md のフロントマター
---
paths: ["**/*.py", "**/*.pyi"]
---
Pythonコードには型ヒントを必ず付けること。

キーバインディング追加

ショートカット 動作
Ctrl+U 入力バッファ全消去
Ctrl+Y 消去した入力を復元
Ctrl+L 画面強制再描画
v / V Vimビジュアルモード / ビジュアルラインモード
Ctrl+- Undo(Kitty protocol対応)

Push Notifications

Claudeのタスク完了をモバイル通知で受け取れます(settings.json で設定)。

Chrome拡張(Beta)

ライブWebアプリのデバッグに対応。ブラウザのDOM・コンソール・ネットワークに直接アクセス可能。

OpenTelemetry

OTEL_LOG_RAW_API_BODIES=1  # APIボディ全体をデバッグ出力

✨ ベストプラクティス

1. CLAUDE.md の整備

✅ .claude/rules/ でルールをファイル別に分割
✅ paths フロントマターでファイルタイプ別に適用
✅ HTMLコメントで人間向けメモを残す
✅ @インクルードで共通ルールを再利用
✅ claudeMdExcludes でモノレポの不要なCLAUDE.mdを除外

2. Hooks の活用

✅ PostToolUse(Bash) でコマンドを自動 allowlist 追加(このプロジェクトで実装済み)
✅ PreToolUse で危険な操作をブロック
✅ PermissionRequest で CI での自動承認を実装
✅ FileChanged で .env 変更を検知して通知

3. サブエージェント設計

✅ 単純タスクには Haiku を指定してコスト削減
✅ ツールアクセスを必要最小限に制限(セキュリティ)
✅ description を具体的に書いてルーティング精度を上げる
✅ 独立タスクは並列サブエージェントで分散処理

4. Auto Memory の活用

✅ MEMORY.md のインデックスを200行以内に保つ
✅ 記憶タイプを正しく分類(user/feedback/project/reference)
✅ feedback 記憶には Why: と How to apply: を必ず記述
✅ 古くなった記憶は定期的に /memory で整理

5. コスト・パフォーマンス最適化

✅ 単純タスクは effort: low に下げる
✅ MCP の alwaysLoad は使用頻度の高いサーバーのみに絞る
✅ /usage で定期的にコスト確認
✅ サブエージェントで重いタスクをコンテキスト保護しながら処理
✅ Routines でオフピーク時間帯に重い処理をバッチ実行

6. セキュリティ

✅ permissions.ask で重要な操作(push, publish)は必ず確認
✅ sandbox.network で allowedDomains を明示
✅ 認証情報は Credentials/ に集約し Git 管理外に(このプロジェクト設定済み)
✅ disableBypassPermissionsMode でバイパスを封鎖(エンタープライズ向け)

📚 参考リンク

リソース URL
公式ドキュメント https://code.claude.com/docs
リリースノート https://github.com/anthropics/claude-code/releases
フィードバック・バグ報告 https://github.com/anthropics/claude-code/issues
Agent SDK https://code.claude.com/docs/agent-sdk/overview
Routines 管理 https://claude.ai/code/routines

最終更新: 2026-04-29 | 対象バージョン: v2.1.123以降