Skip to content

Releases: qiuqiukof-oss/Hesi

v0.2.8 — 全局工作空间选择器 + 文档拆层

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 25 Jul 14:33

本次更新

🫆 全局工作空间选择器(新功能)

  • 终端标签栏 + 聊天工具栏各新增醒目「📂 选择工作空间 ▾」按钮
  • 点击打开服务端目录浏览弹窗(浏览器原生选择器无法暴露绝对路径,故由后端列目录),选定即生效
  • 一次性驱动:① 新开终端默认 cwd ② AI 工具 exec/文件操作默认目录,消除「终端在 A 目录、AI 在 B 目录」的割裂
  • 选择持久化到 localStorage,重启自动回写;确认时可顺带把当前终端 cd 过去
  • 新增 lib/workspace.js / routes/workspace.jsGET/POST /api/workspace)/ routes/fs.jsGET /api/fs/dirs),均受 requireToken 保护(loopback 默认豁免)

📘 文档与新手体验

  • README 顶部新增「🚀 30 秒快速体验」速览(零安装便携包 / 源码运行 / 让 AI 干活 三入口),并链接新手指引与贡献者指南
  • 新增 docs/getting-started.md:面向新手的完整上手指南
  • 新增 CONTRIBUTING.md:重点标注仓库特有地雷(bundle 双轨 build:main vs build:lazy、eslint 前端 globals、husky、gh-pages worktree、禁止 git add -A)

基于《Hesi 可用性缺口分析》实证复核落地——只做已证伪后仍成立的真实短板,未动已修复的旧伤(测试覆盖、根目录模块化、后端热重载)。

完整变更:见 CHANGELOG.md

v0.2.7 — Lint 归零 & agnes-ai 崩溃修复

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 25 Jul 13:28

工程健康度修复(响应第三方实地评测复核)

Lint 归零

eslint.config.jsplugins/agnes-ai/web/**/*.js 补充浏览器全局变量(document / window / navigator 等),消除此前误判为 Node 后端导致的 201 个 no-undef 误报。npm run lint201 errors → 0 errors,CI lint 步骤转绿。

修复潜在运行时崩溃

删除 plugins/agnes-ai/web/js/app.jstotalAdjusted++ 死代码:该变量从未声明、也从未被读取,在 class 严格模式下执行「场景时长分析」路径会抛出 ReferenceError。删之既清死代码又消除真实崩溃点。


本次仅修复工程健康度问题,未改动任何运行时功能与 UI 行为,未涉及版本主线的公网加固范围。

v0.2.6 — 新手指引气泡精修 + 默认亮色

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 25 Jul 11:58

新手指引气泡定位精修(基于自动化截图诊断):

  • 等聊天抽屉滑入动画结束再定位气泡,修复 ⭐AI讨论 步气泡悬空 ~200px
  • 移除每步气泡的全屏黑色遮罩暗化(.og-overlay 不再 rgba(0,0,0,0.55)),主界面不再变暗
  • 删除 hideWelcomeOverlay() 误判(chat-drawer z-index:6 天然在 welcome-overlay:5 之上),欢迎页始终可见、背景不再消失
  • AI讨论气泡位置微调(最终 offset.y=-90,累计上移 90px)

主题:

  • 默认主题改为亮色(首次访问/清缓存后自动亮色,预设 active 指向「亮色默认」)

v0.2.5

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 25 Jul 11:25

[v0.2.5] — 2026-07-25

侧栏新手引导(onboarding)全套上线 + 欢迎页/气泡像素级打磨 + 整体代码审查修复 + 主题切换重新开放 + Logo 光晕清理。

Added

  • 侧栏新手引导 v1→v4 — 气泡 A/B 混合(目标不可见时自动开对应面板、可见时静默跳过);四方位智能定位 + 箭头指向 + 像素级偏移微调;⭐AI 讨论步骤金色高亮着重标记(highlightTarget 精确圈选开关)。
  • 新手教程页(独立标签页) — 双语(中/EN)产品介绍风格 7 页幻灯片:Start Page → Hesi 是什么 → 为什么选 → 核心功能 → 三步上手 → ⭐AI 讨论 → 📎多模态;原生 speechSynthesis TTS 朗读旁白 + 语言切换 + 自动播放进度条;虚化主界面截图作背景。

Changed

  • 欢迎页布局美化 — 压缩密度使 Slide 0/1 不滚动;修复欢迎层横向溢出(-16px 负边距)。
  • 主题切换功能重新开放 — 移除 🌙暗/亮与 🎨背景定制按钮的 display:none(图标换新设计后暗色下不再失真);亮色/半透/纸质等预设可用。
  • Logo 光晕清理 — 源图自带外发光+投影是 alpha=255 实色浅蓝白渐变环(非半透明),大图露白边毛刺;改用 BFS 泛洪填充 + 双阈值(lum>140 AND r>100)从四边吃掉光晕、保留图标青色渐变本体(清除 182,293 像素)。

Fixed

  • 确凿 Bug(整体检查)index.html#discuss-switch 漏 id 致 ⭐AI 讨论高亮框静默失效;welcome.css 孤立多余 }state.js 分类筛选记忆恢复后高亮 chip 与状态不同步。
  • 中危项(整体检查) — ① onboarding 进 chat 步时临时隐藏 #welcome-overlay 防遮挡气泡目标;② 全局 Enter 监听加焦点判断防误推进;③ 教程页切语言时页码提示与「下一步」文案即时跟随;④ /api/toolsrequireToken 与其他 /api 路由对齐(requireToken 未设 token 时为空操作、回环默认放行,本地使用无影响)。

v0.2.4

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 25 Jul 00:43

Hesi v0.2.4

侧栏/右面板布局精细化 + 对话框多媒体输入 + 全新品牌 Logo。

✨ 新增 (Added)

  • 对话框多模态输入 — 聊天框可发送图片 / 视频 / 文本·代码文件,后端同机转码为 base64 喂给模型(Claude 真看视频、OpenAI 降级提示),持久化只存短 URL 不爆上下文。
  • 全新品牌 Logo — 换用「圆角方块 + 蓝青渐变 + 脑形 H」图标,统一托盘 / 应用内 / 欢迎页;托盘图标最大化至 88% 填充,与系统图标尺寸一致。
  • 左栏工具去重 — 13 个工具按钮收敛为 3 个独立页面入口,其余统一以右面板 Tab 为唯一入口,消除全局重复。
  • Workflows 迁移到右面板 — 从左栏网格改为右面板独立 Tab 的卡片行样式;修复双图标重复渲染、网格化 + 悬停 tooltip。

🔧 改进 (Changed)

  • 右面板收窄 480→300px,并在全标签页做 UI 美化(dashboard 去重+折叠、抽共享 .rp-card 基类、插件 2 列、图表/长表默认折叠)。
  • Tab 顺序重排 + 默认强制仪表盘;修复 category 漏改与异步注册不重排导致的顽固乱序;修复 Tab 点击偶尔空白(switchTab 守卫与重排时序矛盾)。
  • 无障碍 — 11 个搜索框补 aria-label;Logo 图片补 alt;文件上传 input 补 aria-label。

🐛 修复 (Fixed)

  • 工作流面板 ID 选择器覆盖 — #rp-workflows specificity 压过 .rp-panel 导致所有 tab 内容被推到底部,改为统一由 .rp-panel.active 控制显隐。

完整改动见 CHANGELOG.md。

v0.2.3 — AI 多媒体生成 + 聊天框链接可点击

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 24 Jul 10:09

AI 多媒体生成能力 + 聊天框链接可点击。

Added

  • AI 多媒体生成引导提示词 — 主聊天系统提示词新增「多媒体生成」段,引导 AI 主动、且高质量地调用 generate_image / generate_video(Agnes 插件),并把中文意图改写为细节化英文 prompt + 负面提示词。
  • 聊天框链接可点击renderMarkdown 新增白名单链接化(http(s)://file:///uploads/),代码块/行内代码内的 URL 不会被误链;输入已转义且不接受 javascript: 等协议 ⇒ XSS 安全。

Fixed

  • 视频生成不可用(真 bug)routes/ai-tools/builtin/index.js 此前漏注册 videoGengenerate_video 从未进入工具表,主聊天 AI 只能生图不能生视频;现已补注册。
  • 视频生成进度回调硬报错video-gen.jsprogressFn 实为字符串(registry 第三参透传的是 requestId),每次调用必抛 TypeError 被 catch → 返回"生成失败";统一改为 emitProgressbroadcastFn
  • 图片/视频返回 token 精简image-gen.js 最终返回从 verbose 表格(~250 token)改为简洁一行(~60 token),降低回灌 LLM 上下文占用。
  • 首次对话必现 "messages array is required" — 首条消息 push 进 this.messages 后,发送用的 msgs 却在 isConfigured() 异步回调里才读取;首次运行 MemorySession.init() 拉回的历史会整体覆盖 this.messages,竞态窗口内刚 push 的消息被抹空 → 发出空 messages → 后端 400。改为 push 后立即同步拍快照 requestMsgs,发送用快照,消除竞态。

v0.2.2

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 23 Jul 23:40

[v0.2.2] — 2026-07-24

Maintenance drop: dependency hygiene + persisted LLM key. No breaking changes.

Fixed

  • Dependency security upgradenpm audit fix (non-force) upgraded 42 compatible packages, eliminating fast-uri (high, authority-host confusion) and body-parser (moderate, DoS via invalid limit). The remaining @hono/node-server moderate is an unused transitive dep of @modelcontextprotocol/sdk (Hesi uses Express, loopback-only) — a supply-chain false positive with zero real impact.

Changed

  • Persisted LLM API keychat-api.js now stores the key in localStorage instead of sessionStorage, so it survives browser restarts. Local single-machine scope; the key stays in the browser's Web Storage and never enters Hesi data/ or git.

Docs

  • README (zh/en) — added an "On npm audit Warnings" note under Secure Deployment so downloaders know the @hono moderate is a benign false positive.

Full diff: v0.2.1...v0.2.2

v0.1.0-optimized

Choose a tag to compare

@qiuqiukof-oss qiuqiukof-oss released this 21 Jul 05:10

Hesi 优化方案落地(Phase 0–4)

本 Release 对应提交 7ef9d71(feat: implement Hesi optimization plan)。

改动要点

  • Phase 0 文档/定位对齐:README、SECURE_DEPLOY、AGENTS、CLAUDE 对齐到「面向个人的本地运行」定位。
  • Phase 1 工程健康度:新增 GitHub Actions CI(build + node --test + plans)、ESLint flat config、husky pre-commit 脚手架、9 个单元测试、bundle 资源哈希(lib/asset-hash.js)。
  • Phase 2 功能落差:数字员工圆桌真实执行(ws/digital-employee-worker.js)、headless 补全(lib/cli-headless.js)、orchestrator 按 ws 并发 workflow、托盘/USB 打包脚本。
  • Phase 3 本地安全:localOriginGuard(server.js)+ 工具/上传接口 requireToken 加固,防御同机恶意网页盲 RCE。
  • Phase 4 前端治理:17 处重复 escapeHtml 收敛到 public/escape.js 单一真源;AI API key 移出 localStorage(改存 sessionStorage);新增 XSS scheme 白名单(safeImageUrl)与字段转义。

说明

  • window.QCLI 全局单例收敛(~85 文件引用、~40 文件直接赋值)因初始化顺序耦合风险高,按计划显式后置为 P2,本版本未改动。
  • 验证:npm test 66 通过 / 0 失败;lint 0 error;npm run plans 2/2;npm run build 成功。