Support multiple debug sessions within the same workspace
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- typescript
- 領域
- devtools
調査の方向性
まず stop_debugging と restart_debugging の TypeScript 実装を見つけ、次に PR #104 で追加されたワークスペースのルーティングと、launch.json における configurationName の処理を確認します。ここで説明されている sessionId オプションと list_debug_sessions オプションを比較してください。1つのワークスペース内のセッションを曖昧さなく識別し、停止または再起動できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem
DebugMCP supports selecting a launch.json configuration when starting a debug session via configurationName.
However, when multiple debug sessions are running within the same VS Code workspace, stop_debugging and restart_debugging provide no way to specify which session they should operate on.
For example, a launch.json may contain two configurations:
- Admin site
- Customer site
Both configurations use the exact same:
programcwd
but have different environment variables, such as APPLICATION_DOMAIN and HTTP_PORT.
Therefore, once both sessions are running, there is no unambiguous way for stop_debugging or restart_debugging to target one of them.
Relation to #25 / #104
This does not appear to be a duplicate of #25.
PR #104 added support for concurrent debug sessions across different VS Code windows/workspaces by routing requests to the appropriate workspace.
This issue is about a different level of concurrency: multiple debug sessions within the same workspace.
Workspace-level routing therefore isn't sufficient to distinguish the sessions.
Possible solution
One option would be to expose a debug session identifier and allow operations such as:
stop_debugging(sessionId)
restart_debugging(sessionId)
However, the MCP client should not necessarily be expected to already know the session ID. A debug session may have been started manually in VS Code, or by another client/session.
A list_debug_sessions operation could therefore expose the currently active debug sessions, including their identifiers and useful information such as the configuration name, program, and state. The client could then identify the appropriate session and use its sessionId when calling stop_debugging or restart_debugging.
For example:
list_debug_sessions()
↓
[
{ id: "abc", configurationName: "Admin site", ... },
{ id: "def", configurationName: "Customer site", ... }
]
↓
restart_debugging("def")
Alternatively, allowing stop_debugging / restart_debugging to directly target a configurationName could address the common launch.json use case, although a session ID would be more robust when multiple instances of the same configuration are running.
Thanks!
- 主要言語
- TypeScript
- スター
- 511
- フォーク
- 60
- 平均マージ
- 2日 1時間
- マージ済み PR(30日)
- 18
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
microsoft/DebugMCP のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
microsoft/DebugMCP の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
mksglu/context-mode#1200 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
anthropics/claude-code#96687 ·
-
good first issue
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
AOSSIE-Org/DebateAI#582 · コメント 2 件 ·