[FEATURE] Desktop sidebar: add a sort-direction toggle (ascending / oldest-first) to the session list

Status Open
Reported on v2.1.219
Maintainer reply None cached
Activity 0 comments · opened Aug 4, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

In the Claude Code desktop app sidebar, the session list can only be read newest-first. Every available sort is hard-coded to a single direction:

| Sort by value | Label | Direction |
|---|---|---|
| recency | Recency | newest → oldest, fixed |
| created | Created time | newest → oldest, fixed |
| alpha | Alphabetically | A → Z, fixed |

There is no ascending/descending control anywhere in the filter popover.

After months of daily use I have several hundred sessions. When I want to walk a long-running piece of work forward in time — "how did this project start, and what happened in what order?" — the only way to reach the oldest entries is to click Load more sessions repeatedly until I hit the bottom of the entire history. The data is all there; it is just unreachable from the wrong end.

The same gap applies to Alphabetically: there is A→Z but no Z→A.

Proposed Solution

Add a sort-direction control to the sidebar filter popover (the sliders / Filter icon), applying to whichever Sort by value is active:

Sort by  ▸  Recency          ●
            Created time
            Alphabetically
            ─────────────
            Ascending        ○
            Descending       ●

Either a two-item radio group (Ascending / Descending) or a single toggle item ("Reverse order") solves it. Persist it alongside the existing preference — e.g. a sortDirByMode sibling to the current sortByByMode — so it survives relaunch and follows the per-mode (code / cowork) convention already in place.

Alternative Solutions

Workarounds I currently use, none of which actually solve the problem:

  • Pinning — keeps a handful of sessions at the top, but pinned items always sort ahead of everything else; it does not reverse the list.
  • Custom groups — requires manual per-session assignment and does not change ordering within a group.
  • Group by: Date — the date buckets still render newest-first.
  • Clicking Load more sessions repeatedly to page back to the beginning.

Priority

Medium - Would be very helpful

Feature Category

Other — desktop app sidebar / session list (none of the listed categories covers the desktop UI)

Use Case Example

  1. I run long, multi-week workstreams in Claude Code (monthly reporting pipelines, internal factory systems), each spanning dozens of sessions.
  2. Weeks later I need to reconstruct the sequence: what was decided first, what got revised, in what order.
  3. Today I open the sidebar, set Sort by: Created time, then click Load more sessions ~10 times to page back to the start, because the oldest session sits at the far end of the list.
  4. With a direction toggle I would flip to Ascending once and read forward from the first session.

Additional Context

Verified against the shipped desktop bundle (resources/ion-dist/assets/v1/shared-17-*.js), where the sidebar sort options are a fixed 3-tuple list with no direction field:

gw = [["alpha","Alphabetically"], ["created","Created time"], ["recency","Recency"]]

and the comparator is selected by name only:

rw = { recency: Kl, alpha: Jc, created: Rc }

The persisted (zustand, synced) state carries sortByByMode but no companion direction key.

Environment: Claude desktop app 1.24012.11.0 (Windows 11, MSIX), Claude Code 2.1.219.

Related: #81884 reports that Sort by is inert for project group headers under Group by: Project. That is a separate defect in the same control — this request is about the missing direction axis, which affects all three sort modes equally.

View original on GitHub ↗