@clawos-dev/clawd 0.2.96 → 0.2.97-beta.180.fcdd377
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.cjs +11 -5
- package/package.json +1 -1
package/dist/cli.cjs
CHANGED
|
@@ -23160,11 +23160,12 @@ var SessionManager = class {
|
|
|
23160
23160
|
await runner.waitUntilStopped();
|
|
23161
23161
|
return { response: { ok: true }, broadcast };
|
|
23162
23162
|
}
|
|
23163
|
-
//
|
|
23164
|
-
// - SDK 模式:发 CC IPC `control_request.subtype=interrupt`(走 stdin stream-json
|
|
23165
|
-
// - TUI
|
|
23166
|
-
//
|
|
23167
|
-
//
|
|
23163
|
+
// 中断当前轮次
|
|
23164
|
+
// - SDK 模式:发 CC IPC `control_request.subtype=interrupt`(走 stdin stream-json 通道),不杀进程
|
|
23165
|
+
// - TUI 模式(pty 已注册):直接走 stop 的 SIGKILL 路径。
|
|
23166
|
+
// 原本写 ESC(\x1b)给 pty 让 CC TUI 自己处理,但 CC TUI 的 ESC 语义随状态切换
|
|
23167
|
+
// (中断 turn / 清 prompt / 弹菜单),单次 ESC 经常只完成其中一步,用户得反复按。
|
|
23168
|
+
// 统一改成 kill 进程:行为可预测,下次 send 自动 respawn。
|
|
23168
23169
|
// 失败情况(session 不存在 / 没活进程 / 超时 / 进程半路退出)都 throw ClawdError
|
|
23169
23170
|
async interrupt(args) {
|
|
23170
23171
|
this.getFile(args.sessionId);
|
|
@@ -23175,6 +23176,11 @@ var SessionManager = class {
|
|
|
23175
23176
|
`session not running: ${args.sessionId}`
|
|
23176
23177
|
);
|
|
23177
23178
|
}
|
|
23179
|
+
const tsid = runner.getState().file.toolSessionId;
|
|
23180
|
+
const pty = tsid ? this.ptyTransports.get(tsid) : void 0;
|
|
23181
|
+
if (pty) {
|
|
23182
|
+
return this.stop({ sessionId: args.sessionId });
|
|
23183
|
+
}
|
|
23178
23184
|
try {
|
|
23179
23185
|
await this.dispatchInterrupt(runner);
|
|
23180
23186
|
} catch (err) {
|
package/package.json
CHANGED