はじめに
Claude Codeは、Anthropicが開発したターミナルベースのAIアシスタントです。エディタやIDEに依存せず、ターミナルから直接AIと対話しながらコーディングや調査を行えるCLIツールです。
本記事は、Claude Codeの機能を体系的に解説する連載シリーズの第1回です。「この記事を読み終えたら、Claude Codeがすぐ使える状態になる」 ことをゴールとしています。
対象読者
- これからClaude Codeを使い始める方
- すでに使っているが、設定を詰めていない方
連載予定
- #1: インストールから"使える"初期設定まで (本記事)
- #2: CLAUDE.mdの書き方と育て方
- #3: パーミッション&Sandbox完全ガイド
- #4: Hooks実践テクニック
- #5: Skills入門
- #6: MCP活用術
1. インストール
システム要件
| 項目 | 要件 |
|---|---|
| OS | macOS 13.0+ / Ubuntu 20.04+ / Debian 10+ / Windows 10 1809+ (WSL1, WSL2, Git for Windows) |
| RAM | 4GB以上 |
| ネットワーク | インターネット接続必須 |
インストール方法
3つの方法がありますが、ネイティブインストールを推奨します。自動更新が有効になるためです。
macOS / Linux / WSL(推奨)
curl -fsSL https://claude.ai/install.sh | bash
Homebrew
brew install --cask claude-code
Windows PowerShell:
irm https://claude.ai/install.ps1 | iex
Tips: ネイティブインストール(curl)は自動更新されますが、Homebrewは
brew upgrade claude-codeによる手動更新が必要です。
インストール後、claude doctorを実行すると環境の状態を診断できます。
認証
Claude Codeを利用するには、以下のいずれかが必要です。
| 認証方法 | 対象 |
|---|---|
| Claude Pro / Maxプラン(推奨) | 個人ユーザー。Claude.aiアカウントでログイン |
| Claude Console | console.anthropic.comでOAuth認証。APIキー不要 |
| Teams / Enterpriseプラン | チーム・組織向け |
初回起動
cd your-project
claude
初回起動時にログインプロンプトが表示されます。認証を完了し、プロンプトが表示されれば準備完了です。
Tips: 何か問題がある場合は
claude doctorを実行してください。インストール・認証・環境の問題を診断してくれます。
2. 設定ファイル構造の理解
Claude Codeの設定は3つのスコープで管理されます。これを理解しておくと、後の設定作業がスムーズになります。
~/.claude/
├── CLAUDE.md # ユーザーメモリ(全プロジェクト共通ルール)
├── settings.json # Hooks、パーミッション等の設定
└── agents/ # サブエージェント定義
~/.claude.json # MCP設定専用( .claude/ の外にある!)
your-project/
├── CLAUDE.md # プロジェクトメモリ(チーム共有)
├── .claude/
│ ├── settings.json # プロジェクト設定(チーム共有)
│ └── settings.local.json # ローカル設定(gitignored)
└── .mcp.json # プロジェクトMCP設定
設定の優先順位(高 → 低)
-
Local —
.claude/settings.local.json(個人のローカル設定) -
Project —
.claude/settings.json(プロジェクト共有設定) -
User —
~/.claude/settings.json(全プロジェクト共通設定)
Tips:
~/.claude.json(MCP設定ファイル)は~/.claude/ディレクトリの外にあります。初心者がよく間違えるポイントなので注意してください。
Tips: settings.jsonの先頭に
"$schema": "https://json.schemastore.org/claude-code-settings.json"を追加すると、VS Codeで補完やバリデーションが効くようになります。
3. 必ずやるべき初期設定3つ
インストールと設定構造を理解したところで、最初にやるべき設定を3つだけ紹介します。セキュリティを保ちつつ、ストレスなく使える状態を目指します。
3-1. 完了通知(Stop Hook)
Claude Codeに長めのタスクを任せて別の作業をしていると、完了に気づかず時間を無駄にしがちです。Stop Hookを設定すると、処理完了時にサウンドで通知されます。
~/.claude/settings.json に以下を追加します。
{
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "afplay /System/Library/Sounds/Glass.aiff"
}
]
}
]
}
}
Tips: macOSの標準サウンドは
/System/Library/Sounds/にあります(Glass.aiff、Ping.aiff、Pop.aiff等)。好みのサウンドに変更してください。
- Linux:
paplay /usr/share/sounds/freedesktop/stereo/complete.oga- Windows (WSL):
powershell.exe -c "(New-Object Media.SoundPlayer 'C:\Windows\Media\chimes.wav').PlaySync()"
3-2. パーミッション設定
デフォルトでは、ほぼすべての操作で確認が表示されます。安全な操作まで毎回承認するのは非効率なので、適切にパーミッションを設定しましょう。
まずはこれだけ設定する(最小構成)
{
"permissions": {
"allow": [
"WebFetch",
"WebSearch"
]
}
}
これだけでWeb検索・ドキュメント取得の確認がスキップされ、体感が大きく変わります。
慣れてきたら追加する設定
{
"permissions": {
"allow": [
"WebFetch",
"WebSearch",
"Bash(npm run *)",
"Bash(git status)",
"Bash(git diff *)",
"Bash(git log *)"
],
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Edit(./.env)",
"Edit(./.env.*)",
"Bash(git push -f *)",
"Bash(git reset --hard *)"
]
}
}
注意: パーミッションの評価順序は deny → ask → allow です。denyが常に最優先されるため、allowに追加してもdenyに該当すれば拒否されます。
.envファイルのdenyは機密情報漏洩を防ぐために必ず設定してください。
Tips: パーミッション設定の詳細は第3回「パーミッション&Sandbox完全ガイド」で解説します。
3-3. ステータスライン(コンテキスト使用率表示)
LLMにはコンテキストウィンドウの上限があります。使用率が高くなると自動圧縮(auto-compact)が発生し、推論精度が低下する可能性があります。常に使用率を確認できるようにしておきましょう。
手順1: スクリプトファイルを作成する
~/.claude/statusline.sh
#!/bin/bash
input=$(cat)
CONTEXT_SIZE=$(echo "$input" | jq -r '.context_window.context_window_size')
USAGE=$(echo "$input" | jq '.context_window.current_usage')
if [ "$USAGE" != "null" ] && [ "$CONTEXT_SIZE" != "null" ] && [ "$CONTEXT_SIZE" != "0" ]; then
CURRENT=$(echo "$USAGE" | jq '.input_tokens + .cache_creation_input_tokens + .cache_read_input_tokens')
PERCENT=$((CURRENT * 100 / CONTEXT_SIZE))
echo "Context: ${PERCENT}%"
else
echo "Context: -"
fi
手順2: 実行権限を付与する
chmod +x ~/.claude/statusline.sh
手順3: settings.jsonに追加する
{
"statusLine": {
"type": "command",
"command": "~/.claude/statusline.sh"
}
}
Tips: コンテキスト使用率が70-80%になったら
/compactで圧縮を検討してください。/compact 認証機能の実装状況は保持してのように、保持すべき情報を指定することも可能です。
4. 知っておくと便利な基本操作
キーボードショートカット
| 操作 | 機能 |
|---|---|
| Shift+Enter | 改行入力 |
| Escape | 処理を即時停止 |
| Shift+Tab x2 | Plan Mode切替 |
よく使うコマンド
| コマンド | 機能 |
|---|---|
/clear |
コンテキストを完全リセット |
/compact |
コンテキストを圧縮(重要情報は保持) |
/init |
CLAUDE.mdを自動生成 |
claude --continue |
前回のセッションを継続 |
claude --resume |
過去のセッションを選択して再開 |
/clear と /compact の使い分け
-
/clear: コンテキストを完全にリセットします。新しいタスクに着手する時に使います。 -
/compact: コンテキストを圧縮しつつ、重要な情報は保持します。同じタスクを続けたいが、コンテキストが逼迫している時に使います。
5. トラブルシューティング
設定が反映されない
- settings.jsonのJSON構文エラーを確認してください(末尾のカンマ、閉じ括弧の不足など)
- 設定の優先順位を確認してください(Local > Project > User)
- Claude Codeを再起動してください
パーミッションが期待通りに動かない
- 評価順序は deny → ask → allow です
- denyが常に最優先されるため、allowに追加してもdenyに該当すれば拒否されます
- ワイルドカードのパターンが意図通りか確認してください
そもそも起動しない・認証できない
claude doctor を実行してください。インストール、認証、環境に関する問題を診断して、対処法を提示してくれます。
claude doctor
6. まとめ&次回予告
この記事でやったこと
- Claude Codeをインストールした
- 認証を完了した
- 完了通知(Stop Hook)を設定した
- パーミッションを設定した
- ステータスラインを設定した
コピペで使える完全設定テンプレート
~/.claude/settings.json
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "afplay /System/Library/Sounds/Glass.aiff"
}
]
}
]
},
"permissions": {
"allow": [
"WebFetch",
"WebSearch"
],
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Edit(./.env)",
"Edit(./.env.*)",
"Bash(git push -f *)",
"Bash(git reset --hard *)"
]
},
"statusLine": {
"type": "command",
"command": "~/.claude/statusline.sh"
}
}
~/.claude/statusline.sh
#!/bin/bash
input=$(cat)
CONTEXT_SIZE=$(echo "$input" | jq -r '.context_window.context_window_size')
USAGE=$(echo "$input" | jq '.context_window.current_usage')
if [ "$USAGE" != "null" ] && [ "$CONTEXT_SIZE" != "null" ] && [ "$CONTEXT_SIZE" != "0" ]; then
CURRENT=$(echo "$USAGE" | jq '.input_tokens + .cache_creation_input_tokens + .cache_read_input_tokens')
PERCENT=$((CURRENT * 100 / CONTEXT_SIZE))
echo "Context: ${PERCENT}%"
else
echo "Context: -"
fi
chmod +x ~/.claude/statusline.sh
次回予告
次回は「CLAUDE.mdの書き方と育て方」を解説します。プロジェクト固有の知識をClaude Codeに教える方法と、継続的に改善していくテクニックを紹介します。
連載一覧
- #1: インストールから"使える"初期設定まで (本記事)
- #2: CLAUDE.mdの書き方と育て方
- #3: パーミッション&Sandbox完全ガイド
- #4: Hooks実践テクニック
- #5: Skills入門
- #6: MCP活用術