]> acesimba.cloud Git - codebuddy-web.git/log
codebuddy-web.git
3 months ago粘贴改为右上角弹窗模式(避免发送自动提交问题)
Codebuddy [Thu, 18 Jun 2026 08:39:34 +0000 (16:39 +0800)]
粘贴改为右上角弹窗模式(避免发送自动提交问题)

变更:
- 移除下方独立输入框,恢复 xterm 原生输入(两条绿线之间)
- 右上角"列表"后加回"📋 粘贴"按钮
- 点击弹出 modal:textarea + 📎 + ✕ + 发送,样式复用豆包式输入框
- modal 支持文字/图片粘贴、图片拖拽、📎 选文件
- Ctrl+Enter 或点发送:内容进 xterm 输入行(不自动提交),modal 自动关闭
- ESC 关闭 modal
- 发送逻辑只发内容字符流,不带 \r,用户自行回车提交

原因: 之前自动提交方案(\n / \r / bracketed paste 包裹)均无法让 codebuddy
CLI 正确触发提交。改为"内容进输入行 + 用户回车"最可靠,符合终端交互本质。

3 months ago方案B: xterm输出区 + 独立输入框(豆包式)
Codebuddy [Thu, 18 Jun 2026 08:07:46 +0000 (16:07 +0800)]
方案B: xterm输出区 + 独立输入框(豆包式)

重构终端页为上下两区:
- 上: xterm 区保留 codebuddy TUI 输出(流式/工具调用/交互确认)
- 下: 独立多行 textarea 输入区 + 发送/📎/✕ 按钮

输入区能力:
- 文字粘贴: 浏览器原生 textarea paste,可靠不失效
- 图片粘贴: Ctrl+V 截图自动上传到 /api/upload-image,显示绿色 chip
- 图片拖拽: 拖文件到输入框上传
- 📎 按钮: 选择图片文件
- 发送: Ctrl+Enter 或点发送按钮,文字+图片标签一起进 PTY

移除:
- 旧的 xterm paste 监听(与 xterm 内部冲突导致粘贴失效)
- 旧的 📋 粘贴 modal(被独立输入区取代)

保留: backend /api/upload-image 端点不变

3 months ago支持终端粘贴文字与截图(未完成,待方案B重构)
Codebuddy [Thu, 18 Jun 2026 07:58:56 +0000 (15:58 +0800)]
支持终端粘贴文字与截图(未完成,待方案B重构)

新增:
- backend: /api/upload-image 端点,接收 base64 图片存到 data/pastes/
- frontend: paste 事件检测图片/文字,上传后以 <image_local_path> 标签发 CLI
- frontend: 顶部栏 📋 粘贴按钮 + modal(多行 textarea 输入)
- frontend: extractPasteText/htmlToText(HTML 转 TSV/纯文本)
- .gitignore: 排除 data/pastes/

已知问题: 自定义 paste 监听与 xterm 内部冲突,文字粘贴失效。
下一步: 按方案 B 重构——xterm 区保留 TUI 输出,下方加独立 textarea 输入框。

3 months agoInitial commit: Codebuddy Web Console
Codebuddy [Thu, 18 Jun 2026 03:56:19 +0000 (11:56 +0800)]
Initial commit: Codebuddy Web Console

前后端分离结构:
- backend/app.py: FastAPI 后端 (PTY 终端 + 任务注册表 + JWT 鉴权)
- frontend/index.html: xterm.js 前端页面
- data/: 任务注册表运行时状态 (tasks.json 已 gitignore)
- logs/: 运行时日志 (已 gitignore)

原单文件 /root/codebuddy-web.py 拆分为前后端分离,
systemd 服务指向 /home/Codebuddy-web/backend/app.py