session-namelisted
Install: claude install-skill YoniChechik/claude-code-config
Sets (or re-sets) the current session's display name: a short, human-readable
label stored in a per-session sidecar file. A status line and the cmux
workspace title read only this file — there is no fallback to the
branch/worktree name. Where this tool also has its own native session-rename
command (Step 9), this skill additionally triggers it inside cmux — a
separate naming layer covering the terminal title, the session picker, and
any companion app. Safe to re-run any number of times in one session as the
topic drifts; each run is a fresh decision, not a one-time setup step.
## Step 1: Resolve the candidate name
Run `resolve` from this skill's own directory (the "Base directory for this
skill" path given above, not a hardcoded path) against `$ARGUMENTS` if
non-empty, or otherwise a short (well under 35 codepoints) label you decide
from the current conversation, branch name, and task at hand:
```bash
bash "<skill-base-dir>/rename_session.sh" resolve "<candidate name>"
```
This sanitizes and caps the candidate (strips control bytes and backslashes,
drops invalid UTF-8, trims whitespace, caps at 35 Unicode **codepoints** —
never a byte-slice, which can split a multi-byte character mid-sequence) and
compares it to the currently stored name.
- **Exit 1** (a candidate that sanitizes to empty — all-whitespace, all-control-byte,
or all-backslash): report the error to the user and stop. Writing an empty
name would silently clear the status-line segment and blank the workspa