Register and share your invite link to earn from video plays and referrals.

cv usk
@cv_usk
AI / Software Research Notes AI Agent, LLMOps, MLOps, Software Architecture 投稿は個人の意見です。
Joined May 2026
258 Following    228 Followers
# 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#
Show more