You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Align recent sessions UX with ChatGPT-style navigation and fix archive/worktree labeling #78
Improve session/worktree navigation so the recent sessions experience is closer to ChatGPT-style history and clearer at scale.
Requested changes
Make the recent sessions panel behave more like ChatGPT history UX.
Fix archiving from the recent sessions panel so archived sessions disappear immediately and do not remain visible in recent sessions.
Show a clear prefix before each recent session title so it is obvious which project/folder/worktree the session belongs to.
When creating a new worktree, prefix its generated name with the root project folder name and append a numeric timestamp in YYYY-MM-DD-HH-mm format instead of using a random adjective/noun name.
Acceptance criteria
Recent sessions are grouped and rendered in a clearer history-oriented UI.
Archiving a session from recent sessions removes it from the list without needing a reload.
Recent sessions show project/worktree context before the session title.
New worktree names follow the <project>-<YYYY-MM-DD-HH-mm> format and remain unique.
Recent sessions now load full thread data instead of root-only rows, so child sessions can render nested under their parent.
Recent session lists are grouped into ChatGPT-style date sections and each item shows a project/worktree prefix before the session title.
Archiving from the recent sidebar now removes the session immediately in the UI, and session archiving now cascades to descendants so child branches do not reappear as orphaned recent items after refresh.
New worktree names now use <project-folder>-<YYYY-MM-DD-HH-mm> with numeric suffixes for collisions, and the app displays the generated worktree name instead of the internal opencode/... branch ref.
Verification:
packages/app: bun typecheck
packages/app: bun test --preload ./happydom.ts ./src/utils/recent-session.test.ts
packages/opencode: bun typecheck
packages/opencode: bun test test/server/global-session-list.test.ts test/project/worktree-create.test.ts
packages/app: bun test:e2e:local -- -- e2e/sidebar/sidebar-recent-panel.spec.ts e2e/projects/workspaces.spec.ts
UX enhancement request. Current sidebar implements grouped-by-time session history (Today, Yesterday, Previous 7 Days), collapsible sections with chevrons, and worktree labels. The core ChatGPT-style UX pattern is present. Further polish is a design decision, not a bug.
Activity
OpenCodeEngineer commentedon Mar 28, 2026
Implemented and verified.
What landed:
<project-folder>-<YYYY-MM-DD-HH-mm>with numeric suffixes for collisions, and the app displays the generated worktree name instead of the internalopencode/...branch ref.Verification:
packages/app:bun typecheckpackages/app:bun test --preload ./happydom.ts ./src/utils/recent-session.test.tspackages/opencode:bun typecheckpackages/opencode:bun test test/server/global-session-list.test.ts test/project/worktree-create.test.tspackages/app:bun test:e2e:local -- -- e2e/sidebar/sidebar-recent-panel.spec.ts e2e/projects/workspaces.spec.tsFollow-up documented separately:
dzianisv commentedon Jun 21, 2026
UX enhancement request. Current sidebar implements grouped-by-time session history (Today, Yesterday, Previous 7 Days), collapsible sections with chevrons, and worktree labels. The core ChatGPT-style UX pattern is present. Further polish is a design decision, not a bug.