Skip to main content

Bookmark, categorize, and restore AI coding sessions with aweswitch profiles.

Project description

aweshelf

aweshelf: Session Bookmark Manager

Bookmark, categorize, and restore AI coding sessions with aweswitch profiles.

A lightweight CLI-first tool for Claude Code and Codex session management.

English · 简体中文

Version Python

Status pip install Platform PyPI downloads GitHub stars

Bookmark, categorize, and restore AI coding sessions with aweswitch profiles.

aweshelf lets you save your favorite Claude Code and Codex sessions, tag them with categories, and restore them instantly — including the aweswitch profile (API endpoint, model, token) that was active when you bookmarked.

Install

pip install aweshelf

Quick Start

# Bookmark the current project's most recent session
aweshelf bookmark

# List all bookmarks
aweshelf list

# Resume a bookmark
aweshelf resume aweshelf_0001

# Browse interactively
aweshelf browse

Config

Bookmarks are stored at ~/.config/aweshelf/bookmarks.json. Override with AWESHELF_CONFIG env var.

{
  "version": 1,
  "bookmarks": [
    {
      "id": "aweshelf_0001",
      "provider": "claude",
      "session_id": "550e8400-...",
      "title": "Fix auth middleware bug",
      "category": "backend",
      "project_path": "/Users/peng/Desktop/Project/my-app",
      "aweswitch_profile": "cc-glm",
      "bookmarked_at": "2026-05-20T14:00:00Z"
    }
  ]
}

Commands

aweshelf bookmark [SESSION_ID] [-t TITLE] [-c CATEGORY] [--profile PROFILE] [--current] [--verbose]
aweshelf list [-c CATEGORY] [-p PROVIDER]
aweshelf search QUERY              # search title, category, session, project, prompt, profile
aweshelf recent [-n COUNT]
aweshelf show BOOKMARK_ID [--json]
aweshelf edit BOOKMARK_ID [-t TITLE] [-c CATEGORY] [--profile PROFILE]
aweshelf rm BOOKMARK_ID [--force]
aweshelf resume BOOKMARK_ID [--profile PROFILE] [--raw] [--dry-run]
aweshelf browse
aweshelf help [COMMAND]

Browse (TUI)

aweshelf browse opens an interactive TUI with a sidebar table and detail pane. aweshelf bookmark marks already-bookmarked sessions and can update them after confirmation. Use aweshelf bookmark --current to confirm and save the most recent session in the current project without opening the session picker. Interactive bookmarking prompts for title, category, and Claude aweswitch profile; profile selection is skipped when aweswitch is not configured.

Key Action
Enter Resume selected session (with confirmation)
e Inline-edit the current cell (title, category, profile)
r Remove selected bookmark (with confirmation)
y / n Confirm / cancel action
c Toggle between Category-grouped and All view
s Cycle sort order (category+id / id)
/ Filter bookmarks
Esc Clear filter / cancel
[ / ] Shrink / grow sidebar
? Show keyboard shortcuts
q Quit

In edit mode: type to edit the active cell, Delete to clear it, Tab/Right to next field, Shift+Tab/Left to previous, Up/Down to move rows, Enter to save, Esc to exit.

Development

python -m pytest tests/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aweshelf-0.1.3.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aweshelf-0.1.3-py3-none-any.whl (23.2 kB view details)

Uploaded Python 3

File details

Details for the file aweshelf-0.1.3.tar.gz.

File metadata

  • Download URL: aweshelf-0.1.3.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for aweshelf-0.1.3.tar.gz
Algorithm Hash digest
SHA256 24650d9d4d4f5854d22acc8a8bcaf6d903b4efc1f8b7d13041812bd00a39c125
MD5 3cbf6f3cb56fe0344814b1ba535984a0
BLAKE2b-256 fc91c024dd01ca3c0569951c6f4a51def3031a61fe080f909f8b8c49ff25b327

See more details on using hashes here.

File details

Details for the file aweshelf-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: aweshelf-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 23.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for aweshelf-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6bce135fb65647b033d4b6d57116ecbc2917f949a5e18e04cd37ed284d9e6c19
MD5 8f253e9938aef9df4386b138bf70d21b
BLAKE2b-256 d2c78c836e3d9eaf36d2f44c0f764cc4fffee12e5e0601137784d8784aa52149

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page