はじめに
インストール & 起動
npm install -g @anthropic-ai/claude-code claude # start interactive session claude --version # check version claude update # update to latest
認証
claude login # browser OAuth export ANTHROPIC_API_KEY="sk-ant-..." claude logout # clear session
スラッシュコマンド
セッションコマンド
/help利用可能なコマンドを表示
/clear会話履歴をクリア
/compactコンテキストを圧縮してトークンを節約
/costトークン使用量とコストを表示
/statusセッション情報とモデルを表示
/new新しい会話を開始
/config設定を開く / 表示
/doctor設定の問題を診断
/initプロジェクトの CLAUDE.md を作成
/loginAnthropic で認証
/logout認証をクリア
ワークフローコマンド
/bugバグレポートを送信
/reviewコードレビューをリクエスト
/prプルリクエストを作成 / 更新
/commitステージ済みの変更をメッセージ付きでコミット
キーボードショートカット
Ctrl+C現在の生成をキャンセル
Ctrl+DClaude Code を終了(EOF)
Escape現在の入力 / 編集をキャンセル
Tabファイルパスとコマンドをオートコンプリート
Up/Down入力履歴をナビゲート
CLI フラグ
よく使うフラグ
-p, --print非インタラクティブ(ヘッドレス)モード
--modelモデルを指定: opussonnethaiku
--output-formattextjsonstream-json で出力
--allowedToolsツールを制限: Edit,Read,Bash
--max-turns N会話ターン数を制限
--debugデバッグログを有効化
-n, --nameセッションに名前を付ける
ヘッドレス / スクリプト
claude -p "explain this error" < log.txt claude -p "list todos" --output-format json echo "fix typos" | claude -p
設定ファイル
CLAUDE.md の階層
./CLAUDE.mdプロジェクトレベルの指示(リポジトリにチェックイン)
./.claude/settings.jsonプロジェクト設定(パーミッション、フック)
~/.claude/CLAUDE.mdユーザーグローバルの指示(全プロジェクト共通)
~/.claude/settings.jsonユーザーグローバル設定
~/.claude/projects/*/CLAUDE.mdプロジェクト別ユーザー指示(リポジトリ外)
環境変数
ANTHROPIC_API_KEY直接認証用の API キー
CLAUDE_MODELデフォルトモデルの上書き
CLAUDE_CONFIG_DIRカスタム設定ディレクトリのパス
パーミッション
settings.json
{ "permissions": { "allow": ["Read", "Glob", "Grep"], "deny": ["Bash(rm *)"] } }
パーミッションモード
defaultリスクのあるツールの前に確認
--dangerously-skip-permissions全ツールを許可(CI / スクリプト専用)
--allowedToolsツールセットを制限する CLI フラグ
MCP サーバー
MCP サーバーとは?
Model Context Protocol サーバーはカスタムツール(データベース、API、サービス)で Claude Code を拡張します。CLI または `.mcp.json` で管理します。
CLI による管理
claude mcp add server-name -- cmd arg1 arg2 claude mcp list claude mcp remove server-name
.mcp.json の設定
{ "mcpServers": { "my-db": { "command": "python", "args": ["-m", "mcp_server_db"], "env": { "DB_URL": "${DATABASE_URL}" } } } }
スコープ
.mcp.jsonプロジェクトレベルの MCP サーバー
~/.claude/mcp.jsonユーザーグローバルの MCP サーバー
claude mcp add -s userユーザースコープに追加
claude mcp add -s projectプロジェクトスコープに追加
フック
フックイベント
PreToolUseツール実行前に呼び出される
PostToolUseツール完了後に呼び出される
NotificationClaude が通知を送るときに呼び出される
StopClaude がレスポンスを完了したときに呼び出される
settings.json の例
{ "hooks": { "PreToolUse": [{ "matcher": "Bash", "hooks": [{ "type": "command", "command": "check-command.sh $INPUT" }] }] } }
フックの動作
exit 0ツールの実行を許可
exit 2ツールの実行をブロック
stdoutClaude への JSON フィードバック
SDK & 自動化
ヘッドレススクリプト
# Single prompt, get JSON output claude -p "summarize main.py" \ --output-format json # Pipe input git diff | claude -p "review this diff"
CI / GitHub Actions
- uses: anthropics/claude-code-action@v1 with: claude_args: > --max-turns 5 --model claude-sonnet-4-6
ヒント
自動化でコストを抑えるには `--max-turns` を使用。結果をプログラムで処理するには `--output-format json`。安全のために `--allowedTools` と組み合わせましょう。
モデル
モデルの選択
claude --model opus # most capable claude --model sonnet # balanced (default) claude --model haiku # fastest, cheapest
モデルのショートカット
opusClaude Opus — 最高性能
sonnetClaude Sonnet — デフォルト、バランス型
haikuClaude Haiku — 高速で経済的
--model full-name例: claude-sonnet-4-6
ベストプラクティス
CLAUDE.md の書き方
プロジェクトの規約、技術スタック、ビルドコマンド、テスト手順を CLAUDE.md に記述しましょう。簡潔に — Claude は毎回セッションで読み込みます。`/init` でスキャフォールドできます。
コスト管理
/cost現在のトークン使用量を確認
/compactコンテキストが大きくなったら圧縮
--max-turns自動化でターン数を制限
sonnet / haikuシンプルなタスクには安いモデルを使用
効果的なプロンプト
具体的に"auth.ts:42 の null チェックを修正" > "バグを修正"
コンテキストを与えるファイル、関数、エラーメッセージを参照
@file を使う直接ファイルを参照: @src/main.ts
画像を使うスクリーンショットをドラッグ & ドロップで視覚的コンテキスト
繰り返し改善フォローアップで精度を上げる。リセットには /clear