session list reads like a menu instead of a wall of opaque ids.
Quick Start
1
Just start a run — no naming needed
2
After the first assistant reply, the title appears automatically
3
Set your own name upfront to opt out
How It Works
Right after the run records usage, a post-run hook checks for the first exchange and generates a title only when one isn’t already set. The hook fires on the CLI post-run boundary ofpraisonai run, praisonai chat, and praisonai code — right after accumulate_session_usage(). It reuses the SDK’s generate_title_async and writes to the same metadata["title"] field that session rename writes and session list reads.
User Interaction Flow
No user action is needed — the title appears on its own after the first assistant reply. Before (first exchange only — title job hasn’t fired yet):session resume 4f9a8c72-... still works. The title is display-only metadata.
Choose Your Path
Pick how a session gets its name.Configuration Options
The auto-title path has no user-facing knobs — these signals govern it.Model resolution
generate_title_async resolves the auxiliary model in this order: an explicit llm_model argument → defaults.small_model (config) → the session’s primary model → a cheap built-in default (gpt-4o-mini). The default resolves at call time, so env overrides set after import still take effect.
Best Practices
You don't need to name new sessions
You don't need to name new sessions
Auto-title fires after the first assistant reply. Just start a run — the name appears on the next
session list.Set --title when you want a specific name
Set --title when you want a specific name
An explicit title is never overwritten by the auto-title path. Use
praisonai session start my-name or --title on session fork to lock in a name upfront.Auto-title never blocks a run
Auto-title never blocks a run
A slow or unavailable model degrades silently to the id / agent-name fallback. The run itself never waits on or fails from title generation.
Legacy sessions get titled on the next turn
Legacy sessions get titled on the next turn
Sessions created before this fix that already have content but no title will earn one on their next
run / chat / code turn.Related
Session
Full CLI reference for all
session subcommandsSession Rename
Override an auto-generated title or set one manually
Project Sessions
Persisted usage shape and project scoping

