🐛 fix(vscode): 会话终端直接拉起 claude/codex,不再往 shell 里打命令,启动命令不再污染 zsh 历史

新建工单、实施、审查、测试、原型、续聊、冲突解决、会话管理和各种恢复会话,
都改成开终端时直接指定要跑的程序(用户默认 shell 以 -ilc 'exec "$@"' 拉起),
环境变量照常加载,参数原样传入。程序退出时标签页随之关闭。
提示词和配置文件路径里带单引号也不再拒绝执行,相关的转义和拦截全部删掉。
This commit is contained in:
chehongweo committed 2026-09-29 04:40:35 +08:00
1 parent 21000d48e9
commit 3621729367
16 files changed
+232 -330

No files matched your search

+4 -4
View File
@@ -857,7 +857,7 @@ export class KanbanWebviewPanel {
/**
* Scan `vscode.window.terminals` for an existing terminal whose name
* matches `expectedName`. Matches exact, or `startsWith(expectedName + ' ')`
* so a shell that appended a git branch suffix (e.g. "issue-48-实施
* so a title sequence that appended a suffix (e.g. "issue-48-实施
* 5f56026c") still counts. Skips terminals whose process already exited
* (`exitStatus !== undefined`) — those are zombie tabs and shouldn't block
* a fresh spawn.
@@ -875,8 +875,8 @@ export class KanbanWebviewPanel {
}
/**
* Open (or re-use) the review terminal tab for an issue and send the codex
* review command. Used by the webhook auto-review flow so the user can watch
* Open (or re-use) the review terminal tab for an issue and start codex
* review in it. Used by the webhook auto-review flow so the user can watch
* codex work in real time instead of it running headless in the background.
*
* 只有已持久化 reviewSessionId 时才注入 "PR 更新了,再审一下";tab 活着但
@@ -890,7 +890,7 @@ export class KanbanWebviewPanel {
/** workspace-relative or absolute path; if missing/invalid we fall back to workspaceRoot. */
worktreePath: string
workspaceRoot: string
}): Promise<boolean> {
}): Promise<void> {
return sessions.triggerAutoReviewTab(this, opts)
}