Skip to content

Releases: massif-01/ChatRaw

v2.2.2

Choose a tag to compare

@github-actions github-actions released this 23 Jul 03:54

ChatRaw v2.2.2

新增功能

Server-owned LinkDB Agent bridge (#45)

  • 新增同源 /api/linkdb-agent/health/api/linkdb-agent/chat 接口。
  • Agent URL、API Key、超时与可信 principal 由 ChatRaw Host 持有;浏览器不能注入或覆盖这些传输与身份字段。
  • 增加 Origin、请求大小、JSON 结构与字段校验;无效请求不会调用上游。
  • 仅在上游成功后原子保存完整对话,避免失败时留下半条会话记录。
  • chatraw-linkdb-agent 使用新的专用安全边界,其他插件继续沿用现有通用设置、密钥与代理行为。

部署说明

升级 Host 前,请先安装配套的新版 LinkDB Agent Plugin,并在服务端配置:

  • CHATRAW_LINKDB_AGENT_ENABLED=true
  • CHATRAW_LINKDB_AGENT_BASE_URL
  • CHATRAW_LINKDB_AGENT_API_KEY
  • 可选:CHATRAW_LINKDB_AGENT_PRINCIPAL
  • 可选:CHATRAW_LINKDB_AGENT_TIMEOUT_SECONDS

Docker Hub 提供 linux/amd64linux/arm64 镜像:

docker pull massif01/chatraw:2.2.2

也可拉取最新版本:

docker pull massif01/chatraw:latest

发布边界

本版本发布 ChatRaw Host 与 LinkDB Agent 的工程集成能力。完整链路仍需配套的 LinkDB、Agent 与 Plugin;客户网络、认证、硬件和生产切换需在目标环境完成验收。

v2.2.1

Choose a tag to compare

@massif-01 massif-01 released this 13 Jun 03:13

ChatRaw v2.2.1

新增功能

Skill Manager 插件 (#31)

  • 支持从 GitHub URL、本地 SKILL.md 和本地 zip 安装 Skills。
  • 新增 Skills 管理能力:启用、禁用、删除、预览和安装诊断。
  • 聊天输入支持 /skill-name 调用和补全,选中的 Skill 由后端注入到本轮模型上下文,不污染用户可见消息。

Hermes 插件后端路由 (#32)

  • 新增 Hermes 路由插件,可将选定聊天请求安全转发到 Hermes API Server。
  • 支持 Chat Completions 与 Runs 两种 Hermes 执行模式。
  • Hermes API Key、Session Key 和 Base URL 只由 ChatRaw 后端保存和使用,浏览器端不暴露敏感传输信息。

Hermes Runs 工具事件与审批 (#41)

  • Runs 模式支持展示 run 生命周期、工具调用进度、reasoning、失败、取消和完成状态。
  • 聊天气泡新增 Hermes Run 区块,工具事件和审批事件不会混入最终 assistant 正文。
  • 新增工具审批卡,支持“允许一次”“本会话允许”“拒绝”三种操作。
  • Stop generation 可中断 active Hermes run,并清理运行态。

v2.2 macOS

v2.2 macOS Pre-release
Pre-release

Choose a tag to compare

@massif-01 massif-01 released this 03 Jun 14:24

ChatRaw v2.2

重点更新

ChatRaw for Mac

  • 新增 macOS 版本第一版:ChatRaw for Mac
  • 采用 SwiftUI 外壳 + WKWebView + 本地后端 runtime 的桌面架构。
  • macOS App 会自动启动本地后端,并通过本机 127.0.0.1 端口加载 ChatRaw 界面。
  • 新增一键构建与运行脚本,Codex 开发环境可直接使用 Run 动作启动。

macOS 交互修复

  • 修复 RemixIcon 字体在 macOS 壳内显示为方块的问题。
  • 修复 Logo、头像、插件、本地文件等上传入口在 WKWebView 中无法打开文件选择器的问题。
  • 修复插件卸载、清空对话等 confirm() 确认弹窗在 WKWebView 中无法继续执行的问题。
  • App 可见名称调整为 ChatRaw for Mac

发布包

  • 本次 Release 附带 ChatRaw-for-Mac-2.2.dmg
  • DMG 内包含 ChatRaw for Mac.app,可拖入 Applications 使用。
  • macOS 包当前面向 Apple Silicon(arm64),最低系统版本为 macOS 14。

使用说明

  1. 下载 ChatRaw-for-Mac-2.2.dmg
  2. 打开 DMG,将 ChatRaw for Mac.app 拖入 Applications。
  3. 首次启动如遇到 macOS 安全提示,请在系统设置中允许打开。

已知限制

  • 这是 macOS 第一版桌面壳,后端核心仍以 Python runtime 方式运行。
  • 目前尚未进行 Apple notarization;正式分发链路会在后续版本继续完善。
  • Docker 版本仍按既有发布流程构建。

Docker

docker pull massif01/chatraw:2.2
#
docker pull massif01/chatraw:latest

平台:linux/amd64, linux/arm64

v2.1.5

Choose a tag to compare

@github-actions github-actions released this 28 May 12:11

ChatRaw v2.1.5

重点更新

对话框与输入体验

  • 修复从欢迎页发送第一条消息后,输入框仍保持多行展开高度的问题。
  • 在清空输入内容后等待 Alpine 完成 DOM 同步,再重新执行输入框自动高度计算,让对话框立即恢复正常高度。
  • 同步更新实际被页面加载的 app.min.js,并提升静态资源查询版本,避免旧缓存继续命中。
  • 清理设置与插件对话框页脚品牌文案,保留 ChatRaw、作者署名与 MIT 协议链接。

移动端体验

  • 统一 JavaScript 与 CSS 的移动端断点判断,修复横屏手机等低高度触摸视口误进入桌面布局的问题。
  • 将 URL 输入弹窗移出可横向滚动的工具栏,避免移动端弹窗被裁剪。
  • 调整移动端和小高度视口的滚动与溢出规则,让欢迎页、消息区和输入区保持可用。
  • 为设置与插件弹窗增加移动端视口约束,确保底部操作按钮在手机尺寸下仍可触达。

静态资源一致性

  • 重新生成 backend/static/app.min.jsbackend/static/styles.min.css,确保源码和线上加载资源一致。
  • 更新内联关键样式和生产静态资源引用,降低移动端缓存与布局回归风险。

Docker

docker pull massif01/chatraw:2.1.5
#
docker pull massif01/chatraw:latest

平台:linux/amd64, linux/arm64

v2.1.4

Choose a tag to compare

@github-actions github-actions released this 25 Apr 11:09
1b61302

ChatRaw v2.1.4

重点更新

上下文压缩插件

  • 新增 context-compressor 插件,可自动压缩较早的聊天上下文,并在输入框工具栏提供手动压缩按钮。
  • 插件支持 autoCompress 自动压缩开关和 thresholdPercent 自动压缩阈值;关闭自动压缩后,用户仍可点击工具栏按钮手动压缩。
  • 压缩结果只影响模型输入链路,不删除、不改写原始聊天记录;禁用插件后会恢复完整历史输入。
  • 模型输入会使用“历史摘要 + 最近 3 轮对话原文 + 当前问题”,在压缩上下文的同时保留近期对话连续性。

后端压缩链路

  • 新增会话摘要表,每个会话保留一份最新摘要,并记录压缩边界、估算 token 和累计覆盖消息数。
  • 自动压缩在当前用户消息保存前判断,避免把当前问题提前写入摘要。
  • 手动压缩接口新增可解释 no-op 返回;当摘要模型返回空内容时,不再返回 500,也不会写入无效摘要。
  • 压缩摘要调用不会写入聊天消息表,避免污染用户可见历史。

稳定性与兼容性

  • 不修改现有 before_send hook 语义,避免影响搜索、RAG 等已有插件。
  • 合并用户 system prompt 与上下文摘要,避免向模型传入多条冲突的 system message。
  • 删除会话和自动清理旧会话时同步清理压缩摘要与进程内锁。
  • 插件市场远程索引请求超时时降级为 warning,减少误导性的错误日志。

文档与测试

  • 更新插件开发文档,补充上下文压缩插件的配置、自动压缩、手动压缩和后端行为说明。
  • 更新 README 插件列表,加入上下文压缩能力说明。
  • 新增上下文压缩后端测试,覆盖自动压缩、手动压缩、滚动摘要、异常配置、空摘要 no-op、并发锁和摘要注入等关键路径。

Docker

docker pull massif01/chatraw:v2.1.4
#
docker pull massif01/chatraw:latest

平台:linux/amd64, linux/arm64

v2.1.3

Choose a tag to compare

@github-actions github-actions released this 20 Feb 06:46

ChatRaw v2.1.3

Highlights

Mindmap Renderer Plugin

  • Rendering fix: Correct SVG namespace (createElementNS), container layout, Markmap data pipeline
  • Format support: JSON (title/children, center/branches, root/data), Markdown headings, Mermaid mindmap
  • Download: Top-right SVG export button (avoids tainted canvas; use PNG converters if needed)

Enhanced Export Plugin

  • Export button now displays correctly (sync injection + polling fallback)
  • Plugin main.js cache: Cache-Control: no-cache for fresh updates

Voice Input Plugin

  • Web Speech API for speech-to-text in the input toolbar

Plugin Market & UI

  • 2-column grid layout, search bar
  • Info popover for plugin details
  • Compact toggle switches (36×20)
  • Wider settings modals
  • Local install: drag-and-drop zip upload

Developer Docs

  • Mindmap renderer example (MutationObserver, SVG export, createElementNS)
  • index.json registration for plugin market

Docker

docker pull massif01/chatraw:v2.1.3
# or
docker pull massif01/chatraw:latest

Platforms: linux/amd64, linux/arm64

v2.1.2

Choose a tag to compare

@massif-01 massif-01 released this 13 Feb 18:08

ChatRaw v2.1.2

插件相关修复 / Plugin Fixes

Excel 解析器 (v1.0.2)

  • 修复从插件市场安装时 lib/ 文件 404 问题
  • 安装流程会下载 manifest dependencies 中的 lib 文件
  • 修复 BUNDLED_PLUGINS_DIR 路径(支持本地开发)
  • 增加 cellNF、raw 解析选项以提升表格读取准确性

Markdown 渲染增强 (v1.0.1)

  • 添加 manifest dependencies,解决从市场安装时 KaTeX/Mermaid/lib 404
  • 安装时自动下载全部 18 个 lib 文件
  • 修复:CSS 依赖用 loadCSS 加载(不再误用 loadScript)
  • 修复:hljs 语言包在 hljs 核心加载后再加载,避免 "hljs is not defined"

插件设置

  • 修复 select 类型 options 为对象数组时的 Alpine x-for key 警告
  • 支持 {value, label} 格式的选项

文档上下文持久化 / Document Context Persistence

  • 上传的表格/网页内容现会保存到对话历史
  • 后续追问时模型仍可访问之前的文档内容

其他修复 / Other Fixes

  • 修复点击「停止」时的 AbortError(流式响应)
  • 开发者文档:补充 lib/dependencies 在插件市场安装中的说明

Docker

多平台镜像(linux/amd64, linux/arm64)发布至 Docker Hub:

  • massif01/chatraw:v2.1.2

如何更新 / How to Update

docker pull massif01/chatraw:v2.1.2
docker stop chatraw && docker rm chatraw
docker run -d -p 51111:51111 -v chatraw-data:/app/data --name chatraw massif01/chatraw:v2.1.2

Full Changelog: v2.1.1...v2.1.2

v2.1.1

Choose a tag to compare

@massif-01 massif-01 released this 10 Feb 09:41
2fd9374

What's New in v2.1.1

UI Overhaul - shadcn/ui Design System Alignment

A comprehensive UI optimization touching mobile responsiveness, visual polish, design tokens, accessibility, and a new copy button.

Mobile Fixes

  • Viewport height: Progressive fallback chain (100vh -> -webkit-fill-available -> 100dvh) eliminates address-bar gap on iOS/Android
  • 51 inline styles extracted to CSS classes for maintainability and responsive overrides
  • Settings tab navigation: Horizontal scroll with fade-edge mask on mobile
  • Input toolbar: Overflow handling prevents button clipping on narrow screens
  • Code blocks & tables: Constrained width + horizontal scroll on mobile
  • 44px touch targets: All interactive buttons meet minimum tap-target size
  • Sticky hover fix: @media (hover: none) resets for touch devices

Visual Improvements

  • 8 opacity-based hovers replaced with explicit color values
  • Dark mode: restored shadow-sm/md, border-color brightened for depth
  • Input fields: unified full-border + rounded style (replacing bottom-only border)
  • Code blocks: stronger background contrast; blockquotes: background + rounded edge
  • Model badge: lighter outlined variant; toast: md border-radius
  • Scrollbar width increased; upload area: default background fill

Design System

  • HSL color tokens (--background, --foreground, --muted, --destructive, etc.) compatible with shadcn/ui
  • Spacing tokens (--spacing-1 through --spacing-12) and typography tokens (--text-xs through --text-3xl)
  • Animation tokens (--duration-fast/normal/slow, --transition-colors, --transition-transform) replacing 35 transition: all
  • 23 ARIA attributes added: role="dialog", aria-modal, role="tab", role="switch", aria-expanded, aria-live="polite"
  • focus-visible global styles for keyboard navigation
  • prefers-reduced-motion media query respects user preference

Copy Button for AI Responses

  • New copy button appears on hover (desktop) or always visible (mobile) below each AI message
  • Copies msg.content directly - only the final response text (markdown)
  • Does NOT copy thinking blocks, RAG references, API metadata, system prompts, or token counts
  • Icon swaps to checkmark for 2-second visual feedback
  • Clipboard API with execCommand fallback for older browsers
  • i18n support (English + Chinese)

Accessibility

  • --text-muted contrast improved to WCAG AA compliant: #6b6b6b (light, 4.7:1), #737373 (dark, 4.66:1)
  • Removed opacity: 0.7 on footer links that reduced effective contrast
  • Fixed invalid aria-controls referencing non-existent DOM element

Full Changelog: v2.1.0...v2.1.1

v2.1.0

Choose a tag to compare

@massif-01 massif-01 released this 08 Feb 16:23

What's New in v2.1.0

🚀 Toolbar Extension API for Plugins

A major new feature that allows plugin developers to add interactive toolbar buttons to ChatRaw's input area:

  • registerToolbarButton: Add custom buttons with icons, labels, and click handlers
  • setButtonState: Control button states (active/loading) for visual feedback
  • openFullscreenModal: Open fullscreen modals for complex plugin interactions
  • Auto-overflow menu: When more than 5 buttons are added, extras collapse into a "More" menu
  • Strict RemixIcon validation ensures consistent UI across all plugins
  • Automatic cleanup when plugins are disabled/uninstalled

New Demo Plugin: "Toolbar Extension Demo" plugin showcases all new features

📊 Excel Parser Pro Enhancements

The Excel Parser plugin has been significantly upgraded:

  • Formula result extraction: Shows calculated results instead of formula text
  • Date format detection: Automatically detects and converts Excel date serial numbers
  • Number formatting: Properly handles currency (¥, $, €), percentages, and decimal places
  • Merged cell handling: Correctly parses merged cell ranges
  • Smart filtering: Automatically removes empty rows and columns
  • Multi-sheet support: Statistics for each sheet in workbooks
  • Offline-ready: Bundled SheetJS library for offline use
  • Configurable settings: Max rows/cols, date format options, empty row inclusion

📚 Developer Documentation

  • Comprehensive API guide for the new Toolbar Extension system
  • Common pitfalls section with troubleshooting tips
  • Updated README with new feature highlights

Full Changelog: v2.0.7...v2.1.0

v2.0.7

Choose a tag to compare

@massif-01 massif-01 released this 07 Feb 14:54

New

  • 增强网页解析插件(Enhanced Web Parsing plugin)
  • /api/fetch-raw-urlparse_url 钩子

Fix

  • 插件卡片设置/删除图标与侧栏一致(36×36px)