# Kavor 1.4.0

## 主要亮点

- 新增 Grok 作为 CodingAgent provider，使用 ACP 客户端，支持配置、交互式输入，并通过 ACP 扩展方法的 wire 约定支持
  会话命名与目录。
- 新增 OpenCode 作为 CodingAgent provider，具备已认证的本地服务器生命周期，支持新建、恢复、fork、列出和命名会话，
  并包含无需 WSL 回退的 Windows 版本安装。
- 在 Canvas 调色板中新增 provider 选择工具，放置 CodingAgent node 时可显式选择 provider，并在调色板中复用共享的
  按压/拖动手势辅助功能。
- 在内置 Terminal 和 CodingAgent 的 PTY 视图中渲染 Sixel 和 iTerm2 内联图像，匹配底层进程可能已发出的内容。
- 支持每个 Workspace 拥有多个 specification 根目录，并相应更新了 Specification 设置、Backlog 面板和文件夹树，
  使 Specification 可以组织在多个根目录中。

## 修复

- 修复了 Onboarding 交接中的竞态问题：延迟加载的 Workspace 路由可能会挂起并清除 Onboarding 准备标志，导致 Canvas
  在 Onboarding 从未释放的阶段后完成水合。
- 当 Interactive PTY 在启动就绪前退出时，回滚 adapter 编造但从未确认的 provider session id，使首次启动失败不会
  再让 Node 永久指向一个 provider 从未创建过的会话。
- 将 provider 启动环境保护范围收窄到 Kavor 实际拥有的两个变量，而不是整个继承的环境变量，并新增了明确的
  "需要更新" provider 启动结果，与已有的"命令缺失"状态并列，显示在安装浮层、工具栏和 node 外框中。
- 将多个 node 的 Canvas 拖动持久化为单个分组移动，而不是分别写入每个 node。
- 稳定了延迟的 PTY 呈现、login shell 环境解析，以及 xterm 终端屏幕跟踪器。
- 修复了 OpenCode 的 CodingAgent node 在 provider 事件传输丢失会话空闲状态转换时永远卡在"Working"的问题；Kavor
  现在会在此情况下直接协调真实的会话状态。

## 安装

从 <https://download.agentkavor.com> 下载 Kavor。该页面会检测当前平台，并展示所有可用的安装包。现有的直接安装
版本可以在 Kavor 的软件更新设置中检查此版本。无需手动迁移 Workspace 数据；Kavor 会在应用 schema 更新前备份受
支持的本地数据库。

- Windows x64 使用面向用户的辅助式 NSIS 安装程序。该安装程序目前未签名，因此 Microsoft SmartScreen 可能需要
  明确确认。
- macOS 13+ 提供针对 arm64 和 x64 的独立 DMG。构建版本采用 ad-hoc 签名，但未经过公证；请按照下载页面的
  Gatekeeper 说明操作。Kavor 管理的更新使用对应架构的 ZIP，并在重新验证缓存的构建产物后提供明确的协调重启。
  手动下载始终保持可用。
- Linux x64 提供 AppImage 和 DEB 安装包。AppImage 支持 Kavor 管理的更新并提供明确的协调重启；DEB 更新需从下载
  页面手动安装。

## 已知限制

- Schedule Trigger 需要 Kavor 运行时处于运行状态、机器处于唤醒状态、用户已登录，且目标会话处于活动状态。Kavor
  未运行期间错过的触发会被记录，并作为明确的手动运行提供；它永远不会在下次启动时自动执行。
- 在 Windows ARM64 和 Linux ARM64 的原生 PTY、SQLite、进程隔离和打包运行时 gate 能够在对应 CI 环境中运行之前，
  这些平台的安装包不包含在内。
- Windows 直接下载版本尚无 Authenticode publisher 证书。
- macOS 安装包尚未进行 Developer ID 签名或公证。Gatekeeper 可能需要手动确认，替换 ad-hoc 构建版本可能会导致
  macOS 再次请求访问钥匙串中的 `Kavor Safe Storage`。
- 本版本不包含 Microsoft Store 分发。
