Files
Nexus/docs/changelog/2026-06-13-terminal-quick-cmd-enter-fix.md
T
Nexus Agent 821cf12ade fix(terminal,alerts): quick-cmd enter on send and offline Telegram channel
Append CR when executing quick commands (fixes trim stripping saved \r) and
allow optional dedicated Telegram bot for server offline alerts only.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-13 01:45:55 +08:00

32 lines
1.4 KiB
Markdown

# 2026-06-13 终端快捷命令发送时自动追加回车修复
## 摘要
修复自定义快捷命令点击执行后未自动回车、命令悬停在输入行的问题。
## 动机
设置页文案为「命令内容(发送时自动追加回车)」,但保存时在 `cmd` 末尾追加 `\r` 后,`useTerminalQuickCommands.create/update``cmd.trim()` 会把 `\r` 当作空白剥掉,导致入库命令无回车;终端 `execQuickCmd` 又原样发送,表现为快捷命令不执行。
## 变更
- `formatQuickCmdForSend()`:执行时统一追加 `\r`(与命令栏 `sendCmd` 一致),对已含 `\r`/`\n` 的命令幂等。
- `execQuickCmd`:发送前经 `formatQuickCmdForSend` 处理。
- 设置页保存:仅存 trimmed 命令正文,不再在保存阶段追加 `\r`
## 涉及文件
- `frontend/src/composables/useTerminalQuickCommands.ts`
- `frontend/src/composables/terminal/useTerminalSessions.ts`
- `frontend/src/components/TerminalQuickCommandsSettings.vue`
## 迁移 / 重启
- 仅前端:重新 `vite build` 并部署 `web/app/`
- 已有 DB 中带 `\r` 的内置/历史命令不受影响(发送时去尾后再追加一次 `\r`)。
## 验证
1. 设置 → 终端快捷命令:添加 `echo hello`,保存后在终端页点击执行,应出现 `hello` 输出并回到新提示符。
2. 内置命令(如「磁盘使用」)仍可一键执行。