システムプロンプトの理解
システムプロンプトは、会話全体を通してClaudeがどのように動作するかを形作る初期の指示セットです。Claude Codeのデフォルトシステムプロンプトには以下が含まれます:- ツール使用の指示と利用可能なツール
- コードスタイルとフォーマットのガイドライン
- 応答のトーンと詳細度の設定
- セキュリティと安全性の指示
- 現在の作業ディレクトリと環境に関するコンテキスト
変更方法
方法1:出力スタイル(永続的な設定)
出力スタイルは、Claudeのシステムプロンプトを変更する保存された設定です。これらはマークダウンファイルとして保存され、セッションやプロジェクト間で再利用できます。出力スタイルの作成
出力スタイルの使用
作成後、出力スタイルは以下の方法で有効化できます:- CLI:
/output-style [style-name]
- 設定:
.claude/settings.local.json
- 新規作成:
/output-style:new [description]
方法2:appendSystemPrompt
の使用
appendSystemPrompt
オプションは、すべての組み込み機能を保持しながら、カスタム指示をデフォルトシステムプロンプトに追加します。
方法3:customSystemPrompt
の使用
customSystemPrompt
オプションは、デフォルトシステムプロンプト全体をカスタム指示で置き換えます。
3つのアプローチすべての比較
機能 | 出力スタイル | appendSystemPrompt | customSystemPrompt |
---|---|---|---|
永続性 | ✅ ファイルとして保存 | ❌ セッションのみ | ❌ セッションのみ |
再利用性 | ✅ プロジェクト間 | ❌ コードの重複 | ❌ コードの重複 |
管理 | ✅ CLI + ファイル | ⚠️ コード内 | ⚠️ コード内 |
デフォルトツール | ✅ 保持 | ✅ 保持 | ❌ 失われる(含めない限り) |
組み込み安全性 | ✅ 維持 | ✅ 維持 | ❌ 追加が必要 |
環境コンテキスト | ✅ 自動 | ✅ 自動 | ❌ 提供が必要 |
カスタマイズレベル | ⚠️ デフォルトを置換 | ⚠️ 追加のみ | ✅ 完全制御 |
バージョン管理 | ✅ はい | ✅ コードと共に | ✅ コードと共に |
発見可能性 | ✅ /output-style | ❌ 発見不可 | ❌ 発見不可 |
使用例とベストプラクティス
出力スタイルを使用する場合
最適な用途:- セッション間での永続的な動作変更
- チーム共有設定
- 専門アシスタント(コードレビュアー、データサイエンティスト、DevOps)
- バージョン管理が必要な複雑なプロンプト変更
- 専用のSQL最適化アシスタントの作成
- セキュリティ重視のコードレビュアーの構築
- 特定の教育法を持つ教育アシスタントの開発
appendSystemPrompt
を使用する場合
最適な用途:
- 特定のコーディング標準や設定の追加
- 出力フォーマットのカスタマイズ
- ドメイン固有の知識の追加
- 応答の詳細度の変更
customSystemPrompt
を使用する場合
最適な用途:
- Claudeの動作の完全制御
- 専門的な単一セッションタスク
- 新しいプロンプト戦略のテスト
- デフォルトツールが不要な状況
アプローチの組み合わせ
最大限の柔軟性のために、これらの方法を組み合わせることができます:例:セッション固有の追加を持つ出力スタイル
関連項目
- 出力スタイル - 完全な出力スタイルドキュメント
- TypeScript SDKガイド - 完全なSDK使用ガイド
- TypeScript SDKリファレンス - 完全なAPIドキュメント
- 設定ガイド - 一般的な設定オプション