EasyAgent/2.txt

88 lines
3.9 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

收到,我先不再改代码。下面是根据本次对话记录整理出来的修改清单(仅基于聊天内容,不查看当前文件;如果某条在中途被回滚/覆盖,已在备注里说明)。
整体新增/变更汇总(按功能模块)
1. 底部状态栏 + 保留空行 ✓
- 新增“永久底部状态栏”概念:最底行显示提示信息,上一行留空;输入行位于其上方。
- 左侧文案在输入时为“输入/查看所有指令”运行时变为“按下Esc停止”。
- 右侧显示“当前上下文 0/256k”且数字>1000时显示 1.1k 格式。
- 需要窗口缩放时自适应,不增加新底层显示行。
2. ESC 取消行为与记录落盘时机
- 按 Esc 需要立即中断运行:
- 若模型思考中:显示“∙ 停止思考”,并在思考内容下方打印红色“已取消本次响应”,上下各留一行空行。
- 若工具执行中:立即停止工具执行,工具结果为红色“任务被用户取消”,且不再继续执行工具结果处理。
- 数据落盘更细:用户输入后、模型完整输出后(不含工具)、工具调用后、工具结果后都应写入内存+落盘。
- 取消时如果输出未完成,未完成内容不入记录。
3. 工具输出显示
- “任务被用户取消”不带“└”或“失败:”前缀;左侧对齐。
- 工具执行完后输出与下一行 prompt 之间空一行。
- “取消响应”也需红色且左侧对齐,上一行留空。
4. /new 与 /resume token 复位
- /new 需要把右下角“当前上下文”重置(逻辑同 /resume
- 修复了 /new 未被识别的问题(与命令菜单注入有关)。
5. 只读权限提示文案
- 只读模式提示文案最后一句改为“请告知当前无权限需要用户输入 /allow 切换权限”。
- 只读模式下工具结果文案也需更新。
6. /allow、/model 等“Update”提示清理
- /allow /model /thinking 等菜单里不显示“Update …”。
7. /model 交互逻辑
- 需求最终定为:
- 选择模型后,隔一行显示“模型已切换为: xxx”
- 隔一行再显示思考模式选择;
- 选择思考模式后,在选项下面隔一行显示“思考模式: xxx”
- 不再要求清除菜单残留(因为清理和状态栏冲突)。
8. 命令菜单 / 无效指令
- 当 / 输入无匹配结果:
- 菜单显示“无效的指令”(替换 No results found
- 按 Enter 后不发送给模型,只显示“无效的命令“/app””。
9. 多模态(图片/视频)
- 输入路径或拖拽可自动插入蓝色 token [图片 #1] / [视频 #1]。
- 删除时 token 作为整体删除。
- 最多 9 张图片、1 个视频。
- 发送时:文本里包含 [图片 #n] 显示;实际请求使用 image_url/video_url base64 发送。
- 识别单引号路径 '/path/to/file.png'。
- 修复“只发送文本而未发送真实图片”的问题,最终要求按示例把图片作为 content list 的一部分发送。
10. 文件编辑工具创建文件
- 编辑文件时自动创建不存在的文件与目录,不再报错 ENOENT。
11. 提示信息空行规范
- 所有提示信息(如“已创建新对话/权限切换/模型切换/思考模式切换”)上下各空一行。
- Banner 与 prompt 之间需保持空行。
12. 思考完成标记
- 思考完成行使用 ∙ 而不是 ○。
- ∙ 行与思考内容整体左移一个空格以对齐工具调用的 • 前缀。
13. /system.txt 增加模型变量
- system prompt 里加入当前使用模型(用请求模型名称)。
14. 取消时错误显示
- 在思考时按 Esc不能重复显示思考内容只显示“停止思考 + 已取消本次响应”。
15. 运行指令取消空行
- 工具取消输出行与后续 prompt 之间需空一行。