Skip to content

feat(terminal): add rename support for terminal tiles#89

Open
kolindes wants to merge 1 commit into
collabs-inc:mainfrom
kolindes:main-windows-pr-suggest
Open

feat(terminal): add rename support for terminal tiles#89
kolindes wants to merge 1 commit into
collabs-inc:mainfrom
kolindes:main-windows-pr-suggest

Conversation

@kolindes

Copy link
Copy Markdown

Adds the ability to rename terminal sessions from the terminal list panel (right sidebar). Custom names persist across restarts and sync with the tile title bar on the canvas.

How it works:

  • Hover over a terminal entry in the list — a pencil icon (✎) appears
  • Click the icon or double-click the terminal name to enter edit mode
  • Type a new name, press Enter to save (or Escape to cancel)
  • The tile title bar on the canvas updates immediately
  • Names are stored in canvas-state.json as customName on each terminal tile

Files changed (7):

  • canvas-persistence.tscustomName?: string added to TileState
  • tile-manager.js — save/restore customName, new renameTerminal() method
  • tile-renderer.jsgetTileLabel() prioritizes customName for terminal tiles
  • renderer.jsterminal-list:rename IPC handler, customName in list entries
  • terminal-list/App.tsx — rename button, double-click edit, inline input
  • terminal-list/App.css.rename-btn and .rename-input styles
  • universal.tsterminal-list:renamed added to listener channels

Testing:

  • Created terminal tiles, renamed via pencil button and double-click
  • Verified name persists after app restart
  • Verified tile title bar updates on canvas
  • Verified empty name reverts to default (cwd/displayName)
  • Verified Escape cancels edit without saving
  • Build passes (bun run build)

Add the ability to rename terminal sessions from the terminal list panel.
Custom names persist across restarts via canvas-state.json and sync with
the tile title bar on the canvas.

- Double-click terminal name or click pencil icon to enter edit mode
- Enter saves, Escape cancels, blur auto-saves
- customName field added to TileState and persisted in canvas state
- getTileLabel prioritizes customName over cwd/displayName
- IPC: terminal-list:rename → renameTerminal → terminal-list:renamed
- Styles: .rename-btn (hover reveal), .rename-input (inline edit)
@yiliush

yiliush commented Mar 30, 2026

Copy link
Copy Markdown
Contributor

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@kolindes

Copy link
Copy Markdown
Author

I have read the Contributor License Agreement (CLA) and hereby sign 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.

2 participants