🤖 Claude Code 機能ガイド(〜2026年4月版)¶
📁 docs/dev-environment/artifact/20260429_200249_claude-code-features-guide.md
[!NOTE] 知識カットオフ(2025年8月)以降に追加・強化された機能を中心に、現在使える全機能・ユースケース・ベストプラクティスをまとめたガイドです。 ドキュメント: https://code.claude.com/docs
📋 目次¶
- スラッシュコマンド一覧
- 設定オプション(settings.json)
- Hooks(フック)
- MCP(Model Context Protocol)
- サブエージェント / Sub-agents
- Routines(クラウドスケジュール)
- Auto Memory(自動メモリ)
- パーミッション管理
- モデル・Thinking
- その他の便利機能
- ベストプラクティス
🔧 スラッシュコマンド¶
新規追加コマンド(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¶
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/"]
}
}
自動更新¶
🪝 Hooks¶
settings.json の hooks セクションでライフサイクルイベントにスクリプトを紐付けます。
フックイベント一覧(主要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が開かれたらレビュー」 |
作成方法¶
ユースケース例¶
✅ 毎朝: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 | 外部システムへのポインタ | 本文のみ |
設定¶
[!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専用) | 難問・研究 |
Thinking Progress 表示¶
重い処理中にインライン進捗が表示されます: - "still thinking..." → "thinking more..." → "almost done thinking..."
🛠️ その他の便利機能¶
CLAUDE.md の強化¶
<!-- このコメントはAIのコンテキストに注入されない(人間向けメモに使える) -->
# プロジェクトルール
@path/to/shared-rules.md <!-- 別ファイルをインクルード -->
キーバインディング追加¶
| ショートカット | 動作 |
|---|---|
Ctrl+U | 入力バッファ全消去 |
Ctrl+Y | 消去した入力を復元 |
Ctrl+L | 画面強制再描画 |
v / V | Vimビジュアルモード / ビジュアルラインモード |
Ctrl+- | Undo(Kitty protocol対応) |
Push Notifications¶
Claudeのタスク完了をモバイル通知で受け取れます(settings.json で設定)。
Chrome拡張(Beta)¶
ライブWebアプリのデバッグに対応。ブラウザのDOM・コンソール・ネットワークに直接アクセス可能。
OpenTelemetry¶
✨ ベストプラクティス¶
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以降