Create a single session across multiple repositories
- 主要语言
- 没有语言数据
- 星标
- 2.1k
- 派生
- 153
- PR 合并指标
- 30 天内没有已合并 PR
描述
### Feature summary
Let me start one session that spans multiple repositories at once, instead of being limited to a single repo or folder per session.
### What problem are you trying to solve?
Today a session is bound to a single project — one repository or one folder. But a lot of real work spans several repos at the same time: a frontend + backend split, a service and its shared client library, an API and its SDK, or a coordinated change rippling across microservices.
To make a cross-repo change today I have to:
- Spin up a **separate session per repo**.
- Manually re-paste the same context/prompt into each one.
- Keep the sessions mentally in sync and open a PR in each, then stitch the work back together.
Worse, the agent in any one session can only see and edit *its* repo — it has no visibility into the sibling repos, which is exactly the context a cross-repo change needs. The result is a lot of session-juggling and lost context for what is conceptually a single unit of work.
### Proposed solution
Allow a session to include **multiple repositories (and/or folders)**:
- **Multi-select in the new-session view** — pick more than one repository/folder instead of exactly one.
- **One workspace, per-repo checkouts** — provision a worktree/checkout for each selected repo under a single session workspace, each on its own branch, and point the Copilot CLI process at the combined workspace so the agent can read and edit across all of them.
- **Grouped diff + per-repo PRs** — group the included repos in the session's workspace/diff view, and support creating one PR per repo from that single session, linked together.
- **Reusable repo sets (optional)** — let me save a named "multi-repo set" so I can launch such a session in one click.
- **Generalize existing entry points** — extend the "New session in repository…" picker and the `gh://session/new` deep link to accept multiple repositories.
### Workflow impact
This helps anyone whose changes routinely cross repo boundaries — full-stack developers (frontend + backend), platform and microservice teams, SDK + service owners, and orgs that split a monorepo into many repos. It removes the per-repo session juggling and manual context copying, keeps the agent's context coherent across the whole change, and turns a multi-session, multi-PR chore into a single directed workstream.
### Additional context
This generalizes capabilities the app already has for the single-repo case:
- Sessions are already grouped by repository in the sidebar.
- "New session in repository…" already lets you pick one project repo when starting from an issue.
- `gh://session/new` already deep-links into a single repository.
This request extends those single-repo entry points and grouping to support **N repos** in one session.
贡献指南
调研方向
首先阅读现有的单仓库“New session in repository…”流程以及 gh://session/new 深层链接。跟踪会话的分组方式,以及 workspace 和 diff view 如何处理单个仓库。完成标准是:一个会话可以选择多个仓库或文件夹,协调它们的 workspace,显示分组后的更改,并支持按仓库关联的 PRs。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- github
- 领域
- desktop
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 28/100