登録して招待リンクを共有すると、動画再生報酬と紹介報酬を獲得できます。

cv usk
@cv_usk
AI / Software Research Notes AI Agent, LLMOps, MLOps, Software Architecture 投稿は個人の意見です。
参加 May 2026
279 フォロー中    408 ファン
# Claude Agent SDKの便利だけど知られていない機能 🌍 システムプロンプトをゼロから書く必要はありません。claude_code プリセットに append で追記する方式を使えば、安全性やツールガイダンスを維持したまま独自の指示を追加できます。 さらに excludeDynamicSections で複数マシン間のプロンプトキャッシュ共有も可能です。 📌 タイトル:システムプロンプトのプリセット+追記方式 🔗 URL: 🧩 概要 Claude Agent SDK のシステムプロンプトには3つの出発点があります。(1) ミニマルデフォルト(`systemPrompt` 未設定時、ツール呼び出しのみカバー)、(2) `claude_code` プリセット(Claude Code CLI と同じフルプロンプト)、(3) カスタム文字列(完全に独自のプロンプト)。特に便利なのが `claude_code` プリセット + `append` の組み合わせで、プリセットが提供するツール使用ガイダンス、安全性ルール、コーディング規約をすべて維持しつつ、末尾に独自の指示を追加できます。CLAUDE.md はシステムプロンプトではなく会話に注入される点も重要です。 🛠 使い方 `system_prompt` に dict 形式でプリセットと append を指定します。 ```python from claude_agent_sdk import query, ClaudeAgentOptions async for message in query( prompt="Help me write a Python function to calculate fibonacci numbers", options=ClaudeAgentOptions( system_prompt={ "type": "preset", "preset": "claude_code", "append": "Always include detailed docstrings and type hints in Python code.", } ), ): pass # メッセージを処理 # excludeDynamicSections でキャッシュ共有を有効化 async for message in query( prompt="Triage the open issues in this repo", options=ClaudeAgentOptions( system_prompt={ "type": "preset", "preset": "claude_code", "append": "You operate Acme's internal triage workflow.", "exclude_dynamic_sections": True, # 環境依存部分を除外 }, ), ): pass ``` 🏗 本番システムへの組み込み方 ・コーディングエージェントを構築する場合は `claude_code` プリセット + `append` を基本形とし、セキュリティルールやツールガイダンスの再実装コストを削減できます ・`exclude_dynamic_sections: True` を指定すると、作業ディレクトリやOS情報などの動的コンテキストがシステムプロンプトからユーザーメッセージに移動し、異なるマシン間でプロンプトキャッシュを共有できます ・CLAUDE.md は `setting_sources` に `"project"` を含めることで自動読み込みされ、システムプロンプトとは独立して機能します 💡 ユースケース 🏢 社内コーディング標準の適用:プリセットの安全性を維持しつつ、社内規約を append で追加する 🌐 多拠点展開のコスト削減:excludeDynamicSections でプロンプトキャッシュを全マシンで共有する 🤖 特化型エージェント:データ分析やサポートボットなど、コーディング以外の用途にはカスタム文字列を使用する ⚠️ 注意点 ・カスタム文字列を使う場合、ツールガイダンスや安全性ルールは自分で記述する必要があります ・`excludeDynamicSections` を有効にすると、環境情報がユーザーメッセージに移動するため、指示としての重みがわずかに低下する可能性があります ・SDK デフォルト(`systemPrompt` 未設定)は Claude Code CLI のデフォルトとは異なります。CLI からの移行時は明示的にプリセットを設定してください ✨ プリセット+追記方式は「安全な既定値を壊さずにカスタマイズする」最もリスクの低い方法です。 #ClaudeAgentSDK# #AIAgent#
もっと見る