session-librarian

Organize AI agent session libraries by searching, renaming, archiving, and pruning sessions.

Updated Jul 3, 2026
One-click install
npx skills add https://github.com/CHENHUI-X/toolbox --skill session-librarian-chenhui-x
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: session-librarian
Source: https://github.com/CHENHUI-X/toolbox/tree/main/custom-skills/productivity/session-librarian
Command: npx skills add https://github.com/CHENHUI-X/toolbox --skill session-librarian-chenhui-x

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Over time an AI agent accumulates hundreds of sessions with cryptic auto-generated titles, making it impossible to find past decisions, and cluttering the library with stale or duplicate conversations. This Skill manages the session library conversationally: it finds sessions by topic, summarizes what was decided, renames them meaningfully, and safely archives or deletes the ones you no longer need. ## Core Features & Use Cases - Topic-Based Discovery: Uses full-text search (session_search) over the message store plus metadata filters (hermes sessions list) to locate sessions by content, age, source, cost, or workspace. - Safe Cleanup Workflow: Presents a plan table before any mutation, prefers reversible archive over delete, and requires --dry-run plus explicit confirmation before destructive prune or delete commands. - Meaningful Renaming & Export: Renames sessions with short, unique, prefix-friendly titles for /resume, and exports valuable sessions to Markdown before deletion. - Parallel Workstreams: Splits work into one delegated task per ticket via delegate_task, with each subagent transcript remaining searchable later. - Use Case: Ask "find my sessions about Q3 pricing, keep the useful ones, and clean up the duplicates" and receive a summarized plan of renames, archives, and proposed deletions to approve before anything changes. ## Quick Start Ask the agent to find all sessions about a specific project, summarize what was decided in each, and propose which stale duplicates to archive.

Frequently Asked Questions about session-librarian

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find past AI agent sessions about a specific topic?

Use the session_search tool with topic keywords and a limit of 5-10 results, varying phrasing such as feature name, symptom, or project name. It runs FTS5 full-text search over the message store and returns goal, match window, and resolution summaries per session.

How do I safely delete old agent sessions without losing important work?

Prefer the reversible archive command over delete, and always run destructive commands with --dry-run first, then re-run with --yes only after explicit confirmation. Export valuable sessions to Markdown with hermes sessions export --format md before deleting them.

What is the difference between archiving and deleting a session?

Archiving is a reversible soft-hide that removes sessions from default listings while keeping them in the database, viewable with --include-archived. Deleting via delete or prune permanently removes sessions and cannot be undone.

Can I filter sessions by age, source, or cost instead of content?

Yes, use the hermes sessions list CLI with flags like --source telegram and --limit for metadata-based filtering. The session_search tool only searches message content, so combine both approaches for mixed requests like old sessions about pricing.

Why should session titles be short and unique when renaming?

Titles serve as identity for the /resume command, so they must be short, unique, and prefix-friendly to resume sessions reliably. The skill warns when a proposed rename collides with an existing title.

How do I split one investigation into multiple parallel sessions?

Use delegate_task with one task per workstream instead of trying to drive other live sessions. Each subagent runs in its own session automatically, and every delegation transcript remains searchable later via session_search.