filter/scope session tabs & resume list by repository/solution
まだ誰も着手していません。
- 主要言語
- Shell
- スター
- 11.2k
- フォーク
- 1.9k
- 平均マージ
- 14時間 16分
- マージ済み PR(30日)
- 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
- "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.
- 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.
- "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.
- 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.
- 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
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず open-sessions-state.json を読み、セッションストアのデータがタブ一覧、/resume ピッカー、/session ピッカーにどのように届くかをたどります。セッションストア内で作業ディレクトリまたはリポジトリがどのように表現されているかを確認します。セッションがその関連付けを保持し、ピッカーがデフォルトで現在のリポジトリを対象にしつつ、すべてのセッションを表示するビューも引き続き提供できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- shell
- 領域
- cli
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 活発
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 55/100