Skip to content

feat(desktop): add bulk archive/unarchive for sessions - #48931

Closed
nurazhardotcom wants to merge 1 commit into
NousResearch:mainfrom
nurazhardotcom:feature/bulk-session-archive
Closed

feat(desktop): add bulk archive/unarchive for sessions#48931
nurazhardotcom wants to merge 1 commit into
NousResearch:mainfrom
nurazhardotcom:feature/bulk-session-archive

Conversation

@nurazhardotcom

Copy link
Copy Markdown

Summary

Adds bulk archive/unarchive capability for sessions in Hermes Desktop. Users with many sessions can select multiple and archive/unarchive them in one action instead of clicking each session's kebab menu individually.

Changes

Backend:

  • POST /api/sessions/bulk-archive endpoint in hermes_cli/web_server.py
  • Mirrors the existing bulk-delete pattern with 500-item cap
  • Unknown IDs silently skipped (same behavior as bulk-delete)

Frontend:

  • archiveSessions() helper in apps/desktop/src/hermes.ts

Tests:

  • test_bulk_archive_sessions and test_bulk_unarchive_sessions in tests/hermes_cli/test_web_server.py

Notes

  • UI selection checkboxes and bulk action bar in session-row/sidebar components are still needed for the full feature. This PR covers the backend endpoint and frontend API helper.
  • All existing tests pass.

Testing

  • python -m pytest tests/hermes_cli/test_web_server.py -x -q — all green

- Add POST /api/sessions/bulk-archive endpoint
- Add archiveSessions() TS helper in hermes.ts
- Add tests for bulk archive and unarchive

Mirrors the existing bulk-delete pattern for sessions.
Allows desktop users to archive multiple sessions at once instead
of clicking each session's kebab menu individually.
@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have comp/tui Terminal UI (ui-tui/ + tui_gateway/) comp/cli CLI entry point, hermes_cli/, setup wizard comp/gateway Gateway runner, session dispatch, delivery labels Jun 19, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Related: #39376 (broader competing implementation) and feature request #48843. This PR covers only the backend /api/sessions/bulk-archive endpoint plus the archiveSessions() frontend API helper (UI selection/bulk-action bar still pending), whereas #39376 includes the full sidebar UI wiring. Reviewers should reconcile the two approaches for #48843.

@alaamohanad169-ship-it

Copy link
Copy Markdown
Contributor

Acknowledged: noted competing PR(s) #39376, #48843, #39376, #48843. My approach differs and is complementary, not mutually exclusive. Open to consolidating if reviewers prefer one direction.

@nurazhardotcom nurazhardotcom closed this by deleting the head repository Jun 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/cli CLI entry point, hermes_cli/, setup wizard comp/gateway Gateway runner, session dispatch, delivery comp/tui Terminal UI (ui-tui/ + tui_gateway/) P3 Low — cosmetic, nice to have type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants