sessions-index.json not indexing sessions — resume picker only shows ~10 of 94 sessions

Resolved 💬 3 comments Opened Feb 26, 2026 by edisonjoao1 Closed Mar 3, 2026

Bug Summary

The resume session picker only shows ~10 sessions when I have 94 session files on disk. The sessions-index.json was auto-generated for the first time today and only indexed 56 out of 94 sessions. The picker then further limits display to ~10 most recent. Search within the picker is also broken — it only searches the displayed sessions, not all sessions.

Previously (v2.1.19), the resume picker showed ALL sessions and search worked across everything.

Environment

  • Claude Code Version: 2.1.33
  • Platform: macOS Darwin 25.1.0
  • Project path: /Users/edison

Steps to Reproduce

  1. Have many sessions over time (94 .jsonl files in my case)
  2. Update to v2.1.33
  3. Open resume session picker
  4. Only ~10 sessions appear
  5. Try searching for a keyword (e.g. "interview") that exists in older sessions
  6. Search returns nothing — only searches the ~10 displayed, not all sessions

Expected Behavior

  • Resume picker shows ALL sessions (as it did in v2.1.19)
  • Search works across all sessions, not just the displayed subset

Actual Behavior

  • sessions-index.json was created for the first time on Feb 26 (birth time confirms this)
  • Only 56 of 94 .jsonl session files were indexed
  • Resume picker further caps display to ~10 sessions
  • Search only searches the ~10 displayed sessions
  • Renamed sessions (customTitle) and recent sessions are both missing

Data

| Metric | Count |
|--------|-------|
| .jsonl files on disk | 94 |
| Entries in sessions-index.json | 56 |
| Sessions shown in resume picker | ~10 |
| Sessions searchable in picker | ~10 |

Version Timeline

| Version | Date | Behavior |
|---------|------|----------|
| 2.1.19 | Jan 26 | Resume picker showed all sessions, search worked ✅ |
| 2.1.32 | Feb 5 | Updated |
| 2.1.33 | Feb 5 | sessions-index.json introduced, sessions go missing ❌ |

Three Distinct Issues

  1. Index not capturing all sessions — 38 of 94 .jsonl files were never added to the index when it was first generated
  2. Picker caps at ~10 — even with 56 indexed sessions, the picker only displays ~10
  3. Search is broken — search only queries the ~10 displayed sessions, not the full index or all .jsonl files

Workaround

Manually rebuilt sessions-index.json with a Python script that scans all .jsonl files. Sessions are intact on disk — just not indexed. Individual sessions can still be resumed via claude --resume <session-id>.

Related

Consolidated issue: #26123

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗