原文(日本語に翻訳)
claude --continue -p が -p またはSDKで作成されたセッションを正しく継続しない問題を修正しました。
原文(英語)
Fixed claude --continue -p not correctly continuing sessions created by -p or the SDK
概要
-p(print mode)フラグや Claude Code SDK を使用して作成されたセッションを、--continue -p で継続しようとした場合に、正しくセッションが引き継がれないというバグがありました。このアップデートにより、-p またはSDKで作成されたセッションでも --continue が正しく機能するようになりました。
基本的な使い方
bash
# -p (print mode) でセッションを開始
claude -p "初期設定を実行して"
# 後で同じセッションを継続(修正前は正しく継続されない場合があった)
claude --continue -p "次のステップを実行して"
# 修正後: セッションが正しく引き継がれる実践例
print modeでの連続タスク実行
bash
#!/bin/bash
# print modeを使った連続タスクのスクリプト
# ステップ1: プロジェクトを分析
echo "Step 1: プロジェクト分析"
claude -p "このプロジェクトの構造を分析して、問題点を3つ挙げて"
# ステップ2: 前のセッションの文脈を引き継いで続行
echo "Step 2: 問題の修正"
claude --continue -p "先ほど挙げた問題のうち、最初の問題を修正して"
# ステップ3: さらに続行
echo "Step 3: テストの実行"
claude --continue -p "修正した箇所のユニットテストを作成して"
# 修正後: 各ステップで前のコンテキストが正しく引き継がれるSDK を使ったセッションの継続
python
# Python SDK でセッションを作成
from anthropic import Anthropic
import subprocess
client = Anthropic()
# SDKでセッションを開始
response = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=1024,
messages=[
{"role": "user", "content": "プロジェクトの設計を考えて"}
]
)
print(response.content[0].text)
# セッションIDを取得(実際の実装による)
session_id = response.session_id # 実装による
# CLIから同じセッションを継続(修正後)
result = subprocess.run(
["claude", "--continue", "-p", "設計に基づいてコードを生成して"],
capture_output=True, text=True
)
print(result.stdout)CI/CDパイプラインでの多段階処理
bash
#!/bin/bash
# CI/CDパイプラインでの多段階AI処理
set -e # エラーで停止
echo "=== コードレビューパイプライン ==="
# 第1段階: コードの分析
echo "1. コードを分析中..."
claude -p "src/ ディレクトリのコードを分析して、改善が必要な箇所を特定して" \
> /tmp/analysis.txt
echo "分析完了:"
cat /tmp/analysis.txt
# 第2段階: 前のコンテキストを引き継いで改善提案
echo "2. 改善提案を生成中..."
claude --continue -p "特定した問題に対して、具体的な改善コードを生成して" \
> /tmp/improvements.txt
echo "改善提案完了:"
cat /tmp/improvements.txt
# 第3段階: テスト生成
echo "3. テストを生成中..."
claude --continue -p "改善したコードに対するテストケースを生成して" \
> /tmp/tests.txt
echo "テスト生成完了:"
cat /tmp/tests.txtセッション継続の確認
bash
# セッションが正しく継続されているか確認
claude -p "私の名前はAliceです。覚えておいてください。"
# セッションIDを確認(ログなどから)
SESSION_ID=$(ls -t ~/.claude/sessions/ | head -1)
# セッションを継続して確認
claude --continue -p "私の名前を教えてください"
# 修正後: "あなたの名前はAliceですね" と正しく応答される
# 修正前: セッションが引き継がれず、名前を覚えていない注意点
- このバグは
-p(print mode)またはSDKで作成されたセッションに限定して発生していました - インタラクティブなCLIセッションでは正常に動作していました
- 修正後は、どの方法で作成されたセッションでも
--continueが正しく機能します - スクリプトでの自動化処理や CI/CD パイプラインで特に重要な修正です
--continueは最後のセッションを継続します。特定のセッションを継続するには--resume SESSION_IDを使用してください