Claude Media
Claude Codeの終了メッセージが名前でなくUUIDになる理由と再開手順

Claude Codeの終了メッセージが名前でなくUUIDになる理由と再開手順

/renameで名前を付けたのに、終了時の再開コマンドがUUIDになる件の経緯です。v2.1.299の変更点と、名前で再開する手順、IDを控えておく方法をまとめます。

終了時の再開コマンドが名前からUUIDに変わった

/renameでセッションに名前を付けて終了すると、v2.1.299以降は名前でなくセッションIDを使った再開コマンドが表示されます。変更は意図したもので、名前そのものは引き続き再開に使えます。

GitHubのissue #102669は、終了時に出る再開案内が変わったと報告しています。以前はclaude --resume "<セッション名>"の形でしたが、v2.1.299・v2.1.300・v2.1.301ではUUIDの形になった、という内容です。Windowsでも同じ表示になり、v2.1.296では起きなかったとコメントが付いています。

状況終了時に表示される再開コマンド
以前(報告者の記憶ではおよそ1週間前まで)終了時に表示される再開コマンドclaude --resume "My session title"
v2.1.299以降終了時に表示される再開コマンドclaude --resume 60236539-af53-427e-afc6-508de8aff8e8

issue本文の手順は3つです。セッションを始めて/rename My session titleを実行し、そのまま終了し、表示を読むだけです。報告者は「名前で再開するclaude -r "<name>"は今も動く。変わったのは終了メッセージだけで、元に戻す設定も見当たらない」と書いています。

なぜ名前が消えたのか — v2.1.299の変更点

公式のchangelogを見ると、2026年10月14日公開のv2.1.299に次の項目があります。

Changed the resume command printed at exit: it names the session by its ID and no longer by its name, so that nothing in a session name can run when the line is pasted

訳すと「終了時に出す再開コマンドは、名前でなくIDでセッションを指す。貼り付けたときに、セッション名に含まれる何かが実行されないようにするため」です。

つまり不具合ではなく、仕様変更です。セッション名は自由な文字列で、引用符やシェルの特殊文字を含められます。名前入りのコマンドをそのままターミナルに貼ると、名前の一部がシェルに解釈される余地がありました。UUIDなら英数字とハイフンだけなので、その心配が消えます。この理由づけはchangelogの一文に書かれたものです。内部の実装までは公開されていません。

issueの状態はopenのままで、ラベルはbugが付いています。報告者の要望は「名前があれば名前を出し、名前が無いか複数のセッションに一致するときだけIDにフォールバックする」です。一方でchangelogは名前の廃止を理由つきで明記しているので、元の表示に戻るかどうかは、issueの更新を待つしかありません。

同じv2.1.299には、worktreeで起動したセッションの終了表示にも変更があります。長いフラグが端末の幅に収まらないときは-wと-rの短縮形を使い、どちらも収まらず、残したままのworktreeがあるときは、そのコマンドをどこで実行するかを上の行に示す、という内容です。

名前で再開する手順は変わらない

終了メッセージが変わっても、セッションの名前は残っています。公式のsessionsページは、名前を付けたセッションをclaude --resume <name>で直接再開できると説明しています。

claude --resume auth-refactor

名前の付け方は、起動時のclaude -n auth-refactor(--name)、実行中の/rename auth-refactor、セッションピッカーで行を選んでCtrl+Rの3通りです。設定手順そのものはClaude Codeでセッション名を変更する方法にまとめています。

再開コマンドを名前の形で打ち直すとき、見ておく点が2つあります。

くらべる

名前が複数のセッションに一致したとき

ピッカーが開く

claude --resume 名前

名前が検索語として入った状態でセッションピッカーが開き、候補から選べます。完全一致が1件だけなら、そのまま再開します。

エラーになる

/resume 名前

実行中のセッションの中で使うコマンドです。曖昧なときはエラーを返すので、引数なしの/resumeでピッカーを開き直します。

もう一つは、名前の解決範囲です。名前による再開は、現在のリポジトリとそのworktreeにまたがって探します。別のworktreeにあるセッションでも、完全一致なら直接再開できます。

UUIDの表示から困らないための3つの手

終了メッセージのUUIDは、そのままコピーして使えます。ただ、画面をスクロールで流してしまうと、名前だけでは辿れないときがあります。

1. 名前を覚えていれば、名前で再開する

/renameで付けた名前はclaude --resume <名前>で使えます。終了メッセージを読み返す必要がありません。名前を付けたセッションこそ、名前で呼べるのが利点です。

2. 名前を忘れたら、ピッカーから探す

claude --resumeだけを実行するとセッションピッカーが開きます。各行には、名前を付けたセッションなら名前、付けていなければ自動生成のタイトルや最初のプロンプトが出ます。

名前なしのセッションに付く既定の表示名(my-app-3fのような形)は、再開には使えません。--resumeや/resumeに渡しても、そのセッションは見つかりません。自動生成のタイトルは再開に使えます。

3. IDを自分で控えておく

終了メッセージをスクリプトで拾って次の処理に渡している場合は、表示形式が変わった影響を受けます。名前を前提にしていたパースは、v2.1.299以降は動きません。

セッションIDが必要なら、SessionEnd hookの入力から取る方法があります。hookの入力JSONには共通フィールドとしてsession_idが入っているため、終了時に1行追記するだけで、名前の有無に関係なくIDが残ります。

{
  "hooks": {
    "SessionEnd": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "jq -r '[.session_id, .cwd] | @tsv' >> ~/.claude/session-log.tsv"
          }
        ]
      }
    ]
  }
}

この例はjqが入っている環境を前提にした書き方です。SessionEnd hookは終了処理の予算が全体で1.5秒と短いので、追記以外の重い処理は入れません。終了理由ごとの振り分けはSessionEnd hookの後始末で扱っています。

終了時の再開案内は、これまでどう変わってきたか

終了時の案内は、v2.1.31で入った機能です。それ以降、表示される条件と中身が何度か調整されてきました。

あゆみ

終了時の再開案内の変遷

  1. 2026-02-04 / v2.1.31再開案内が初登場

    「会話を後で続ける方法」を終了時に示す案内が追加されました。

  2. 2026-04-10 / v2.1.101/resumeピッカーの不具合修正

    別プロジェクトのセッションが既定表示から隠れる問題、worktreeでの作業ディレクトリの誤りなどと並んで、再開ヒントが入力欄に重なる問題が直されました。

  3. 2026-04-13 / v2.1.105/resume・--worktree・/branch後の表示漏れを修正

    これらの操作を挟んだセッションでは、終了時に案内が出ない不具合がありました。

  4. 2026-05-19 / v2.1.145Windows PowerShell 5.1への対応

    別プロジェクトのセッションを再開するヒントが、PowerShell 5.1で動かない問題が直されました。コマンドの区切りに;を使います。

  5. 2026-10-14 / v2.1.299名前でなくIDで案内する形に変更

    貼り付けたときに名前の一部が実行されないよう、IDで指す形になりました。worktreeセッションでは-wと-rの短縮形も使います。

PowerShell 5.1の修正が示すとおり、この案内は「貼って実行する」前提の1行で、シェルごとの書式にも気を配られてきました。v2.1.299の変更も、貼り付けたときの安全性を理由にしたものです。

自分の環境で確かめるには

手元のバージョンが変更の前か後かは、claude --versionで分かります。v2.1.299以上なら、名前を付けたセッションでもIDの案内になるはずです。v2.1.296以前を使っていて名前入りの案内が出ているなら、更新後に表示が切り替わります。

issueの再現手順は、新しいセッションで/renameして終了するだけです。作業ツリーを汚さずに確かめたいときは、中身のないディレクトリで起動します。表示が名前入りに戻ったかどうかは、issue #102669のコメント欄や、以降のchangelogで追えます。

変更の影響を受けやすいのは、終了メッセージを手で使う人

影響の出方は、終了メッセージの使い方で変わります。

  • 表示をコピーして貼る人:UUID入りのコマンドでそのまま再開できます。操作は変わりません。
  • 名前を見て「どのセッションか」を思い出していた人:UUIDからは内容が分かりません。名前を自分で覚えるか、ピッカーを使います。
  • 終了メッセージの文字列を解析するスクリプトを書いた人:v2.1.299以降は、名前の形を期待する処理が空振りします。IDを受け取る形か、上のhookに切り替えます。

再開の仕組みそのものは変わっていません。複数のセッションを並行して走らせる場合は、名前を付けておくほど、ピッカーでの見分けが楽になります。再開コマンドの全体像はClaude Codeの/resumeコマンドで以前の会話を再開する方法にあります。

参照した一次ソース

この記事の記述は、次の一次ソースと照合しています。更新時に参照先が変わった場合は一覧も更新します。

  1. github.com/anthropics/claude-code/issues/102669
  2. code.claude.com/docs/en/changelog
  3. code.claude.com/docs/en/sessions
  4. code.claude.com/docs/en/cli-reference
  5. code.claude.com/docs/en/hooks
この記事を共有:XはてブLinkedIn