Skip to content

HMCL-AE v0.3.0-beta

Pre-release
Pre-release

Choose a tag to compare

@LeeWikie LeeWikie released this 07 Jul 17:00

新增

  • 技能不再靠 AI 自觉了:命中就自动喂给它:以前技能目录只是写在提示词里,AI 想不起来去读就等于没有——弱一点的模型基本从来不读。现在你的消息只要命中技能的触发词(比如说「闪退」「装个光影」「帮我备份存档」),对应的技能手册会整篇自动放进 AI 的上下文,让它照着一步步做;整个对话期间手册保持在场,说「继续」也不会丢。可在 AI 设置 →「AI 能力与行为」→「技能自动匹配」关闭。

  • 内置技能从 6 个扩到 13 个:新增联机进服(含 ping 检测、版本/模组匹配、局域网)、存档管理与备份恢复、改存档数据(背包/传送/游戏模式,NBT 全程先备份)、光影与资源包(会先装 Iris 等前置)、下载与网络问题排查(换源/代理/重试规则)、Java 与内存(版本对照表、内存建议值)、整合包(装/导出/整包更新)7 个场景手册;原有 6 个技能全部补上了触发词。

  • 首次使用 AI 会先说明数据外发:第一次打开 AI 助手时弹一次「隐私与数据说明」——讲清用 AI 时哪些内容会发给你配置的服务提供商(问题、游戏信息、你让它读的文件/日志、剪贴板、截图等),点确定即表示知晓同意;之后可在 AI 设置 →「我的数据与安全」→「隐私与数据说明」随时重看。

  • AI 花费护栏:可设每日上限,防账单爆炸:AI 设置里新增「每日花费上限(美元)」——按各模型定价估算单日花费,达到上限后暂停发送(提示你调高上限或明天再用),用到约 80% 时先预警;单条回复的估算花费也会显示在气泡下(需给模型填了定价)。0=不限。

  • 能看到模型的「思考过程」了:用带推理的模型(如 DeepSeek-R1)时,它的思考内容会在回答上方以可折叠的「思考过程」卡片显示——生成时展开、回答一开始自动收起,点标题随时展开/收起;重开会话也会保留(默认收起)。目前支持 OpenAI 兼容接口的推理模型(DeepSeek-R1 等)。

  • 代码块升级:语言标签 + 一键复制 + 语法高亮:AI 回复里的代码块顶部会显示语言名和「复制」按钮(点一下整段复制、变「已复制」),代码本身做了轻量高亮——注释、字符串、数字、常见关键字分色显示。

  • 全局记忆可以逐条删除了:设置 →「全局记忆」里每条记忆右侧有删除按钮(确认后删除,不可撤销);点条目仍可打开记忆目录,直接编辑对应的 markdown 文件。

  • 支持导入会话:新增 /import 命令(输入框打 / 可补全),把之前「导出全部会话」得到的 JSON 重新导入——只新增、绝不覆盖已有会话,重复导入也不会产生副本。这样导出↔导入就形成了备份闭环。

  • AI 读大文件不再一次性灌爆上下文read 工具读大文件/日志时,默认只回最后 200 行并注明总共多少行,要看前面用 startLine 翻页——以前动辄把整份日志塞进去,几下就把模型的上下文占满、后面全乱。

  • 单个工具结果默认封顶约 2 万字:读文件、抓网页等返回超长时会截断并提示 AI 换更精确的参数重读(设置里「工具结果长度上限」默认 2 万字;想彻底放开设为 0=不限)。

  • 长对话的工具循环会自动省内存:一次回复里连续调用很多工具、累计内容超过模型窗口时,会把最早的几条工具结果自动折叠成占位符(AI 需要时可重新调用),避免越滚越大直接撞上下文上限报错。

  • 输入框终于是多行的了:随内容自动长高(最多约 8 行,超出内部滚动),Enter 发送、Shift+Enter 换行;关掉「回车发送」后 Enter 换行、Ctrl+Enter 发送。粘贴长日志不再挤成一行。

  • 中文输入法不再误发:打拼音按回车只是上屏,不会把没打完的字直接发出去。

  • 每个会话有自己的草稿:切走再切回来,没发出去的字还在。

  • 附件改成独立小卡片:可以一次附多个文件,文件内容发送时才读取、不再灌进输入框;删掉某个附件只删它自己,绝不清空你打的字。拖拽多个日志文件也都能挂上。

  • AI 做过的操作现在会留在聊天记录里:每次工具调用(装模组、备份存档等)都作为独立记录存进会话,重开会话还能看到当时执行了什么、成功还是失败——以前回复一结束这些卡片就全消失了。

  • 消息带上了回合、时间和所用模型的信息(为后续界面升级铺路),旧会话文件照常兼容。

新增(会话列表)

  • 会话终于能重命名了:会话行右侧改成「⋯」菜单,里面有重命名 / 置顶 / 删除——以前自动起的标题不满意只能删掉整个会话。
  • 会话可以置顶,置顶的排最前面;每行还显示最近聊天时间(今天显示几点、昨天、几月几日),删除确认也会带上会话名。

修复

  • 更抗“提示注入”:AI 从网页、文件、日志、崩溃报告等外部来源读到的内容,现在会被明确当作“数据”而非“指令”——里面夹带的“忽略上面的话 / 删除存档 / 交出密钥”之类不会被照做;网页抓取结果还加了不可信内容边界标记。涉及删除等不可逆操作若依据的是外部内容,会先跟你确认。

  • AI 卡住时会自动收手:一次回复里连续多次工具调用失败、没进展时,会自动停止盲目重试,改用已有信息作答或说明卡在哪、需要你提供什么——不再一直空转到轮次上限。

  • AI 记忆存前自动脱敏 + 去重:AI 往长期记忆里写内容时,会先抹掉 API key / token / 密码这类密钥(存成 [REDACTED]),不让密钥落进明文记忆文件;内容完全相同的记忆也不再重复保存。

  • 模型 API 调用现在会写进应用日志:每次请求/响应的轮次、耗时、token 用量,以及瞬时重试、请求失败都会记一行 [AI] 日志——出问题时排查有据可查,不再只有会话记录。

  • 「工具结果长度上限」的 0 恢复为「不限」:之前一版把 0 悄悄改成了「自动 2 万字」,改动了这个设置的原意。现在 0 就是不截断(你显式的选择),默认值改为明确的 2 万字(防单次超大读取撑爆上下文)。想彻底不截断把它拉到 0 即可。

  • 会话正在生成回复时,侧栏该会话的图标改为 JFoenix 转圈动画(之前临时用的是一个圆点符号 ●)。

  • 一个会话正在回复时切到别的会话,不再误伤:以前在另一个会话点发送,会把前一个会话正在生成的回复掐断,或者把你新打的话无声吞掉。现在「停止」按钮只在正在生成的那个会话里出现;切到别的会话就是正常的发送按钮,此时若发送会提示「另一个会话正在生成回复,切回那个会话可以停止它」,不再误杀、也不再静默吞。侧栏里正在生成的会话会显示「● 正在生成…」。

  • MCP 工具从「列得出、用不了」变成真能用:以前接入 MCP 服务器后,那些工具只是摆设——AI 一调用只会收到一句「运行时执行待接线」的占位符。现在会真正通过 MCP 协议执行并把结果回给 AI;工具的参数也会正确带上(不再只有一个通用的 query),AI 能按 MCP 服务器声明的参数正确调用。

  • 斜杠命令补全弹出时默认选中第一项,回车直接生效;命令打完整了按回车就是执行,不再被无声吞掉。上下键循环选择。

  • 反复点「新建对话」不再堆出一排空会话——当前会话本来就是空的就直接聚焦输入框。

  • API Key 保存时会清掉粘贴混进来的换行和空格,不再莫名 401。

  • 分支会话的标题后缀从「✦」改成「(分支)」,一眼能看懂。

  • 后台任务完成后的自动续跑提示不再伪装成"你发的消息"——改成居中的浅色事件条,悬停可看完整内容,也不会再被复制出一串内部拼接文本(这是之前反馈的气泡错乱问题的根治)。

  • 后台任务完成时如果你正好在打字,草稿不会再被顶掉发出去了;崩溃报告转给 AI 时同样不再动输入框。

  • 你切到别的会话时完成的后台任务,现在会等你切回原会话时再自动续跑,不再被悄悄丢掉。

  • 「说一段→调工具→再说一段」的回复完成瞬间不再出现前一段文字重复闪现;出错时也一样。

  • 对 /compact 压缩摘要那条消息点"重新生成"不再一键清空整个会话,会提示它没有对应的提问。

  • 编辑消息的确认/取消按钮在有回复正在生成时会先拦一下,不再能把正在写入的历史截断。

  • 回复生成中切换 Markdown/用量等显示开关不会再打断正在进行的提问面板和流式气泡了(改动会在下次渲染生效)。

  • 删光所有会话后在顶栏切换模型不再崩溃。

  • 「技能与工具」里的技能开关之前是个摆设——关了 AI 照用、重启还原。现在真正生效并跨重启保留。

  • 「AI 标题命名」「自动崩溃分析」两个开关改完即存盘,不再重启就弹回去。

  • 改模型 ID 时如果它正是默认模型,默认模型会跟着改名——以前改完照样拿旧 ID 发请求,一直 404 还查不出原因。

  • 「导出全部会话」挪到后台线程执行且兜住所有异常:会话文件损坏时会提示导出失败,而不是直接把启动器弄崩;大历史也不再卡住界面。

  • 添加 MCP 服务器后点取消,不再残留一个幽灵空配置。

  • 会话记录文件万一损坏(断电、被杀软占用等),不会再被启动时静默覆盖清空——现在会把坏文件原样保留成 .corrupt-时间 副本并在聊天里告诉你放在哪,历史随时可找回。

  • AI 设置文件(所有服务商配置和 API Key)改成先写临时文件再原子替换,中途崩溃不再可能把整份配置打回默认。

  • 上下文窗口设小之后,超出的老消息只是不发给模型了,不再从磁盘上被永久删掉——以前给本地小模型配 8K 窗口,会把每个会话的历史无提示地砍到只剩几千字且找不回来。

  • 恢复世界备份的过程改成「先把现存档整体改名挪到一边→换入备份→确认成功才删」,任何一步失败都自动把原存档还原;游戏正开着存档时会直接拒绝并提示,不再删到一半。

  • 保存会话/设置失败不再完全无声——现在会记进日志,方便排查"我改的东西怎么没了"。

  • 修了下拉弹窗在「上下都放不下」时一律向下撑出屏幕的边角问题,现在会挑截断少的一侧。

  • 危险命令拦截把 Windows 本地写法全补上了:rd /s /qdel /s、PowerShell 的 ri/rd/del/erase -Recurse 以及 -rec 这类缩写,以前这些一个都拦不住,YOLO 模式下会不带确认直接执行。

  • PowerShell 编码命令的拦截补齐了 -EncodedCo-EncodedComman 这类合法前缀缩写(PowerShell 本来就认它们),不能再靠少打几个字母绕过检查。

  • 整数参数不再莫名带上 .0——以前让 AI 把渲染距离改成 12,写进游戏配置的却是 12.0,游戏直接当没看见。

  • 你让 AI 复制的文本如果本身长得像 text=xxx,不会再被错当参数前缀剥掉一截。

  • 世界类工具(恢复备份、删除世界等)如果只收到了次要参数(比如只有 backupId),不会再把它错当成世界名去找,报出「找不到叫 true 的世界」这种误导 AI 空转的错误。

  • shell 工具缺参数时的提示改成和声明一致的参数名,不再教模型用错键。

  • 点停止后,中断标记现在立刻写进会话,不会再和你紧接着发的下一句消息抢位置(之前偶发顺序错乱、甚至丢掉)。

  • 在工具调用中间或自动重试期间点停止,说了一半的话也能保留了——之前只有普通流式阶段停下才保得住。

  • 剥离模型泄漏的工具标记时不再误伤正常内容:以前回复里只要出现 x < |y| 这类数学式或 <| 管道写法,从那里到结尾会被整段吞掉。

  • 「说一段→调工具→再说一段」的回复存进历史时,段落之间补上了空行,不再粘成一坨;工具轮数达到上限时的提示也不再被吞。

  • 后台任务的进度轮询(check_job)不再被「重复调用拦截」误杀——之前问到第三次就被强行掐断还谎称结果没变。