Summary
Build a session-state scanner that reads ~/.copilot/session-state/ to backfill brag entries from past Copilot CLI sessions.
What to build
lib/session-state.mjs ΓÇö session-state importer
Scan ~/.copilot/session-state/{id}/ directories and extract:
workspace.yaml → summary, CWD, git root, repo, branch, created_at
events.jsonl → lifecycle timestamps (session.start, session.resume, session.shutdown), model, token usage, duration
Create session records from discovered data with deduplication.
New tool: backfill_copilot_sessions
Scan my copilot session history and create brag entries for the significant ones.
Enhanced orphan recovery
- Use
events.jsonl timestamps to identify crashed/orphaned sessions
- Salvage useful metadata into brag entries
- Generate summaries from session context
Key data sources
| Source |
Path |
Fields |
| workspace.yaml |
~/.copilot/session-state/{id}/ |
cwd, summary, git_root, repository, branch, created_at |
| events.jsonl |
~/.copilot/session-state/{id}/ |
session.start, session.resume, session.shutdown, data.currentModel, data.totalPremiumRequests |
Files to create/modify
- New:
lib/session-state.mjs, test/session-state.test.mjs
- Modify:
extension.mjs (new tool), docs/backfill-guide.md
Estimated effort
- MVP scanner + tool: 2ΓÇô3 days
- Tests + docs: 1 day
Summary
Build a session-state scanner that reads
~/.copilot/session-state/to backfill brag entries from past Copilot CLI sessions.What to build
lib/session-state.mjsΓÇö session-state importerScan
~/.copilot/session-state/{id}/directories and extract:workspace.yaml→ summary, CWD, git root, repo, branch, created_atevents.jsonl→ lifecycle timestamps (session.start,session.resume,session.shutdown), model, token usage, durationCreate
sessionrecords from discovered data with deduplication.New tool:
backfill_copilot_sessionsEnhanced orphan recovery
events.jsonltimestamps to identify crashed/orphaned sessionsKey data sources
~/.copilot/session-state/{id}/cwd,summary,git_root,repository,branch,created_at~/.copilot/session-state/{id}/session.start,session.resume,session.shutdown,data.currentModel,data.totalPremiumRequestsFiles to create/modify
lib/session-state.mjs,test/session-state.test.mjsextension.mjs(new tool),docs/backfill-guide.mdEstimated effort