Auto-rename sessions after first exchange

Resolved 💬 3 comments Opened Apr 4, 2026 by joeellis Closed Apr 8, 2026

Problem

Session names are most useful when they reflect the actual conversation topic, but that's unknowable at session start. Today, /rename (no args) auto-generates a good name from conversation history — but you have to remember to invoke it manually every time.

This is a small friction that adds up. Most sessions never get renamed, so /resume lists a wall of unnamed sessions.

Proposal

Add a --auto-rename flag (or equivalent setting) that automatically names the session after the first assistant response, using the same logic /rename already uses.

claude --auto-rename

Or as a persistent setting so it's always on:

{
  "autoRename": true
}

The timing (after the first exchange) is ideal because there's enough context to generate a meaningful name, but it's early enough that the name is visible for the rest of the session.

Alternative

Expose session renaming as a CLI subcommand (e.g., claude session rename <id>) so that hooks can call it. A Stop hook could then handle this. But this is more machinery for the user to wire up — --auto-rename / a setting is the better UX since it's zero-config after enabling.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗