From 743e0e7325c532e6ed95879a4695ab2db3483d5c Mon Sep 17 00:00:00 2001 From: cruldra Date: Sun, 13 Sep 2026 10:45:39 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat(vscode):=20=E4=BC=9A=E8=AF=9D?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=88=A0=E9=99=A4=E5=89=8D=E5=BC=B9=E7=A1=AE?= =?UTF-8?q?=E8=AE=A4=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 删除会关掉终端 tab 并抹掉列表记录,之前点一下就执行。现在先弹 modal 确认,带上会话名字。 Claude-Session: https://claude.ai/code/session_01Kgmb1LvrPmFX3NoUDB4zZC --- vscode/src/panel/handlers/managedSessions.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/vscode/src/panel/handlers/managedSessions.ts b/vscode/src/panel/handlers/managedSessions.ts index f71297c..2a843c6 100644 --- a/vscode/src/panel/handlers/managedSessions.ts +++ b/vscode/src/panel/handlers/managedSessions.ts @@ -319,9 +319,17 @@ export async function handleManagedSessionsDelete(panel: KanbanWebviewPanel, ses const workspaceRoot = workspace.workspaceFolders?.[0]?.uri.fsPath if (!workspaceRoot) return + const data = await readManagedSessions(workspaceRoot) + const target = data.sessions.find(s => s.id === sessionId) + const choice = await window.showWarningMessage( + `确定从会话列表删除「${target?.name ?? sessionId}」?会关掉它的终端 tab,列表记录不可恢复(cc 会话本身的历史仍在 ~/.claude 里)。`, + { modal: true }, + '删除', + ) + if (choice !== '删除') + return // 删除前先关掉该会话的终端 tab。 panel.managedTerminals.get(sessionId)?.dispose() - const data = await readManagedSessions(workspaceRoot) const next = { sessions: data.sessions.filter(s => s.id !== sessionId) } await writeManagedSessions(workspaceRoot, next) panel.managedTerminals.delete(sessionId)