Claude Code の知られていない便利機能・実践テクニック完全ガイド【2026年最新】

Claude Code の知られていない便利機能・実践テクニック完全ガイド【2026年最新】 AI開発

Claude Codeを毎日使っていても、意外と知らない機能が多いものです。公式ドキュメントを読み込んでも、リリースノートを追いかけないと見逃してしまうコマンドや設定が次々と追加されています。

この記事では、2026年3月時点の最新情報をもとに、Claude Codeの「知る人ぞ知る」便利機能と実践的なテクニックをまとめました。初心者から上級者まで、新しい発見があるはずです。

スポンサーリンク

/btw ── 会話の流れを止めずに補足情報を伝える

v2.1.72(2026年3月)で追加された /btw コマンドは、Claude Codeとの会話に「余談」を挟む機能です。

通常、会話中に補足情報を入力すると、それが会話の文脈に組み込まれてしまいます。/btw を使うと、その情報をコンテキストに影響させずにClaudeへ伝えることができます。

/btw の使い方
/btw このプロジェクトはNode.js 20を使っています
/btw テストはまだ書いていません
用途例:
・現在作業中のタスクに関係するが会話の主軸にはならない情報を共有したいとき
・「この変数は後で変更する予定」といった将来の計画をサラッと伝えたいとき
・バックグラウンドで気になることをメモしておきたいとき
従来は補足情報を入力するたびに会話コンテキストが膨らんでいましたが、/btw を使うと「脇道情報」として管理されるため、メインの会話がすっきり保たれます。

/rewind ── 任意の時点へ巻き戻す「チェックポイント」機能

/rewind(エイリアス: /checkpoint)は、会話の途中にセーフポイントを作成し、そこへ戻れる機能です。AIが意図しない変更を加えてしまったとき、やり直しが一瞬で済みます。

/rewind の基本操作
# チェックポイントを作成
/rewind

# チェックポイント一覧から選んで復元
/rewind list

# 指定番号のチェックポイントへ戻る
/rewind 3

復元時には5つのアクションから選べます:

アクション 内容
restore code + conversation コードも会話もまとめてその時点に戻す
restore conversation only 会話だけ戻す(コードはそのまま)
restore code only コードだけ戻す(会話はそのまま)
summarize up to checkpoint その時点までを要約してコンテキスト節約
cancel キャンセル
おすすめの使い方: 大きなリファクタリングや複数ファイルの変更を始める前に /rewind を打っておくと、何かあってもすぐ戻れます。

/color ── 複数セッションを色分けして管理する

複数のターミナルウィンドウでClaude Codeを並行稼働させるとき、どのウィンドウがどのプロジェクト用か混乱しがちです。/color コマンドを使うと、セッションに色を割り当ててひと目で判別できるようになります。

/color の使い方
# セッションの色を設定
/color red       # 赤
/color blue      # 青
/color green     # 緑
/color yellow    # 黄
/color purple    # 紫
/color orange    # オレンジ
/color pink      # ピンク
/color cyan      # シアン
フロントエンド用のセッションは青、バックエンド用は緑、データベース作業は赤、といった色分けルールを決めておくと、マルチプロジェクト作業の効率が大幅に上がります。

–bare フラグ ── 約14%の高速化と最小構成起動

--bare は、Claude Codeを軽量モードで起動するフラグです。このフラグを付けると、起動時に以下のものをすべてスキップします:

  • フック(pre/post hooks)の実行
  • スキル(/skills)の読み込み
  • MCPサーバーへの接続
  • オートメモリの更新
  • CLAUDE.mdの読み込み
–bare の使い方
# ベア起動(約14%速い)
claude --bare

# CI/CDパイプラインでの推奨形式
claude --bare --print "テストを実行して結果を報告して"

# ヘッドレスモードと組み合わせる
claude --bare -p "コードをレビューして" < review_target.py
ユースケース:
・CI/CDパイプラインでの自動実行(フックやMCPは不要なことが多い)
・単純な一問一答スクリプト
・起動速度を優先したい場面
--bare を使うとCLAUDE.mdが読み込まれないため、プロジェクト固有のルールが適用されません。インタラクティブな開発作業には通常起動を使ってください。

/voice ── 音声入力で手を動かさずにClaudeと対話する

Claude Codeには音声入力機能が組み込まれています。/voice コマンドで起動し、スペースキーを押している間だけ録音する「Push-to-Talk」方式です。

/voice の操作方法
# 音声入力モードを起動
/voice

# 操作
# スペースキー長押し → 録音
# スペースキーを離す → Claude に送信
# q または Ctrl+C → 終了

日本語を含む20言語に対応しています。利用にはclaude.aiアカウントとの連携が必要です。

おすすめシーン:
・コードレビューの内容を口頭で説明したいとき
・長い要件定義をタイピングせず伝えたいとき
・両手がふさがっているとき(料理中に設計議論?)

パイプ入力 ── 標準入力をそのままClaudeに渡す

Claude Codeはパイプ(|)経由の標準入力を受け取れます。ログファイルの解析、コマンドの出力を即座に分析させる場面で非常に便利です。

パイプ入力の活用例
# エラーログを渡して解析させる
cat error.log | claude -p "このエラーの原因を教えて"

# git diff を渡してレビューさせる
git diff HEAD~1 | claude -p "この変更をレビューして問題点を指摘して"

# コマンドの出力を分析させる
npm test 2>&1 | claude -p "テスト失敗の原因を特定して修正方法を提案して"

# ファイルの内容を直接渡す
cat src/utils.ts | claude -p "このコードのバグを探して"

# 複数ファイルを結合して渡す
cat src/*.ts | claude -p "このTypeScriptコードの品質を評価して"
-p フラグ(--printの省略形)と組み合わせると、Claude Codeを通常のCLIツールのように使えます。スクリプトへの組み込みも容易です。

–output-format stream-json ── 出力をJSONストリームで受け取る

Claude Codeの出力をプログラムで処理したい場合、--output-format stream-json を使うと、NDJSON(改行区切りJSON)形式でリアルタイムに受け取れます。

stream-json の使い方
# JSON ストリーム出力
claude -p "Dockerfileを最適化して" --output-format stream-json

# 出力例(各行が1つのJSONオブジェクト)
# {"type":"text","text":"FROM node:20-alpine
"}
# {"type":"text","text":"WORKDIR /app
"}
# {"type":"result","result":"完了しました"}

# jq でフィルタリング
claude -p "このコードを分析して" --output-format stream-json | jq -r ".text"

# 構造化出力(JSONスキーマ指定)
claude -p "バグを3つリストアップして" --json-schema schema.json
JSON Schema の例(schema.json)
{
  "type": "object",
  "properties": {
    "bugs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "line": {"type": "number"},
          "description": {"type": "string"},
          "severity": {"type": "string", "enum": ["low", "medium", "high"]}
        }
      }
    }
  }
}
CI/CDパイプラインでClaudeの出力を次のステップに渡したり、自動化スクリプトでClaudeの判断を利用したりする場合に不可欠な機能です。

CLAUDE.md の @import ── 設定ファイルを分割して管理する

CLAUDE.mdが長くなってきたら、@import ディレクティブを使って複数ファイルに分割できます。最大5階層までのネストをサポートしています。

CLAUDE.md での @import 使い方
# CLAUDE.md(ルート)
# プロジェクト全体の設定
@import ./docs/coding-standards.md
@import ./docs/deployment-guide.md
@import ./docs/team-rules.md

# ホームディレクトリの共通設定を参照
@import ~/shared-claude-config/global-rules.md
分割ファイルの例(docs/coding-standards.md)
# コーディング規約

## 命名規則
- 変数: camelCase
- 定数: UPPER_SNAKE_CASE
- クラス: PascalCase

## TypeScript
- `any` 型の使用を禁止する
- すべての関数に戻り値の型を明示する
- ESLintの警告をすべて解消してからコミットする
モノレポや複数人でのプロジェクトでは、リポジトリルートの共通ルールと各サブディレクトリの個別ルールを分けて管理できます。@import のチェーンを使えば、設定の再利用性も高まります。

CLAUDE.mdの詳しい書き方はこちらで解説しています。

セッション管理の高度なテクニック

Claude Codeのセッション管理機能は、一見シンプルですが使いこなすと作業効率が大きく変わります。

セッションへの名前付けと素早い復帰

セッション管理コマンド
# セッションに名前を付けて開始
claude -n "feature/user-auth"

# 前回のセッションを続きから再開
claude --continue

# セッション一覧を表示して選択
claude --resume
# ↑ 起動後、キーボードで操作:
#   ↑↓ で選択  P:ピン留め  R:名前変更  / で検索  B:バックグラウンド化

# セッションを複製(フォーク)して並行作業
claude --fork-session <session-id>

セッションのフォーク活用

--fork-session は、既存セッションのコンテキストをそのまま引き継いで新しいセッションを作る機能です。「このアーキテクチャ案でやり直したらどうなるか?」を試すときに役立ちます。

フォークの実践例
# 現在のセッションIDを確認
/stats

# セッションをフォーク
claude --fork-session abc123def456

# メインセッション: アプローチA を続ける
# フォークしたセッション: アプローチB を試す
# → 良い方を採用する

セッションピッカーのキーボードショートカット

キー 動作
↑ / ↓ セッションを選択
P セッションをピン留め(一覧の上部に固定)
R セッション名を変更
/ セッションをキーワード検索
B セッションをバックグラウンドで継続
Enter 選択したセッションを開く

セッション管理の詳細についてはClaude Codeのセッション管理完全ガイドをご覧ください。

環境変数による細かいカスタマイズ

Claude Codeの動作は環境変数で細かく制御できます。特定のプロジェクト用に .env ファイルへ設定しておくのが便利です。

主要な環境変数一覧
# サブプロセス実行時に渡す環境変数を制限(セキュリティ)
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1

# オートコンパクトの閾値変更(デフォルト: 70%)
# コンテキスト使用率がこの%に達したら自動圧縮
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=80

# 別の .env ファイルを指定して読み込む
CLAUDE_ENV_FILE=/path/to/project/.claude-env

# ターミナルのテーマ(ダークモードを強制)
CLAUDE_CODE_THEME=dark

# 自動更新を無効化(CI環境での意図しない更新防止)
CLAUDE_CODE_DISABLE_AUTO_UPDATE=1

# ツール呼び出しの最大並列数を変更
CLAUDE_CODE_MAX_PARALLEL_TOOL_CALLS=5
.env ファイルへの設定例
# プロジェクトルートの .env
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=75
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1
CLAUDE_CODE_THEME=dark
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 を設定すると、Claudeがサブプロセス(シェルコマンドなど)を実行する際に、環境変数からAPIキーや秘密情報が漏れるリスクを減らせます。本番環境では特に有用です。

知る人ぞ知るスラッシュコマンド

ドキュメントに載っていない、または目立たないスラッシュコマンドをまとめました。

/diff ── 現在の変更差分を表示

/diff コマンド
# 現在のセッションで行われた変更の diff を表示
/diff

# 出力例
# --- a/src/utils.ts
# +++ b/src/utils.ts
# @@ -10,6 +10,8 @@
# +export function formatDate(date: Date): string {
# +  return date.toISOString().split("T")[0];
# +}

/context ── 現在のコンテキスト情報を確認

/context コマンド
# 現在のコンテキスト使用状況を確認
/context

# 出力例
# Context: 45,320 / 200,000 tokens (22.6%)
# Files in context: 8
# Recent tools: Read(3), Edit(5), Bash(2)

/copy ── 直近のレスポンスをクリップボードへコピー

/copy コマンド
# 直近のレスポンスをクリップボードへコピー
/copy

# N番目前のレスポンスをコピー
/copy 3

/stats ── セッション統計情報を表示

/stats コマンド
# セッションの統計情報を表示
/stats

# 出力例
# Session ID: abc123def456
# Duration: 1h 23m
# Messages: 42
# Tokens used: 125,430
# Tools called: 67 (Read:20, Edit:15, Bash:32)
# Cost: $0.38

/security-review ── セキュリティレビューを依頼

/security-review コマンド
# 現在のコードベースのセキュリティレビューを実行
/security-review

# 特定ファイルのレビュー
/security-review src/auth/

! プレフィックスとCtrl+B ── シェルとの連携

入力の先頭に ! を付けると、そのコマンドをシェルで直接実行できます。Claude Codeのインターフェースを離れずにターミナルコマンドを実行できる便利な機能です。

! プレフィックスの使い方
# シェルコマンドを直接実行
!ls -la src/
!git status
!npm test

# 実行結果がコンテキストに追加される
!cat package.json
# → Claude が package.json の内容を確認して回答できる

Ctrl+B を押すと、現在の処理をバックグラウンドに移して別のタスクを始められます。長時間かかる処理(大量ファイルのリファクタリングなど)を実行しながら、別の質問をすることが可能です。

Ctrl+B の活用
# 重いリファクタリングを依頼
> 全ファイルの import 文を ES Module 形式に変換して

# 処理中に Ctrl+B でバックグラウンドへ移す
# → 別の質問や作業ができる
> このエラーの意味を教えて(別の質問)

# バックグラウンドのタスクが完了したら通知が届く

実践的な組み合わせテクニック

上記の機能を組み合わせることで、より高度なワークフローを構築できます。

CI/CDでの完全自動化レシピ

GitHub Actions での活用例
name: AI Code Review

on:
  pull_request:
    types: [opened, synchronize]

jobs:
  ai-review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Setup Claude Code
        run: npm install -g @anthropic-ai/claude-code

      - name: Run AI Review
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
          CLAUDE_CODE_DISABLE_AUTO_UPDATE: 1
        run: |
          # --bare で高速化、stream-json で結果を構造化
          git diff origin/main...HEAD | claude --bare -p \
            "このPRの変更をレビューして問題点をリストアップして" \
            --output-format stream-json | jq -r ".text" \
            > review-result.txt
          cat review-result.txt

朝の開発準備スクリプト

morning-standup.sh
#!/bin/bash
# 昨日からの変更を分析してデイリースタンドアップ用メモを生成

echo "=== 昨日の作業サマリー ==="
git log --since="24 hours ago" --oneline | \
  claude --bare -p "このgitログから昨日の作業内容を3行で要約して" \
  --output-format stream-json | jq -r ".text"

echo ""
echo "=== 本日のTODO候補 ==="
cat TODO.md | \
  claude --bare -p "このTODOリストから今日着手すべきものを優先度順に3つ選んで" \
  --output-format stream-json | jq -r ".text"

コードレビューの効率化ワークフロー

レビュー効率化の流れ
# Step 1: セッションに名前を付けて開始
claude -n "review/pr-123"

# Step 2: 変更対象をパイプで渡す
git diff main...feature/user-auth | claude -p \
  "このPRの変更をセキュリティの観点でレビューして"

# Step 3: /rewind でチェックポイントを作成
/rewind

# Step 4: 追加で気になる点を確認
> 認証トークンの有効期限はどのように管理されていますか?

# Step 5: 問題なければセッションをピン留め(後で参照用に)
# セッションピッカーで P キーを押す

マルチプロジェクト管理のベストプラクティス

複数プロジェクトの効率的な管理
# プロジェクトAのセッション(青)
claude -n "project-a" /color blue

# プロジェクトBのセッション(緑)
claude -n "project-b" /color green

# データベース作業専用(赤)
claude -n "db-migration" /color red

# セッション一覧で視覚的に判別
claude --resume
# 色付きのセッション一覧が表示される

よくある質問

Q/btw と通常の入力は何が違うのですか?
A通常の入力はClaudeの会話文脈(コンテキスト)に含まれ、以降の回答に影響します。一方/btwは「余談」として記録されるため、会話の主軸に影響せず補足情報のみを伝えられます。コンテキストウィンドウの節約にも役立ちます。
Q/rewind でコードを復元した場合、ファイルシステムの変更も元に戻りますか?
Aはい、「restore code + conversation」または「restore code only」を選択した場合、ファイルシステムへの変更も復元されます。ただし、Claude Code外で行った変更(手動での編集など)は対象外です。
Q–bare を使ったほうが常に速いですか?
AMCP、フック、スキルが多いプロジェクトほど効果が大きいです。シンプルな設定のプロジェクトでは差が小さいこともあります。一般的に約14%の速度改善が見込まれますが、CLAUDE.mdやフックが必要な作業には使わないでください。
Q/voice 機能は有料プランが必要ですか?
Aclaude.aiアカウントとの連携が必要です。ProまたはTeamプランのユーザーが利用できます。音声認識自体はWhisperベースで行われ、日本語を含む20言語に対応しています。
QCLAUDE.mdの@importは相対パスと絶対パスのどちらを使うべきですか?
Aチームで共有するリポジトリ内のファイルは相対パス、個人の設定(APIキーのルールや個人プリファレンスなど)は~を使ったホームディレクトリからのパスが便利です。最大5階層までネスト可能です。

まとめ

この記事では、Claude Codeの知られていない便利機能と実践テクニックを紹介しました。

  • /btw: 会話コンテキストを汚さずに補足情報を伝える
  • /rewind: 任意の時点へ戻せるチェックポイント機能
  • /color: 複数セッションを色分けして視覚的に管理
  • –bare: 約14%高速化の軽量起動モード
  • /voice: 音声入力でハンズフリー操作
  • パイプ入力: 標準入力でClaudeをCLIツールとして活用
  • stream-json: 出力をNDJSONで受け取りプログラムと連携
  • @import: CLAUDE.mdを分割して保守性を高める
  • セッション管理: 名前付け・フォーク・ピン留めで作業を整理
  • 環境変数: 細かい動作カスタマイズ
  • 隠しコマンド: /diff、/context、/copy、/stats など

これらの機能を組み合わせることで、Claude Codeがただの「AIアシスタント」から「開発ワークフローに組み込まれたパートナー」へと変わります。まずは自分の作業に合いそうな機能から試してみてください。

Claude Codeのその他の活用法については、Claude Codeワークフロー完全ガイドClaude Code入門ガイドもあわせてご覧ください。