Feature request: composable session naming (naming conventions + project-aware AI titles)

Open 💬 0 comments Opened Jul 10, 2026 by Gruffi-Gummi

Feature description

Please make session naming composable and controllable. Today the pieces exist but cannot be combined:

  • The AI auto-generated session title is great, but it cannot be extended or templated.
  • The SessionStart hook can set sessionTitle, but it fires before the AI title exists, so for brand-new sessions there is nothing to append to.
  • No other hook event (Stop, UserPromptSubmit, ...) may return sessionTitle, and no hook fires after AI title generation.
  • Auto-titling can later overwrite titles set by users or hooks (#35810).
  • In the session picker, the project is only visible after pressing Ctrl+A (all-projects view).

Desired behavior (any of these would solve it)

  1. Title template setting, e.g. in settings.json:

"sessionTitleTemplate": "{aiTitle} · {projectDir}" with placeholders like {aiTitle}, {projectDir}, {gitBranch}, {date}.

  1. A hook event that fires after AI title generation (e.g. SessionTitleGenerated) receiving the generated title and allowed to return a modified sessionTitle.
  2. Respect explicit titles: never auto-overwrite a title set via /rename, --name, or a hook (related: #35810).

Use case

I work across many projects and want a flat, recency-sorted session list where every session reads as <AI summary> · <project>. Currently this is impossible: hooks only work on resume (not for new sessions), can be overwritten by auto-titling, and do not apply to the desktop app sidebar.

Related issues

  • #35810 (auto-rename overwrites user titles)
  • #25870 (session name at launch)
  • #60954 (session grouping/sorting in the picker)

View original on GitHub ↗