Repository navigation
Feat/claude cli sessions - #1
Merged
Merged
Conversation
Add Claude CLI session support alongside Codex. A new claude/ module discovers session jsonl files under ~/.claude/projects, ingests their metadata, parses transcripts, and writes back renames and deletes via ai-title events and history.jsonl. Sessions carry a source field so the database, list queries, and scan report can distinguish the two origins. Co-Authored-By: Claude Code <noreply@anthropic.com>
Label each session row and the detail header with its origin so the two session types are distinguishable in the unified list. Co-Authored-By: Claude Code <noreply@anthropic.com>
Add a --source flag to the list command and document Claude CLI session management in the README and example config. Co-Authored-By: Claude Code <noreply@anthropic.com>
Rename the package scope (@codex-keeper -> @session-keeper), CLI binary, SessionKeeper class, config/state paths, and env vars. Add one-time migration from the legacy ~/.config/codex-keeper and ~/.local/state/codex-keeper paths so existing user data carries over. Co-Authored-By: Claude Code <noreply@anthropic.com>
Address security advisories: @fastify/static to 10.1.7 (path traversal / auth bypass), tsx to 4.23.15 (pulls esbuild 0.28), and vitest to 5.0.5 (tinypool / @vitest/mocker RCE and mock-injection advisories). Co-Authored-By: Claude Code <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Claude CLI session support alongside Codex: discover, browse, rename, and delete Claude sessions under
~/.claude/projects, with writeback to the session jsonl (ai-titleevents) andhistory.jsonl(displayfield) so/resumeshows the same name.What changed
feat(core): ingest, browse, rename, and delete Claude CLI sessionsfeat(web): showcodex/claudesource badges on sessionsfeat(cli):--sourcefilter on thelistcommandchore(rename): renamecodex-keeper→session-keeperwith one-time legacy-path migrationchore(deps): upgrade@fastify/static→ 10.1.7,tsx→ 4.23.15,vitest→ 5.0.5docs: updated changelog, readme and docsValidation
npm run buildnpm run web:buildnpm test(58 passing)Notes for reviewers
migrateLegacyPaths()andLEGACY_*constants. Please review that the one-time copy of~/.config/codex-keeper/~/.local/state/codex-keeperis correct and non-destructive.tool_use/tool_resultblocks and hidden bootstrap context.rename_stateso a laterlast-promptevent can't revert a manual rename — this mirrors the existing Codex behavior and is the subtlest part to get right.vitest@5,@fastify/static@10); all tests still pass.bracesremains flagged bynpm auditwith no upstream fix — out of scope here.