Skip to content

feat: folder-prefixed session tabs and right-click rename - #76

Open
tcsenpai wants to merge 1 commit into
patoles:mainfrom
tcsenpai:feat/session-folder-label-rename
Open

tcsenpai wants to merge 1 commit into
patoles:mainfrom
tcsenpai:feat/session-folder-label-rename

Conversation

@tcsenpai

@tcsenpai tcsenpai commented Sep 9, 2026

Copy link
Copy Markdown

Why

When sessions from different projects are open, tabs only show the first user message, so it's hard to tell which session belongs to which project. This is most visible in the standalone app (npx agent-flow-app) run from a parent folder, and in multi-root workspaces.

What

  • Plumb the session cwd through SessionInfo and lifecycle events for all three sources: Claude JSONL watcher, Codex rollout watcher, dev relay. For Claude it comes from transcript entries; for Codex it reuses the session_meta.cwd already read for the workspace filter.
  • Session tabs prefix the label with the folder name (agent-flow · fix the parser) only when running standalone or when open sessions span more than one cwd. Single-workspace VS Code is unchanged.
  • Right-click a tab to rename it inline: Enter saves, Esc cancels, empty resets to the default label. Names persist in localStorage keyed by session id and take precedence over label updates from the backend.

Testing

  • tsc --noEmit clean for extension/ and web/
  • Existing tests pass (32/32)
  • Manually built with pnpm run build:app

https://claude.ai/code/session_01AGs5TZo6yxv7NHARHawyJf

Sessions from different projects all showed only their first user message,
making tabs ambiguous in the standalone app and in multi-workspace setups.

- Plumb the session cwd through SessionInfo and lifecycle events for all
  three sources (Claude JSONL watcher, Codex rollout watcher, dev relay).
- Session tabs prefix the label with the folder name when running standalone
  or when sessions span more than one cwd; single-workspace VS Code is unchanged.
- Right-click a tab to rename it inline (Enter saves, Esc cancels, empty
  resets). Names persist in localStorage keyed by session id.

Claude-Session: https://claude.ai/code/session_01AGs5TZo6yxv7NHARHawyJf
@cla-assistant

cla-assistant Bot commented Sep 9, 2026 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant