github / github/copilot-cli

filter/scope session tabs & resume list by repository/solution

未关闭
#4,693 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

area:sessions
主要语言
Shell
星标
11.2k
派生
1.9k
平均合并
14 小时 16 分钟
30 天内合并 PR
6

描述

Describe the feature or problem you'd like to solve

Currently, the session tab list and  /resume  picker show all sessions across every repo/solution I've worked in, sorted purely by recency. There's no per-repository scoping —  open-sessions-state.json  only stores  openedAt / working / refreshedAt , no  cwd / repository  field, so the UI has nothing to filter on even if it wanted to. This becomes a real problem when working across multiple unrelated solutions on the same machine (e.g. a Blazor support app vs. an NLQuery/report agent vs. WCF services): sessions from completely different codebases end up mixed together in the tab list, making it hard to find the session relevant to the solution I currently have open.

Proposed solution

persist the working directory/repository per session (the data already exists in the session store itself, just not surfaced in  open-sessions-state.json ), and let the tab list /  /resume  /  /session  picker filter or group by "sessions for this repo" by default, with an option to show all.

Example prompts or workflows
  1. "Resume an old session for this project" — I open solution X, type  /resume , and only see sessions that were ever started in X, instead of scrolling through dozens of sessions from unrelated projects to find the right one.
  2. Context-switching between multiple codebases on one machine — I work on a Blazor support app, a WCF service layer, and an NLQuery reporting agent in turn. With per-repo filtering, each tab list stays scoped to that project, so I never accidentally continue a session that was actually about a completely different codebase.
  3. "Where did I leave off on this project?" — After being away from a specific solution for a few days, I open that folder and want to instantly see only the sessions relevant to it, sorted by recency — not my entire cross-project history mixed together.
  4. Cleaning up/archiving per project — With repo scoping, I can more easily bulk-clean old sessions from a finished project without risking accidentally losing active sessions from a different project in the process.
  5. Onboarding/handover — If I want to show someone "all Copilot sessions done on this project," a repo-filtered list is immediately usable as an overview, instead of first manually filtering out noise from other projects.
Additional context

No response

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先阅读 open-sessions-state.json,并跟踪 session store 数据如何传递到标签页列表、/resume 选择器和 /session 选择器。确认工作目录或 repository 在 session store 中是如何表示的。当 sessions 能够持久化保留该关联,并且选择器默认使用当前 repository、同时仍提供所有 sessions 视图时,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
shell
领域
cli
Issue 类型
功能
难度
4/5
预计耗时
3-5 天
活跃度
活跃
描述清晰度
基本清楚
新手友好度
55/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。