Claude Code とは
Claude Code v1.0.31は、AIアシスタントClaudeをコマンドライン上で活用できるツールです。コードベースの質問、ファイル編集、コマンド実行などを対話的に行うことができます。
重要な注意点: Claudeの応答は必ず確認してください。特にコードを実行する際は注意が必要です。Claudeは現在のディレクトリ内のファイルへの読み取りアクセス権を持ち、ユーザーの許可を得てコマンドの実行やファイルの編集を行います。
使用モード
1. 対話型(REPL)モード
# 基本的な起動
claude
# 初期プロンプト付きで起動
claude "このプロジェクトを説明して"
# 最新の会話を継続
claude -c
# セッションIDで再開
claude -r "abc123" "このPRを完成させて"
2. 非対話型(SDK)モード
# クエリを実行して終了
claude -p "この関数を説明して"
# パイプでコンテンツを処理
cat logs.txt | claude -p "説明して"
# 最新の会話を継続(SDKモード)
claude -c -p "型エラーをチェックして"
CLIコマンドリファレンス
基本コマンド
コマンド | 説明 | 例 |
---|---|---|
claude |
対話型REPLを開始 | claude |
claude "query" |
初期プロンプト付きでREPLを開始 | claude "このプロジェクトを説明して" |
claude -p "query" |
SDKでクエリを実行後、終了 | claude -p "この関数を説明して" |
cat file | claude -p "query" |
パイプされたコンテンツを処理 | cat logs.txt | claude -p "説明" |
claude -c |
最新の会話を継続 | claude -c |
claude -c -p "query" |
SDK経由で継続 | claude -c -p "型エラーをチェック" |
claude -r "<session-id>" "query" |
IDでセッションを再開 | claude -r "abc123" "このPRを完成" |
claude update |
最新バージョンに更新 | claude update |
claude mcp |
MCPサーバーを設定 | MCPドキュメント参照 |
CLIフラグ
フラグ | 説明 | 例 |
---|---|---|
--add-dir |
追加の作業ディレクトリを指定 | claude --add-dir ../apps ../lib |
--allowedTools |
許可ツールのリスト | "Bash(git log:*)" "Write" |
--disallowedTools |
拒否ツールのリスト | "Bash(git diff:*)" |
--print, -p |
非対話モードで応答を出力 | claude -p "query" |
--output-format |
出力形式を指定(text, json, stream-json) | claude -p "query" --output-format json |
--input-format |
入力形式を指定(text, stream-json) | claude -p --input-format stream-json |
--verbose |
詳細ログを有効化 | claude --verbose |
--max-turns |
非対話モードでのターン数制限 | claude -p --max-turns 3 "query" |
--model |
モデルを設定(sonnet, opus等) | claude --model opus |
--permission-prompt-tool |
非対話モードでの権限プロンプトツール | claude -p --permission-prompt-tool mcp_auth_tool |
--resume |
特定セッションを再開 | claude --resume abc123 "query" |
--continue |
現在のディレクトリで最新の会話をロード | claude --continue |
--dangerously-skip-permissions |
権限プロンプトをスキップ(注意) | claude --dangerously-skip-permissions |
対話モードのキーボードショートカット
基本操作
ショートカット | 説明 | コンテキスト |
---|---|---|
Ctrl+C |
現在の入力やジェネレーションをキャンセル | 標準的な中断 |
Ctrl+D |
Claude Codeセッションを終了 | EOFシグナル |
Ctrl+L |
ターミナル画面をクリア | 会話履歴は保持 |
↑/↓ |
コマンド履歴をナビゲート | 以前の入力を呼び出し |
Esc + Esc
|
前のメッセージを編集 | ダブルエスケープで修正 |
複数行入力
方法 | ショートカット | コンテキスト |
---|---|---|
クイックエスケープ |
\ + Enter
|
すべてのターミナルで動作 |
macOSデフォルト | Option+Enter |
macOSのデフォルト |
ターミナル設定 | Shift+Enter |
/terminal-setup 実行後 |
ペーストモード | 直接ペースト | コードブロック、ログ用 |
クイックコマンド
ショートカット | 説明 | 注意 |
---|---|---|
# で開始 |
メモリショートカット - CLAUDE.mdに追加 | ファイル選択を促す |
/ で開始 |
スラッシュコマンド | スラッシュコマンド参照 |
スラッシュコマンド詳細
組み込みスラッシュコマンド
コマンド | 目的 |
---|---|
/add-dir |
追加の作業ディレクトリを追加 |
/bug |
バグを報告(会話をAnthropicに送信) |
/clear |
会話履歴をクリア |
/compact [指示] |
オプションのフォーカス指示付きで会話を圧縮 |
/config |
設定を表示/変更 |
/cost |
トークン使用統計を表示 |
/doctor |
Claude Codeインストールの健全性をチェック |
/exit |
REPLを終了 |
/help |
使用方法のヘルプを取得 |
/ide |
IDE統合の管理とステータス表示 |
/init |
CLAUDE.mdガイドでプロジェクトを初期化 |
/install-github-app |
リポジトリ用のClaude GitHub Actionsをセットアップ |
/login |
Anthropicアカウントを切り替え |
/logout |
Anthropicアカウントからサインアウト |
/mcp |
MCPサーバー接続とOAuth認証を管理 |
/memory |
CLAUDE.mdメモリファイルを編集 |
/migrate-installer |
グローバルnpmからローカルインストールに移行 |
/model |
AIモデルを選択または変更 |
/permissions |
権限を表示または更新 |
/pr-comment |
プルリクエストコメントを表示 |
/release-notes |
リリースノートを表示 |
/resume |
会話を再開 |
/review |
コードレビューをリクエスト |
/status |
アカウントとシステムステータスを表示 |
/terminal-setup |
改行用Shift+Enterキーバインディングをインストール |
/upgrade |
Maxにアップグレード |
/vim |
Vimモードに切り替え |
カスタムスラッシュコマンド
カスタムスラッシュコマンドは、頻繁に使用するプロンプトをMarkdownファイルとして定義できます。
構文
/<prefix>:<command-name> [arguments]
パラメータ
-
<prefix>
: コマンドスコープ(project
またはuser
) -
<command-name>
: Markdownファイル名から派生した名前(.md拡張子なし) -
[arguments]
: オプションの引数
コマンドタイプ
プロジェクトコマンド
リポジトリに保存され、チームで共有されるコマンド:
# プロジェクトコマンドを作成
mkdir -p .claude/commands
echo "このコードのパフォーマンス問題を分析して最適化を提案:" > .claude/commands/optimize.md
# 使用
> /project:optimize
パーソナルコマンド
すべてのプロジェクトで利用可能なコマンド:
# パーソナルコマンドを作成
mkdir -p ~/.claude/commands
echo "このコードのセキュリティ脆弱性をレビュー:" > ~/.claude/commands/security-review.md
# 使用
> /user:security-review
高度な機能
名前空間
サブディレクトリでコマンドを整理:
# .claude/commands/frontend/component.md
> /project:frontend:component
引数
$ARGUMENTS
プレースホルダーで動的な値を渡す:
echo "問題 #$ARGUMENTS を私たちのコーディング標準に従って修正" > .claude/commands/fix-issue.md
# 使用
> /project:fix-issue 123
Bashコマンド実行
!
プレフィックスでbashコマンドを実行:
---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
description: gitコミットを作成
---
## コンテキスト
- 現在のgitステータス: !`git status`
- 現在のgit diff: !`git diff HEAD`
- 現在のブランチ: !`git branch --show-current`
- 最近のコミット: !`git log --oneline -10`
## タスク
上記の変更に基づいて、単一のgitコミットを作成してください。
ファイル参照
@
プレフィックスでファイル内容を含める:
# 特定のファイルを参照
@src/utils/helpers.js の実装をレビュー
# 複数のファイルを参照
@src/old-version.js と @src/new-version.js を比較
MCPスラッシュコマンド
MCPサーバーが公開するプロンプトは、Claude Codeでスラッシュコマンドとして利用可能です。
# 引数なし
> /mcp__github__list_prs
# 引数あり
> /mcp__github__pr_review 456
> /mcp__jira__create_issue "バグタイトル" high
Vimモード
/vim
コマンドでVimスタイルの編集を有効化します。
モード切り替え
コマンド | アクション | 元のモード |
---|---|---|
Esc |
NORMALモードに入る | INSERT |
i |
カーソル前に挿入 | NORMAL |
I |
行頭に挿入 | NORMAL |
a |
カーソル後に挿入 | NORMAL |
A |
行末に挿入 | NORMAL |
o |
下に行を開く | NORMAL |
O |
上に行を開く | NORMAL |
ナビゲーション(NORMALモード)
コマンド | アクション |
---|---|
h /j /k /l
|
左/下/上/右に移動 |
w |
次の単語 |
e |
単語の終わり |
b |
前の単語 |
0 |
行頭 |
$ |
行末 |
^ |
最初の非空白文字 |
gg |
入力の先頭 |
G |
入力の末尾 |
編集(NORMALモード)
コマンド | アクション |
---|---|
x |
文字を削除 |
dd |
行を削除 |
D |
行末まで削除 |
dw /de /db
|
単語を削除 |
cc |
行を変更 |
C |
行末まで変更 |
cw /ce /cb
|
単語を変更 |
. |
最後の変更を繰り返す |
設定管理
settings.json
Claude Codeは階層的な設定ファイルで構成されます:
-
ユーザー設定:
~/.claude/settings.json
(すべてのプロジェクトに適用) -
プロジェクト設定:
-
.claude/settings.json
(ソース管理にチェックイン、チームで共有) -
.claude/settings.local.json
(チェックインされない、個人設定用)
-
- エンタープライズポリシー: 管理者が配置(最優先)
設定例
{
"permissions": {
"allow": [
"Bash(npm run lint)",
"Bash(npm run test:*)",
"Read(~/.zshrc)"
],
"deny": [
"Bash(curl:*)"
]
},
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1",
"OTEL_METRICS_EXPORTER": "otlp"
},
"cleanupPeriodDays": 20,
"includeCoAuthoredBy": false
}
利用可能な設定
キー | 説明 | 例 |
---|---|---|
apiKeyHelper |
認証値を生成するカスタムスクリプト | /bin/generate_temp_api_key.sh |
cleanupPeriodDays |
チャット履歴の保持期間(デフォルト:30日) | 20 |
env |
各セッションに適用される環境変数 | {"FOO": "bar"} |
includeCoAuthoredBy |
gitコミットにClaude共著者行を含める(デフォルト:true) | false |
permissions |
権限設定(下記参照) |
権限設定
キー | 説明 | 例 |
---|---|---|
allow |
ツール使用を許可するルールの配列 | ["Bash(git diff:*)"] |
deny |
ツール使用を拒否するルールの配列 | ["WebFetch", "Bash(curl:*)"] |
additionalDirectories |
Claudeがアクセスできる追加ディレクトリ | ["../docs/"] |
defaultMode |
Claude Code起動時のデフォルト権限モード | "allowEdits" |
disableBypassPermissionsMode |
bypassPermissionsモードを無効化 | "disable" |
環境変数
変数 | 目的 |
---|---|
ANTHROPIC_API_KEY |
X-Api-Keyヘッダーとして送信されるAPIキー |
ANTHROPIC_AUTH_TOKEN |
Authorizationヘッダーのカスタム値 |
ANTHROPIC_CUSTOM_HEADERS |
カスタムヘッダー(Name: Value形式) |
ANTHROPIC_MODEL |
カスタムモデル名 |
ANTHROPIC_SMALL_FAST_MODEL |
バックグラウンドタスク用のHaikuクラスモデル |
BASH_DEFAULT_TIMEOUT_MS |
Bashコマンドのデフォルトタイムアウト |
BASH_MAX_TIMEOUT_MS |
モデルが設定できる最大タイムアウト |
BASH_MAX_OUTPUT_LENGTH |
Bash出力の最大文字数 |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR |
各Bashコマンド後に元の作業ディレクトリに戻る |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS |
認証情報の更新間隔(ミリ秒) |
CLAUDE_CODE_MAX_OUTPUT_TOKENS |
最大出力トークン数 |
CLAUDE_CODE_USE_BEDROCK |
Bedrockを使用 |
CLAUDE_CODE_USE_VERTEX |
Vertexを使用 |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC |
非必須トラフィックを無効化 |
DISABLE_AUTOUPDATER |
自動更新を無効化(1に設定) |
DISABLE_BUG_COMMAND |
/bugコマンドを無効化(1に設定) |
DISABLE_COST_WARNINGS |
コスト警告を無効化(1に設定) |
DISABLE_ERROR_REPORTING |
Sentryエラーレポートをオプトアウト(1に設定) |
DISABLE_NON_ESSENTIAL_MODEL_CALLS |
非重要パスのモデル呼び出しを無効化(1に設定) |
DISABLE_TELEMETRY |
Statsigテレメトリをオプトアウト(1に設定) |
HTTP_PROXY |
HTTPプロキシサーバー |
HTTPS_PROXY |
HTTPSプロキシサーバー |
MAX_THINKING_TOKENS |
モデル予算の思考を強制 |
MCP_TIMEOUT |
MCPサーバー起動タイムアウト(ミリ秒) |
MCP_TOOL_TIMEOUT |
MCPツール実行タイムアウト(ミリ秒) |
MAX_MCP_OUTPUT_TOKENS |
MCPツール応答の最大トークン数(デフォルト:25000) |
利用可能なツール
Claude Codeは以下のツールにアクセスできます:
ツール | 説明 | 権限必要 |
---|---|---|
Agent |
複雑なマルチステップタスクを処理するサブエージェントを実行 | いいえ |
Bash |
環境でシェルコマンドを実行 | はい |
Edit |
特定のファイルに対してターゲット編集を実行 | はい |
Glob |
パターンマッチングでファイルを検索 | いいえ |
Grep |
ファイル内容でパターンを検索 | いいえ |
LS |
ファイルとディレクトリをリスト | いいえ |
MultiEdit |
単一ファイルに複数の編集を原子的に実行 | はい |
NotebookEdit |
Jupyterノートブックセルを修正 | はい |
NotebookRead |
Jupyterノートブック内容を読み取り表示 | いいえ |
Read |
ファイルの内容を読み取る | いいえ |
TodoRead |
現在のセッションのタスクリストを読み取る | いいえ |
TodoWrite |
構造化されたタスクリストを作成・管理 | いいえ |
WebFetch |
指定URLからコンテンツを取得 | はい |
WebSearch |
ドメインフィルタリング付きでウェブ検索を実行 | はい |
Write |
ファイルを作成または上書き | はい |
使用上のヒント
効率的な作業フロー
-
コンテキスト管理: 長い会話では
/compact
を使って重要な情報のみを保持 -
コスト管理:
/cost
で定期的に使用料金を確認 -
セキュリティ:
/permissions
で適切な権限設定を維持 -
効率化: よく使うディレクトリは
--add-dir
で事前に追加 -
トラブルシューティング: 問題発生時は
/doctor
で診断
カスタムコマンドの活用
- チーム共通のレビュープロセスをプロジェクトコマンドとして定義
- 個人的な開発パターンをユーザーコマンドとして保存
-
!
でgitステータスなどのコンテキストを自動的に含める -
@
でレビュー対象ファイルを明示的に指定
Vimモードの効果的な使用
- 長いプロンプトの編集には
/vim
を活用 -
.
コマンドで繰り返し編集を効率化 -
gg
とG
で大きなテキストを素早くナビゲート
詳細情報
さらに詳しい情報は公式ドキュメントを参照してください: