thzxx
|
389e42874a
|
refactor: 视频帧独立预览区,只显示视频卡片不逐帧展示
- 新增 #videoPreview 独立区域,金色 video-chip 卡片
- 视频帧存入 pendingVideoFrames,与 pendingImages 完全分离
- 发送时自动合并为 images 数组
|
2026-06-18 11:33:32 +08:00 |
|
thzxx
|
5ed9a1f9f6
|
feat: 视频上传支持 (v0.11.7)
- 新增视频上传按钮,支持 mp4/avi/mov/mkv/webm (≤10MB)
- ffmpeg 1fps 提取帧序列,自动缩放至512px,带时序标注
- 消息中注入帧序列时间线,多模态模型原生理解视频时序
- 视频按钮与 vision 模型能力自动联动
- 版本号 0.11.6 → 0.11.7,同步更新 README/帮助面板/菜单
|
2026-06-18 10:58:55 +08:00 |
|
thzxx
|
a74fca741d
|
fix: 修复 Think 模式开关无效 — toggleThink 缺少 change 事件导致 state 未同步
- model-bar.ts: 新增 toggleThink change 事件监听,同步 state.thinkEnabled
- setThinkAvailable(true) 保留自动开启行为(模型支持时强制开启)
- 版本号 0.11.5 → 0.11.6,同步7个文件13处
|
2026-06-17 12:34:23 +08:00 |
|
thzxx
|
a336a66516
|
v0.11.5: 搜索抓取增强 + 流式进度修复 + 超时/写入容错
feat: 搜索面板新增认证类型 Bearer/Basic,自动抓取条数/类型(顺序/随机)
feat: 随机抓取失败自动从未抓取池补1条,上限移除
fix: write_file 缺 path 时返回引导性报错(含工作空间路径+平台示例)
fix: Ollama tool_calls arguments JSON字符串解析
fix: 流式进度日志不再删除,改为完整时间线记录
fix: 进度日志同步appendChild确保排在工具日志之前
fix: 超时设置面板/主进程 remove max上限
chore: 版本号 0.11.4 → 0.11.5
|
2026-06-13 21:35:22 +08:00 |
|
thzxx
|
ad5b67ea3e
|
fix: 工具页签滚动彻底重写
- 统一 scrollToolsToBottom:scrollTop=scrollHeight + 双重rAF
- appendToolCardDOM/updateToolCardDOM/renderToolCalls 全部调用
- 废弃 scrollIntoView(overflow-y:auto 容器中不稳定)
- 卡片更新后也跟随滚动(结果内容可能导致高度变化)
|
2026-06-13 09:24:21 +08:00 |
|
thzxx
|
5bad82336d
|
fix: initWorkspacePanel 强制重置默认工具页签
Electron窗口关闭再打开时渲染进程不销毁,模块级activeTab
保留用户上次切换的值。initWorkspacePanel启动时强制重置。
|
2026-06-13 08:17:01 +08:00 |
|
thzxx
|
52026dbdd6
|
fix: 流式日志原地更新 + 滚动用scrollIntoView
- 新增 logStreamProgress:同一ID日志更新不追加
- 定时器15s间隔,无新内容用累积闲置时长
- appendToolCardDOM 用 scrollIntoView + rAF
- renderToolCalls 用双重 rAF 等布局稳定
|
2026-06-13 08:15:06 +08:00 |
|
thzxx
|
87d3364886
|
fix: 定时器15秒间隔 + 滚动rAF + 闲置追踪
- 流式进度定时器改为15秒间隔
- lastContentTime 追踪真正的无新内容时长
- appendToolCardDOM/renderToolCalls 用 rAF 确保布局后滚动
|
2026-06-13 07:42:40 +08:00 |
|
thzxx
|
45777a5945
|
feat: v0.11.3 - 工具卡片三态转换 + 流式进度监控 + 默认工具页签
- 工具卡片完整生命周期: 准备中 -> 执行中 -> 完成
- onToolCallPrepare 流式阶段提前显示工具意图
- 工作空间监控定时器: AI处理中提示
- 日志面板流式进度: 每5秒输出, 15秒无新内容警告
- 提示栏按状态分组显示所有工具
- write_file 写入前增加开始日志
- 工具页签新卡片始终自动滚动到底部
- 默认页签切换为工具页签
|
2026-06-12 22:28:16 +08:00 |
|
thzxx
|
cf52568947
|
fix: 在appendAssistantPlaceholder前再次enableAutoScroll,防止renderMessages的DOM事件重置滚动状态
|
2026-06-12 15:07:35 +08:00 |
|
thzxx
|
8b50ae323f
|
fix: 发送消息时强制resetAutoScroll,解决手动上滑后新消息不自动滚动的问题
|
2026-06-12 14:57:08 +08:00 |
|
thzxx
|
b5c7cf93f7
|
fix: 启动时根据已保存配置更新SearXNG按钮小绿点状态
|
2026-06-12 14:05:34 +08:00 |
|
thzxx
|
16dd877860
|
fix: SearXNG 搜索引擎参数去掉默认值,留空使用实例默认引擎
|
2026-06-12 13:18:23 +08:00 |
|
thzxx
|
ff786f50c5
|
fix: SearXNG max_results 面板配了以面板为准,未配(0)用AI传入默认值
|
2026-06-12 13:05:31 +08:00 |
|
thzxx
|
9a547849eb
|
feat: SearXNG 添加 format 参数,支持 json/html 两种模式。html 模式提取网页纯文本交由 AI 自行分析
|
2026-06-12 12:55:14 +08:00 |
|
thzxx
|
f16d0238f7
|
fix: SearXNG API 地址改为必填,保存时校验格式
|
2026-06-12 12:48:05 +08:00 |
|
thzxx
|
7030e69234
|
feat: 集成 SearXNG 元搜索引擎,支持 JSON API 搜索替代四引擎 HTML 解析
- 新增 SearXNG 配置模态框,支持 API 地址、引擎列表、语言、安全搜索等参数
- 顶部添加独立 🔍 搜索按钮,带启用状态小绿点
- 启用后 web_search 走 SearXNG JSON API(70+ 引擎聚合)
- 禁用时回退原有 Bing+百度+搜狗+360 四引擎 HTML 解析方案
- 认证 Key 通过 HTTP Header Authorization: Bearer 传递,非必填
- 配置持久化到 SQLite settings 表
|
2026-06-12 12:44:41 +08:00 |
|
thzxx
|
933ce7a082
|
v0.11.1: Agent Loop稳定性增强 + 6个系统工具 + 搜索引擎替换
【Agent Loop 稳定性】
- P0-1: 工具消息硬限制40条,超出自动删旧
- P0-2: 截断周期从5轮缩短为3轮
- P1-1: 增量记忆提取改为fire-and-forget
- P1-2: TOOLS_WITH_DATA_DEPS精简为仅web_fetch
- P2: 重复检测改为注入警告而非强制终止
- Final Answer检测增强: >300字自动放行 + 收紧反过早停止
【新增工具】(40→44)
- datetime: 系统精确时间(中文日期+时段+人性化)
- calculator: 安全数学计算(递归下降解析器)
- random: 随机数/随机选择(int/float/pick/string)
- uuid: UUID v4生成(crypto.randomUUID)
- json_format: JSON格式化+验证+键排序
- hash: MD5/SHA1/SHA256/SHA384/SHA512
【搜索引擎替换】
- Google+DuckDuckGo → 搜狗+360搜索
- 四引擎变为: Bing+百度+搜狗+360搜索
【删除】
- 联网搜索代理全部代码(search-proxy/ + 7文件代理逻辑)
- https-proxy-agent依赖
【UI】
- 模型栏: 上下文总长(蓝色)+剩余上下文(绿色)实时显示
- 设置面板上下文长度移至模型栏
- SOUL.md/AGENT.md精简为纯抽象定义
【系统提示词】
- OS环境信息改为从preload同步获取真实值(os.homedir/os.arch/os.userInfo)
|
2026-06-11 22:07:46 +08:00 |
|
thzxx
|
3f11e7c3cd
|
feat: 设置面板添加代理配置 — web_search/web_fetch走HTTP代理(Clash等)
|
2026-06-10 15:38:56 +08:00 |
|
thzxx
|
e2bd511489
|
refactor: 删除append_file工具,功能合并入write_file(mode=append),工具数39→38
|
2026-06-10 14:42:25 +08:00 |
|
thzxx
|
632470a26d
|
docs: 更新README/帮助面板/工具面板 — 38→39个工具/browser_wait/v0.10.3/增强特性描述
|
2026-06-10 14:36:24 +08:00 |
|
thzxx
|
06fdb9c457
|
refactor: 删除工具面板开关,Tool Calling 代码写死永久开启
|
2026-06-10 14:26:57 +08:00 |
|
thzxx
|
499c68d96f
|
fix: 流式回调(onThinking/onContent)传入模型名,确保每条AI回复都显示模型标签
|
2026-06-10 13:30:25 +08:00 |
|
thzxx
|
23918b8223
|
chore: v0.10.3 — 选择支持think的模型自动启用思考模式, 修复AI回复不显示模型标签, 版本号升级
|
2026-06-10 13:14:58 +08:00 |
|
thzxx
|
3a6516ed76
|
fix: 超时设置三个输入框独立处理,改一个只打印一条日志
|
2026-06-10 10:03:04 +08:00 |
|
thzxx
|
99ef9a5078
|
chore: 超时设置日志改回debug级别
|
2026-06-10 09:55:32 +08:00 |
|
thzxx
|
0489952ceb
|
fix: 超时设置0值(禁用)无法保存的bug
- 保存值改用-1表示默认, 0表示禁用, 正数表示自定义秒数
- 修复parseSec区分空字符串和0值
- loadTimeoutSettings/main.ts初始化同步更新判断逻辑
- 补全types.d.ts中setTimeouts类型声明
|
2026-06-10 09:54:20 +08:00 |
|
thzxx
|
9559390d4d
|
fix: 超时设置日志从debug级别改为info级别,初始化时打印汇总日志
|
2026-06-10 09:51:07 +08:00 |
|
thzxx
|
6390457312
|
feat: v0.10.2 - 可配置超时设置 + 默认值提升
- HTTP超时: 15s→30s(可配5s~300s), MCP超时: 30s→60s(可配10s~300s), 流式超时: 180s→300s(可配0~600s)
- 设置面板新增超时配置区域(HTTP/流式/MCP),留空使用默认值
- 主进程HTTP_TIMEOUT/MCP_TIMEOUT改为可配置变量,通过IPC setTimeouts通道接收
- 帮助面板/README/release-notes更新四引擎搜索和超时描述
- 版本号同步更新至v0.10.2(16处)
|
2026-06-10 09:39:59 +08:00 |
|
thzxx
|
64264cc0f8
|
v0.10.1: 修复显存泄漏 + 删除普通聊天模式 + Tool Calling 始终开启
fix: ollama.ts - chat() 添加默认 keep_alive: '1h',chatStream done 时不再 reader.cancel()
refactor: 删除普通聊天模式,所有消息统一走 Agent Loop
refactor: Tool Calling 开关始终开启且不可关闭
chore: 版本号 0.10.0 → 0.10.1 (12 处)
docs: 更新帮助面板和 README 反映架构变更
|
2026-06-06 12:06:48 +08:00 |
|
thzxx
|
2217113014
|
feat: v0.9.1 — 图片压缩、文件token预算截断、并行上传、文档同步
- 图片上传: Canvas前端压缩(1280px等比缩放+JPEG), 300KB以下跳过
- 文件上传: Token预算感知截断(30% numCtx), 26种语言注释剥离
- 性能: handleImagePaths/handleTextFilePaths 并行化(Promise.all)
- sub-agent.ts: 修复3个TS编译错误(tool_name类型, success重复)
- 版本号: 全项目统一至0.9.1(10处)
- 文档: BUILD.md/DEVELOPMENT.md 同步实际架构, 移除过期分支引用
- README: 组件列表修正(log-panel.ts→prompt-modal.ts)
- 帮助面板: 更新图片/文件上传描述
|
2026-06-05 11:32:40 +08:00 |
|
thzxx
|
f4a92fc40f
|
设置面板新增子代理默认模型选择器
- 向量记忆引擎下方新增「子代理默认模型」下拉框
- 留空则跟随当前模型,选择后所有 spawn_task 默认使用该模型
- spawn_task 工具仍支持单次指定 model 参数覆盖默认值
|
2026-06-05 10:56:08 +08:00 |
|
thzxx
|
988efd1733
|
v0.9.0: SOUL.md/AGENT.md/USER.md 化为工作空间文件,去掉代码内硬编码提示词
- 版本号 v1.1.0 → v0.9.0
- AGENT_SYSTEM_PROMPT + TOOL_USAGE_GUIDE 提取为 AGENT.md(工作空间优先,内置 fallback)
- SOUL.md 同级改造(工作空间优先,内置 fallback)
- 删除 inferUserProfile 自动用户画像,改为 USER.md 手动编辑
- 三个 .md 内置版本放在 src/renderer/public/(Vite publicDir 自动复制)
|
2026-06-05 09:35:39 +08:00 |
|
thzxx
|
db6cb8d2cc
|
feat: v1.1.0 — 上下文引擎重构 + 技能系统升级 + SOUL.md 支持
- 版本号更新: 1.0.0 → 1.1.0,全量同步 package.json/lock/README/docs/UI
- 上下文长度自动检测: 切换模型时从 model_info 读取实际 context_length
- SOUL.md 支持: 每次发送自动扫描工作空间 SOUL.md,注入为首条 system 消息且不可压缩
- 系统提示词卡片: AI 回复顶部可折叠展示实际发送给模型的完整 system prompt
- Token 校准: 利用 Ollama 返回的实际计数动态修正估算器(EMA)
- 消息重要性评分: 纯规则打分,trim/summarize 按重要性而非时间顺序
- 结构化压缩: LLM 压缩输出 JSON 格式(topics/decisions/pendingTasks/constraints)
- 技能系统 v1.1: 语义匹配(embedding) + 参数自优化 + 未使用衰减 + 技能链合并
- 修复: 100+ TypeScript strict 模式编译错误清零
|
2026-06-04 21:47:18 +08:00 |
|
thzxx
|
fdbdc4007c
|
fix: 修复 Token 仪表盘 — 添加缺失的 renderGlobalChart + 修复概览卡片布局
- 添加 renderGlobalChart 函数(按会话渲染全局柱状图)
- 移除 td-stat-row 嵌套 div,卡片直接放入 tdOverview grid
- 修复全局统计持续报错 renderGlobalChart is not defined
- 修复 5 个统计卡片挤在 1/4 宽度的布局问题
|
2026-04-24 13:50:02 +08:00 |
|
Metona Dev
|
b24370cc15
|
fix: 重写 Token 消耗趋势图 — 网格线 + 正确高度计算 + 柱子底部对齐
|
2026-04-24 12:56:45 +08:00 |
|
Metona Dev
|
5fafaa691f
|
feat: Token 仪表盘支持全局统计,跨会话累计 Token 分析
|
2026-04-24 12:53:50 +08:00 |
|
Metona Dev
|
8e53a411d6
|
feat: /compress 上下文压缩 + Skill 渐进式加载
|
2026-04-24 12:35:49 +08:00 |
|
Metona Dev
|
f7fb47939d
|
refactor: 移除人格模式、后台检查、系统诊断、定时任务功能
|
2026-04-24 11:29:52 +08:00 |
|
thzxx
|
5cbb71cf50
|
fix: Token趋势图2秒刷新丢失滚动位置
|
2026-04-23 17:23:56 +08:00 |
|
thzxx
|
118af9dd9a
|
fix: Token趋势图柱子不显示 — 柱子容器高度塌缩修复
|
2026-04-23 17:22:41 +08:00 |
|
thzxx
|
aa9bfa01f7
|
fix: Token趋势图数值区分输入/输出颜色
|
2026-04-23 17:19:53 +08:00 |
|
thzxx
|
4070f85214
|
fix: 普通聊天流式模式未捕获 prompt_eval_count 导致趋势图无法区分输入/输出 token
|
2026-04-23 17:04:20 +08:00 |
|
thzxx
|
d3c38977bc
|
fix: AI消息时间戳显示、工具调用卡片恢复
1. 修复AI回复消息不显示时间戳的问题:updateLastAssistantMessage 新增 timestamp 参数
2. 恢复工具调用卡片显示(工具名称+参数,不显示执行结果):updateLastAssistantMessage 新增 toolCalls 参数
3. 根因:流式消息通过 updateLastAssistantMessage 更新 DOM,但该函数未渲染时间戳和工具卡片,
而 renderMessages 因 placeholder 已被计数而跳过 appendMessageDOM
|
2026-04-23 16:50:06 +08:00 |
|
thzxx
|
bbd408f326
|
fix: 工具卡片错误信息显示、清理死代码
1. 工具调用失败时显示错误原因(之前只有状态标签没有具体错误)
2. 删除 formatFileSize 死代码(仅在已移除的结果渲染中使用)
3. 清理 updateLastAssistantMessage 未使用的 stats 参数
|
2026-04-23 16:19:53 +08:00 |
|
thzxx
|
21b9a14824
|
fix: Token统计准确性修复 + 仪表盘增强
1. 修复eval_count只记最后一轮的bug:改为每轮累加
2. 新增prompt_eval_count(输入token)统计
3. 修复total_duration使用Ollama实际推理时间而非墙钟时间
4. 数据库messages表新增prompt_eval_count列(含兼容迁移)
5. 仪表盘显示输入/输出token分项统计
6. 柱状图堆叠显示输入(紫色)+输出(橙色)比例
7. 明细表格新增输入/输出/合计三列
|
2026-04-23 16:11:17 +08:00 |
|
thzxx
|
e96b2a840e
|
feat: 新增Token实时监控仪表盘
|
2026-04-23 16:00:13 +08:00 |
|
thzxx
|
684b2f773b
|
feat: 工具卡片精简、移除token统计、消息时间显示
1. 聊天消息工具卡片只显示工具名+调用内容,不显示执行结果(工作空间工具页签已有完整结果)
2. 移除所有token统计相关代码:顶栏统计、消息内token/耗时显示、历史记录中的token显示
3. 每条消息显示具体时间(年月日 时分秒),formatTime 已含秒数
|
2026-04-23 15:42:15 +08:00 |
|
thzxx
|
7ed75415a3
|
fix: 工具卡片状态更新后即时刷新消息渲染
updateMessageToolRecord 更新 state 后缺少 renderMessages() 调用,
导致消息中的工具卡片状态不会实时更新(始终显示 running)。
添加 renderMessages() 调用,确保工具执行完成后消息中的卡片
立即显示正确状态(✅/❌)。
|
2026-04-23 12:36:32 +08:00 |
|
thzxx
|
4caa230c47
|
fix: 会话消息中工具卡片始终显示✅0 ❌0且永远转圈执行中
根因:onNewIteration 保存工具记录时 status='running'、result=null,
工具执行完成后只更新了工作空间面板,未更新消息中的记录。
修复:
1. 新增 updateMessageToolRecord() 函数,从后往前查找消息中
running 状态的同名工具记录并更新为最终状态
2. onToolCallResult/onToolCallError 回调中同步更新消息记录
3. onDone 多迭代模式下,最终消息也包含 toolRecords
|
2026-04-23 11:52:53 +08:00 |
|