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

検索結果 ClaudeAI
ClaudeAI コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
ClaudeAI を含む検索結果
Anthropic社によると、Claude AIモデルが意図しないサイバー攻撃を3件引き起こしたという このAI開発企業によると、評価パートナーとの誤解により、同社のモデルがインターネットにアクセスできる状態になってしまったことを受け、サイバーセキュリティテストの実施中にこれらの事象が発生したという。
もっと見る
AI実験_v4 キツネが動物で一番好きです。 警戒心が強くて、好奇心が強いみたいな習性が共感できるからかなー #webデザイン# #claude# #AI#
もっと見る
# Claude Agent SDKの便利だけど知られていない機能 🌍 セッション途中で権限を変えたい?ストリーミング中に権限モードを動的に切り替えられます! Claude Agent SDKでは、セッション実行中に `set_permission_mode()` を呼ぶだけで、権限モードを即座に変更できます。 📌 タイトル:ストリーミング中の権限モード動的変更 🔗 URL: 🧩 概要 `set_permission_mode()`(Python)/ `setPermissionMode()`(TypeScript)を使うと、セッションの途中で権限モードをリアルタイムに変更できます。新しいモードは即座に有効となり、以降のすべてのツールリクエストに適用されます。「最初は厳格に、信頼が築けたら緩める」という段階的な権限管理が実現できます。 🛠 使い方 ```python # Python - 段階的に権限を緩和する例 import asyncio from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions async def main(): async with ClaudeSDKClient( options=ClaudeAgentOptions( permission_mode="default", # まずはデフォルトで開始 ) ) as client: await client.query("このコードをリファクタリングしてください") # アプローチを確認後、編集を許可 await client.set_permission_mode("acceptEdits") async for message in client.receive_response(): if hasattr(message, "result"): print(message.result) ``` ```typescript // TypeScript const q = query({ prompt: "Refactor this code", options: { permissionMode: "default" } }); // アプローチ確認後に編集を許可 await q.setPermissionMode("acceptEdits"); for await (const message of q) { if ("result" in message) console.log(message.result); } ``` 🏗 本番システムへの組み込み方 ・「plan → 確認 → acceptEdits」のワークフローで、安全なステップバイステップの自動化を実現します ・ユーザーの信頼度や操作の進行状況に応じて、段階的に権限を拡大するインタラクティブなアプリを構築できます ・エラー検出時に権限を引き締める「フォールバック」パターンにも活用できます ・監視システムと連携し、異常検知時に自動的に制限的なモードへ切り替えることも可能です 💡 ユースケース 🔐 コードレビュー後に編集権限を付与する対話型ワークフロー 📈 タスクの進捗に応じて権限を段階的に拡大するプログレッシブな自動化 🛡 異常を検知したら即座に制限モードに切り替える防御的エージェント ⚠️ 注意点 ・新しいモードは即座に有効になるため、切り替えのタイミングに注意してください ・モード変更は現在のセッション内でのみ有効です ・`bypassPermissions` や `auto` モードに切り替えた場合、サブエージェントにも継承される点に注意が必要です ✨ 権限の動的変更は「最初は安全に、必要に応じて柔軟に」を実現する強力なツールです。段階的な信頼構築のワークフローにぜひ活用してください! #ClaudeAgentSDK# #AIAgent#
もっと見る
# Claude Agent SDKの便利だけど知られていない機能 🌍 AIがファイルを変更しても、いつでも元に戻せる安心感。 ファイルチェックポイントを使えば、Write/Edit/NotebookEditによる変更を自動追跡し、任意の時点にロールバックできます。 📌 タイトル:ファイルチェックポイントとロールバック 🔗 URL: 🧩 概要 ファイルチェックポイントは、エージェントセッション中のファイル変更を追跡する機能です。enable_file_checkpointing=Trueを設定すると、Write・Edit・NotebookEditツールによるファイル変更前にバックアップが自動作成されます。各UserMessageのUUIDがチェックポイントとして機能し、rewind_files()でそのUUID時点の状態に復元できます。新規作成されたファイルは削除され、変更されたファイルは元の内容に戻ります。 🛠 使い方 ```python import asyncio from claude_agent_sdk import ( ClaudeSDKClient, ClaudeAgentOptions, UserMessage, ResultMessage, ) async def main(): # Step 1: チェックポイントを有効化 options = ClaudeAgentOptions( enable_file_checkpointing=True, permission_mode="acceptEdits", extra_args={"replay-user-messages": None}, # UUID取得に必須 ) checkpoint_id = None session_id = None async with ClaudeSDKClient(options) as client: await client.query("認証モジュールをリファクタリングして") # Step 2: UserMessageからチェックポイントUUIDを取得 async for message in client.receive_response(): if isinstance(message, UserMessage) and message.uuid and not checkpoint_id: checkpoint_id = message.uuid if isinstance(message, ResultMessage) and not session_id: session_id = message.session_id # Step 3: セッションを再開してロールバック if checkpoint_id and session_id: async with ClaudeSDKClient( ClaudeAgentOptions( enable_file_checkpointing=True, resume=session_id ) ) as client: await client.query("") # 空プロンプトで接続を開く async for message in client.receive_response(): await client.rewind_files(checkpoint_id) break print(f"チェックポイントに巻き戻しました: {checkpoint_id}") ``` 🏗 本番システムへの組み込み方 ・extra_args={"replay-user-messages": None}は必須です。これがないとUUIDがストリームに含まれません ・ロールバック時はセッションをresumeで再開し、空プロンプトで接続後にrewind_files()を呼びます ・チェックポイントUUIDとセッションIDを永続化しておけば、プロセス再起動後もロールバック可能です ・permission_mode="acceptEdits"と組み合わせることで、ファイル変更を自動承認しつつ安全にロールバックできます 💡 ユースケース 🔧 安全なリファクタリング:変更を試して、問題があれば即座にロールバック 🧪 実験的コード生成:AIの出力を検証し、品質が低ければ元に戻す 📝 ドキュメント自動生成:生成結果をレビューして、不要な変更だけ取り消し ⚠️ 注意点 ・Bashコマンド(echo > file.txt、sed -i 等)による変更は追跡されません ・チェックポイントはファイルの内容のみを追跡します。ディレクトリの作成・移動・削除は元に戻りません ・会話履歴はロールバックされません。ファイルのみが復元されます ・チェックポイントは作成したセッションに紐づいています ✨ 「取り消し」できるAI開発で、安心してコードを任せましょう! #ClaudeAgentSDK# #AIAgent#
もっと見る
# Claude Agent SDKの便利で実践的な使い方 💬 エージェントとの会話を継続・再開・分岐させて、複雑なタスクをマルチターンで進められます。 セッション管理は、`continue`・`resume`・`fork` で会話の継続・再開・分岐を実現し、コンテキストを維持したマルチターン対話を可能にする機能です。 📌 タイトル:セッションの操作 🔗 URL: 🧩 概要 セッションにより会話の文脈が保持されます。Python は `ClaudeSDKClient`(セッション ID 自動管理)、TypeScript は `continue: true` でマルチターンを実現します。`resume` で中断したセッションを再開、`fork_session` で履歴を分岐して代替案を探索できます。 🛠 使い方 ```python # 再開 options = ClaudeAgentOptions(resume=session_id) # 分岐 options = ClaudeAgentOptions(fork_session=True) ``` 🏗 実践的な使い方 ・「認証モジュールを分析して」→「JWT 化してリファクタして」と文脈を引き継ぐマルチターン対話を構築します。 ・`error_max_turns` で終了したセッションを `resume` でより高い上限で再開し、続きから実行します。 ・`fork_session=True` で元セッション(JWT 路線)を壊さず OAuth2 路線を別ブランチで探索。2つの独立した履歴を保持します。 ・`list_sessions` / `get_session_messages` / `rename_session` でセッションピッカー UI やクリーンアップ処理を構築します。 💡 ユースケース 🔄 制限到達後のセッション再開による継続実行 🌿 fork による代替アプローチの並行探索 🗂 セッション一覧 UI の構築 ⚠️ 注意点 セッションは `~/.claude/projects//.jsonl` に保存されます。ホスト間での再開には `cwd` の一致が必要です。サブエージェントのトランスクリプトはメイン会話と独立して永続化されます。 #ClaudeAgentSDK# #AI#
もっと見る
# Claude Agent SDKの便利で実践的な使い方 🔍 数百〜数千のツールを効率的に管理し、必要なツールだけオンデマンドでロードできます。 ツール検索は、大量のツールをコンテキストに事前ロードする代わりに、必要なツールだけを実行時に検索・ロードする機能です。 📌 タイトル:多くのツールにスケーリングするツール検索 🔗 URL: 🧩 概要 `ENABLE_TOOL_SEARCH=auto` でツール定義がコンテキストを圧迫する場合に自動的にツール検索を有効化します。50ツールで10〜20Kトークン消費、30〜50ツール超で選択精度が低下する問題を解決します。 🛠 使い方 ```bash export ENABLE_TOOL_SEARCH=auto:5 # コンテキストの5%超で有効化 ``` 🏗 実践的な使い方 ・エンタープライズ MCP サーバー(数百ツール)接続時に、必要なツールだけオンデマンド検索してコンテキスト圧迫を防ぎます。 ・`auto:5` で「ツール定義がコンテキストの5%超ならツール検索を有効化」と自動判定。小規模(10ツール未満)なら `false` で事前ロードの方が高速です。 ・ツール説明に「キーワード、チャネル、日付範囲で Slack メッセージを検索」のような具体的キーワードを入れ、検索ヒット率を向上させます。 💡 ユースケース 🏢 大規模 MCP サーバーのツール管理 💰 トークンコストの最適化 🎯 ツール選択精度の維持 ⚠️ 注意点 Claude Sonnet 4 / Opus 4 以降が必要です(Haiku 非対応)。カタログ上限1万ツール、検索ごとに3〜5ツール返却。Vertex AI とサードパーティ `ANTHROPIC_BASE_URL` ではデフォルト無効です。 #ClaudeAgentSDK# #AI#
もっと見る
# Claude Agent SDKの便利で実践的な使い方 🛡 プロンプトインジェクション対策・認証情報プロキシ・最小権限で多層防御を構築しましょう。 セキュアデプロイメントは、分離技術・認証情報プロキシ・ネットワーク制御でエージェントの安全な本番運用を実現するガイドです。 📌 タイトル:AI エージェントの安全なデプロイ 🔗 URL: 🧩 概要 sandbox-runtime / Docker / gVisor / Firecracker の分離技術、認証情報プロキシパターン、ネットワーク・ファイルシステム制御を組み合わせた多層防御を提供します。 🛠 使い方 分離強度に応じて技術を選択:単一開発者/CI は sandbox-runtime、マルチテナントは gVisor/Firecracker。認証情報は Envoy / mitmproxy / LiteLLM で境界外注入します。 🏗 実践的な使い方 ・認証情報プロキシパターン:API キーをエージェント境界外のプロキシで注入し、エージェントは認証情報を見ずに API 呼び出しします。`ANTHROPIC_BASE_URL` でルーティング。 ・最小権限:必要ディレクトリのみ読み取り専用マウント、`.env`・`~/.aws/credentials`・`*.pem` を除外、`--network none` + Unix ソケットプロキシでネットワーク制限。 ・クラウドではプライベートサブネット + クラウドファイアウォールでプロキシ以外の送信を全ブロックし、許可リスト強制・認証情報注入・全トラフィックログを実現します。 💡 ユースケース 🔐 認証情報のエージェント境界外管理 🌐 ネットワーク制限による外部送信の防止 🏢 マルチテナント環境での強分離 ⚠️ 注意点 信頼できないコンテンツ(README、Web ページ、ユーザー入力)にはプロンプトインジェクションが含まれる可能性があります。ネットワーク制御は最後の防衛線として必ず設定してください。 #ClaudeAgentSDK# #AI#
もっと見る
# Claude Agent SDKの便利だけど知られていない機能 🌍 SDK エージェントが読み込む設定ファイルを、setting_sources で細かくコントロールできます。 CLAUDE.md、スキル、フック、settings.json の読み込み元を選択的に制御し、マルチテナント環境での分離も実現できます。 📌 タイトル:setting_sources による .claude/ 設定の選択的ロード 🔗 URL: 🧩 概要 `setting_sources`(TypeScript では `settingSources`)は、SDK がファイルシステムからどの設定を読み込むかを制御するオプションです。3つのソースがあります。`"project"` は `/.claude/` 配下の settings.json、フック、CLAUDE.md、スキルを読み込みます。`"user"` は `~/.claude/` 配下のユーザーレベル設定を読み込みます。`"local"` は `.claude/settings.local.json` や `CLAUDE.local.md` を読み込みます。省略時はすべて(`["user", "project", "local"]`)が有効になります。空配列 `[]` を渡すとすべてのファイルシステム設定を無効化できます。なお、マネージドポリシーと `~/.claude.json` は常に読み込まれます。 🛠 使い方 `setting_sources` にリストを渡して、必要なソースのみを有効化します。 ```python from claude_agent_sdk import query, ClaudeAgentOptions # プロジェクトとユーザーの設定を読み込む async for message in query( prompt="Help me refactor the auth module", options=ClaudeAgentOptions( setting_sources=["user", "project"], # CLAUDE.md, skills, hooks を有効化 allowed_tools=["Read", "Edit", "Bash"], ), ): pass # すべてのファイルシステム設定を無効化(プログラムで渡す設定のみ使用) async for message in query( prompt="Analyze this code", options=ClaudeAgentOptions( setting_sources=[], # ファイルシステムからの設定読み込みを完全に無効化 ), ): pass ``` 🏗 本番システムへの組み込み方 ・マルチテナント環境では `setting_sources=[]` と `CLAUDE_CODE_DISABLE_AUTO_MEMORY=1` を組み合わせて、テナント間の設定漏洩を防止できます ・CLAUDE.md を SDK エージェントで活用するには `"project"` を含める必要があります(含めないと読み込まれません) ・各ソースの読み込み先は以下の通りです: - `"project"`: `/.claude/` から settings.json とフック、`` と親ディレクトリから CLAUDE.md とルール - `"user"`: `~/.claude/` からユーザー設定、CLAUDE.md、ルール - `"local"`: `/.claude/settings.local.json` と親ディレクトリの CLAUDE.local.md 💡 ユースケース 🔒 セキュアなマルチテナント:各テナントを独立したファイルシステムで実行し、`setting_sources=[]` で他テナントの設定を遮断する 🏗 CI/CD パイプライン:`"project"` のみを有効にして、リポジトリ固有の CLAUDE.md とスキルだけを読み込む 👤 ユーザーカスタマイズの許可:`"user"` を含めることで、開発者個人の `~/.claude/CLAUDE.md` も反映する ⚠️ 注意点 ・`setting_sources` で制御できないものがあります:マネージドポリシー、`~/.claude.json`、オートメモリ(`~/.claude/projects/` 配下)、 MCP コネクタ ・オートメモリを無効にするには `autoMemoryEnabled: false` または環境変数 `CLAUDE_CODE_DISABLE_AUTO_MEMORY=1` を設定してください ・`setting_sources` を明示的に設定する場合、デフォルトの3ソースすべてが無効化されるため、必要なソースを漏れなくリストしてください ✨ setting_sources を適切に設定することで、エージェントの設定読み込みを精密に制御し、安全で予測可能な動作を実現できます。 #ClaudeAgentSDK# #AIAgent#
もっと見る
# 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#
もっと見る